OGRE
13.6
Object-Oriented Graphics Rendering Engine
|
Implementation of HardwareBufferManager for D3D9. More...
#include <OgreD3D9HardwareBufferManager.h>
Public Member Functions | |
D3D9HardwareBufferManager () | |
~D3D9HardwareBufferManager () | |
HardwareIndexBufferSharedPtr | createIndexBuffer (HardwareIndexBuffer::IndexType itype, size_t numIndexes, HardwareBuffer::Usage usage, bool useShadowBuffer=false) |
Create a hardware vertex buffer. More... | |
HardwareVertexBufferSharedPtr | createVertexBuffer (size_t vertexSize, size_t numVerts, HardwareBuffer::Usage usage, bool useShadowBuffer=false) |
Creates a vertex buffer. More... | |
void | setAutoHardwareBufferManagement (bool autoManagement) |
Set automatic hardware buffers management. More... | |
Public Member Functions inherited from Ogre::HardwareBufferManager | |
HardwareBufferManager () | |
~HardwareBufferManager () | |
Public Member Functions inherited from Ogre::HardwareBufferManagerBase | |
HardwareBufferManagerBase () | |
virtual | ~HardwareBufferManagerBase () |
void | _forceReleaseBufferCopies (const HardwareVertexBufferSharedPtr &sourceBuffer) |
Internal method that forces the release of copies of a given buffer. More... | |
void | _forceReleaseBufferCopies (HardwareVertexBuffer *sourceBuffer) |
Internal method that forces the release of copies of a given buffer. More... | |
void | _freeUnusedBufferCopies (void) |
Free all unused vertex buffer copies. More... | |
void | _notifyVertexBufferDestroyed (HardwareVertexBuffer *buf) |
Notification that a hardware vertex buffer has been destroyed. More... | |
void | _releaseBufferCopies (bool forceFreeUnused=false) |
Internal method for releasing all temporary buffers which have been allocated using BLT_AUTOMATIC_RELEASE; is called by OGRE. More... | |
HardwareVertexBufferSharedPtr | allocateVertexBufferCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, BufferLicenseType licenseType, HardwareBufferLicensee *licensee, bool copyData=false) |
Allocates a copy of a given vertex buffer. More... | |
virtual RenderToVertexBufferSharedPtr | createRenderToVertexBuffer () |
Create a render to vertex buffer. More... | |
virtual HardwareBufferPtr | createUniformBuffer (size_t sizeBytes, HardwareBufferUsage usage=HBU_CPU_TO_GPU, bool useShadowBuffer=false) |
Create uniform buffer. More... | |
VertexBufferBinding * | createVertexBufferBinding (void) |
Creates a new VertexBufferBinding. More... | |
VertexDeclaration * | createVertexDeclaration (void) |
Creates a new vertex declaration. More... | |
void | destroyVertexBufferBinding (VertexBufferBinding *binding) |
Destroys a VertexBufferBinding. More... | |
void | destroyVertexDeclaration (VertexDeclaration *decl) |
Destroys a vertex declaration. More... | |
virtual void | registerVertexBufferSourceAndCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, const HardwareVertexBufferSharedPtr ©) |
Registers a vertex buffer as a copy of another. More... | |
void | releaseVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy) |
Manually release a vertex buffer copy for others to subsequently use. More... | |
void | touchVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy) |
Tell engine that the vertex buffer copy intent to reuse. More... | |
Public Member Functions inherited from Ogre::Singleton< HardwareBufferManager > | |
Singleton (void) | |
~Singleton (void) | |
Additional Inherited Members | |
Public Types inherited from Ogre::HardwareBufferManagerBase | |
enum | BufferLicenseType { BLT_MANUAL_RELEASE , BLT_AUTOMATIC_RELEASE } |
Static Public Member Functions inherited from Ogre::HardwareBufferManager | |
static HardwareBufferManager & | getSingleton (void) |
Get the singleton instance. More... | |
static HardwareBufferManager * | getSingletonPtr (void) |
Get the singleton instance. More... | |
Static Public Member Functions inherited from Ogre::Singleton< HardwareBufferManager > | |
static HardwareBufferManager & | getSingleton (void) |
Get the singleton instance. More... | |
static HardwareBufferManager * | getSingletonPtr (void) |
Get the singleton instance. More... | |
Implementation of HardwareBufferManager for D3D9.
Ogre::D3D9HardwareBufferManager::D3D9HardwareBufferManager | ( | ) |
Ogre::D3D9HardwareBufferManager::~D3D9HardwareBufferManager | ( | ) |
|
inline |
Set automatic hardware buffers management.
When enabled, an explicit system memory backup is created for buffers with no read caps - so in case of device lost/ device swaps the content of the buffers can be restored from this copy. The default is false in order to reduce system memory consumption.
|
virtual |
Creates a vertex buffer.
Implements Ogre::HardwareBufferManagerBase.
|
virtual |
Create a hardware vertex buffer.
Implements Ogre::HardwareBufferManagerBase.