From 9bd20ce5a85456b43850977f45e0d9f92307e83f Mon Sep 17 00:00:00 2001
From: RaveYard <29225776+MrRaveYard@users.noreply.github.com>
Date: Mon, 4 Sep 2023 10:32:59 +0200
Subject: [PATCH] Fix the lightmapper ceiling/floor plane calculations

---
 src/rendering/hwrenderer/doom_levelmesh.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/rendering/hwrenderer/doom_levelmesh.cpp b/src/rendering/hwrenderer/doom_levelmesh.cpp
index f6738b84aa..cf6c9c17da 100644
--- a/src/rendering/hwrenderer/doom_levelmesh.cpp
+++ b/src/rendering/hwrenderer/doom_levelmesh.cpp
@@ -509,7 +509,7 @@ void DoomLevelMesh::CreateFloorSurface(FLevelLocals &doomMap, subsector_t *sub,
 	surf.Type = ST_FLOOR;
 	surf.typeIndex = typeIndex;
 	surf.ControlSector = is3DFloor ? sector : nullptr;
-	surf.plane = FVector4((float)plane.Normal().X, (float)plane.Normal().Y, (float)plane.Normal().Z, (float)plane.D);
+	surf.plane = FVector4((float)plane.Normal().X, (float)plane.Normal().Y, (float)plane.Normal().Z, -(float)plane.D);
 
 	Surfaces.Push(surf);
 }
@@ -548,7 +548,7 @@ void DoomLevelMesh::CreateCeilingSurface(FLevelLocals &doomMap, subsector_t *sub
 	surf.Type = ST_CEILING;
 	surf.typeIndex = typeIndex;
 	surf.ControlSector = is3DFloor ? sector : nullptr;
-	surf.plane = FVector4((float)plane.Normal().X, (float)plane.Normal().Y, (float)plane.Normal().Z, (float)plane.D);
+	surf.plane = FVector4((float)plane.Normal().X, (float)plane.Normal().Y, (float)plane.Normal().Z, -(float)plane.D);
 
 	Surfaces.Push(surf);
 }