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

#include <dttr_pcdogs.h>

Data Fields

DTTR_PCDOGS_T_Scene_Nodenext_in_resource_list
int32_t node_list_skip_count
DTTR_PCDOGS_T_Scene_Nodetransform_parent_node
DTTR_PCDOGS_T_Math_Matrix3x3I16 local_rot_matrix
int16_t local_rot_reserved
 Offset 0x1E.
DTTR_PCDOGS_T_Math_Vec3I32 local_pos
 Offset 0x20.
DTTR_PCDOGS_T_Math_Matrix3x3I16 world_rot_matrix
 Offset 0x2C.
int16_t world_rot_reserved
DTTR_PCDOGS_T_Math_Vec3I32 world_pos
 Offset 0x40.
DTTR_PCDOGS_T_Math_Vec3I32 world_delta_pos
int8_t position_anim_channel_index_or_minus_one
int8_t rotation_anim_channel_index_or_minus_one
int8_t visibility_anim_channel_index_or_minus_one
int8_t scale_anim_channel_index_or_minus_one
uint16_t anim_update_sentinel
uint16_t padding_5e
 Offset 0x5E.
int32_t cached_anim_tick
uint8_t node_type
 Node type byte read by Scene_UpdateNodeAnimation. Offset 0x64.
uint8_t traversal_flags
int8_t render_entry_index_for_type_6
int8_t type_specific_secondary_render_or_sound_index
int32_t render_param_1
voidvariant_payload_ptr
DTTR_PCDOGS_T_Collision_Vertexcollision_vertices
int32_t actor_world_pos_z
 Offset 0x74.
uint8_t visibility_flags [6]
 Offset 0x78.
uint8_t reserved_7e [2]
voidmodel_relocated_ptr_80
voidmodel_relocated_ptr_84
uint32_t model_runtime_flags
uint32_t variant_transform_tail
DTTR_PCDOGS_T_Trail_BoneEffecttrail_effects_ptr
 Offset 0x90.
DTTR_PCDOGS_T_Submesh_Entrysubmesh_entry_table
 Offset 0x94.
uint8_t padding_98 [4]
int32_t sort_keys [2]
 Offset 0x9C.
DTTR_PCDOGS_T_Scene_Nodechild_node_list_ptr
 Offset 0xA4.
uint8_t reserved_a8 [4]
voidmodel_animation_data_ptr
voidoffset_fixup_list_ptr
int32_t child_rot_x
 Reserved variant-tail field. Offset 0xB4.
uint16_t padding_b8
uint16_t mesh_node_count
DTTR_PCDOGS_T_Mesh_RenderNodeEntrymesh_node_table
int32_t child_scale_x
 Reserved variant-tail field. Offset 0xC0.
uint8_t reserved_c4
int8_t type_1_dispatch_index
int8_t type_1_attach_point_index
int8_t type_1_bone_channel_index
int32_t child_scale_z
 Reserved variant-tail field. Offset 0xC8.
int32_t render_offset_x
int32_t render_offset_y
int32_t render_offset_z
DTTR_PCDOGS_T_Scene_Nodelod_config_ptr
 Reserved variant-tail pointer. Offset 0xD8.

Detailed Description

Definition at line 4935 of file dttr_pcdogs.h.

Field Documentation

◆ actor_world_pos_z

int32_t DTTR_PCDOGS_T_Scene_Node::actor_world_pos_z

Offset 0x74.

Definition at line 5002 of file dttr_pcdogs.h.

◆ anim_update_sentinel

uint16_t DTTR_PCDOGS_T_Scene_Node::anim_update_sentinel

Scene_UpdateNodeAnimation skips animation update when this word is 0xFFFF. Offset 0x5C.

Definition at line 4976 of file dttr_pcdogs.h.

◆ cached_anim_tick

int32_t DTTR_PCDOGS_T_Scene_Node::cached_anim_tick

Compared/stored against actor animation tick by Scene_UpdateNodeAnimation. Offset 0x60.

Definition at line 4979 of file dttr_pcdogs.h.

◆ child_node_list_ptr

DTTR_PCDOGS_T_Scene_Node* DTTR_PCDOGS_T_Scene_Node::child_node_list_ptr

Offset 0xA4.

Definition at line 5021 of file dttr_pcdogs.h.

◆ child_rot_x

int32_t DTTR_PCDOGS_T_Scene_Node::child_rot_x

Reserved variant-tail field. Offset 0xB4.

Definition at line 5030 of file dttr_pcdogs.h.

◆ child_scale_x

int32_t DTTR_PCDOGS_T_Scene_Node::child_scale_x

Reserved variant-tail field. Offset 0xC0.

Definition at line 5041 of file dttr_pcdogs.h.

◆ child_scale_z

int32_t DTTR_PCDOGS_T_Scene_Node::child_scale_z

Reserved variant-tail field. Offset 0xC8.

Definition at line 5053 of file dttr_pcdogs.h.

◆ collision_vertices

DTTR_PCDOGS_T_Collision_Vertex* DTTR_PCDOGS_T_Scene_Node::collision_vertices

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

Definition at line 5000 of file dttr_pcdogs.h.

◆ local_pos

DTTR_PCDOGS_T_Math_Vec3I32 DTTR_PCDOGS_T_Scene_Node::local_pos

Offset 0x20.

Definition at line 4950 of file dttr_pcdogs.h.

◆ local_rot_matrix

DTTR_PCDOGS_T_Math_Matrix3x3I16 DTTR_PCDOGS_T_Scene_Node::local_rot_matrix

Local rotation matrix read by Scene_UpdateNodeAnimation/node-transform update paths. Offset 0xC.

Definition at line 4946 of file dttr_pcdogs.h.

◆ local_rot_reserved

int16_t DTTR_PCDOGS_T_Scene_Node::local_rot_reserved

Offset 0x1E.

Definition at line 4949 of file dttr_pcdogs.h.

◆ lod_config_ptr

DTTR_PCDOGS_T_Scene_Node* DTTR_PCDOGS_T_Scene_Node::lod_config_ptr

Reserved variant-tail pointer. Offset 0xD8.

Definition at line 5064 of file dttr_pcdogs.h.

◆ mesh_node_count

uint16_t DTTR_PCDOGS_T_Scene_Node::mesh_node_count

Count for mesh_node_table read by PKG_FixUpResourceModelNode/PKG_FixUpResourceMeshNode. Offset 0xBA.

Definition at line 5033 of file dttr_pcdogs.h.

◆ mesh_node_table

DTTR_PCDOGS_T_Mesh_RenderNodeEntry* DTTR_PCDOGS_T_Scene_Node::mesh_node_table

Mesh render-node entry table; count is read from mesh_node_count and entries are fixed by PKG_FixUpResourceMeshNode before Scene_RenderSubMesh indexes them. Offset 0xBC.

Definition at line 5037 of file dttr_pcdogs.h.

◆ model_animation_data_ptr

void* DTTR_PCDOGS_T_Scene_Node::model_animation_data_ptr

Model animation-data pointer rebased by PKG_FixUpResourceModelNode and read by Scene_TraverseNodeTree for visibility animation data. Offset 0xAC.

Definition at line 5024 of file dttr_pcdogs.h.

◆ model_relocated_ptr_80

void* DTTR_PCDOGS_T_Scene_Node::model_relocated_ptr_80

Model-node pointer rebased by PKG_FixUpResourceModelNode . Offset 0x80.

Definition at line 5006 of file dttr_pcdogs.h.

◆ model_relocated_ptr_84

void* DTTR_PCDOGS_T_Scene_Node::model_relocated_ptr_84

Model-node pointer rebased by PKG_FixUpResourceModelNode . Offset 0x84.

Definition at line 5008 of file dttr_pcdogs.h.

◆ model_runtime_flags

uint32_t DTTR_PCDOGS_T_Scene_Node::model_runtime_flags

Flags read by traversal/render/fixup paths; PKG_FixUpResourceModelNode tests bit 1 , and collision polygon tests use transformed coordinates when bits 0x22 are set. Offset 0x88.

Definition at line 5010 of file dttr_pcdogs.h.

◆ next_in_resource_list

DTTR_PCDOGS_T_Scene_Node* DTTR_PCDOGS_T_Scene_Node::next_in_resource_list

Resource-side list link used to chain Scene_Node records during load and fixup. Offset 0x0.

Definition at line 4937 of file dttr_pcdogs.h.

◆ node_list_skip_count

int32_t DTTR_PCDOGS_T_Scene_Node::node_list_skip_count

Scene_RenderNodeTree treats this as a node-list cursor skip count when traversal flags hide a subtree. Offset 0x4.

Definition at line 4939 of file dttr_pcdogs.h.

◆ node_type

uint8_t DTTR_PCDOGS_T_Scene_Node::node_type

Node type byte read by Scene_UpdateNodeAnimation. Offset 0x64.

Definition at line 4981 of file dttr_pcdogs.h.

◆ offset_fixup_list_ptr

void* DTTR_PCDOGS_T_Scene_Node::offset_fixup_list_ptr

Rebased model-node fixup list pointer walked by PKG_FixUpResourceModelNode. Offset 0xB0.

Definition at line 5028 of file dttr_pcdogs.h.

◆ padding_5e

uint16_t DTTR_PCDOGS_T_Scene_Node::padding_5e

Offset 0x5E.

Definition at line 4978 of file dttr_pcdogs.h.

◆ padding_98

uint8_t DTTR_PCDOGS_T_Scene_Node::padding_98[4]

Reserved tail gap used by render finalize and bone paths. Offset 0x98.

Definition at line 5018 of file dttr_pcdogs.h.

◆ padding_b8

uint16_t DTTR_PCDOGS_T_Scene_Node::padding_b8

Reserved child-transform gap; no named read or write path is documented. Offset 0xB8.

Definition at line 5031 of file dttr_pcdogs.h.

◆ position_anim_channel_index_or_minus_one

int8_t DTTR_PCDOGS_T_Scene_Node::position_anim_channel_index_or_minus_one

Signed animation channel index read by Scene_UpdateNodeAnimation; negative values skip sampling. Offset 0x58.

Definition at line 4960 of file dttr_pcdogs.h.

◆ render_entry_index_for_type_6

int8_t DTTR_PCDOGS_T_Scene_Node::render_entry_index_for_type_6

Type-specific signed render and model-entry index used by node_type 6 render paths. Offset 0x66.

Definition at line 4984 of file dttr_pcdogs.h.

◆ render_offset_x

int32_t DTTR_PCDOGS_T_Scene_Node::render_offset_x

Model render position added to world_pos_x by Scene_TraverseNodeTree to produce render-space position. Offset 0xCC.

Definition at line 5054 of file dttr_pcdogs.h.

◆ render_offset_y

int32_t DTTR_PCDOGS_T_Scene_Node::render_offset_y

Model render position added to world_pos_y by Scene_TraverseNodeTree to produce render-space position. Offset 0xD0.

Definition at line 5057 of file dttr_pcdogs.h.

◆ render_offset_z

int32_t DTTR_PCDOGS_T_Scene_Node::render_offset_z

Model render position added to world_pos_z by Scene_TraverseNodeTree to produce render-space position. Offset 0xD4.

Definition at line 5060 of file dttr_pcdogs.h.

◆ render_param_1

int32_t DTTR_PCDOGS_T_Scene_Node::render_param_1

Type-specific render/collision parameter. For collision-style nodes, the low/high words can act as vertex and polygon counts. Offset 0x68.

Definition at line 4993 of file dttr_pcdogs.h.

◆ reserved_7e

uint8_t DTTR_PCDOGS_T_Scene_Node::reserved_7e[2]

Reserved model-node tail bytes before rebased model pointers. Offset 0x7E.

Definition at line 5004 of file dttr_pcdogs.h.

◆ reserved_a8

uint8_t DTTR_PCDOGS_T_Scene_Node::reserved_a8[4]

Reserved model-node tail gap before the rebased animation-data pointer. Offset 0xA8.

Definition at line 5022 of file dttr_pcdogs.h.

◆ reserved_c4

uint8_t DTTR_PCDOGS_T_Scene_Node::reserved_c4

Reserved byte before model-node type-1 dispatch metadata. Offset 0xC4.

Definition at line 5042 of file dttr_pcdogs.h.

◆ rotation_anim_channel_index_or_minus_one

int8_t DTTR_PCDOGS_T_Scene_Node::rotation_anim_channel_index_or_minus_one

Signed animation channel index read by Scene_UpdateNodeAnimation; negative values skip sampling. Offset 0x59.

Definition at line 4964 of file dttr_pcdogs.h.

◆ scale_anim_channel_index_or_minus_one

int8_t DTTR_PCDOGS_T_Scene_Node::scale_anim_channel_index_or_minus_one

Signed animation channel index read by Scene_UpdateNodeAnimation; negative values skip sampling. Offset 0x5B.

Definition at line 4973 of file dttr_pcdogs.h.

◆ sort_keys

int32_t DTTR_PCDOGS_T_Scene_Node::sort_keys[2]

Offset 0x9C.

Definition at line 5020 of file dttr_pcdogs.h.

◆ submesh_entry_table

DTTR_PCDOGS_T_Submesh_Entry* DTTR_PCDOGS_T_Scene_Node::submesh_entry_table

Offset 0x94.

Definition at line 5017 of file dttr_pcdogs.h.

◆ trail_effects_ptr

DTTR_PCDOGS_T_Trail_BoneEffect* DTTR_PCDOGS_T_Scene_Node::trail_effects_ptr

Offset 0x90.

Definition at line 5016 of file dttr_pcdogs.h.

◆ transform_parent_node

DTTR_PCDOGS_T_Scene_Node* DTTR_PCDOGS_T_Scene_Node::transform_parent_node

Parent transform node used by the renderer for traversal flags and parent world matrix/position fields. Offset 0x8.

Definition at line 4943 of file dttr_pcdogs.h.

◆ traversal_flags

uint8_t DTTR_PCDOGS_T_Scene_Node::traversal_flags

Traversal/visibility flags byte read by Scene_TraverseNodeTree. Offset 0x65.

Definition at line 4982 of file dttr_pcdogs.h.

◆ type_1_attach_point_index

int8_t DTTR_PCDOGS_T_Scene_Node::type_1_attach_point_index

For Scene_UpdateNodeAnimation node type 1, indexes actor attach_point_table entries. Offset 0xC6.

Definition at line 5048 of file dttr_pcdogs.h.

◆ type_1_bone_channel_index

int8_t DTTR_PCDOGS_T_Scene_Node::type_1_bone_channel_index

For Scene_UpdateNodeAnimation node type 1, indexes the type-1 bone/animation channel table. Offset 0xC7.

Definition at line 5050 of file dttr_pcdogs.h.

◆ type_1_dispatch_index

int8_t DTTR_PCDOGS_T_Scene_Node::type_1_dispatch_index

Signed dispatch index used by Scene_TraverseNodeTree and tested by PKG_FixUpResourceModelNode before rebasing LOD/config data. Offset 0xC5.

Definition at line 5044 of file dttr_pcdogs.h.

◆ type_specific_secondary_render_or_sound_index

int8_t DTTR_PCDOGS_T_Scene_Node::type_specific_secondary_render_or_sound_index

Type-specific secondary byte. For node_type 0x0b sound nodes this is a level-local sound index passed to Audio_PlayLevelSoundIndexAtPosition. Offset 0x67.

Definition at line 4987 of file dttr_pcdogs.h.

◆ variant_payload_ptr

void* DTTR_PCDOGS_T_Scene_Node::variant_payload_ptr

Type-specific pointer: model/mesh sprite table, type-8 simple-node payload, or collision/scene polygon array; rebased by PKG_FixUpResource*Node paths. Offset 0x6C.

Definition at line 4996 of file dttr_pcdogs.h.

◆ variant_transform_tail

uint32_t DTTR_PCDOGS_T_Scene_Node::variant_transform_tail

Reserved tail dword before trail_effects_ptr. Offset 0x8C.

Definition at line 5014 of file dttr_pcdogs.h.

◆ visibility_anim_channel_index_or_minus_one

int8_t DTTR_PCDOGS_T_Scene_Node::visibility_anim_channel_index_or_minus_one

Signed animation channel index read by visibility/render traversal; negative values skip sampling. Offset 0x5A.

Definition at line 4968 of file dttr_pcdogs.h.

◆ visibility_flags

uint8_t DTTR_PCDOGS_T_Scene_Node::visibility_flags[6]

Offset 0x78.

Definition at line 5003 of file dttr_pcdogs.h.

◆ world_delta_pos

DTTR_PCDOGS_T_Math_Vec3I32 DTTR_PCDOGS_T_Scene_Node::world_delta_pos

Per-update world position delta computed by Scene_UpdateNodeAnimation. Offset 0x4C.

Definition at line 4958 of file dttr_pcdogs.h.

◆ world_pos

DTTR_PCDOGS_T_Math_Vec3I32 DTTR_PCDOGS_T_Scene_Node::world_pos

Offset 0x40.

Definition at line 4956 of file dttr_pcdogs.h.

◆ world_rot_matrix

DTTR_PCDOGS_T_Math_Matrix3x3I16 DTTR_PCDOGS_T_Scene_Node::world_rot_matrix

Offset 0x2C.

Definition at line 4951 of file dttr_pcdogs.h.

◆ world_rot_reserved

int16_t DTTR_PCDOGS_T_Scene_Node::world_rot_reserved

Reserved word after world_rot_matrix. Scene_UpdateNodeAnimation writes the surrounding matrix fields, but this word is reserved for internal use. Offset 0x3E.

Definition at line 4952 of file dttr_pcdogs.h.


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