diff --git a/source/games/whaven/src/main.cpp b/source/games/whaven/src/main.cpp index 1f6338342..67049068e 100644 --- a/source/games/whaven/src/main.cpp +++ b/source/games/whaven/src/main.cpp @@ -670,6 +670,7 @@ void GameInterface::Ticker() r_NoInterpolate = true; return; } + UpdateInterpolations(); for (int i = connecthead; i >= 0; i = connectpoint2[i]) player[i].oldsector = player[i].sector; diff --git a/source/games/whaven/src/render.cpp b/source/games/whaven/src/render.cpp index b714bab45..d51f1eeec 100644 --- a/source/games/whaven/src/render.cpp +++ b/source/games/whaven/src/render.cpp @@ -39,6 +39,10 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly) crotscrnang = plr.angle.interpolatedrotscrn(dasmoothratio); } + DoInterpolations(dasmoothratio / 65536.); + pm_smoothratio = (int)dasmoothratio; + + if (plr.over_shoulder_on) { sprite[plr.spritenum].cstat |= CSTAT_SPRITE_TRANSLUCENT; @@ -114,6 +118,7 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly) DrawOverheadMap(cposx, cposy, cang.asbuild(), dasmoothratio); } } + RestoreInterpolations(); } void GameInterface::processSprites(spritetype* tsprite, int& spritesortcnt, int viewx, int viewy, int viewz, binangle viewang, double smoothRatio)