Renderable/Remastered
Structures[edit | edit source]
Renderable[edit | edit source]
32-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | Vector3Plus | mBoundingSphere | ||
0x10 | 0x2 | uint16_t | mu16VersionNumber | Version | 11 |
0x12 | 0x2 | uint16_t | mu16NumMeshes | Number of meshes | |
0x14 | 0x4 | RenderableMesh** | mppMeshes | Meshes | |
0x18 | 0x4 | ObjectScopeTextureInfo* | mpObjectScopeTextureInfo | Unused | |
0x1C | 0x2 | uint16_t | mu16Flags | Flags | See flags |
0x1E | 0x2 | Padding | |||
0x20 | 0x4 | IndexBuffer* | ? | Index buffer | |
0x24 | 0x4 | VertexBuffer* | ? | Vertex buffer |
64-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x10 | Vector3Plus | mBoundingSphere | ||
0x10 | 0x2 | uint16_t | mu16VersionNumber | Version | 11 |
0x12 | 0x2 | uint16_t | mu16NumMeshes | Number of meshes | |
0x14 | 0x4 | Padding | |||
0x18 | 0x8 | RenderableMesh** | mppMeshes | Meshes | |
0x20 | 0x8 | ObjectScopeTextureInfo* | mpObjectScopeTextureInfo | Unused | |
0x28 | 0x2 | uint16_t | mu16Flags | Flags | See flags |
0x2A | 0x6 | Padding | |||
0x30 | 0x8 | IndexBuffer* | ? | Index buffer | |
0x38 | 0x8 | VertexBuffer* | ? | Vertex buffer |
RenderableMesh[edit | edit source]
32-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x40 | Matrix44 | ? | Bounding box | |
0x40 | 0x10 | DrawIndexedParameters | mDrawIndexedParameters | ||
0x50 | 0x4 | MaterialAssembly* | mpMaterialAssembly | ||
0x54 | 0x1 | uint8_t | mu8NumVertexDescriptors | Number of vertex descriptors | |
0x55 | 0x1 | uint8_t | mu8InstanceCount | ||
0x56 | 0x1 | uint8_t | mu8NumVertexBuffers | Number of vertex buffers | |
0x57 | 0x1 | uint8_t | mu8Flags | Flags | Always 0? |
0x58 | 0x4 | void*[1] | maBuffers | Buffers | Index buffers, then vertex buffers, then vertex descriptors. See IndexBuffer and VertexBuffer |
64-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x40 | Matrix44 | ? | Bounding box | |
0x40 | 0x10 | DrawIndexedParameters | mDrawIndexedParameters | ||
0x50 | 0x8 | MaterialAssembly* | mpMaterialAssembly | ||
0x58 | 0x1 | uint8_t | mu8NumVertexDescriptors | Number of vertex descriptors | |
0x59 | 0x1 | uint8_t | mu8InstanceCount | ||
0x5A | 0x1 | uint8_t | mu8NumVertexBuffers | Number of vertex buffers | |
0x5B | 0x1 | uint8_t | mu8Flags | Flags | Always 0? |
0x5C | 0x4 | Padding | |||
0x60 | 0x8 | void*[1] | maBuffers | Buffers | Index buffers, then vertex buffers, then vertex descriptors. See IndexBuffer and VertexBuffer |
DrawIndexedParameters[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x4 | D3D11_PRIMITIVE_TOPOLOGY | ? | Primitive topology | |
0x4 | 0x4 | int32_t | ? | Base vertex index | |
0x8 | 0x4 | uint32_t | ? | Start index | |
0xC | 0x4 | uint32_t | ? | Number of indices |
renderengine::IndexBuffer[edit | edit source]
32-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x14 | Buffer | ? | Buffer info | |
0x4 | 0x4 | uint32_t | ? | Index size | 2 or 4 bytes |
64-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x1C | Buffer | ? | Buffer info | |
0x4 | 0x4 | uint32_t | ? | Index size | 2 or 4 bytes |
renderengine::VertexBuffer[edit | edit source]
32-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x14 | Buffer | ? | Buffer info | |
0x4 | 0x4 | ? | ? | ||
0x4 | 0x4 | ? | ? |
64-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x1C | Buffer | ? | Buffer info | |
0x4 | 0x4 | ? | ? | ||
0x4 | 0x4 | ? | ? |
Buffer[edit | edit source]
32-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x4 | ID3D11Buffer* | ? | Buffer Interface | Set at runtime See the Microsoft Learn page |
0x4 | 0x4 | D3D11_USAGE | ? | Usage | Always D3D11_USAGE_IMMUTABLE |
0x8 | 0x4 | int32_t | ? | Type | See buffer type |
0xC | 0x4 | void* | ? | Data offset | |
0x10 | 0x4 | uint32_t | ? | Data size |
64-bit[edit | edit source]
Offset | Length | Type | Name | Description | Comments |
---|---|---|---|---|---|
0x0 | 0x8 | ID3D11Buffer* | ? | Buffer Interface | Set at runtime See the Microsoft Learn page |
0x8 | 0x4 | D3D11_USAGE | ? | Usage | hardcoded to D3D11_USAGE_IMMUTABLE |
0xC | 0x4 | int32_t | ? | Type | See buffer type |
0x10 | 0x8 | void* | ? | Data offset | |
0x18 | 0x4 | uint32_t | ? | Data size |
Enumerations[edit | edit source]
Renderable flags[edit | edit source]
Name | Value | Comments |
---|---|---|
? | 0x1 | |
? | 0x2 | |
? | 0x4 | |
? | 0x8 | |
? | 0x10 | |
? | 0x20 | |
? | 0x40 | |
? | 0x80 | |
? | 0x100 | |
? | 0x200 | |
? | 0x400 | |
? | 0x800 |
D3D11_PRIMITIVE_TOPOLOGY[edit | edit source]
From the Microsoft Learn page.
Name | Value | Comments |
---|---|---|
D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED | 0 | The IA stage has not been initialized with a primitive topology. The IA stage will not function properly unless a primitive topology is defined. |
D3D11_PRIMITIVE_TOPOLOGY_POINTLIST | 1 | Interpret the vertex data as a list of points. |
D3D11_PRIMITIVE_TOPOLOGY_LINELIST | 2 | Interpret the vertex data as a list of lines. |
D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP | 3 | Interpret the vertex data as a line strip. |
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST | 4 | Interpret the vertex data as a list of triangles. |
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP | 5 | Interpret the vertex data as a triangle strip. |
D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ | 10 | Interpret the vertex data as list of lines with adjacency data. |
D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ | 11 | Interpret the vertex data as line strip with adjacency data. |
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ | 12 | Interpret the vertex data as list of triangles with adjacency data. |
D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ | 13 | Interpret the vertex data as triangle strip with adjacency data. |
D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST | 33 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST | 34 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST | 35 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST | 36 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST | 37 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST | 38 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST | 39 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST | 40 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST | 41 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST | 42 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST | 43 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST | 44 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST | 45 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST | 46 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST | 47 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST | 48 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST | 49 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST | 50 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST | 51 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST | 52 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST | 53 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST | 54 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST | 55 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST | 56 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST | 57 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST | 58 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST | 59 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST | 60 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST | 61 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST | 62 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST | 63 | Interpret the vertex data as a patch list. |
D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST | 64 | Interpret the vertex data as a patch list. |
D3D11_USAGE[edit | edit source]
From the Microsoft Learn page.
Name | Value | Comments |
---|---|---|
D3D11_USAGE_DEFAULT | 0 | A resource that requires read and write access by the GPU. This is likely to be the most common usage choice. |
D3D11_USAGE_IMMUTABLE | 1 | A resource that can only be read by the GPU. It cannot be written by the GPU, and cannot be accessed at all by the CPU. This type of resource must be initialized when it is created, since it cannot be changed after creation. |
D3D11_USAGE_DYNAMIC | 2 | A resource that is accessible by both the GPU (read only) and the CPU (write only). A dynamic resource is a good choice for a resource that will be updated by the CPU at least once per frame. To update a dynamic resource, use a Map method. |
D3D11_USAGE_STAGING | 3 | A resource that supports data transfer (copy) from the GPU to the CPU. |
Buffer type[edit | edit source]
Name | Value | Comments |
---|---|---|
? | 2 | Vertex buffer |
? | 3 | Index buffer |
? | 4 | Constant buffer |