From f24df4f38d256aede92bb709226b495104234778 Mon Sep 17 00:00:00 2001 From: toaster Date: Tue, 30 May 2023 01:05:20 +0100 Subject: [PATCH] Remove the interp-caused jitter from cutaway camera behaviour It is preferable that smash cuts reset view interpolation IMO --- src/p_spec.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/p_spec.c b/src/p_spec.c index ccc40d337..aa1411f74 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -3026,6 +3026,7 @@ boolean P_ProcessSpecial(activator_t *activator, INT16 special, INT32 *args, cha { altview_t *modifyView = NULL; mobj_t *newViewMobj = NULL; + INT32 i; if (gamestate != GS_LEVEL) { @@ -3052,10 +3053,20 @@ boolean P_ProcessSpecial(activator_t *activator, INT16 special, INT32 *args, cha { // If titlemap, awayview.tics is ignored modifyView->tics = -1; + + R_ResetViewInterpolation(0); } else { modifyView->tics = args[1]; + + for (i = 0; i <= r_splitscreen; i++) + { + if (displayplayers[i] == (mo->player - players)) + { + R_ResetViewInterpolation(i + 1); + } + } } if (args[2] != 0) @@ -3067,7 +3078,6 @@ boolean P_ProcessSpecial(activator_t *activator, INT16 special, INT32 *args, cha case TMCAM_THIRD: { mobj_t *firstPlace = NULL; - INT32 i; for (i = 0; i < MAXPLAYERS; i++) {