Model: Difference between revisions

1,890 bytes added ,  7 months ago
m
Normalization
(Created page with "=== Model === {| class="wikitable" ! Offset !! Size !! Type !! Name !! Description !! More Information !! Comments |- | 0x0 || 0x4 || Renderable * * || mppRenderables || || || |- | 0x4 || 0x4 || uint8_t * || mpu8StateRenderableIndices || Pointer to renderable index || || |- | 0x8 || 0x4 || float32_t * || mpfLodDistances || || || Num same as Num Renderables |- | 0xC || 0x4 || int32_t || miGameExplorerIndex || || || Always null? |- | 0x10 || 0x1 || uint8_t || mu8N...")
 
m (Normalization)
 
(6 intermediate revisions by the same user not shown)
Line 1:
{{ParadiseResourceTypeInfobox
=== Model ===
| name = Model
| othernames = VehicleModel, WheelModel, and PropModel
| example = [[File:Paradise Model Example.png|frameless|250px]]<br />The lan_44_stock_exchange building<br />in track unit 203.
| id = 0x2A
| category = Generic
| memdist = Main Memory only
| imports = [[Renderable]]
| importedby = [[Vehicle Graphics]]<br />[[Wheel Graphics]]<br />[[Instance List]]<br />[[Prop Graphics List]]
| editor = Viewer only<br />Use [[Modding/Burnout Paradise|Noesis]]
}}
 
Model resources are the joining type for [[Renderable]] resources, which contain the actual 3D data.
 
= Structures =
=== CgsGraphics::Model ===
==== 32-bit ====
{| class="wikitable"
! Offset !! SizeLength !! Type !! Name !! Description !! More Information !! Comments
|-
| 0x0 || 0x4 || [[Renderable ]]* * || mppRenderables || || Imported || resources
|-
| 0x4 || 0x4 || uint8_t * || mpu8StateRenderableIndices || PointerRenderable tostate renderable indexindices || See [[#CgsGraphics::Model::State|| State]]
|-
| 0x8 || 0x4 || float32_t * || mpfLodDistances || || Same ||value Numas same asnumber Numof Renderablesstates
|-
| 0xC || 0x4 || int32_t || miGameExplorerIndex || || || Always null?
|-
| 0x10 || 0x1 || uint8_t || mu8NumRenderables || || ||
|-
| 0x11 || 0x1 || uint8_t || mu8Flags || 0x01 (Bit 0) = ? || ||
|-
| 0x12 || 0x1 || uint8_t || mu8NumStates || || || Usually same as numnumber of renderablesRenderables
|-
| 0x13 || 0x1 || uint8_t || mu8VersionNumber || || Always 2 ||
|}
 
==== PS464-bit ====
=== Model ===
{| class="wikitable"
! Offset !! SizeLength !! Type !! Name !! Description !! More Information !! Comments
|-
| 0x0 || 0x8 || [[Renderable]]** || mppRenderables || || Imported resources
|-
| 0x8 || 0x8 || uint8_t* || mpu8StateRenderableIndices || Renderable state indices || See [[#CgsGraphics::Model::State|State]]
|-
| 0x10 || 0x8 || float32_t* || mpfLodDistances || || Same value as number of states
|-
| 0x18 || 0x4 || int32_t || miGameExplorerIndex || || Always null?
|-
| 0x1C || 0x1 || uint8_t || mu8NumRenderables || ||
|-
| 0x1D || 0x1 || uint8_t || mu8Flags || ||
|-
| 0x1E || 0x1 || uint8_t || mu8NumStates || || Usually same as number of Renderables
|-
| 0x1F || 0x1 || uint8_t || mu8VersionNumber || || Always 2
|}
 
= Enumerations =
=== CgsGraphics::Model::State ===
{| class="wikitable"
! Name !! Value !! Comments
|-
| E_STATE_LOD_0 || 0 ||
|-
| E_STATE_LOD_1 || 1 ||
|-
| E_STATE_LOD_2 || 2 ||
|-
| E_STATE_LOD_3 || 3 ||
|-
| E_STATE_LOD_4 || 4 ||
|-
| E_STATE_LOD_5 || 5 ||
|-
| E_STATE_LOD_6 || 6 ||
|-
| E_STATE_LOD_7 || 7 ||
|-
| E_STATE_LOD_8 || 8 ||
|-
| E_STATE_LOD_9 || 9 ||
|-
| E_STATE_LOD_10 || 10 ||
|-
| E_STATE_LOD_11 || 11 ||
|-
| E_STATE_LOD_12 || 12 ||
|-
| E_STATE_LOD_13 || 13 ||
|-
| E_STATE_LOD_14 || 14 ||
|-
| E_STATE_LOD_15 || 15 ||
|-
| E_STATE_GAME_SPECIFIC_0 || 16 ||
|-
| E_STATE_GAME_SPECIFIC_1 || 17 ||
|-
| E_STATE_GAME_SPECIFIC_2 || 18 ||
|-
| E_STATE_GAME_SPECIFIC_3 || 19 ||
|-
| E_STATE_GAME_SPECIFIC_4 || 20 ||
|-
| E_STATE_GAME_SPECIFIC_5 || 21 ||
|-
| E_STATE_GAME_SPECIFIC_6 || 22 ||
|-
| E_STATE_GAME_SPECIFIC_7 || 23 ||
|-
| E_STATE_GAME_SPECIFIC_8 || 24 ||
|-
| E_STATE_GAME_SPECIFIC_9 || 25 ||
|-
| E_STATE_GAME_SPECIFIC_10 || 26 ||
| 0x0 || 0x8 || Renderable * * || mppRenderables || || ||
|-
| E_STATE_GAME_SPECIFIC_11 || 27 ||
| 0x8 || 0x8 || uint8_t * || mpu8StateRenderableIndices || Pointer to renderable index || ||
|-
| E_STATE_GAME_SPECIFIC_12 || 28 ||
| 0x10 || 0x8 || float32_t * || mpfLodDistances || || || Num same as Num Renderables
|-
| E_STATE_GAME_SPECIFIC_13 || 29 ||
| 0x18 || 0x4 || int32_t || miGameExplorerIndex || || || Always null?
|-
| E_STATE_GAME_SPECIFIC_14 || 30 ||
| 0x1C || 0x1 || uint8_t || mu8NumRenderables || || ||
|-
| E_STATE_GAME_SPECIFIC_15 || 31 ||
| 0x1D || 0x1 || uint8_t || mu8Flags || 0x01 (Bit 0) = ? || ||
|-
| E_STATE_INVALID || 32 ||
| 0x1E || 0x1 || uint8_t || mu8NumStates || || || Usually same as num renderables
|-
| E_STATE_COUNT || 32 ||
| 0x1F || 0x1 || uint8_t || mu8VersionNumber || || Always 2 ||
|}