From beba12acde71d2bc40f5354a0ffa0a8a6d920d26 Mon Sep 17 00:00:00 2001 From: NepDisk Date: Sun, 9 Feb 2025 11:48:52 -0500 Subject: [PATCH] uncap vhs effect both this and the last commit are from Saturn --- src/v_video.c | 34 +++++++++++++--------------------- 1 file changed, 13 insertions(+), 21 deletions(-) diff --git a/src/v_video.c b/src/v_video.c index b29dae81f..60d7e53b8 100644 --- a/src/v_video.c +++ b/src/v_video.c @@ -1402,7 +1402,7 @@ void V_DrawPatchFill(patch_t *pat) void V_DrawVhsEffect(boolean rewind) { - static fixed_t upbary = 100, downbary = 150; + static fixed_t upbary = 100*FRACUNIT, downbary = 150*FRACUNIT; UINT8 *buf = screens[0], *tmp = screens[4]; UINT16 y; @@ -1422,27 +1422,19 @@ void V_DrawVhsEffect(boolean rewind) if (rewind) V_DrawVhsEffect(false); // experimentation - if (R_UsingFrameInterpolation()) // omg i fucking hate interp so much, its a bit smoother but still not great whatever, atleast like this shit wont completely go nuts when youre on high framerates - { - if (renderisnewtic) - { - upbary -= FixedMul(vid.dupy * (rewind ? 3 : 1.8f), 22937*3); - downbary += FixedMul(vid.dupy * (rewind ? 2 : 1), 22937*3); - } - } - else - { - upbary -= vid.dupy * (rewind ? 3 : 1.8f); - downbary += vid.dupy * (rewind ? 2 : 1); - } + fixed_t frac = R_UsingFrameInterpolation() ? renderdeltatics : FRACUNIT; + upbary -= frac * (vid.dupy * (rewind ? 3 : 1.8f)); + downbary += frac * (vid.dupy * (rewind ? 2 : 1)); - if (upbary < -barsize) upbary = vid.height; - if (downbary > vid.height) downbary = -barsize; + if (upbary < -barsize*FRACUNIT) upbary = vid.height< vid.height<>FRACBITS, dby = downbary>>FRACBITS; #ifdef HWRENDER if ((rendermode == render_opengl)) { - HWR_RenderVhsEffect(upbary, downbary, updistort, downdistort, barsize); + HWR_RenderVhsEffect(uby, dby, updistort, downdistort, barsize); return; } #endif @@ -1452,15 +1444,15 @@ void V_DrawVhsEffect(boolean rewind) thismapstart = normalmapstart; offs = 0; - if (y >= upbary && y < upbary+barsize) + if (y >= uby && y < uby+barsize) { thismapstart -= (2<= downbary && y < downbary+barsize) + if (y >= dby && y < dby+barsize) { thismapstart -= (2<