Polygon Soup
Polygon Soup is a subtype of Streamed Track Data. This data type, along with the Node Branch type, is used to store the collision geometry of a given track unit.
32-bit (PolygonSoup)
Burnout 3's promotional demo is the only known game to use the 32-bit version; otherwise, all Takedown-era games use the 16-bit version documented further below.
Header
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Polygon indices offset | PolygonBase* | ||
0x04 | Vertices offset | Vertex*[] | ||
0x08 | Data size | uint | ||
0x0C | Polygon size | uint8 | ||
0x0D | Polygon count | uint8 | ||
0x0E | Vertex count | uint8 |
PolygonBase
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Indices | uint8[] |
Vertex
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | X | float | ||
0x04 | Y | float | ||
0x08 | Z | float |
16-bit (PolygonSoup16)
Header
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Polygon indices offset | PolygonBase* | ||
0x04 | Vertices offset | Vertex16*[] | ||
0x08 | Data size | uint16 | ||
0x0A | X offset | uint8 | ||
0x0B | Y offset | uint8 | ||
0x0C | Z offset | uint8 | ||
0x0D | Polygon size | uint8 | ||
0x0E | Polygon count | uint8 | ||
0x0F | Vertex count | uint8 |
PolygonBase
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | Indices | uint8[] |
Vertex16
Offset | Name | Type | Value | Notes |
---|---|---|---|---|
0x00 | X | uint16 | ||
0x02 | Y | uint16 | ||
0x04 | Z | uint16 |