]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - r_light.c
make screenshots rightside up again (or rather, upside down like TGA wants, which...
[xonotic/darkplaces.git] / r_light.c
index bb50a11ce59b27c417fa38e26faacae67a568812..63dfe2669302b45b22131f4055d99e0a19ef4205 100644 (file)
--- a/r_light.c
+++ b/r_light.c
@@ -121,12 +121,15 @@ loc0:
        surf = cl.worldmodel->surfaces + node->firstsurface;
        for (i=0 ; i<node->numsurfaces ; i++, surf++)
        {
-               if (surf->dlightframe != r_dlightframecount) // not dynamic until now
+               if (((surf->flags & SURF_PLANEBACK) == 0) == ((PlaneDist(lightorigin, surf->plane)) >= surf->plane->dist))
                {
-                       surf->dlightbits[0] = surf->dlightbits[1] = surf->dlightbits[2] = surf->dlightbits[3] = surf->dlightbits[4] = surf->dlightbits[5] = surf->dlightbits[6] = surf->dlightbits[7] = 0;
-                       surf->dlightframe = r_dlightframecount;
+                       if (surf->dlightframe != r_dlightframecount) // not dynamic until now
+                       {
+                               surf->dlightbits[0] = surf->dlightbits[1] = surf->dlightbits[2] = surf->dlightbits[3] = surf->dlightbits[4] = surf->dlightbits[5] = surf->dlightbits[6] = surf->dlightbits[7] = 0;
+                               surf->dlightframe = r_dlightframecount;
+                       }
+                       surf->dlightbits[bitindex] |= bit;
                }
-               surf->dlightbits[bitindex] |= bit;
        }
 
        if (node->children[0]->contents >= 0)
@@ -220,7 +223,7 @@ void R_VisMarkLights (vec3_t lightorigin, dlight_t *light, int bit, int bitindex
                                                                if (surf->visframe != r_framecount || surf->lightframe == lightframe)
                                                                        continue;
                                                                surf->lightframe = lightframe;
-                                                               //if (((surf->flags & SURF_PLANEBACK) == 0) == ((PlaneDiff(lightorigin, surf->plane)) >= 0))
+                                                               if (((surf->flags & SURF_PLANEBACK) == 0) == ((PlaneDist(lightorigin, surf->plane)) >= surf->plane->dist))
                                                                {
                                                                        if (surf->dlightframe != r_dlightframecount) // not dynamic until now
                                                                        {
@@ -625,7 +628,6 @@ extern float *aliasvert;
 extern float *aliasvertnorm;
 extern byte *aliasvertcolor;
 extern float modelalpha;
-extern qboolean lighthalf;
 extern int modeldlightbits[8];
 void R_LightModel(int numverts, vec3_t center, vec3_t basecolor)
 {