CrystalSpace

Public API Reference

Mesh support
[Crystal Space 3D Engine]

Classes

struct  csHitBeamResult
 Return structure for the iMeshWrapper::HitBeam() routines. More...
struct  csScreenBoxResult
 Return structure for iMeshWrapper::GetScreenBoundingBox(). More...
struct  iLODControl
 The iLODControl interface represents an object that has controllable Level Of Detail (LOD) features. More...
struct  iMeshDrawCallback
 Set a callback which is called just before the object is drawn. More...
struct  iMeshFactoryList
 A list of mesh factories. More...
struct  iMeshFactoryWrapper
 A mesh factory wrapper is an engine-level object that wraps around a mesh object factory (iMeshObjectFactory). More...
struct  iMeshFactoryWrapperIterator
 This is an iterator mesh factory wrappers. More...
struct  iMeshList
 A list of meshes. More...
struct  iMeshWrapper
 A mesh wrapper is an engine-level object that wraps around an actual mesh object (iMeshObject). More...
struct  iMeshWrapperIterator
 This is an iterator of mesh wrappers. More...

Modules

 Mesh plugins

Meshwrapper flags



#define CS_ENTITY_ALWAYSVISIBLE   4096
 Mark a mesh as always visible for occlusion culling purposes.
#define CS_ENTITY_CAMERA   4
 If CS_ENTITY_CAMERA is set then this entity will be always be centerer around the same spot relative to the camera.
#define CS_ENTITY_DETAIL   2
 If CS_ENTITY_DETAIL is set then this entity is a detail object.
#define CS_ENTITY_INVISIBLE   (CS_ENTITY_INVISIBLEMESH+CS_ENTITY_NOHITBEAM)
 If CS_ENTITY_INVISIBLE is set then this thing will not be rendered.
#define CS_ENTITY_INVISIBLEMESH   8
 If CS_ENTITY_INVISIBLEMESH is set then this thing will not be rendered.
#define CS_ENTITY_LIMITEDSHADOWCAST   2048
 Mark a mesh as a shadow caster if a render managers allows limiting shadow casting limited to select meshes.
#define CS_ENTITY_NOCLIP   128
 If CS_ENTITY_NOCLIP is set then this entity will be drawn fully (unclipped to portal frustum) and only once for every frame/camera combination.
#define CS_ENTITY_NODECAL   256
 If CS_ENTITY_NODECAL is set then this entity will not accept decals.
#define CS_ENTITY_NOHITBEAM   64
 If CS_ENTITY_NOHITBEAM is set then this thing will not react to HitBeam calls.
#define CS_ENTITY_NOLIGHTING   32
 If CS_ENTITY_NOLIGHTING is set then this thing will not be lit.
#define CS_ENTITY_NOSHADOWCAST   16
 If CS_ENTITY_NOSHADOWCAST is set then this mesh will not cast shadows.
#define CS_ENTITY_NOSHADOWRECEIVE   1024
 If CS_ENTITY_NOSHADOWRECEIVE is set then this mesh will not receive shadows.
#define CS_ENTITY_NOSHADOWS   CS_ENTITY_NOSHADOWCAST
 Mark a mesh as always visible for occlusion culling purposes.
#define CS_ENTITY_STATICLIT   512
 Indicates that static lighting was computed for this mesh.

Define Documentation

#define CS_ENTITY_ALWAYSVISIBLE   4096

Mark a mesh as always visible for occlusion culling purposes.

Definition at line 156 of file mesh.h.

#define CS_ENTITY_CAMERA   4

If CS_ENTITY_CAMERA is set then this entity will be always be centerer around the same spot relative to the camera.

This is useful for skyboxes or skydomes. Important note! When you use an object with this flag you should also add this object to a render priority that also has the camera flag set (see iEngine::SetRenderPriorityCamera()).

Definition at line 80 of file mesh.h.

#define CS_ENTITY_DETAIL   2

If CS_ENTITY_DETAIL is set then this entity is a detail object.

A detail object is treated as a single object by the engine. The engine can do several optimizations on this. In general you should use this flag for small and detailed objects. This flag is currently not used.

Definition at line 70 of file mesh.h.

#define CS_ENTITY_INVISIBLE   (CS_ENTITY_INVISIBLEMESH+CS_ENTITY_NOHITBEAM)

If CS_ENTITY_INVISIBLE is set then this thing will not be rendered.

It will still cast shadows and be present otherwise. Use the CS_ENTITY_NOSHADOWS flag to disable shadows. Making a mesh invisible will also imply that HitBeam() will ignore it.

Definition at line 97 of file mesh.h.

#define CS_ENTITY_INVISIBLEMESH   8

If CS_ENTITY_INVISIBLEMESH is set then this thing will not be rendered.

It will still cast shadows and be present otherwise. Use the CS_ENTITY_NOSHADOWS flag to disable shadows. Using this flag does NOT automatically imply that HitBeam() will ignore this mesh. For that you need to set CS_ENTITY_NOHITBEAM.

Definition at line 89 of file mesh.h.

#define CS_ENTITY_LIMITEDSHADOWCAST   2048

Mark a mesh as a shadow caster if a render managers allows limiting shadow casting limited to select meshes.

Definition at line 151 of file mesh.h.

#define CS_ENTITY_NOCLIP   128

If CS_ENTITY_NOCLIP is set then this entity will be drawn fully (unclipped to portal frustum) and only once for every frame/camera combination.

This is useful in a scenario where you have an indoor sector with lots of portals to an outdoor sector. In the outdoor sector there is a complex terrain mesh object and you really only want to render that once with full screen and not many times clipped to individual portals.

Definition at line 129 of file mesh.h.

#define CS_ENTITY_NODECAL   256

If CS_ENTITY_NODECAL is set then this entity will not accept decals.

Definition at line 134 of file mesh.h.

#define CS_ENTITY_NOHITBEAM   64

If CS_ENTITY_NOHITBEAM is set then this thing will not react to HitBeam calls.

Definition at line 118 of file mesh.h.

#define CS_ENTITY_NOLIGHTING   32

If CS_ENTITY_NOLIGHTING is set then this thing will not be lit.

It may still cast shadows though. Use the CS_ENTITY_NOSHADOWS flag to disable that.

Definition at line 112 of file mesh.h.

#define CS_ENTITY_NOSHADOWCAST   16

If CS_ENTITY_NOSHADOWCAST is set then this mesh will not cast shadows.

Lighting will still be calculated for it though. Use the CS_ENTITY_NOLIGHTING flag to disable that.

Definition at line 104 of file mesh.h.

#define CS_ENTITY_NOSHADOWRECEIVE   1024

If CS_ENTITY_NOSHADOWRECEIVE is set then this mesh will not receive shadows.

Definition at line 145 of file mesh.h.

#define CS_ENTITY_NOSHADOWS   CS_ENTITY_NOSHADOWCAST

Mark a mesh as always visible for occlusion culling purposes.

Definition at line 105 of file mesh.h.

#define CS_ENTITY_STATICLIT   512

Indicates that static lighting was computed for this mesh.

Definition at line 139 of file mesh.h.


Generated for Crystal Space 2.0 by doxygen 1.6.1