Fix blendmode regression in OpenGL caused by faulty fog wall support

This commit is contained in:
MascaraSnake 2022-01-09 13:45:56 +01:00 committed by Sally Coolatta
parent f16c1cd95f
commit 82c9abfc58

View file

@ -1419,13 +1419,13 @@ static void HWR_ProcessSeg(void) // Sort of like GLWall::Process in GZDoom
case 221: case 221:
case 253: case 253:
case 256: case 256:
if (gl_linedef->blendmode != AST_FOG) if (gl_linedef->blendmode && gl_linedef->blendmode != AST_FOG)
blendmode = HWR_SurfaceBlend(gl_linedef->blendmode, R_GetLinedefTransTable(gl_linedef->alpha), &Surf); blendmode = HWR_SurfaceBlend(gl_linedef->blendmode, R_GetLinedefTransTable(gl_linedef->alpha), &Surf);
else else
blendmode = PF_Translucent; blendmode = PF_Translucent;
break; break;
default: default:
if (gl_linedef->blendmode != AST_FOG) if (gl_linedef->blendmode && gl_linedef->blendmode != AST_FOG)
{ {
if (gl_linedef->alpha >= 0 && gl_linedef->alpha < FRACUNIT) if (gl_linedef->alpha >= 0 && gl_linedef->alpha < FRACUNIT)
blendmode = HWR_SurfaceBlend(gl_linedef->blendmode, R_GetLinedefTransTable(gl_linedef->alpha), &Surf); blendmode = HWR_SurfaceBlend(gl_linedef->blendmode, R_GetLinedefTransTable(gl_linedef->alpha), &Surf);