X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;ds=sidebyside;f=player_common.c;h=84ce9e3606e1deb7c937dde3af1022152fad0c41;hb=4fa9aa9a1e09940e91cc30e171e3de0606515ef3;hp=203f52bc28e4500acfbe38a38f8442c8da909169;hpb=333430b27b5f9f73cbe9ad7921a4735aaff444f1;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_common.c b/player_common.c index 203f52b..84ce9e3 100644 --- a/player_common.c +++ b/player_common.c @@ -52,14 +52,13 @@ static void player_camera_portal_correction(void){ 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 ){ @@ -127,7 +126,7 @@ static void player__cam_iterate(void){ /* 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 ); @@ -188,6 +187,8 @@ static void player__cam_iterate(void){ v3f pco; v4f pq; rb_extrapolate( &localplayer.rb, pco, pq ); + v3_muladds( pco, localplayer.holdout_pose.root_co, + localplayer.holdout_time, pco ); v3_lerp( cc->tpv_lpf, pco, 20.0f*vg.time_frame_delta, cc->tpv_lpf ); /* now move into world */ @@ -203,13 +204,6 @@ static void player__cam_iterate(void){ v3_muladds( tpv_offset, cc->cam_velocity_smooth, -0.025f, tpv_offset ); v3_add( tpv_origin, tpv_offset, tpv_pos ); -#if 0 - f32 t; v3f n; - if( spherecast_world( world_current_instance(), tpv_origin, tpv_pos, - 0.2f, &t, n ) != -1 ){ - v3_lerp( tpv_origin, tpv_pos, t, tpv_pos ); - } -#endif /* * Blend cameras