Specialisation of VertexDeclaration for OpenGL ES 2 Vertex Array Object usage. More...
#include <OgreGLES2VertexDeclaration.h>

Public Types | |
| typedef list< VertexElement >::type | VertexElementList |
| Defines the list of vertex elements that makes up this declaration. More... | |
Public Member Functions | |
| GLES2VertexDeclaration () | |
| ~GLES2VertexDeclaration () | |
| 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. More... | |
| void | bind (void) |
| virtual VertexDeclaration * | clone (HardwareBufferManagerBase *mgr=0) const |
| Clones this declaration. More... | |
| void | closeGapsInSource (void) |
| Remove any gaps in the source buffer list used by this declaration. More... | |
| virtual const VertexElement * | findElementBySemantic (VertexElementSemantic sem, unsigned short index=0) const |
| Finds a VertexElement with the given semantic, and index if there is more than one element with the same semantic. More... | |
| virtual VertexElementList | findElementsBySource (unsigned short source) const |
| Based on the current elements, gets the size of the vertex for a given buffer source. More... | |
| VertexDeclaration * | getAutoOrganisedDeclaration (bool skeletalAnimation, bool vertexAnimation, bool vertexAnimationNormals) const |
| 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. More... | |
| const VertexElement * | getElement (unsigned short index) const |
| Get a single element. More... | |
| size_t | getElementCount (void) const |
| Get the number of elements in the declaration. More... | |
| const VertexElementList & | getElements (void) const |
| Gets read-only access to the list of vertex elements. More... | |
| unsigned short | getMaxSource (void) const |
| Gets the index of the highest source value referenced by this declaration. More... | |
| virtual unsigned short | getNextFreeTextureCoordinate () const |
| Return the index of the next free texture coordinate set which may be added to this declaration. More... | |
| virtual size_t | getVertexSize (unsigned short source) const |
| Gets the vertex size defined by this declaration for a given source. More... | |
| 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. More... | |
| bool | isInitialised (void) |
| 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. More... | |
| void | operator delete (void *ptr) |
| void | operator delete (void *ptr, void *) |
| void | operator delete (void *ptr, const char *, int, const char *) |
| void | operator delete[] (void *ptr) |
| void | operator delete[] (void *ptr, const char *, int, const char *) |
| void * | operator new (size_t sz, const char *file, int line, const char *func) |
| operator new, with debug line info More... | |
| void * | operator new (size_t sz) |
| void * | operator new (size_t sz, void *ptr) |
| placement operator new More... | |
| void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
| array operator new, with debug line info More... | |
| void * | operator new[] (size_t sz) |
| bool | operator!= (const VertexDeclaration &rhs) const |
| bool | operator== (const VertexDeclaration &rhs) const |
| virtual void | removeAllElements (void) |
| Remove all elements. More... | |
| virtual void | removeElement (unsigned short elem_index) |
| Remove the element at the given index from this declaration. More... | |
| virtual void | removeElement (VertexElementSemantic semantic, unsigned short index=0) |
| Remove the element with the given semantic and usage index. More... | |
| void | setInitialised (bool flag) |
| void | sort (void) |
| Sorts the elements in this list to be compatible with the maximum number of rendering APIs / graphics cards. More... | |
Static Public Member Functions | |
| static bool | vertexElementLess (const VertexElement &e1, const VertexElement &e2) |
| Sort routine for vertex elements. More... | |
Protected Attributes | |
| VertexElementList | mElementList |
| bool | mIsInitialised |
| GLuint | mVAO |
| OpenGL id for the vertex array object. More... | |
Specialisation of VertexDeclaration for OpenGL ES 2 Vertex Array Object usage.
Definition at line 37 of file OgreGLES2VertexDeclaration.h.
|
inherited |
Defines the list of vertex elements that makes up this declaration.
Definition at line 341 of file OgreHardwareVertexBuffer.h.
| Ogre::GLES2VertexDeclaration::GLES2VertexDeclaration | ( | ) |
| Ogre::GLES2VertexDeclaration::~GLES2VertexDeclaration | ( | ) |
|
virtualinherited |
Adds a new VertexElement to this declaration.
| source | The binding index of HardwareVertexBuffer which will provide the source for this element. See VertexBufferBinding for full information. |
| offset | The offset in bytes where this element is located in the buffer |
| theType | The data format of the element (3 floats, a colour etc) |
| semantic | The meaning of the data (position, normal, diffuse colour etc) |
| index | Optional index for multi-input elements like texture coordinates |
Reimplemented in Ogre::D3D11VertexDeclaration, and Ogre::D3D9VertexDeclaration.
| void Ogre::GLES2VertexDeclaration::bind | ( | void | ) |
|
virtualinherited |
Clones this declaration.
| mgr | Optional HardwareBufferManager to use for creating the clone (if null, use the current default). |
|
inherited |
Remove any gaps in the source buffer list used by this declaration.
|
virtualinherited |
Finds a VertexElement with the given semantic, and index if there is more than one element with the same semantic.
|
virtualinherited |
Based on the current elements, gets the size of the vertex for a given buffer source.
| source | The buffer binding index for which to get the vertex size.Gets a list of elements which use a given source. |
|
inherited |
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.
| skeletalAnimation | Whether this vertex data is going to be skeletally animated |
| vertexAnimation | Whether this vertex data is going to be vertex animated |
| vertexAnimationNormals | Whether vertex data animation is going to include normals animation |
|
inherited |
Get a single element.
|
inherited |
Get the number of elements in the declaration.
Definition at line 352 of file OgreHardwareVertexBuffer.h.
|
inherited |
Gets read-only access to the list of vertex elements.
|
inherited |
Gets the index of the highest source value referenced by this declaration.
|
virtualinherited |
Return the index of the next free texture coordinate set which may be added to this declaration.
|
virtualinherited |
Gets the vertex size defined by this declaration for a given source.
|
virtualinherited |
Inserts a new VertexElement at a given position in this declaration.
| source | The binding index of HardwareVertexBuffer which will provide the source for this element. See VertexBufferBinding for full information. |
| offset | The offset in bytes where this element is located in the buffer |
| theType | The data format of the element (3 floats, a colour etc) |
| semantic | The meaning of the data (position, normal, diffuse colour etc) |
| index | Optional index for multi-input elements like texture coordinates |
Reimplemented in Ogre::D3D11VertexDeclaration, and Ogre::D3D9VertexDeclaration.
| bool Ogre::GLES2VertexDeclaration::isInitialised | ( | void | ) |
Definition at line 48 of file OgreGLES2VertexDeclaration.h.
References mIsInitialised.
|
virtualinherited |
Modify an element in-place, params as addElement.
Reimplemented in Ogre::D3D11VertexDeclaration, and Ogre::D3D9VertexDeclaration.
|
inherited |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 501 of file OgreHardwareVertexBuffer.h.
|
inherited |
Definition at line 484 of file OgreHardwareVertexBuffer.h.
References Ogre::VertexDeclaration::mElementList.
|
virtualinherited |
Remove all elements.
Reimplemented in Ogre::D3D11VertexDeclaration, and Ogre::D3D9VertexDeclaration.
|
virtualinherited |
Remove the element at the given index from this declaration.
Reimplemented in Ogre::D3D11VertexDeclaration, and Ogre::D3D9VertexDeclaration.
|
virtualinherited |
Remove the element with the given semantic and usage index.
Reimplemented in Ogre::D3D11VertexDeclaration, and Ogre::D3D9VertexDeclaration.
| void Ogre::GLES2VertexDeclaration::setInitialised | ( | bool | flag | ) |
Definition at line 49 of file OgreGLES2VertexDeclaration.h.
References mIsInitialised.
|
inherited |
Sorts the elements in this list to be compatible with the maximum number of rendering APIs / graphics cards.
|
staticinherited |
Sort routine for vertex elements.
|
protectedinherited |
Definition at line 345 of file OgreHardwareVertexBuffer.h.
Referenced by Ogre::VertexDeclaration::operator==().
|
protected |
Definition at line 42 of file OgreGLES2VertexDeclaration.h.
Referenced by isInitialised(), and setInitialised().
|
protected |
OpenGL id for the vertex array object.
Definition at line 41 of file OgreGLES2VertexDeclaration.h.
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri Feb 15 2019 14:33:40