From 17108e575ab7e33be3e77e488f081888e1e0db1f Mon Sep 17 00:00:00 2001 From: Magnus Norddahl Date: Tue, 2 May 2017 22:24:32 +0200 Subject: [PATCH] - Add support for drawing decals on 3d floors in softpoly --- src/polyrenderer/scene/poly_decal.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/polyrenderer/scene/poly_decal.cpp b/src/polyrenderer/scene/poly_decal.cpp index bbda32b04..1c7538415 100644 --- a/src/polyrenderer/scene/poly_decal.cpp +++ b/src/polyrenderer/scene/poly_decal.cpp @@ -67,8 +67,13 @@ void RenderPolyDecal::Render(const TriMatrix &worldToClip, const PolyClipPlane & // Determine actor z double zpos = decal->Z; - sector_t *front = line->frontsector; sector_t *back = (line->backsector != nullptr) ? line->backsector : line->frontsector; + + // for 3d-floor segments use the model sector as reference + sector_t *front; + if ((decal->RenderFlags&RF_CLIPMASK) == RF_CLIPMID) front = decal->Sector; + else front = line->frontsector; + switch (decal->RenderFlags & RF_RELMASK) { default: