From 060c25c14d730590590cd378dcebea1ceda55e1b Mon Sep 17 00:00:00 2001 From: Jaime Passos Date: Thu, 15 Oct 2020 14:12:19 -0300 Subject: [PATCH] [Software floor sprites] Set the colormap and translation outside of the loop --- src/r_splats.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/r_splats.c b/src/r_splats.c index efcd6ea98..10cf1127c 100644 --- a/src/r_splats.c +++ b/src/r_splats.c @@ -251,7 +251,18 @@ void R_RenderFloorSplat(floorsplat_t *pSplat, vector2_t *verts, vissprite_t *vis } } - ds_transmap = NULL; + ds_colormap = vis->colormap; + ds_translation = R_GetSpriteTranslation(vis); + if (ds_translation == NULL) + ds_translation = colormaps; + + if (vis->extra_colormap) + { + if (!ds_colormap) + ds_colormap = vis->extra_colormap->colormap; + else + ds_colormap = &vis->extra_colormap->colormap[ds_colormap - colormaps]; + } if (vis->transmap) { @@ -262,6 +273,8 @@ void R_RenderFloorSplat(floorsplat_t *pSplat, vector2_t *verts, vissprite_t *vis else spanfunctype = SPANDRAWFUNC_TRANSSPRITE; } + else + ds_transmap = NULL; if (ds_powersoftwo) spanfunc = spanfuncs[spanfunctype]; @@ -334,19 +347,6 @@ void R_RenderFloorSplat(floorsplat_t *pSplat, vector2_t *verts, vissprite_t *vis break; } - ds_colormap = vis->colormap; - ds_translation = R_GetSpriteTranslation(vis); - if (ds_translation == NULL) - ds_translation = colormaps; - - if (vis->extra_colormap) - { - if (!ds_colormap) - ds_colormap = vis->extra_colormap->colormap; - else - ds_colormap = &vis->extra_colormap->colormap[ds_colormap - colormaps]; - } - if (!pSplat->tilted) { angle = (viewangle + pSplat->angle)>>ANGLETOFINESHIFT;