-#ifndef PLAYER_RENDER_H
-#define PLAYER_RENDER_H
-
+#pragma once
#include "model.h"
#include "skeleton.h"
-#include "camera.h"
+#include "vg/vg_camera.h"
#include "world.h"
+#include "player_render.h"
+#include "player_api.h"
+#include "player_replay.h"
enum eboard_truck{
k_board_truck_back = 0,
k_board_shader_entity
};
-static void dynamic_model_load( mdl_context *ctx,
- struct dynamic_model_1texture *mdl,
- const char *path, u32 *fixup_table );
-static void dynamic_model_unload( struct dynamic_model_1texture *mdl );
-
-static void player_board_load( struct player_board *mdl, const char *path );
-static void player_board_unload( struct player_board *mdl );
+void dynamic_model_load( mdl_context *ctx,
+ struct dynamic_model_1texture *mdl,
+ const char *path, u32 *fixup_table );
+void dynamic_model_unload( struct dynamic_model_1texture *mdl );
-static void player_model_load( struct player_model *board, const char *path);
-static void player_model_unload( struct player_model *board );
+void player_board_load( struct player_board *mdl, const char *path );
+void player_board_unload( struct player_board *mdl );
-static void render_board( camera *cam, world_instance *world,
- struct player_board *board, m4x3f root,
- struct player_board_pose *pose,
- enum board_shader shader );
+void player_model_load( struct player_model *board, const char *path);
+void player_model_unload( struct player_model *board );
-static void render_playermodel( camera *cam, world_instance *world,
- int depth_compare,
- struct player_model *model,
- struct skeleton *skeleton,
- m4x3f *final_mtx );
-static void apply_full_skeleton_pose( struct skeleton *sk, player_pose *pose,
- m4x3f *final_mtx );
-static void lerp_player_pose( player_pose *pose0, player_pose *pose1, f32 t,
- player_pose *posed );
+void render_board( vg_camera *cam, world_instance *world,
+ struct player_board *board, m4x3f root,
+ struct player_board_pose *pose,
+ enum board_shader shader );
-#endif /* PLAYER_RENDER_H */
+void render_playermodel( vg_camera *cam, world_instance *world,
+ int depth_compare,
+ struct player_model *model,
+ struct skeleton *skeleton,
+ m4x3f *final_mtx );
+void apply_full_skeleton_pose( struct skeleton *sk, player_pose *pose,
+ m4x3f *final_mtx );
+void lerp_player_pose( player_pose *pose0, player_pose *pose1, f32 t,
+ player_pose *posed );
+void player_mirror_pose( mdl_keyframe pose[32],
+ mdl_keyframe mirrored[32] );
+void player__observe_system( enum player_subsystem id );
+void player_load_animation_reference( const char *path );
+void player__render( vg_camera *cam );
+void player__animate_from_replay( replay_buffer *replay );
+void player__animate(void);
+void player__pre_render(void);