Streamed Track Data

This format contains the mesh data and collision geometry of a single track unit. All of a given track's streamed objects are stored together as an array, in a single file named STREAMED.DAT.

LayoutEdit

Track DataEdit

Offset Name Type Value Notes
0x00 Loaded state ELoadedState 0x00 = Not Loaded
0x01 = Loaded
0x02 = Usable
0x03 = Maximum States
0x04 Original hull ID int
0x08 Data size (bytes) int32
0x10 Bounding box Bounding Box
0x50 World render object Track Render Object
0x58 Is LOD? bool32

LOD/Collision DataEdit

Offset Name Type Value Notes
0x60 Track hull Track Hull
0x90 Collision tree pointer Collision Tree*

Track Render ObjectEdit

Offset Name Type Value Notes
0x00 Mesh count int16
0x04 Meshes Track Mesh*[] Pointer to an array of Track Meshes

Track MeshEdit

Offset Name Type Value Notes
0x00 Reserved (1) word
0x04 Reserved (2) word
0x08 Reserved (3) word
0x0C Render data (first) word*
0x10 Reserved (4) word
0x14 Reserved (5) word
0x18 Reserved (6) word
0x1C Render data (rest) word*
0x20 Reserved (7) word
0x24 Reserved (8) word
0x28 Reserved (9) word
0x2C Chained mesh int
0x30 Reserved (10) float
0x34 Reserved (11) float
0x38 Reserved (12) float
0x3C Reserved (13) word

Collision TreeEdit

Offset Name Type Value Notes
0x00 Bounding box Bounding Box
0x20 Node branch array Node Branch*[] Pointer to an array of Node Branches
0x24 Polygon soups Polygon Soup*[] Pointer to an array of Polygon Soups
0x28 Polygon soup count uint16
0x2A Node branch count uint16
0x2C Is 16-bit? bool32

Node BranchEdit

Offset Name Type Value Notes
Node Branch
0x00 Left node detail Node Detail
0x08 Right node detail Node Detail
Node Detail
0x00 Value float
0x04 Index uint16
0x06 Type uint8
0x07 Contents uint8