28 #ifndef __D3D9VERTEXDECLARATION_H__
29 #define __D3D9VERTEXDECLARATION_H__
55 void removeElement(
unsigned short elem_index);
61 void removeAllElements(
void);
65 void modifyElement(
unsigned short elem_index,
unsigned short source,
size_t offset,
VertexElementType theType,
69 virtual void notifyOnDeviceCreate(IDirect3DDevice9* d3d9Device);
72 virtual void notifyOnDeviceDestroy(IDirect3DDevice9* d3d9Device);
75 IDirect3DVertexDeclaration9* getD3DVertexDeclaration(
VertexDeclaration * globalDeclaration,
bool useGlobalInstancingVertexBufferIsAvailable);
78 void releaseDeclaration();
79 void convertElement(
const VertexElement & element, D3DVERTEXELEMENT9 & dxElement );
VertexDeclaration * mLastUsedGlobalDeclaration
map< IDirect3DDevice9 *, IDirect3DVertexDeclaration9 * >::type DeviceToDeclarationMap
VertexElementSemantic
Vertex element semantics, used to identify the meaning of vertex buffer contents. ...
This class declares the usage of a single vertex buffer as a component of a complete VertexDeclaratio...
bool mUsedGlobalDeclaration
VertexElementType
Vertex element type, used to identify the base types of the vertex contents.
DeviceToDeclarationMap::iterator DeviceToDeclarationIterator
DeviceToDeclarationMap mMapDeviceToDeclaration
This class declares the format of a set of vertex inputs, which can be issued to the rendering API th...
Specialisation of VertexDeclaration for D3D9.
Represents a Direct3D rendering resource.