Crystal Space 3D Engine
Modules | |
Lighting | |
Mesh support | |
Renderloops & Rendersteps | |
Textures & Materials | |
Views & Cameras | |
Visibility | |
Classes | |
struct | csFog |
Sector fog structure. More... | |
struct | csSectorHitBeamResult |
Return structure for the iSector->HitBeam() routines. More... | |
struct | iEngine |
This interface is the main interface to the 3D engine. More... | |
struct | iEngineFrameCallback |
A callback that will be fired whenever the engine starts drawing a frame. More... | |
struct | iEngineSectorCallback |
A callback that will be fired whenever a sector is created or removed from the engine. More... | |
struct | iImposter |
iImposter defines the interface a mesh (or other) class must implement to be used as imposter mesh by the engine. More... | |
struct | iLightVisibleCallback |
A callback that is fired whenever a light is visible. More... | |
struct | iMeshGenerator |
iMeshGenerator defines the interface for a mesh generator. More... | |
struct | iMeshGeneratorGeometry |
This interface defines one piece of geometry for the mesh generator. More... | |
struct | iMovable |
This interface represents the position and orientation of an object relative to its parent (this is the transformation between local object space of the model and world space (i.e. More... | |
struct | iMovableListener |
Implement this class if you're interested in hearing about movable changes. More... | |
struct | iObjectWatcher |
This is a generic object watcher. More... | |
struct | iObjectWatcherListener |
Implement this class if you're interested in hearing about object watcher events. More... | |
struct | iPortal |
This is the interface to the Portal objects. More... | |
struct | iPortalCallback |
When a sector is missing this callback will be called. More... | |
struct | iPortalContainer |
A container for portals. More... | |
struct | iRegion |
A region. More... | |
struct | iRegionList |
A list of region objects. More... | |
struct | iSceneNode |
This interface represents a node in the scene graph. More... | |
struct | iSceneNodeArray |
An array of scene node interfaces. More... | |
struct | iSector |
The iSector interface is used to work with "sectors". More... | |
struct | iSectorCallback |
Set a callback which is called when this sector is traversed. More... | |
struct | iSectorIterator |
An iterator to iterate over sectors. More... | |
struct | iSectorList |
A list of sectors. More... | |
struct | iSectorMeshCallback |
Set a callback which is called when a mesh is added or removed from this sector. More... | |
struct | iSharedVariable |
iSharedVariable implements a refcounted value which can be shared across many objects and updated efficiently. More... | |
struct | iSharedVariableList |
A list of shared variables. More... | |
struct | iSharedVariableListener |
A listener so that you can get notified when a variable is changed. More... | |
SetLightingCacheMode() settings | |
#define | CS_ENGINE_CACHE_NOUPDATE 4 |
Do not calculate lighting if not up-to-date. | |
#define | CS_ENGINE_CACHE_READ 1 |
Read the cache. | |
#define | CS_ENGINE_CACHE_WRITE 2 |
Write the cache. | |
Operations | |
Operations indicate what has changed in one of the objects that is being watched. | |
#define | CS_WATCH_LIGHT_ATTENUATION 8 |
Light has changed attenuation. | |
#define | CS_WATCH_LIGHT_COLOR 4 |
Light has changed color. | |
#define | CS_WATCH_LIGHT_DESTROY 1 |
Light has been destroyed. | |
#define | CS_WATCH_LIGHT_MOVE 2 |
Light has moved. | |
#define | CS_WATCH_LIGHT_RADIUS 3 |
Light has changed radius. | |
#define | CS_WATCH_LIGHT_SECTOR 5 |
Light has changed sector. | |
#define | CS_WATCH_MOVABLE_CHANGED 7 |
Movable has changed otherwise. | |
#define | CS_WATCH_MOVABLE_DESTROY 6 |
Movable has been destroyed. | |
#define | CS_WATCH_NONE 0 |
No operation recorded yet. | |
#define | CS_WATCH_SECTOR_NEWMESH 9 |
Sector has a new mesh. | |
#define | CS_WATCH_SECTOR_REMOVEMESH 10 |
Sector has a removed mesh. | |
RegisterRenderPriority() flags | |
enum | csRenderPrioritySorting { CS_RENDPRI_SORT_NONE = 0, CS_RENDPRI_SORT_BACK2FRONT = 1, CS_RENDPRI_SORT_FRONT2BACK = 2 } |
Defines | |
#define | CS_PORTAL_CLIPDEST 0x00000001 |
If this flag is set then this portal will clip all geometry in the destination sector. | |
#define | CS_PORTAL_CLIPSTRADDLING 0x00000002 |
If this flag is set then this portal will clip geometry of an object that is straddling this portal (i.e. | |
#define | CS_PORTAL_COLLDET 0x00000080 |
If this flag is set then this portal is used for collision detection. | |
#define | CS_PORTAL_FLOAT 0x00000040 |
If this flag is used then the portal will use possible available stencil buffer on the hardware to do good clipping. | |
#define | CS_PORTAL_MIRROR 0x00000010 |
If this flag is set then this portal mirrors space (changes order of the vertices of polygons). | |
#define | CS_PORTAL_STATICDEST 0x00000020 |
A flag which indicates if the destination of this portal should not be transformed from object to world space. | |
#define | CS_PORTAL_VISCULL 0x00000100 |
If this flag is set then this portal is used for visibility culling. | |
#define | CS_PORTAL_WARP 0x00000008 |
If this flag is set then this portal will do space warping. | |
#define | CS_PORTAL_ZFILL 0x00000004 |
If this flag is set then this portal will do a Z-fill after rendering the contents. | |
Enumerations | |
enum | csFogMode |
Define Documentation
#define CS_ENGINE_CACHE_NOUPDATE 4 |
#define CS_PORTAL_CLIPDEST 0x00000001 |
#define CS_PORTAL_CLIPSTRADDLING 0x00000002 |
If this flag is set then this portal will clip geometry of an object that is straddling this portal (i.e.
the object is both in the source and destination sector and the portal 'cuts' the object). This is only needed if the portal is on a surface that is transparent. A space warping portal will do this automatically.
#define CS_PORTAL_COLLDET 0x00000080 |
#define CS_PORTAL_FLOAT 0x00000040 |
If this flag is used then the portal will use possible available stencil buffer on the hardware to do good clipping.
This flag should be used if you have a portal that is not at the boundary of the sector and that can be covered (or itself covers) other objects. It is usually used in combination with CS_PORTAL_ZFILL and sometimes with CS_PORTAL_CLIPDEST if the destination of the portal enters in the middle of a sector.
#define CS_PORTAL_MIRROR 0x00000010 |
#define CS_PORTAL_STATICDEST 0x00000020 |
#define CS_PORTAL_VISCULL 0x00000100 |
#define CS_PORTAL_WARP 0x00000008 |
#define CS_PORTAL_ZFILL 0x00000004 |
If this flag is set then this portal will do a Z-fill after rendering the contents.
This is mainly useful for floating portals where it is possible that there is geometry in the same sector that will be rendered behind the portal (and thus could accidently get written in the portal sector because the Z-buffer cannot be trusted).
#define CS_WATCH_LIGHT_ATTENUATION 8 |
#define CS_WATCH_LIGHT_COLOR 4 |
#define CS_WATCH_LIGHT_DESTROY 1 |
#define CS_WATCH_LIGHT_MOVE 2 |
#define CS_WATCH_LIGHT_RADIUS 3 |
#define CS_WATCH_LIGHT_SECTOR 5 |
#define CS_WATCH_MOVABLE_CHANGED 7 |
#define CS_WATCH_MOVABLE_DESTROY 6 |
#define CS_WATCH_NONE 0 |
#define CS_WATCH_SECTOR_NEWMESH 9 |
#define CS_WATCH_SECTOR_REMOVEMESH 10 |
Enumeration Type Documentation
Generated for Crystal Space by doxygen 1.4.7