Class to build up a mesh with vertices and indices. More...
#include <OgreVolumeMeshBuilder.h>
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. | |
Protected Types | |
typedef map< Vertex, size_t >::type | UMapVertexIndex |
Map to get a vertex index. | |
Protected Member Functions | |
void | addVertex (const Vertex &v) |
Adds a vertex to the data structure, reusing the index if it is already known. | |
Protected Attributes | |
AxisAlignedBox | mBox |
Holds the bounding box. | |
bool | mBoxInit |
Holds whether the initial bounding box has been set. | |
UMapVertexIndex | mIndexMap |
VecIndices | mIndices |
Holds the indices of the mesh. | |
VecVertex | mVertices |
Holds the vertices of the mesh. | |
Static Protected Attributes | |
static const unsigned short | MAIN_BINDING |
The buffer binding. | |
Class to build up a mesh with vertices and indices.
Definition at line 132 of file OgreVolumeMeshBuilder.h.
|
protected |
Map to get a vertex index.
Definition at line 140 of file OgreVolumeMeshBuilder.h.
Ogre::Volume::MeshBuilder::MeshBuilder | ( | void | ) |
Constructor.
|
static |
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. |
Definition at line 238 of file OgreVolumeMeshBuilder.h.
void Ogre::Volume::MeshBuilder::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.
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. |
Definition at line 295 of file OgreVolumeMeshBuilder.h.
Adds a vertex to the data structure, reusing the index if it is already known.
v | The vertex. |
Definition at line 159 of file OgreVolumeMeshBuilder.h.
References Ogre::AxisAlignedBox::getMaximum(), Ogre::AxisAlignedBox::getMinimum(), Ogre::AxisAlignedBox::setExtents(), Ogre::AxisAlignedBox::setMaximumX(), Ogre::AxisAlignedBox::setMaximumY(), Ogre::AxisAlignedBox::setMaximumZ(), Ogre::AxisAlignedBox::setMinimumX(), Ogre::AxisAlignedBox::setMinimumY(), Ogre::AxisAlignedBox::setMinimumZ(), Ogre::Volume::Vertex::x, Ogre::Volume::Vertex::y, and Ogre::Volume::Vertex::z.
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 | ( | void | ) |
Gets the bounding box of the mesh.
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
The buffer binding.
Definition at line 137 of file OgreVolumeMeshBuilder.h.
|
protected |
Holds the bounding box.
Definition at line 150 of file OgreVolumeMeshBuilder.h.
|
protected |
Holds whether the initial bounding box has been set.
Definition at line 153 of file OgreVolumeMeshBuilder.h.
|
protected |
Definition at line 141 of file OgreVolumeMeshBuilder.h.
|
protected |
Holds the indices of the mesh.
Definition at line 147 of file OgreVolumeMeshBuilder.h.
|
protected |
Holds the vertices of the mesh.
Definition at line 144 of file OgreVolumeMeshBuilder.h.
Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.