Difference between revisions of "RenderWare binary stream file"

From GTAMods Wiki
Jump to navigation Jump to search
 
Line 4: Line 4:
  
  
=File Structure=
+
=File Format=
  
 
RW streams are split up into sections. Each section has a 12 byte header and can either be empty, contain data or more child sections. Section content, especially of data sections, is determined by an ID in the header.
 
RW streams are split up into sections. Each section has a 12 byte header and can either be empty, contain data or more child sections. Section content, especially of data sections, is determined by an ID in the header.
  
There is only one data structure common to all RW streams -- the '''section header''':
+
There is only one data structure common to all RW streams - the '''section header''':
  
 
  4 byte - DWORD - section identifier
 
  4 byte - DWORD - section identifier
Line 22: Line 22:
 
==Rockstar's Custom Section IDs==
 
==Rockstar's Custom Section IDs==
  
Rockstar added several vendor specific RW plugins, which have their own ID range (0x0253F2F?).
+
Rockstar added several vendor specific RW plugins, which have their own ID range (0x0253F2F*).
  
 
* [[Specular Material (RW Section)|Specular Material]] ''(0x0253F2F6)''
 
* [[Specular Material (RW Section)|Specular Material]] ''(0x0253F2F6)''
Line 42: Line 42:
 
  3.6.0.3 - 0x1803FFFF ([[:Category:GTA SA|GTA SA]])
 
  3.6.0.3 - 0x1803FFFF ([[:Category:GTA SA|GTA SA]])
  
 +
 +
=Common File Structures=
 +
 +
==Model Files (DFF)==
 +
 +
''-coming soon-''
 +
 +
==Texture Archives (TXD)==
 +
 +
* [[Texture Dictionary (RW Section)|Texture Dictionary]]
 +
** [[Struct (RW Section)|Struct]] - 4 byte, 2x word, first one is the texture count
 +
** [[Texture Native (RW Section)|Texture Native]] *
 +
*** [[Struct (RW Section)|Struct]] - header and actual image data
 +
*** [[Extension (RW Section)|Extension]] - empty
 +
** [[Extension (RW Section)|Extension]] - empty
 +
 +
''* These sections (and their child sections) can appear multiple times.
  
 
=Tools & Scripts=
 
=Tools & Scripts=
Line 53: Line 70:
 
* [http://www.chronetal.co.uk/gta/index.php?page=dff Original DFF format description] by KCow
 
* [http://www.chronetal.co.uk/gta/index.php?page=dff Original DFF format description] by KCow
 
* [http://www.gtaforums.com/?showtopic=128451 RW Analyze discussion thread] on GTAForums with lots of format descriptions
 
* [http://www.gtaforums.com/?showtopic=128451 RW Analyze discussion thread] on GTAForums with lots of format descriptions
 +
* [http://www.renderware.com Official RenderWare Site]
  
  
 
{{File-stub}}
 
{{File-stub}}
 
[[Category:3D File Formats]]
 
[[Category:3D File Formats]]

Revision as of 20:40, 4 November 2006

RenderWare binary stream files are hierarchically structured binary data files used by the RenderWare 3.x graphics engine utilized by Rockstar North for their GTA III trilogy (only on PC, PS2 and XBOX, not PSP!) and related games (Manhunt, Bully).

GTA's model files use the file extension .dff and texture archives use .txd. Other possible extensions, not used by the GTA games, are .rws, .anm, .bsp and .dma.


File Format

RW streams are split up into sections. Each section has a 12 byte header and can either be empty, contain data or more child sections. Section content, especially of data sections, is determined by an ID in the header.

There is only one data structure common to all RW streams - the section header:

4 byte - DWORD - section identifier
4 byte - DWORD - section size, including child sections and/or data
4 byte - DWORD - RW version ID

The RW version ID varies depending on the RW engine version used for exporting the files. It must be the same for all headers within one file. Backwards compatibility is very limited.

Valid RW Section IDs

See the list of RW section IDs.

Rockstar's Custom Section IDs

Rockstar added several vendor specific RW plugins, which have their own ID range (0x0253F2F*).

Common RW Version IDs

The following is an (incomplete) list of plain text RW versions commonly used in GTA and their encoded equivalent:

3.0.0.3 - 0x0003FFFF
3.1.0.0 - 0x00000310
3.3.0.2 - 0x0C02FFFF
3.4.0.3 - 0x1003FFFF
3.6.0.3 - 0x1803FFFF (GTA SA)


Common File Structures

Model Files (DFF)

-coming soon-

Texture Archives (TXD)

* These sections (and their child sections) can appear multiple times.

Tools & Scripts


See also