102 Patches: Detours to the Rescue
C reference for DttR maintainers and modders.
Loading...
Searching...
No Matches
DTTR_PCDOGS_T_Collision_Node Struct Reference

#include <dttr_pcdogs.h>

Data Fields

DTTR_PCDOGS_T_Collision_Nodenext_in_list
 List link used by static collision-scene node lists. Offset 0x0.
uint8_t reserved_04 [40]
DTTR_PCDOGS_T_Math_Matrix3x3I16 transform_matrix
int16_t transform_padding
 Offset 0x3E.
DTTR_PCDOGS_T_Math_Vec3I32 origin
 Offset 0x40.
uint8_t reserved_4c [28]
uint16_t vertex_count
uint16_t polygon_count
DTTR_PCDOGS_T_Collision_Polygonpolygons
DTTR_PCDOGS_T_Collision_Vertexvertices
uint8_t reserved_74 [20]
uint32_t flags

Detailed Description

Runtime collision/scene-geometry node layout used by ground and static collision paths. Vertices are signed int16 triples scaled by the owning level/caller; matrix transforms are Q12 when enabled by flags.

Definition at line 4666 of file dttr_pcdogs.h.

Field Documentation

◆ flags

uint32_t DTTR_PCDOGS_T_Collision_Node::flags

Node flags; collision polygon tests use transformed coordinates when bits 0x22 are set. Offset 0x88.

Definition at line 4689 of file dttr_pcdogs.h.

◆ next_in_list

DTTR_PCDOGS_T_Collision_Node* DTTR_PCDOGS_T_Collision_Node::next_in_list

List link used by static collision-scene node lists. Offset 0x0.

Definition at line 4668 of file dttr_pcdogs.h.

◆ origin

DTTR_PCDOGS_T_Math_Vec3I32 DTTR_PCDOGS_T_Collision_Node::origin

Offset 0x40.

Definition at line 4675 of file dttr_pcdogs.h.

◆ polygon_count

uint16_t DTTR_PCDOGS_T_Collision_Node::polygon_count

Number of Collision_Polygon records in polygons. Zero is a valid runtime value. Offset 0x6A.

Definition at line 4680 of file dttr_pcdogs.h.

◆ polygons

DTTR_PCDOGS_T_Collision_Polygon* DTTR_PCDOGS_T_Collision_Node::polygons

Collision polygon/face array; vertex indices live at positions +4/+6/+8/+10 in each record. Offset 0x6C.

Definition at line 4683 of file dttr_pcdogs.h.

◆ reserved_04

uint8_t DTTR_PCDOGS_T_Collision_Node::reserved_04[40]

Reserved prefix before the node transform matrix. Offset 0x4.

Definition at line 4669 of file dttr_pcdogs.h.

◆ reserved_4c

uint8_t DTTR_PCDOGS_T_Collision_Node::reserved_4c[28]

Reserved collision-node payload before vertex and face counts. Offset 0x4C.

Definition at line 4676 of file dttr_pcdogs.h.

◆ reserved_74

uint8_t DTTR_PCDOGS_T_Collision_Node::reserved_74[20]

Internal node payload between geometry arrays and flags. Offset 0x74.

Definition at line 4687 of file dttr_pcdogs.h.

◆ transform_matrix

DTTR_PCDOGS_T_Math_Matrix3x3I16 DTTR_PCDOGS_T_Collision_Node::transform_matrix

Q12 node rotation/scale matrix used when transformed-node flags are set. Offset 0x2C.

Definition at line 4672 of file dttr_pcdogs.h.

◆ transform_padding

int16_t DTTR_PCDOGS_T_Collision_Node::transform_padding

Offset 0x3E.

Definition at line 4674 of file dttr_pcdogs.h.

◆ vertex_count

uint16_t DTTR_PCDOGS_T_Collision_Node::vertex_count

Number of Collision_Vertex records in vertices. This is not a polygon bound. Offset 0x68.

Definition at line 4678 of file dttr_pcdogs.h.

◆ vertices

DTTR_PCDOGS_T_Collision_Vertex* DTTR_PCDOGS_T_Collision_Node::vertices

Collision vertex array with signed int16 x/y/z components. Offset 0x70.

Definition at line 4685 of file dttr_pcdogs.h.


The documentation for this struct was generated from the following file: