- moved the interpolator into FLevelLocals and refactored its use to happen outside the renderers.
There is no need to do this deep inside the renderer where it required code duplication and made it problematic to execute on multiple levels. This is now being done before and after the top level call into the renderer in d_main.cpp. This also serializes the interpolator itself to avoid problems with the Serialize functions adding the interpolations into the list which can only work with a single global instance.
This commit is contained in:
parent
6a43d6c7ff
commit
3364988680
14 changed files with 38 additions and 31 deletions
|
|
@ -288,6 +288,7 @@ void FLevelLocals::ClearLevelData()
|
|||
}
|
||||
ClearPortals();
|
||||
|
||||
interpolator.ClearInterpolations(); // [RH] Nothing to interpolate on a fresh level.
|
||||
tagManager.Clear();
|
||||
ClearTIDHashes();
|
||||
Behaviors.UnloadModules();
|
||||
|
|
@ -350,7 +351,6 @@ void P_FreeLevelData ()
|
|||
R_FreePastViewers();
|
||||
P_ClearUDMFKeys();
|
||||
|
||||
interpolator.ClearInterpolations(); // [RH] Nothing to interpolate on a fresh level.
|
||||
SN_StopAllSequences ();
|
||||
DThinker::DestroyAllThinkers ();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue