diff --git a/src/d_main.cpp b/src/d_main.cpp index 67f6f2e81..c40103d56 100644 --- a/src/d_main.cpp +++ b/src/d_main.cpp @@ -892,7 +892,7 @@ void D_WipeLoop(wipelooptype_t type, UINT8 wipetype, boolean drawMenu) } #endif - if (type == WIPELOOP_TITLECARD) + if (rendermode != render_none && type == WIPELOOP_TITLECARD) ST_preLevelTitleCardDrawer(); D_WipeDraw(drawMenu); diff --git a/src/p_setup.c b/src/p_setup.c index 5013b1d43..e833a0fb1 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -9012,12 +9012,14 @@ boolean P_LoadLevel(boolean fromnetsave, boolean reloadinggamestate) levelloading = false; } - if (rendermode != render_none && reloadinggamestate == false) + if (reloadinggamestate == false) { - - R_ResetViewInterpolation(0); - R_ResetViewInterpolation(0); - R_UpdateMobjInterpolators(); + if (rendermode != render_none) + { + R_ResetViewInterpolation(0); + R_ResetViewInterpolation(0); + R_UpdateMobjInterpolators(); + } // Title card! G_StartTitleCard(); @@ -9026,6 +9028,10 @@ boolean P_LoadLevel(boolean fromnetsave, boolean reloadinggamestate) if (WipeStageTitle && ranspecialwipe != 2 && fromnetsave == false) { G_PreLevelTitleCard(); + + // don't do a fade-in if we ran the title card, it trips up dedis! + // normal clients never see the fade-in, and it causes a very brief lag spike + wipegamestate = gamestate; } }