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
parent ee7fc9853d
commit 95e909400f

View file

@ -1454,13 +1454,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);