#include <light.h>
Public Methods | |
void | Initialize (int n) |
Make room for the specified number of vertices and initialize to start a new light patch. | |
void | RemovePatch () |
Remove this light patch (unlink from all lists). | |
csPolygon3D* | GetPolygon () |
Get the polygon that this light patch belongs too. | |
csCurve* | GetCurve () |
Get the curve that this light patch belongs too. | |
csDynLight* | GetLight () |
Get the light that this light patch belongs too. | |
csShadowBlock& | GetShadowBlock () |
Get a reference to the shadow list. | |
int | GetVertexCount () |
Get the number of vertices in this light patch. | |
csVector3* | GetVertices () |
Get all the vertices. | |
csVector3& | GetVertex (int i) |
Get a vertex. | |
csLightPatch* | GetNextPoly () |
Get next light patch as seen from the standpoint of the polygon. | |
csLightPatch* | GetNextLight () |
Get the next light patch as seen from the standpoint of the light. | |
void | SetPolyCurve (csPolygon3D *pol) |
Set polygon. | |
void | SetPolyCurve (csCurve *c) |
Set curve. | |
void | SetLight (csDynLight *l) |
Set light. | |
void | AddPolyList (csLightPatch *&first) |
Add to poly list. | |
void | RemovePolyList (csLightPatch *&first) |
Remove from poly list. | |
void | AddLightList (csLightPatch *&first) |
Add to light list. | |
void | RemoveLightList (csLightPatch *&first) |
Remove from light list. | |
void | SetLightFrustum (csFrustum *lf) |
Set the light frustum. | |
csFrustum* | GetLightFrustum () |
Get the light frustum. | |
Friends | |
class | csLightPatchPool |
This is a 3D polygon which fits on a world level 3D polygon and defines where the light hits the polygon. There is a list of light patches in every polygon (all dynamic lights hitting a polygon will give rise to a seperate light patch) and there is a list of light patches in every dynamic light (representing all polygons that are hit by that particular light).