From cd953da74e652bc1a4d598448f68f35df152175e Mon Sep 17 00:00:00 2001 From: hgn Date: Sat, 12 Aug 2023 19:29:42 +0100 Subject: [PATCH] fix wishlist item --- maps_src/mp_spawn/main.mdl | Bin 13234440 -> 13255056 bytes player_skate.c | 35 ++++++++++++++++++----------------- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/maps_src/mp_spawn/main.mdl b/maps_src/mp_spawn/main.mdl index acbcb5130344d26b6c5ee22cf2b5219322a11bd7..078f952c3c820962735d9885294979b0c9d81fcf 100644 GIT binary patch delta 21246 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.up_dir ) > 0.001f ){ - if( v4_length(s->state.smoothed_rotation) <= 0.1f || - v4_length(s->state.smoothed_rotation) >= 1.1f ){ - vg_warn( "FIX THIS! CARROT\n" ); /* this never happens anymore? */ - v4_copy( player->rb.q, s->state.smoothed_rotation ); - } v4_lerp( s->state.smoothed_rotation, player->rb.q, 2.0f*vg.time_frame_delta, s->state.smoothed_rotation ); q_normalize( s->state.smoothed_rotation ); - v3f yaw_ref = {1.0f,0.0f,0.0f}, - yaw_smooth = {1.0f,0.0f,0.0f}; - q_mulv( player->rb.q, yaw_ref, yaw_ref ); + v3f yaw_smooth = {1.0f,0.0f,0.0f}; q_mulv( s->state.smoothed_rotation, yaw_smooth, yaw_smooth ); m3x3_mulv( player->rb.to_local, yaw_smooth, yaw_smooth ); - m3x3_mulv( player->rb.to_local, yaw_ref, yaw_ref ); + yaw_smooth[1] = 0.0f; + v3_normalize( yaw_smooth ); - f32 yaw_counter_rotate = v3_dot(yaw_ref,yaw_smooth); - yaw_counter_rotate = vg_clampf(yaw_counter_rotate,-0.7f,0.7f); + f32 yaw_counter_rotate = yaw_smooth[0]; + yaw_counter_rotate = vg_maxf( 0.7f, yaw_counter_rotate ); yaw_counter_rotate = acosf( yaw_counter_rotate ); yaw_counter_rotate *= 1.0f-animator->fly; @@ -2882,7 +2876,6 @@ VG_STATIC void player__skate_animate( player_instance *player ){ v3_normalize( ndir ); v3f up = { 0.0f, 1.0f, 0.0f }; - float a = v3_dot( ndir, up ); a = acosf( vg_clampf( a, -1.0f, 1.0f ) ); @@ -2890,9 +2883,11 @@ VG_STATIC void player__skate_animate( player_instance *player ){ v4f qcounteryaw, qfixup; v3_cross( up, ndir, axis ); - q_axis_angle( qfixup, axis, a ); + q_axis_angle( qfixup, axis, a*2.0f ); + + v3_cross( (v3f){1.0f,0.0f,0.0f}, yaw_smooth, axis ); + q_axis_angle( qcounteryaw, axis, yaw_counter_rotate ); - q_axis_angle( qcounteryaw, (v3f){0.0f,1.0f,0.0f}, yaw_counter_rotate ); q_mul( qcounteryaw, qfixup, animator->qfixuptotal ); q_normalize( animator->qfixuptotal ); @@ -2900,11 +2895,10 @@ VG_STATIC void player__skate_animate( player_instance *player ){ m3x3_mulv( player->rb.to_world, up, p1 ); m3x3_mulv( player->rb.to_world, ndir, p2 ); - vg_line_arrow( player->rb.co, p1, 0.25f, VG__PINK ); - vg_line_arrow( player->rb.co, p2, 0.25f, VG__PINK ); + vg_line_arrow( player->rb.co, p1, 0.5f, VG__PINK ); + vg_line_arrow( player->rb.co, p2, 0.5f, VG__PINK ); } else q_identity( animator->qfixuptotal ); - q_identity( animator->qfixuptotal ); rb_extrapolate( &player->rb, animator->root_co, animator->root_q ); } @@ -3064,14 +3058,19 @@ VG_STATIC void player__skate_pose( player_instance *player, player_pose *pose ){ if( animator->trick_type == k_trick_type_kickflip ){ kf_foot_l->co[0] += animator->trick_foot * 0.2f; + kf_foot_l->co[1] -= animator->trick_foot * 0.18f; } else if( animator->trick_type == k_trick_type_shuvit ){ kf_foot_l->co[0] += animator->trick_foot * 0.1f; kf_foot_r->co[0] -= animator->trick_foot * 0.15f; + kf_foot_l->co[1] -= animator->trick_foot * 0.18f; + kf_foot_r->co[1] -= animator->trick_foot * 0.18f; } else if( animator->trick_type == k_trick_type_treflip ){ kf_foot_l->co[0] += animator->trick_foot * 0.2f; kf_foot_r->co[0] -= animator->trick_foot * 0.15f; + kf_foot_l->co[1] -= animator->trick_foot * 0.18f; + kf_foot_r->co[1] -= animator->trick_foot * 0.18f; } /* @@ -3092,6 +3091,7 @@ VG_STATIC void player__skate_pose( player_instance *player, player_pose *pose ){ q_normalize( kf_wheels[i]->q ); } +#if 0 { mdl_keyframe *kf_head = &pose->keyframes[av->id_head-1], @@ -3122,6 +3122,7 @@ VG_STATIC void player__skate_pose( player_instance *player, player_pose *pose ){ q_mul( qrot, kf_head->q, kf_head->q ); q_normalize( kf_head->q ); } +#endif } VG_STATIC void player__skate_post_animate( player_instance *player ) -- 2.25.1