OGRE 2.1
Object-Oriented Graphics Rendering Engine
|
Pre-transforms and batches up meshes for efficient use as static geometry in a scene. More...
#include <OgreStaticGeometry.h>
Classes | |
class | GeometryBucket |
A GeometryBucket is a the lowest level bucket where geometry with the same vertex & index format is stored. More... | |
class | LODBucket |
A LODBucket is a collection of smaller buckets with the same LOD. More... | |
class | MaterialBucket |
A MaterialBucket is a collection of smaller buckets with the same Material (and implicitly the same LOD). More... | |
class | OptimisedSubMeshGeometry |
Struct holding geometry optimised per SubMesh / LOD level, ready for copying to instances. More... | |
struct | QueuedGeometry |
Structure recording a queued geometry for low level builds. More... | |
struct | QueuedSubMesh |
Structure recording a queued submesh for the build. More... | |
class | Region |
The details of a topological region which is the highest level of partitioning for this class. More... | |
struct | SubMeshLodGeometryLink |
Saved link between SubMesh at a LOD and vertex/index data May point to original or optimised geometry. More... | |
Public Types | |
typedef list< OptimisedSubMeshGeometry * >::type | OptimisedSubMeshGeometryList |
typedef vector< QueuedGeometry * >::type | QueuedGeometryList |
typedef vector< QueuedSubMesh * >::type | QueuedSubMeshList |
typedef MapIterator< RegionMap > | RegionIterator |
Iterator for iterating over contained regions. | |
typedef map< uint32, Region * >::type | RegionMap |
Indexed region map based on packed x/y/z region index, 10 bits for each axis. | |
typedef map< SubMesh *, SubMeshLodGeometryLinkList * >::type | SubMeshGeometryLookup |
typedef vector< SubMeshLodGeometryLink >::type | SubMeshLodGeometryLinkList |
Public Member Functions | |
StaticGeometry (SceneManager *owner, const String &name) | |
Constructor; do not use directly (. | |
virtual | ~StaticGeometry () |
Destructor. | |
virtual void | addEntity (Entity *ent, const Vector3 &position, const Quaternion &orientation=Quaternion::IDENTITY, const Vector3 &scale=Vector3::UNIT_SCALE) |
Adds an Entity to the static geometry. | |
virtual void | addSceneNode (const SceneNode *node) |
Adds all the Entity objects attached to a SceneNode and all it's children to the static geometry. | |
virtual void | build (void) |
Build the geometry. | |
virtual void | destroy (void) |
Destroys all the built geometry state (reverse of build). | |
virtual void | dump (const String &filename) const |
Dump the contents of this StaticGeometry to a file for diagnostic purposes. | |
virtual bool | getCastShadows (void) |
Will the geometry from this object cast shadows? | |
const String & | getName (void) const |
Get the name of this object. | |
virtual const Vector3 & | getOrigin (void) const |
Gets the origin of this geometry. | |
virtual const Vector3 & | getRegionDimensions (void) const |
Gets the size of a single batch of geometry. | |
RegionIterator | getRegionIterator (void) |
Get an iterator over the regions in this geometry. | |
virtual Real | getRenderingDistance (void) const |
Gets the distance at which batches are no longer rendered. | |
virtual uint8 | getRenderQueueGroup (void) const |
Gets the queue group for this entity, see setRenderQueueGroup for full details. | |
virtual Real | getSquaredRenderingDistance (void) const |
Gets the squared distance at which batches are no longer rendered. | |
uint32 | getVisibilityFlags () const |
Returns the visibility flags of the regions. | |
virtual bool | isVisible (void) const |
Are the batches visible? | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info | |
void * | operator new (size_t sz, void *ptr) |
placement operator new | |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info | |
virtual void | reset (void) |
Clears any of the entities / nodes added to this geometry and destroys anything which has already been built. | |
virtual void | setCastShadows (bool castShadows) |
Sets whether this geometry should cast shadows. | |
virtual void | setOrigin (const Vector3 &origin) |
Sets the origin of the geometry. | |
virtual void | setRegionDimensions (const Vector3 &size) |
Sets the size of a single region of geometry. | |
virtual void | setRenderingDistance (Real dist) |
Sets the distance at which batches are no longer rendered. | |
virtual void | setRenderQueueGroup (uint8 queueID) |
Sets the render queue group this object will be rendered through. | |
void | setVisibilityFlags (uint32 flags) |
Sets the visibility flags of all the regions at once. | |
virtual void | setVisible (bool visible) |
Hides or shows all the batches. | |
Pre-transforms and batches up meshes for efficient use as static geometry in a scene.
typedef list<OptimisedSubMeshGeometry*>::type Ogre::v1::StaticGeometry::OptimisedSubMeshGeometryList |
Iterator for iterating over contained regions.
Indexed region map based on packed x/y/z region index, 10 bits for each axis.
typedef map<SubMesh*,SubMeshLodGeometryLinkList*>::type Ogre::v1::StaticGeometry::SubMeshGeometryLookup |
Ogre::v1::StaticGeometry::StaticGeometry | ( | SceneManager * | owner, |
const String & | name | ||
) |
Constructor; do not use directly (.
|
virtual |
Destructor.
|
virtual |
Adds an Entity to the static geometry.
Adds all the Entity objects attached to a SceneNode and all it's children to the static geometry.
node | Pointer to the node to use to provide a set of Entity templates |
Build the geometry.
Destroys all the built geometry state (reverse of build).
Dump the contents of this StaticGeometry to a file for diagnostic purposes.
Will the geometry from this object cast shadows?
Gets the origin of this geometry.
Gets the size of a single batch of geometry.
RegionIterator Ogre::v1::StaticGeometry::getRegionIterator | ( | void | ) |
Get an iterator over the regions in this geometry.
Gets the distance at which batches are no longer rendered.
Gets the queue group for this entity, see setRenderQueueGroup for full details.
Gets the squared distance at which batches are no longer rendered.
uint32 Ogre::v1::StaticGeometry::getVisibilityFlags | ( | ) | const |
Returns the visibility flags of the regions.
Are the batches visible?
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
operator new, with debug line info
placement operator new
|
inlineinherited |
|
inlineinherited |
array operator new, with debug line info
Clears any of the entities / nodes added to this geometry and destroys anything which has already been built.
Sets whether this geometry should cast shadows.
Sets the origin of the geometry.
origin | Vector3 expressing the 3D origin of the geometry. |
Sets the size of a single region of geometry.
size | Vector3 expressing the 3D size of each region. |
Sets the distance at which batches are no longer rendered.
dist | Distance beyond which the batches will not be rendered (the default is 0, which means batches are always rendered). |
Sets the render queue group this object will be rendered through.
queueID | Enumerated value of the queue group to use. |
Sets the visibility flags of all the regions at once.
Hides or shows all the batches.