modular stuffs
[carveJwlIkooP6JGAAIwe30JlM.git] / player_render.h
diff --git a/player_render.h b/player_render.h
new file mode 100644 (file)
index 0000000..e9d17bb
--- /dev/null
@@ -0,0 +1,59 @@
+#ifndef PLAYER_RENDER_H
+#define PLAYER_RENDER_H
+
+#include "model.h"
+#include "skeleton.h"
+
+struct player_avatar
+{
+   mdl_context meta;
+   struct skeleton sk;
+
+   u32 id_hip,
+       id_ik_hand_l,
+       id_ik_hand_r,
+       id_ik_elbow_l,
+       id_ik_elbow_r,
+       id_head,
+       id_ik_foot_l,
+       id_ik_foot_r,
+       id_ik_knee_l,
+       id_ik_knee_r,
+       id_wheel_l,
+       id_wheel_r,
+       id_board;
+};
+
+struct player_model
+{
+   glmesh mesh;
+   GLuint texture;
+};
+
+enum eboard_truck{
+   k_board_truck_back = 0,
+   k_board_truck_front = 1
+};
+
+enum eboard_wheel{
+   k_board_wheel_fl = 0,
+   k_board_wheel_fr = 1,
+   k_board_wheel_bl = 2,
+   k_board_wheel_br = 3,
+};
+
+struct player_board
+{
+   glmesh mesh;
+   GLuint texture;
+
+   v4f wheel_positions[4],
+       truck_positions[2],
+       board_position;
+
+   mdl_submesh wheels[4],
+               trucks[2],
+               board;
+};
+
+#endif /* PLAYER_RENDER_H */