X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fdarkplaces.git;a=blobdiff_plain;f=r_light.h;h=6020c915a8ce9f701f7c19b89df02f748db4d0fc;hp=c09e26fa1ebe914582b55cd21063fa17ad835634;hb=c651b263f8a63fa5846df832051d4f5658680a03;hpb=64a368a5aabc3826fa374e35cd5e55909c8fa344 diff --git a/r_light.h b/r_light.h index c09e26fa..6020c915 100644 --- a/r_light.h +++ b/r_light.h @@ -2,26 +2,17 @@ #ifndef R_LIGHT_H #define R_LIGHT_H -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 subtract; // 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]; +extern dlight_t r_dlight[MAX_DLIGHTS]; -void R_BuildLightList(void); -void R_AnimateLight(void); +void R_UpdateLights(void); +#ifdef LHREMOVESOON void R_MarkLights(entity_render_t *ent); +#endif void R_DrawCoronas(void); -void R_CompleteLightPoint(vec3_t color, const vec3_t p, int dynamic, const mleaf_t *leaf); -void R_LightModel(const entity_render_t *ent, int numverts, float *vertices, float *normals, float *colors, float colorr, float colorg, float colorb, int worldcoords); +void R_CompleteLightPoint(vec3_t ambientcolor, vec3_t diffusecolor, vec3_t diffusenormal, const vec3_t p, int dynamic, const mleaf_t *leaf); +int R_LightModel(float *ambient4f, float *diffusecolor, float *diffusenormal, const entity_render_t *ent, float colorr, float colorg, float colorb, float colora, int worldcoords); +void R_LightModel_CalcVertexColors(const float *ambientcolor4f, const float *diffusecolor, const float *diffusenormal, int numverts, const float *vertex3f, const float *normal3f, float *color4f); void R_UpdateEntLights(entity_render_t *ent); #endif