Zone List
The zone list resource type is used in the PVS (potentially visible segments) bundle. Its purpose is to tell the game which track units to load when the player enters a certain track unit.
Structures
CgsSceneManager::ZoneList
32-bit
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x4 | Vector2* | mpPoints | ||
0x4 | 0x4 | Zone* | mpZones | ||
0x8 | 0x4 | uint32_t* | mpuZonePointStarts | ||
0xC | 0x4 | int16_t* | mpiZonePointCounts | ||
0x10 | 0x4 | uint32_t | muTotalZones | ||
0x14 | 0x4 | uint32_t | muTotalPoints |
64-bit
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x8 | Vector2* | mpPoints | ||
0x8 | 0x8 | Zone* | mpZones | ||
0x10 | 0x8 | uint32_t* | mpuZonePointStarts | ||
0x18 | 0x8 | int16_t* | mpiZonePointCounts | ||
0x20 | 0x4 | uint32_t | muTotalZones | ||
0x24 | 0x4 | uint32_t | muTotalPoints |
CgsSceneManager::Zone
32-bit
Offset | Size | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x4 | Vector2* | mpPoints | ||
0x4 | 0x4 | Neighbour* | mpSafeNeighbours | ||
0x8 | 0x4 | Neighbour* | mpUnsafeNeighbours | ||
0xC | 0x4 | padding | |||
0x10 | 0x8 | uint64_t | muZoneId | ||
0x18 | 0x2 | int16_t | miZoneType | Always 4 | |
0x1A | 0x2 | int16_t | miNumPoints | ||
0x1C | 0x2 | int16_t | miNumSafeNeighbours | ||
0x1E | 0x2 | int16_t | miNumUnsafeNeighbours | ||
0x20 | 0x4 | uint32_t | muFlags | Unused | |
0x24 | 0xC | padding |
64-bit
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x8 | Vector2* | mpPoints | ||
0x8 | 0x8 | Neighbour* | mpSafeNeighbours | ||
0x10 | 0x8 | Neighbour* | mpUnsafeNeighbours | ||
0x18 | 0x8 | uint64_t | muZoneId | ||
0x20 | 0x2 | int16_t | miZoneType | Always 4 | |
0x22 | 0x2 | int16_t | miNumPoints | ||
0x24 | 0x2 | int16_t | miNumSafeNeighbours | ||
0x26 | 0x2 | int16_t | miNumUnsafeNeighbours | ||
0x28 | 0x4 | uint32_t | muFlags | Unused | |
0x2C | 0x4 | padding |
CgsSceneManager::Neighbour
32-bit
Offset | Size | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x4 | Zone* | mpZone | ||
0x4 | 0x4 | uint32_t | muFlags | See eNeighbourFlags | |
0x8 | 0x8 | padding |
64-bit
Offset | Size | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x8 | Zone* | mpZone | ||
0x8 | 0x4 | uint32_t | muFlags | See eNeighbourFlags | |
0xC | 0x4 | padding |
Enumerations
CgsSceneManager::Neighbour::eNeighbourFlags
Name | Value | Comments |
---|---|---|
E_RENDERFLAG_NONE | 0x0 | |
E_NEIGHBOURFLAG_RENDER | 0x1 | |
E_NEIGHBOURFLAG_IMMEDIATE | 0x2 |