Frame List (RW Section)

From GTAMods Wiki
Revision as of 22:21, 29 July 2023 by PerikiyoXD Wiki (talk | contribs) (Better readability and comprehensibility)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Frame List
RenderWare Stream Section
Vendor Criterion Games
Module Core
Module ID 0x000000
Identifier 0x0E
Chunk ID 0x0000000E
Versions All
Hierarchy
Parents:
Clump
Children:
Struct
Extensions:
Frame, HAnim PLG
File Format

Frame List is a RenderWare stream container section used in DFF files as a child section of the Clump section.

The Frame List section only stores child sections and no data.

Hierarchy


Struct

The Frame List data is stored in a Struct child section.

The Struct section is defined as:

Size (Bytes) Type Variable Name Description
0x04 (4) int32_t frame_count Frame count
frame_count * 0x44 Frame[frame_count] frame_data Array of Frame data

The Struct section continues with an array of Frame data, holding as many as defined by the Frame count.

The Frame data is defined as:

Size (Bytes) Type Variable Name Description
0x24 (36) TMatrix3x3F rotation_matrix Rotation matrix
0x0C (12) TVector3F position Position
0x04 (4) int32_t parent_index Parent Index
0x04 (4) int32_t matrix_flags Matrix creation flags / (see discussion page)

TMatrix3x3F is defined as:

Size (Bytes) Type Description
0x0C (12) TVector3F right Right vector
0x0C (12) TVector3F up Up vector
0x0C (12) TVector3F at At vector

TVector3F is defined as:

Size (Bytes) Type Description
0x04 (4) float x X
0x04 (4) float y Y
0x04 (4) float z Z

Extension

The Frame List section can be extended by an Extension child section.

The Extension section can appear multiple times in a Frame List section, usually matches the Frame count defined above, but is not required to do so.

The Extension section usually holds the following child sections: