R_GenerateTexture: Fix translucent pixels being visible on empty pixels

This commit is contained in:
Lactozilla 2024-02-17 16:51:16 -03:00
parent a5bf4a5b8f
commit 719169a625

View file

@ -193,6 +193,8 @@ static void R_DrawBlendColumnInCache(column_t *column, UINT8 *cache, texpatch_t
{ {
for (; dest < cache + position + count; source++, dest++, is_opaque++) for (; dest < cache + position + count; source++, dest++, is_opaque++)
{ {
if (originPatch->alpha <= ASTTextureBlendingThreshold[1] && !(*is_opaque))
continue;
*dest = ASTBlendPaletteIndexes(*dest, *source, originPatch->style, originPatch->alpha); *dest = ASTBlendPaletteIndexes(*dest, *source, originPatch->style, originPatch->alpha);
*is_opaque = true; *is_opaque = true;
} }
@ -237,6 +239,8 @@ static void R_DrawBlendFlippedColumnInCache(column_t *column, UINT8 *cache, texp
{ {
for (; dest < cache + position + count; --source, dest++, is_opaque++) for (; dest < cache + position + count; --source, dest++, is_opaque++)
{ {
if (originPatch->alpha <= ASTTextureBlendingThreshold[1] && !(*is_opaque))
continue;
*dest = ASTBlendPaletteIndexes(*dest, *source, originPatch->style, originPatch->alpha); *dest = ASTBlendPaletteIndexes(*dest, *source, originPatch->style, originPatch->alpha);
*is_opaque = true; *is_opaque = true;
} }