papermario
Decompilation of Paper Mario
 
Loading...
Searching...
No Matches
animator.c File Reference

Data Structures

struct  DisplayListBufferHandle
 

Typedefs

typedef DisplayListBufferHandle AnimatedMeshVertexCopyList[0x60]
 

Functions

void appendGfx_animator_node (ModelAnimator *, AnimatorNode *, Matrix4f)
 
Vtxanimator_copy_vertices_to_buffer (ModelAnimator *animator, AnimatorNode *node, Vec3s *buffer, s32 vtxCount, s32 overhead, s32 startIdx)
 
void animator_make_mirrorZ (Matrix4f mtx)
 
void animator_make_mirrorY (Matrix4f mtx)
 
void animator_make_mirrorX (Matrix4f mtx)
 
void animator_make_identity (Matrix4f mtx)
 
AnimatorNodeget_animator_child_with_id (AnimatorNode *node, s32 id)
 
AnimatorNodeget_animator_child_for_model (AnimatorNode *node, s32 modelId)
 
void free_animator_nodes (AnimatorNode *root)
 
void clear_animator_list (void)
 
void reset_animator_list (void)
 
void delete_model_animator_node (AnimatorNode *node)
 
void delete_model_animator_nodes (ModelAnimator *animator)
 
void delete_model_animator (ModelAnimator *animator)
 
s32 create_model_animator (s16 *animPos)
 
s32 create_mesh_animator (s16 *animPos, s16 *animBuffer)
 
AnimatorNodeadd_anim_node (ModelAnimator *animator, s32 parentNodeID, AnimatorNodeBlueprint *nodeBP)
 
void update_model_animator (s32 animatorID)
 
void update_model_animator_with_transform (s32 animatorID, Mtx *mtx)
 
s32 step_model_animator (ModelAnimator *animator)
 
void animator_update_model_transforms (ModelAnimator *animator, Mtx *rootTransform)
 
void animator_node_update_model_transform (ModelAnimator *animator, f32(*flipMtx)[4], AnimatorNode *node, Mtx *rootTransform)
 
void render_animated_model (s32 animatorID, Mtx *rootTransform)
 
void render_animated_model_with_vertices (s32 animatorID, Mtx *rootTransform, s32 segment, void *baseAddr)
 
void appendGfx_animator (ModelAnimator *animator)
 
AnimatorNodeget_animator_node_for_tree_index (ModelAnimator *animator, s32 arg1)
 
AnimatorNodeget_animator_node_with_id (ModelAnimator *animator, s32 id)
 
void set_animator_tree_to_node_map (ModelAnimator *animator, s32 *nodeIDs, s32 count)
 
ModelAnimatorget_animator_by_index (s32 animModelID)
 
ModelAnimatorset_animator_render_callback (s32 animModelID, void *callbackArg, void(*callbackFunc)(void *))
 
void enable_anim_model_fog (void)
 
void disable_anim_model_fog (void)
 
void set_anim_model_fog_dist (s32 start, s32 end)
 
void set_anim_model_fog_color (s32 r, s32 g, s32 b, s32 a)
 
s32 is_anim_model_fog_enabled (void)
 
void get_anim_model_fog_distance (s32 *start, s32 *end)
 
void get_anim_model_fog_color (s32 *r, s32 *g, s32 *b, s32 *a)
 
void set_animator_flags (s32 index, s32 bits)
 
void clear_animator_flags (s32 index, s32 bits)
 
void play_model_animation (s32 index, s16 *animPos)
 
void play_model_animation_starting_from (s32 index, s16 *animPos, s32 framesToSkip)
 
void load_model_animator_node (StaticAnimatorNode *node, ModelAnimator *animator, s32 parentNodeID, s32 *treeIndexToNodeIDs)
 
void load_model_animator_tree (s32 index, StaticAnimatorNode **tree)
 
void load_mesh_animator_node (StaticAnimatorNode *node, ModelAnimator *animator, s32 parentNodeID, s32 *treeIndexToNodeIDs)
 
void load_mesh_animator_tree (s32 index, StaticAnimatorNode **tree)
 
void reload_mesh_animator_node (StaticAnimatorNode *node, ModelAnimator *animator, s32 parentNodeID, s32 *treeIndexToNodeIDs)
 
void reload_mesh_animator_tree (ModelAnimator *animator)
 
s32 step_mesh_animator (ModelAnimator *animator)
 

Variables

s32 gAnimCount
 
BSS AnimatedMeshVertexCopyList D_801533C0
 
BSS AnimatedMeshVertexCopyList D_801536C0
 
BSS AnimatedMeshList D_801539C0
 
BSS AnimatedMeshList D_80153A00
 
BSS AnimatedMeshListgCurrentAnimMeshListPtr
 
BSS s32 gAnimModelFogEnabled
 
BSS s32 gAnimModelFogR
 
BSS s32 gAnimModelFogG
 
BSS s32 gAnimModelFogB
 
BSS s32 gAnimModelFogA
 
BSS s32 gAnimModelFogStart
 
BSS s32 gAnimModelFogEnd
 
BSS s32 gAnimVtxSegment
 
BSS s32 D_80153A64
 
BSS Matrix4f gAnimRotMtx
 
BSS Matrix4f gAnimScaleMtx
 
BSS Matrix4f gAnimTranslateMtx
 
BSS Matrix4f gAnimRotScaleMtx
 
BSS StaticAnimatorNode ** gAnimTreeRoot
 
Gfx Gfx_RM1_SURFACE_OPA []
 
Gfx Gfx_RM1_DECAL_OPA []
 
Gfx Gfx_RM1_INTERSECTING_OPA []
 
Gfx Gfx_RM1_ALPHATEST []
 
Gfx Gfx_RM1_SURFACE_XLU []
 
Gfx Gfx_RM1_DECAL_XLU []
 
Gfx Gfx_RM1_INTERSECTING_XLU []
 
Gfx Gfx_RM3_SURFACE_OPA []
 
Gfx Gfx_RM3_DECAL_OPA []
 
Gfx Gfx_RM3_INTERSECTING_OPA []
 
Gfx Gfx_RM3_ALPHATEST []
 
Gfx Gfx_RM3_SURFACE_XLU []
 
Gfx Gfx_RM3_DECAL_XLU []
 
Gfx Gfx_RM3_INTERSECTING_XLU []
 
AnimScript gAnimScriptDefault
 

Data Structure Documentation

◆ DisplayListBufferHandle

struct DisplayListBufferHandle
Data Fields
void * addr
s32 ttl

Typedef Documentation

◆ AnimatedMeshVertexCopyList

typedef DisplayListBufferHandle AnimatedMeshVertexCopyList[0x60]

Function Documentation

◆ add_anim_node()

AnimatorNode * add_anim_node ( ModelAnimator * animator,
s32 parentNodeID,
AnimatorNodeBlueprint * nodeBP )

◆ animator_copy_vertices_to_buffer()

Vtx * animator_copy_vertices_to_buffer ( ModelAnimator * animator,
AnimatorNode * node,
Vec3s * buffer,
s32 vtxCount,
s32 overhead,
s32 startIdx )

Referenced by appendGfx_animator_node().

◆ animator_make_identity()

void animator_make_identity ( Matrix4f mtx)

◆ animator_make_mirrorX()

void animator_make_mirrorX ( Matrix4f mtx)

◆ animator_make_mirrorY()

void animator_make_mirrorY ( Matrix4f mtx)

◆ animator_make_mirrorZ()

void animator_make_mirrorZ ( Matrix4f mtx)

◆ animator_node_update_model_transform()

void animator_node_update_model_transform ( ModelAnimator * animator,
f32(*) flipMtx[4],
AnimatorNode * node,
Mtx * rootTransform )

◆ animator_update_model_transforms()

void animator_update_model_transforms ( ModelAnimator * animator,
Mtx * rootTransform )

◆ appendGfx_animator()

void appendGfx_animator ( ModelAnimator * animator)

◆ appendGfx_animator_node()

void appendGfx_animator_node ( ModelAnimator * animator,
AnimatorNode * node,
Matrix4f mtx )

◆ clear_animator_flags()

void clear_animator_flags ( s32 index,
s32 bits )

◆ clear_animator_list()

◆ create_mesh_animator()

s32 create_mesh_animator ( s16 * animPos,
s16 * animBuffer )

Referenced by load_split_entity_data().

◆ create_model_animator()

s32 create_model_animator ( s16 * animPos)

◆ delete_model_animator()

void delete_model_animator ( ModelAnimator * animator)

◆ delete_model_animator_node()

void delete_model_animator_node ( AnimatorNode * node)

◆ delete_model_animator_nodes()

void delete_model_animator_nodes ( ModelAnimator * animator)

◆ disable_anim_model_fog()

void disable_anim_model_fog ( void )

◆ enable_anim_model_fog()

void enable_anim_model_fog ( void )

◆ free_animator_nodes()

void free_animator_nodes ( AnimatorNode * root)

Referenced by free_animator_nodes().

◆ get_anim_model_fog_color()

void get_anim_model_fog_color ( s32 * r,
s32 * g,
s32 * b,
s32 * a )

◆ get_anim_model_fog_distance()

void get_anim_model_fog_distance ( s32 * start,
s32 * end )

◆ get_animator_by_index()

◆ get_animator_child_for_model()

AnimatorNode * get_animator_child_for_model ( AnimatorNode * node,
s32 modelId )

◆ get_animator_child_with_id()

◆ get_animator_node_for_tree_index()

AnimatorNode * get_animator_node_for_tree_index ( ModelAnimator * animator,
s32 arg1 )

◆ get_animator_node_with_id()

AnimatorNode * get_animator_node_with_id ( ModelAnimator * animator,
s32 id )

◆ is_anim_model_fog_enabled()

s32 is_anim_model_fog_enabled ( void )

◆ load_mesh_animator_node()

void load_mesh_animator_node ( StaticAnimatorNode * node,
ModelAnimator * animator,
s32 parentNodeID,
s32 * treeIndexToNodeIDs )

◆ load_mesh_animator_tree()

void load_mesh_animator_tree ( s32 index,
StaticAnimatorNode ** tree )

Referenced by load_split_entity_data().

◆ load_model_animator_node()

void load_model_animator_node ( StaticAnimatorNode * node,
ModelAnimator * animator,
s32 parentNodeID,
s32 * treeIndexToNodeIDs )

◆ load_model_animator_tree()

void load_model_animator_tree ( s32 index,
StaticAnimatorNode ** tree )

◆ play_model_animation()

◆ play_model_animation_starting_from()

void play_model_animation_starting_from ( s32 index,
s16 * animPos,
s32 framesToSkip )

◆ reload_mesh_animator_node()

void reload_mesh_animator_node ( StaticAnimatorNode * node,
ModelAnimator * animator,
s32 parentNodeID,
s32 * treeIndexToNodeIDs )

◆ reload_mesh_animator_tree()

void reload_mesh_animator_tree ( ModelAnimator * animator)

◆ render_animated_model()

void render_animated_model ( s32 animatorID,
Mtx * rootTransform )

◆ render_animated_model_with_vertices()

void render_animated_model_with_vertices ( s32 animatorID,
Mtx * rootTransform,
s32 segment,
void * baseAddr )

Referenced by render_entities(), and render_shadows().

◆ reset_animator_list()

◆ set_anim_model_fog_color()

void set_anim_model_fog_color ( s32 r,
s32 g,
s32 b,
s32 a )

◆ set_anim_model_fog_dist()

void set_anim_model_fog_dist ( s32 start,
s32 end )

◆ set_animator_flags()

void set_animator_flags ( s32 index,
s32 bits )

◆ set_animator_render_callback()

ModelAnimator * set_animator_render_callback ( s32 animModelID,
void * callbackArg,
void(*)(void *) callbackFunc )

Referenced by render_entities().

◆ set_animator_tree_to_node_map()

void set_animator_tree_to_node_map ( ModelAnimator * animator,
s32 * nodeIDs,
s32 count )

◆ step_mesh_animator()

s32 step_mesh_animator ( ModelAnimator * animator)

◆ step_model_animator()

s32 step_model_animator ( ModelAnimator * animator)

◆ update_model_animator()

◆ update_model_animator_with_transform()

void update_model_animator_with_transform ( s32 animatorID,
Mtx * mtx )

Referenced by update_animated_models().

Variable Documentation

◆ D_801533C0

◆ D_801536C0

◆ D_801539C0

◆ D_80153A00

◆ D_80153A64

BSS s32 D_80153A64

◆ gAnimCount

◆ gAnimModelFogA

◆ gAnimModelFogB

◆ gAnimModelFogEnabled

◆ gAnimModelFogEnd

◆ gAnimModelFogG

◆ gAnimModelFogR

◆ gAnimModelFogStart

◆ gAnimRotMtx

◆ gAnimRotScaleMtx

BSS Matrix4f gAnimRotScaleMtx

◆ gAnimScaleMtx

BSS Matrix4f gAnimScaleMtx

◆ gAnimScriptDefault

AnimScript gAnimScriptDefault
Initial value:
= {
AS_WAIT, 60 ,
}
@ AS_END
Definition animation_script.h:9
@ AS_WAIT
Definition animation_script.h:10

Referenced by create_model_animator().

◆ gAnimTranslateMtx

BSS Matrix4f gAnimTranslateMtx

◆ gAnimTreeRoot

◆ gAnimVtxSegment

◆ gCurrentAnimMeshListPtr

◆ Gfx_RM1_ALPHATEST

◆ Gfx_RM1_DECAL_OPA

◆ Gfx_RM1_DECAL_XLU

◆ Gfx_RM1_INTERSECTING_OPA

◆ Gfx_RM1_INTERSECTING_XLU

◆ Gfx_RM1_SURFACE_OPA

◆ Gfx_RM1_SURFACE_XLU

◆ Gfx_RM3_ALPHATEST

◆ Gfx_RM3_DECAL_OPA

◆ Gfx_RM3_DECAL_XLU

◆ Gfx_RM3_INTERSECTING_OPA

◆ Gfx_RM3_INTERSECTING_XLU

◆ Gfx_RM3_SURFACE_OPA

◆ Gfx_RM3_SURFACE_XLU