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 );
VertexElementType
Vertex element type, used to identify the base types of the vertex contents.
DeviceToDeclarationMap::iterator DeviceToDeclarationIterator
VertexDeclaration * mLastUsedGlobalDeclaration
This class declares the format of a set of vertex inputs, which can be issued to the rendering API th...
VertexElementSemantic
Vertex element semantics, used to identify the meaning of vertex buffer contents. ...
bool mUsedGlobalDeclaration
This class declares the usage of a single vertex buffer as a component of a complete VertexDeclaratio...
Specialisation of VertexDeclaration for D3D9.
map< IDirect3DDevice9 *, IDirect3DVertexDeclaration9 * >::type DeviceToDeclarationMap
DeviceToDeclarationMap mMapDeviceToDeclaration
Represents a Direct3D rendering resource.