else
R_DrawModelMesh(0, NULL, 1 - fog, 1 - fog, 1 - fog);
- if (fog && aliasmeshinfo.blendfunc2 != GL_ONE)
+ if (fog && !(currentrenderentity->effects & EF_ADDITIVE))
{
aliasmeshinfo.tex[0] = R_GetTexture(skinframe->fog);
aliasmeshinfo.blendfunc1 = GL_SRC_ALPHA;
}
if (s->dlightframe == r_framecount && !(s->flags & SURF_DRAWFULLBRIGHT))
RSurf_Light(s->dlightbits, m.numverts);
- if (fogenabled/* && m.blendfunc2 == GL_ONE_MINUS_SRC_ALPHA*/)
+ if (fogenabled && (s->flags & SURF_DRAWNOALPHA))
{
for (i = 0, sv = svert;i < m.numverts;i++, sv++)
{
RSurfShader_Water_Pass_Glow(s);
return false;
case 2:
- if (fogenabled && (s->flags & SURF_DRAWNOALPHA))
+ if (fogenabled)
{
- RSurfShader_Water_Pass_Fog(s);
+ if (s->flags & SURF_DRAWNOALPHA)
+ RSurfShader_Water_Pass_Fog(s);
return false;
}
else