| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #include "CmD3D11HardwareBufferManager.h"
- #include "CmD3D11HardwareVertexBuffer.h"
- #include "CmD3D11HardwareIndexBuffer.h"
- #include "CmD3D11HardwareConstantBuffer.h"
- #include "CmD3D11VertexDeclaration.h"
- namespace CamelotEngine
- {
- D3D11HardwareBufferManagerBase::D3D11HardwareBufferManagerBase(D3D11Device& device)
- : mDevice(device)
- { }
- D3D11HardwareBufferManagerBase::~D3D11HardwareBufferManagerBase()
- {
- destroyAllBindings();
- }
- HardwareVertexBufferPtr D3D11HardwareBufferManagerBase::createVertexBuffer(UINT32 vertexSize,
- UINT32 numVerts, HardwareBuffer::Usage usage, bool streamOut)
- {
- assert (numVerts > 0);
- D3D11HardwareVertexBuffer* vbuf = new D3D11HardwareVertexBuffer(mDevice,
- this, vertexSize, numVerts, usage, false, streamOut);
- {
- mVertexBuffers.insert(vbuf);
- }
- return HardwareVertexBufferPtr(vbuf);
- }
- HardwareIndexBufferPtr D3D11HardwareBufferManagerBase::createIndexBuffer(HardwareIndexBuffer::IndexType itype,
- UINT32 numIndexes, HardwareBuffer::Usage usage)
- {
- assert (numIndexes > 0);
- D3D11HardwareIndexBuffer* idx = new D3D11HardwareIndexBuffer(mDevice,
- this, itype, numIndexes, usage, false);
- {
- mIndexBuffers.insert(idx);
- }
- return HardwareIndexBufferPtr(idx);
- }
- HardwareConstantBufferPtr
- D3D11HardwareBufferManagerBase::createConstantBuffer(UINT32 sizeBytes, HardwareBuffer::Usage usage)
- {
- assert (sizeBytes > 0);
- D3D11HardwareConstantBuffer* cnstBuf = new D3D11HardwareConstantBuffer(mDevice, this, sizeBytes, usage, false);
- {
- mConstantBuffers.insert(cnstBuf);
- }
- return HardwareConstantBufferPtr(cnstBuf);
- }
- VertexDeclarationPtr D3D11HardwareBufferManagerBase::createVertexDeclarationImpl(void)
- {
- return VertexDeclarationPtr(new D3D11VertexDeclaration());
- }
- void D3D11HardwareBufferManagerBase::destroyVertexDeclarationImpl(VertexDeclaration* decl)
- {
- delete decl;
- }
- }
|