rendering_graph_node.h (1249B)
1 #ifndef RENDERING_GRAPH_NODE_H 2 #define RENDERING_GRAPH_NODE_H 3 4 #include <PR/ultratypes.h> 5 6 #include "engine/graph_node.h" 7 8 extern struct GraphNodeRoot *gCurGraphNodeRoot; 9 extern struct GraphNodeMasterList *gCurGraphNodeMasterList; 10 extern struct GraphNodePerspective *gCurGraphNodeCamFrustum; 11 extern struct GraphNodeCamera *gCurGraphNodeCamera; 12 extern struct GraphNodeObject *gCurGraphNodeObject; 13 extern struct GraphNodeHeldObject *gCurGraphNodeHeldObject; 14 extern u16 gAreaUpdateCounter; 15 16 // after processing an object, the type is reset to this 17 #define ANIM_TYPE_NONE 0 18 19 // Not all parts have full animation: to save space, some animations only 20 // have xz, y, or no translation at all. All animations have rotations though 21 #define ANIM_TYPE_TRANSLATION 1 22 #define ANIM_TYPE_VERTICAL_TRANSLATION 2 23 #define ANIM_TYPE_LATERAL_TRANSLATION 3 24 #define ANIM_TYPE_NO_TRANSLATION 4 25 26 // Every animation includes rotation, after processing any of the above 27 // translation types the type is set to this 28 #define ANIM_TYPE_ROTATION 5 29 30 void geo_process_node_and_siblings(struct GraphNode *firstNode); 31 void geo_process_root(struct GraphNodeRoot *node, Vp *b, Vp *c, s32 clearColor); 32 33 #endif // RENDERING_GRAPH_NODE_H