diff --git a/src/p_setup.c b/src/p_setup.c
index 3929c2aa71ca17399dcececc4721dfd0ba065544..560c2673449dec444ab961a6c52530f59a4fc092 100644
--- a/src/p_setup.c
+++ b/src/p_setup.c
@@ -3385,7 +3385,6 @@ boolean P_SetupLevel(boolean skipprecip)
 
 	R_ResetViewInterpolation(0);
 	R_ResetViewInterpolation(0);
-	R_UpdateMobjInterpolators();
 
 	return true;
 }
diff --git a/src/p_tick.c b/src/p_tick.c
index 96cbff2b29f2a005190ed62ec629be49a0d0a569..830ed60bed903331e7eb437c47fba4cb8103a625 100644
--- a/src/p_tick.c
+++ b/src/p_tick.c
@@ -827,6 +827,8 @@ void P_PreTicker(INT32 frames)
 	{
 		P_MapStart();
 
+		R_UpdateMobjInterpolators();
+
 #ifdef HAVE_BLUA
 		LUAh_PreThinkFrame();
 #endif