m4x3_invert_affine( localplayer.gate_waiting->transport, inverse );
m4x3_mulv( inverse, localplayer.cam.pos, localplayer.cam.pos );
- struct skeleton *sk = &localplayer.playeravatar->sk;
- skeleton_apply_transform( sk, inverse, localplayer.final_mtx );
+ skeleton_apply_transform( &localplayer.skeleton, inverse,
+ localplayer.final_mtx );
}
}
}
static void player__cam_iterate(void){
- struct player_avatar *av = localplayer.playeravatar;
struct player_cam_controller *cc = &localplayer.cam_control;
if( localplayer.subsystem == k_player_subsystem_walk ){
/* position */
v3f fpv_pos, fpv_offset;
- m4x3_mulv( localplayer.final_mtx[ av->id_head-1 ],
+ m4x3_mulv( localplayer.final_mtx[ localplayer.id_head-1 ],
cc->fpv_viewpoint_smooth, fpv_pos );
m3x3_mulv( localplayer.rb.to_world, cc->fpv_offset_smooth, fpv_offset );
v3_add( fpv_offset, fpv_pos, fpv_pos );