diff --git a/src/p_3dfloors.cpp b/src/p_3dfloors.cpp index 4d9984eaa..732866c5b 100644 --- a/src/p_3dfloors.cpp +++ b/src/p_3dfloors.cpp @@ -891,11 +891,6 @@ void P_Spawn3DFloors (void) line.special=0; line.args[0] = line.args[1] = line.args[2] = line.args[3] = line.args[4] = 0; } - // kg3D - do it in software - for (auto &sec : level.sectors) - { - P_Recalculate3DFloors(&sec); - } } diff --git a/src/p_setup.cpp b/src/p_setup.cpp index 820596ecb..e7079fe50 100644 --- a/src/p_setup.cpp +++ b/src/p_setup.cpp @@ -4116,6 +4116,12 @@ void P_SetupLevel(const char *lumpname, int position, bool newGame) // This must be done BEFORE the PolyObj Spawn!!! InitRenderInfo(); // create hardware independent renderer resources for the level. screen->mVertexData->CreateVBO(); + + for (auto &sec : level.sectors) + { + P_Recalculate3DFloors(&sec); + } + SWRenderer->SetColormap(); //The SW renderer needs to do some special setup for the level's default colormap. InitPortalGroups(); P_InitHealthGroups(); diff --git a/wadsrc/static/zscript/level_compatibility.txt b/wadsrc/static/zscript/level_compatibility.txt index 90ecf8c96..c5915427a 100644 --- a/wadsrc/static/zscript/level_compatibility.txt +++ b/wadsrc/static/zscript/level_compatibility.txt @@ -179,6 +179,11 @@ class LevelCompatibility play { // The famous missing yellow key... SetThingFlags(470, 2016); + // Fix textures on the two switches that rise from the floor in the eastern area + for (int i = 0; i < 8; i++) + { + SetLineFlags(1676 + i, 0, Line.ML_DONTPEGBOTTOM); + } break; }