[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
But first lets discuss the type of entities that Crystal Space supports. We already saw sectors above. These are the main containers for all the entities below.
Crystal Space supports (among others) both 3D and 2D sprites. A 3D sprite is basically a set of triangles or a triangle mesh. I will not go into much more detail here because this document is related to visibility. A 2D sprite is a general polygon which always faces the camera. Both are considered detail objects (more on that later).
Things are general objects used to define the basic geometry in a level. They can move and rotate but in general their most important use is to define level geometry (i.e. walls, floor, ceiling, a painting on the wall, a staircase, a chair, etc.). Small and detailed things will be tagged as detail objects. Polygons on things can also be portals to other areas.
Curved surfaces are technically part of things but for visibility they are considered differently. They are always considered as detail objects as they represent a rather large triangle mesh.
A terrain surface is a large entity that can be in a sector. It is not a detail object (obviously). Handling of terrain and visibility is not ready yet. We need to do more work on this part. At this moment the terrain engine already has a visibility algorithm inside which is used for visibility culling of its own triangles but this algorithm should also be used to cull objects that are on the terrain.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |