From 7f32a532332097f82ad348130b75bd8532d78c6a Mon Sep 17 00:00:00 2001 From: Jaime Passos Date: Fri, 28 Feb 2020 17:31:41 -0300 Subject: [PATCH] Fix HWR_DrawFlippedColumnInCache ignoring chroma key TF --- src/hardware/hw_cache.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/hardware/hw_cache.c b/src/hardware/hw_cache.c index ccffc8a49..059556f15 100644 --- a/src/hardware/hw_cache.c +++ b/src/hardware/hw_cache.c @@ -234,11 +234,11 @@ static void HWR_DrawFlippedColumnInCache(const column_t *patchcol, UINT8 *block, if (mipmap->colormap) texel = mipmap->colormap[texel]; - // transparent pixel - if (texel == HWR_PATCHES_CHROMAKEY_COLORINDEX) + // If the mipmap is chromakeyed, check if the texel's color + // is equivalent to the chroma key's color index. + alpha = 0xff; + if ((mipmap->flags & TF_CHROMAKEYED) && (texel == HWR_PATCHES_CHROMAKEY_COLORINDEX)) alpha = 0x00; - else - alpha = 0xff; // hope compiler will get this switch out of the loops (dreams...) // gcc do it ! but vcc not ! (why don't use cygwin gcc for win32 ?)