9 #include "skeleton_animator.h"
10 #include "shaders/viewchar.h"
12 vg_tex2d tex_characters
= { .path
= "textures/ch_gradient.qoi" };
14 static void character_register(void)
16 shader_viewchar_register();
19 static void character_init(void)
21 vg_tex2d_init( (vg_tex2d
*[]){ &tex_characters
}, 1 );
28 struct skeleton_anim
*anim_stand
,
32 *anim_push
, *anim_push_reverse
,
47 static int character_load( struct character
*ch
, const char *name
)
51 snprintf( buf
, sizeof(buf
)-1, "models/%s.mdl", name
);
52 mdl_header
*src
= mdl_load( buf
);
58 mdl_unpack_glmesh( src
, &ch
->mesh
);
61 vg_success( "Loaded character file '%s' with no errors\n", name
);
63 skeleton_setup( &ch
->sk
, src
);
64 ch
->anim_stand
= skeleton_get_anim( &ch
->sk
, "pose_stand" );
65 ch
->anim_highg
= skeleton_get_anim( &ch
->sk
, "pose_highg" );
66 ch
->anim_slide
= skeleton_get_anim( &ch
->sk
, "pose_slide" );
67 ch
->anim_air
= skeleton_get_anim( &ch
->sk
, "pose_air" );
68 ch
->anim_push
= skeleton_get_anim( &ch
->sk
, "push" );
69 ch
->anim_push_reverse
= skeleton_get_anim( &ch
->sk
, "push_reverse" );
70 ch
->anim_ollie
= skeleton_get_anim( &ch
->sk
, "ollie" );
72 ch
->id_hip
= skeleton_bone_id( &ch
->sk
, "hips" );
73 ch
->id_ik_hand_l
= skeleton_bone_id( &ch
->sk
, "hand.IK.L" );
74 ch
->id_ik_hand_r
= skeleton_bone_id( &ch
->sk
, "hand.IK.R" );
75 ch
->id_ik_elbow_l
= skeleton_bone_id( &ch
->sk
, "elbow.L" );
76 ch
->id_ik_elbow_r
= skeleton_bone_id( &ch
->sk
, "elbow.R" );
77 ch
->id_head
= skeleton_bone_id( &ch
->sk
, "head" );
83 static void character_eval( struct character
*ch
){}
84 static void character_draw( struct character
*ch
, float temp
, m4x3f camera
){}
85 static void character_init_ragdoll_joints( struct character
*ch
){}
86 static void character_init_ragdoll( struct character
*ch
){}
87 static void character_ragdoll_go( struct character
*ch
, v3f pos
){}
88 static void character_ragdoll_copypose( struct character
*ch
, v3f v
){}
89 static void character_debug_ragdoll( struct character
*ch
){}
90 static void character_ragdoll_iter( struct character
*ch
){}