OGRE  1.12.8
Object-Oriented Graphics Rendering Engine
Ogre::D3D9VertexDeclaration Class Reference

Specialisation of VertexDeclaration for D3D9. More...

#include <OgreD3D9VertexDeclaration.h>

+ Inheritance diagram for Ogre::D3D9VertexDeclaration:

Public Member Functions

 D3D9VertexDeclaration ()
 
 ~D3D9VertexDeclaration ()
 
IDirect3DVertexDeclaration9 * getD3DVertexDeclaration (VertexDeclaration *globalDeclaration, bool useGlobalInstancingVertexBufferIsAvailable)
 Gets the D3D9-specific vertex declaration. More...
 
virtual void notifyOnDeviceCreate (IDirect3DDevice9 *d3d9Device)
 
virtual void notifyOnDeviceDestroy (IDirect3DDevice9 *d3d9Device)
 
- Public Member Functions inherited from Ogre::VertexDeclaration
 VertexDeclaration ()
 Standard constructor, not you should use HardwareBufferManager::createVertexDeclaration. More...
 
virtual ~VertexDeclaration ()
 
const VertexElementaddElement (unsigned short source, size_t offset, VertexElementType theType, VertexElementSemantic semantic, unsigned short index=0)
 Adds a new VertexElement to this declaration. More...
 
VertexDeclarationclone (HardwareBufferManagerBase *mgr=0) const
 Clones this declaration. More...
 
void closeGapsInSource (void)
 Remove any gaps in the source buffer list used by this declaration. More...
 
const VertexElementfindElementBySemantic (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...
 
VertexElementList findElementsBySource (unsigned short source) const
 Based on the current elements, gets the size of the vertex for a given buffer source. More...
 
VertexDeclarationgetAutoOrganisedDeclaration (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 VertexElementgetElement (unsigned short index) const
 Get a single element. More...
 
size_t getElementCount (void) const
 Get the number of elements in the declaration. More...
 
const VertexElementListgetElements (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...
 
unsigned short getNextFreeTextureCoordinate () const
 Return the index of the next free texture coordinate set which may be added to this declaration. More...
 
size_t getVertexSize (unsigned short source) const
 Gets the vertex size defined by this declaration for a given source. More...
 
const VertexElementinsertElement (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...
 
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...
 
bool operator!= (const VertexDeclaration &rhs) const
 
bool operator== (const VertexDeclaration &rhs) const
 
void removeAllElements (void)
 Remove all elements. More...
 
void removeElement (unsigned short elem_index)
 Remove the element at the given index from this declaration. More...
 
void removeElement (VertexElementSemantic semantic, unsigned short index=0)
 Remove the element with the given semantic and usage index. More...
 
void sort (void)
 Sorts the elements in this list to be compatible with D3D7 graphics cards. More...
 
- Public Member Functions inherited from Ogre::D3D9Resource
 D3D9Resource ()
 
virtual ~D3D9Resource ()
 
virtual void notifyOnDeviceLost (IDirect3DDevice9 *d3d9Device)
 
virtual void notifyOnDeviceReset (IDirect3DDevice9 *d3d9Device)
 

Additional Inherited Members

- Public Types inherited from Ogre::VertexDeclaration
typedef std::list< VertexElementVertexElementList
 Defines the list of vertex elements that makes up this declaration. More...
 
- Static Public Member Functions inherited from Ogre::VertexDeclaration
static bool vertexElementLess (const VertexElement &e1, const VertexElement &e2)
 Sort routine for vertex elements. More...
 
- Static Public Member Functions inherited from Ogre::D3D9Resource
static void lockDeviceAccess ()
 
static void unlockDeviceAccess ()
 

Detailed Description

Specialisation of VertexDeclaration for D3D9.

Constructor & Destructor Documentation

◆ D3D9VertexDeclaration()

Ogre::D3D9VertexDeclaration::D3D9VertexDeclaration ( )

◆ ~D3D9VertexDeclaration()

Ogre::D3D9VertexDeclaration::~D3D9VertexDeclaration ( )

Member Function Documentation

◆ notifyOnDeviceCreate()

virtual void Ogre::D3D9VertexDeclaration::notifyOnDeviceCreate ( IDirect3DDevice9 *  d3d9Device)
virtual

Reimplemented from Ogre::D3D9Resource.

◆ notifyOnDeviceDestroy()

virtual void Ogre::D3D9VertexDeclaration::notifyOnDeviceDestroy ( IDirect3DDevice9 *  d3d9Device)
virtual

Reimplemented from Ogre::D3D9Resource.

◆ getD3DVertexDeclaration()

IDirect3DVertexDeclaration9* Ogre::D3D9VertexDeclaration::getD3DVertexDeclaration ( VertexDeclaration globalDeclaration,
bool  useGlobalInstancingVertexBufferIsAvailable 
)

Gets the D3D9-specific vertex declaration.


The documentation for this class was generated from the following file: