![]() |
Public API Reference |
#include <light.h>
Inheritance diagram for iLight:
Public Methods | |
virtual csLight * | GetPrivateObject ()=0 |
Get private pointer to light object. UGLY. More... | |
virtual const char * | GetLightID ()=0 |
Get the id of this light. This is a 16-byte MD5. More... | |
virtual iObject * | QueryObject ()=0 |
Get the iObject for this light. More... | |
virtual const csVector3 & | GetCenter ()=0 |
Get the position of this light. More... | |
virtual void | SetCenter (const csVector3 &pos)=0 |
Set the position of this light. More... | |
virtual iSector * | GetSector ()=0 |
Get the sector for this light. More... | |
virtual void | SetSector (iSector *sector)=0 |
Set the sector for this light. More... | |
virtual const csColor & | GetColor ()=0 |
Get the color of this light. More... | |
virtual void | SetColor (const csColor &col)=0 |
Set the color of this light. More... | |
virtual bool | IsDynamic () const=0 |
Return true if this light is pseudo-dynamic. More... | |
virtual float | GetInfluenceRadius ()=0 |
Get the influence radius of the light. More... | |
virtual float | GetInfluenceRadiusSq ()=0 |
Get the squared influence radius of the light. More... | |
virtual void | SetInfluenceRadius (float radius)=0 |
Override the influence radius. More... | |
virtual int | GetAttenuation ()=0 |
Return current attenuation mode. More... | |
virtual void | SetAttenuation (int a)=0 |
Set attenuation mode. More... | |
virtual void | SetAttenuationVector (const csVector3 &attenv)=0 |
Set attenuation vector csVector3(constant, linear, quadric) FIXME: examples. More... | |
virtual const csVector3 & | GetAttenuationVector ()=0 |
Get attenuation vector csVector3(constant, linear, quadric). More... | |
virtual void | CalculateAttenuationVector (int atttype, float radius=1.0f, float brightness=1.0f)=0 |
Calculate the attenuation vector for a given attenuation type. More... | |
virtual bool | GetDistanceForBrightness (float brightness, float &distance)=0 |
Get the distance for a given light brightness. More... | |
virtual iCrossHalo * | CreateCrossHalo (float intensity, float cross)=0 |
Create a cross halo for this light. More... | |
virtual iNovaHalo * | CreateNovaHalo (int seed, int num_spokes, float roundness)=0 |
Create a nova halo for this light. More... | |
virtual iFlareHalo * | CreateFlareHalo ()=0 |
Create a flare halo for this light. More... | |
virtual float | GetBrightnessAtDistance (float d)=0 |
Get the brightness of a light at a given distance. More... | |
virtual csFlags & | GetFlags ()=0 |
Get flags for this light. More... | |
virtual void | SetLightCallback (iLightCallback *cb)=0 |
Set the light callback. More... | |
virtual void | RemoveLightCallback (iLightCallback *cb)=0 |
Remove a light callback. More... | |
virtual int | GetLightCallbackCount () const=0 |
Get the number of light callbacks. More... | |
virtual iLightCallback * | GetLightCallback (int idx) const=0 |
Get the specified light callback. More... | |
virtual uint32 | GetLightNumber () const=0 |
Return a number that changes when the light changes (color, or position). More... |
First some terminology about all the several types of lights that Crystal Space supports:
Definition at line 154 of file iengine/light.h.
|
Calculate the attenuation vector for a given attenuation type.
Implemented in csLight::Light. |
|
Create a cross halo for this light.
Implemented in csLight::Light. |
|
Create a flare halo for this light.
Implemented in csLight::Light. |
|
Create a nova halo for this light.
Implemented in csLight::Light. |
|
Return current attenuation mode.
Implemented in csLight::Light. |
|
Get attenuation vector csVector3(constant, linear, quadric).
Implemented in csLight::Light. |
|
Get the brightness of a light at a given distance.
Implemented in csLight::Light. |
|
Get the position of this light.
Implemented in csLight::Light. |
|
Get the color of this light.
Implemented in csLight::Light. |
|
Get the distance for a given light brightness.
Implemented in csLight::Light. |
|
Get flags for this light. Supported flags: Implemented in csLight::Light. |
|
Get the influence radius of the light.
Implemented in csLight::Light. |
|
Get the squared influence radius of the light.
Implemented in csLight::Light. |
|
Get the specified light callback.
Implemented in csLight::Light. |
|
Get the number of light callbacks.
Implemented in csLight::Light. |
|
Get the id of this light. This is a 16-byte MD5.
Implemented in csLight::Light. |
|
Return a number that changes when the light changes (color, or position).
Implemented in csLight::Light. |
|
Get private pointer to light object. UGLY.
Implemented in csLight::Light. |
|
Get the sector for this light.
Implemented in csLight::Light. |
|
Return true if this light is pseudo-dynamic.
Implemented in csLight::Light. |
|
Get the iObject for this light.
Implemented in csLight::Light. |
|
Remove a light callback.
Implemented in csLight::Light. |
|
Set attenuation mode. The following values are possible (default is CS_ATTN_LINEAR):
Implemented in csLight::Light. |
|
Set attenuation vector csVector3(constant, linear, quadric) FIXME: examples.
Implemented in csLight::Light. |
|
Set the position of this light.
Implemented in csLight::Light. |
|
Set the color of this light.
Implemented in csLight::Light. |
|
Override the influence radius.
Implemented in csLight::Light. |
|
Set the light callback. This will call IncRef() on the callback So make sure you call DecRef() to release your own reference. Implemented in csLight::Light. |
|
Set the sector for this light.
Implemented in csLight::Light. |