- fixed some uninitialized stuff in particle rendering.

- added gl_ClampLight to all places where the light level is set.
This commit is contained in:
Christoph Oelckers 2016-04-06 14:03:21 +02:00
commit a0d0d9339e
4 changed files with 12 additions and 6 deletions

View file

@ -866,11 +866,15 @@ void GLSprite::ProcessParticle (particle_t *particle, sector_t *sector)//, int s
if (lightbottom < particle->Pos.Z)
{
lightlevel = *lightlist[i].p_lightlevel;
lightlevel = gl_ClampLight(*lightlist[i].p_lightlevel);
Colormap.LightColor = (lightlist[i].extra_colormap)->Color;
break;
}
}
if (glset.nocoloredspritelighting)
{
Colormap.Decolorize(); // ZDoom never applies colored light to particles.
}
}
else
{
@ -884,6 +888,7 @@ void GLSprite::ProcessParticle (particle_t *particle, sector_t *sector)//, int s
OverrideShader = 0;
ThingColor = particle->color;
ThingColor.g = 255;
ThingColor.a = 255;
modelframe=NULL;
@ -939,6 +944,7 @@ void GLSprite::ProcessParticle (particle_t *particle, sector_t *sector)//, int s
actor=NULL;
this->particle=particle;
fullbright = !!particle->bright;
// [BB] Translucent particles have to be rendered without the alpha test.
if (gl_particles_style != 2 && trans>=1.0f-FLT_EPSILON) hw_styleflags = STYLEHW_Solid;