]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - r_light.h
rewrote memory system entirely (hunk, cache, and zone are gone, memory pools replaced...
[xonotic/darkplaces.git] / r_light.h
index 0507c425eb9cb8859a538cdccb0fda334a97dc1f..e8fb4e8a6a49ae26d43ed2bd5e5ade0697e37f5c 100644 (file)
--- a/r_light.h
+++ b/r_light.h
@@ -1,7 +1,20 @@
 
-extern void R_CompleteLightPoint (vec3_t color, vec3_t p, int dynamic, mleaf_t *leaf);
-extern void R_DynamicLightPoint(vec3_t color, vec3_t org, int *dlightbits);
-extern void R_DynamicLightPointNoMask(vec3_t color, vec3_t org);
-extern void R_LightPoint (vec3_t color, vec3_t p);
-extern void R_AnimateLight (void);
-extern void R_LightModel (int numverts);
+typedef struct
+{
+       vec3_t origin;
+       vec_t cullradius2; // only for culling comparisons, squared version
+       vec3_t light; // the brightness of the light
+       vec_t cullradius; // only for culling comparisons
+       vec_t lightsubtract; // to avoid sudden brightness change at cullradius, subtract this
+       entity_render_t *ent; // owner of this light
+}
+rdlight_t;
+
+extern int r_numdlights;
+extern rdlight_t r_dlight[MAX_DLIGHTS];
+
+void R_BuildLightList(void);
+void R_AnimateLight (void);
+void R_MarkLights(void);
+void R_CompleteLightPoint (vec3_t color, vec3_t p, int dynamic, mleaf_t *leaf);
+void R_LightModel (int numverts);