#include <OgreHardwareVertexBuffer.h>
Inheritance diagram for Ogre::VertexDeclaration:
Public Types | |
typedef std::list< VertexElement > | VertexElementList |
Defines the list of vertex elements that makes up this declaration. | |
Public Member Functions | |
VertexDeclaration () | |
Standard constructor, not you should use HardwareBufferManager::createVertexDeclaration. | |
virtual | ~VertexDeclaration () |
size_t | getElementCount (void) |
Get the number of elements in the declaration. | |
const VertexElementList & | getElements (void) const |
Gets read-only access to the list of vertex elements. | |
const VertexElement * | getElement (unsigned short index) |
Get a single element. | |
void | sort (void) |
Sorts the elements in this list to be compatible with the maximum number of rendering APIs / graphics cards. | |
void | closeGapsInSource (void) |
Remove any gaps in the source buffer list used by this declaration. | |
VertexDeclaration * | getAutoOrganisedDeclaration (bool skeletalAnimation, bool vertexAnimation) |
Generates a new VertexDeclaration for optimal usage based on the current vertex declaration, which can be used with VertexData::reorganiseBuffers later if you wish, or simply used as a template. | |
unsigned short | getMaxSource (void) const |
Gets the indeex of the highest source value referenced by this declaration. | |
virtual const VertexElement & | addElement (unsigned short source, size_t offset, VertexElementType theType, VertexElementSemantic semantic, unsigned short index=0) |
Adds a new VertexElement to this declaration. | |
virtual const VertexElement & | insertElement (unsigned short atPosition, unsigned short source, size_t offset, VertexElementType theType, VertexElementSemantic semantic, unsigned short index=0) |
Inserts a new VertexElement at a given position in this declaration. | |
virtual void | removeElement (unsigned short elem_index) |
Remove the element at the given index from this declaration. | |
virtual void | removeElement (VertexElementSemantic semantic, unsigned short index=0) |
Remove the element with the given semantic and usage index. | |
virtual void | removeAllElements (void) |
Remove all elements. | |
virtual void | modifyElement (unsigned short elem_index, unsigned short source, size_t offset, VertexElementType theType, VertexElementSemantic semantic, unsigned short index=0) |
Modify an element in-place, params as addElement. | |
virtual const VertexElement * | findElementBySemantic (VertexElementSemantic sem, unsigned short index=0) |
Finds a VertexElement with the given semantic, and index if there is more than one element with the same semantic. | |
virtual VertexElementList | findElementsBySource (unsigned short source) |
Gets a list of elements which use a given source. | |
virtual size_t | getVertexSize (unsigned short source) |
Gets the vertex size defined by this declaration for a given source. | |
virtual VertexDeclaration * | clone (void) |
Clones this declaration. | |
bool | operator== (const VertexDeclaration &rhs) const |
bool | operator!= (const VertexDeclaration &rhs) const |
Static Public Member Functions | |
bool | vertexElementLess (const VertexElement &e1, const VertexElement &e2) |
Sort routine for vertex elements. | |
Protected Attributes | |
VertexElementList | mElementList |
Definition at line 287 of file OgreHardwareVertexBuffer.h.
|
Defines the list of vertex elements that makes up this declaration.
Definition at line 291 of file OgreHardwareVertexBuffer.h. |
|
Standard constructor, not you should use HardwareBufferManager::createVertexDeclaration.
|
|
|
|
Adds a new VertexElement to this declaration.
Reimplemented in Ogre::D3D9VertexDeclaration. |
|
Clones this declaration.
|
|
Remove any gaps in the source buffer list used by this declaration.
|
|
Finds a VertexElement with the given semantic, and index if there is more than one element with the same semantic.
|
|
Gets a list of elements which use a given source.
|
|
Generates a new VertexDeclaration for optimal usage based on the current vertex declaration, which can be used with VertexData::reorganiseBuffers later if you wish, or simply used as a template.
|
|
Get a single element.
|
|
Get the number of elements in the declaration.
Definition at line 302 of file OgreHardwareVertexBuffer.h. |
|
Gets read-only access to the list of vertex elements.
|
|
Gets the indeex of the highest source value referenced by this declaration.
|
|
Gets the vertex size defined by this declaration for a given source.
|
|
Inserts a new VertexElement at a given position in this declaration.
Reimplemented in Ogre::D3D9VertexDeclaration. |
|
Modify an element in-place, params as addElement.
Reimplemented in Ogre::D3D9VertexDeclaration. |
|
Definition at line 442 of file OgreHardwareVertexBuffer.h. |
|
Definition at line 425 of file OgreHardwareVertexBuffer.h. References mElementList. |
|
Remove all elements.
Reimplemented in Ogre::D3D9VertexDeclaration. |
|
Remove the element with the given semantic and usage index.
Reimplemented in Ogre::D3D9VertexDeclaration. |
|
Remove the element at the given index from this declaration.
Reimplemented in Ogre::D3D9VertexDeclaration. |
|
Sorts the elements in this list to be compatible with the maximum number of rendering APIs / graphics cards.
|
|
Sort routine for vertex elements.
|
|
Definition at line 295 of file OgreHardwareVertexBuffer.h. Referenced by operator==(). |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:39:17 2006