Lighting
[Crystal Space 3D Engine]
Compounds | |
struct | iBaseHalo |
This is the basic interface for all types of halos. More... | |
struct | iCrossHalo |
This is a halo which resembles a cross. More... | |
struct | iFlareHalo |
This is a halo which resembles a (solar) flare. More... | |
struct | iLight |
The iLight interface is the SCF interface for the csLight class. More... | |
struct | iLightCallback |
Set a callback which is called when this light color is changed. More... | |
struct | iLightingProcessData |
The iLightingProcessData interface can be implemented by a mesh object so that it can attach additional information for the lighting process. More... | |
struct | iLightingProcessInfo |
The iLightingProcessInfo interface holds information for the lighting system. More... | |
struct | iLightIterator |
Iterator to iterate over all static lights in the engine. More... | |
struct | iLightList |
This structure represents a list of lights. More... | |
struct | iLightManager |
An engine (3D or iso) can implement this interface for the benefit of mesh objects so that they can request lighting information from the engine. More... | |
struct | iNovaHalo |
This is a halo which resembles a nova. More... | |
struct | iShadowBlock |
A block of shadows represent the shadows that are casted by one iShadowCaster object. More... | |
struct | iShadowBlockList |
This is a list of shadow blocks. More... | |
struct | iShadowCaster |
An object that can cast shadows. More... | |
struct | iShadowIterator |
A shadow iterator allows someone to iterate over all shadows in a iShadowBlock or iShadowBlockList. More... | |
struct | iShadowReceiver |
An object that is interested in getting shadow information. More... | |
Light flags | |
#define | CS_LIGHT_THINGSHADOWS 0x00000001 |
If CS_LIGHT_THINGSHADOWS is set for a light then things will also cast shadows. | |
#define | CS_LIGHT_ACTIVEHALO 0x80000000 |
If this flag is set, the halo for this light is active and is in the engine's queue of active halos. | |
Light Dynamic Types | |
#define | CS_LIGHT_DYNAMICTYPE_STATIC 1 |
A fully static light. | |
#define | CS_LIGHT_DYNAMICTYPE_PSEUDO 2 |
A pseudo-dynamic light. | |
#define | CS_LIGHT_DYNAMICTYPE_DYNAMIC 3 |
A fully dynamic light. | |
Attenuation modes | |
Attenuation controls how the brightness of a light fades with distance.
There are five attenuation formulas:
| |
#define | CS_ATTN_NONE 0 |
no attenuation: light * 1 | |
#define | CS_ATTN_LINEAR 1 |
linear attenuation: light * (radius - distance) / radius | |
#define | CS_ATTN_INVERSE 2 |
inverse attenuation: light * (radius / distance) | |
#define | CS_ATTN_REALISTIC 3 |
realistic attenuation: light * (radius^2 / distance^2) | |
#define | CS_ATTN_CLQ 4 |
using clq attenuation | |
Defines | |
#define | CS_DEFAULT_LIGHT_LEVEL 20 |
Light level that is used when there is no light on the texture. | |
#define | CS_NORMAL_LIGHT_LEVEL 128 |
Light level that corresponds to a normally lit texture. | |
Enumerations | |
enum | csHaloType { cshtCross, cshtNova, cshtFlare } |
The possible halo-types. More... |
Define Documentation
|
using clq attenuation
|
|
inverse attenuation: light * (radius / distance)
|
|
linear attenuation: light * (radius - distance) / radius
|
|
no attenuation: light * 1
|
|
realistic attenuation: light * (radius^2 / distance^2)
|
|
Light level that is used when there is no light on the texture.
|
|
If this flag is set, the halo for this light is active and is in the engine's queue of active halos. When halo become inactive, this flag is reset. |
|
A fully dynamic light. No shadows are calculated unless you use a shader/renderloop that does that in hardware. |
|
A pseudo-dynamic light. Unless you are using shaders/renderloop that treat all lights as dynamic this light cannot move but it can change color. Shadows are accurate and precalculated (if you use lightmaps). |
|
A fully static light. Unless you are using shaders/renderloop that treat all lights as dynamic this light cannot move and cannot change color. Shadows are accurate and precalculated (if you use lightmaps). |
|
If CS_LIGHT_THINGSHADOWS is set for a light then things will also cast shadows. This flag is set by default for static lights and unset for dynamic lights. |
|
Light level that corresponds to a normally lit texture.
|
Enumeration Type Documentation
|
The possible halo-types.
|
Generated for Crystal Space by doxygen 1.2.18