OGRE-Next
4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
Class to build up a mesh with vertices and indices. More...
#include <OgreVolumeMeshBuilder.h>
Public Member Functions | |
MeshBuilder () | |
Constructor. More... | |
void | addTriangle (const Vector3 &v0, const Vector3 &n0, const Vector3 &v1, const Vector3 &n1, const Vector3 &v2, const Vector3 &n2) |
Adds a triangle to the mesh with reusing already existent vertices via their index. More... | |
void | executeCallback (MeshBuilderCallback *callback, const SimpleRenderable *simpleRenderable, size_t level, int inProcess) const |
Executes a MeshBuilderCallback on this instance. More... | |
size_t | generateBuffers (RenderOperation &operation) |
Generates the vertex- and indexbuffer of this mesh on the given RenderOperation. More... | |
Entity * | generateWithManualObject (SceneManager *sceneManager, const String &name, const String &material) |
Generates an entity via a ManualObject. More... | |
AxisAlignedBox | getBoundingBox () |
Gets the bounding box of the mesh. More... | |
Static Public Member Functions | |
static void | addCubeToManualObject (ManualObject *manual, const Vector3 &c0, const Vector3 &c1, const Vector3 &c2, const Vector3 &c3, const Vector3 &c4, const Vector3 &c5, const Vector3 &c6, const Vector3 &c7, uint32 &baseIndex) |
Adds a cube to a manual object rendering lines. More... | |
Class to build up a mesh with vertices and indices.
Ogre::Volume::MeshBuilder::MeshBuilder | ( | ) |
Constructor.
|
inlinestatic |
Adds a cube to a manual object rendering lines.
Corner numeration: 4 5 7 6 0 1 3 2
manual | The manual for the cube lines. |
c0 | The corner 0. |
c1 | The corner 1. |
c2 | The corner 2. |
c3 | The corner 3. |
c4 | The corner 4. |
c5 | The corner 5. |
c6 | The corner 6. |
c7 | The corner 7. |
baseIndex | The next free index of this manual object. Is incremented by 8 in this function. |
References Ogre::ManualObject::index(), and Ogre::ManualObject::position().
|
inline |
Adds a triangle to the mesh with reusing already existent vertices via their index.
v0 | The first vertex of the triangle. |
n0 | The normal of the first vertex. |
v1 | The second vertex of the triangle. |
n1 | The normal of the second vertex. |
v2 | The third vertex of the triangle. |
n2 | The normal of the third vertex. |
void Ogre::Volume::MeshBuilder::executeCallback | ( | MeshBuilderCallback * | callback, |
const SimpleRenderable * | simpleRenderable, | ||
size_t | level, | ||
int | inProcess | ||
) | const |
Executes a MeshBuilderCallback on this instance.
callback | The callback to execute. |
simpleRenderable | Contains the SimpleRenderable for which the triangles were built. |
level | The LOD level of this mesh. |
inProcess | The amount of other meshes/LOD-Chunks still to be loaded. |
size_t Ogre::Volume::MeshBuilder::generateBuffers | ( | RenderOperation & | operation | ) |
Generates the vertex- and indexbuffer of this mesh on the given RenderOperation.
operation | The RenderOperation for the buffers. |
Entity* Ogre::Volume::MeshBuilder::generateWithManualObject | ( | SceneManager * | sceneManager, |
const String & | name, | ||
const String & | material | ||
) |
Generates an entity via a ManualObject.
sceneManager | The creating sceneManager. |
name | The name for the entity. |
material | The material to use. |
AxisAlignedBox Ogre::Volume::MeshBuilder::getBoundingBox | ( | ) |
Gets the bounding box of the mesh.