RwBinaryStream
Jump to navigation
Jump to search
Contents
Reading Binary Streams
RwStreams are heirarchical streams of sections. Every section consists of:
- (gauranteed) RwHeader
- (gauranteed) RwData child section
- (optional) Children sections
RwType
enum { rwDATA = 1, rwSTRING = 2, rwEXTENSION = 3, rwTEXTURE = 6, rwMATERIAL = 7, rwMATERIALLIST = 8, rwFRAMELIST = 14, rwGEOMETRY = 15, rwCLUMP = 16, rwLIGHT = 18, rwATOMIC = 20, rwTEXTURENATIVE = 21, rwTEXDICT = 22, rwGEOMETRYLIST = 26, rwMATERIALSPLIT = 124, rwFRAME = 39056126, rwPLUGIN_PARTICLES = 0x118, rwPLUGIN_MATERIALEFFECTS = 0x120, rwPLUGIN_BINMESH = 0x50e, };
RwHeader
struct RwHeader { s32 sectionType; // RwType s32 sectionSize; u8 unknown[2]; s16 versionNumber; };
Dff Files
Top level section is always a single RwClump.
RwClump section
VersionNumber(s) 0, 2048
- Gauranteed
- First and only data
struct RwClump_RwData { s32 objectCount; };
VersionNumber(s) 3074, 4099, 6147
- Gauranteed
- First data
struct RwClump_RwData { s32 objectCount; u8 unknown[8]; };
- Optional
- Second and subsequent data
struct RwClump_RwData { u8 unknown[4]; };
Txd Files
Top level section is always a single RwTexdict.