123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #pragma once
- #include "DXBuffer.h"
- struct ID3D12Resource;
- struct ID3D12Device;
- struct D3D12_RESOURCE_DESC;
- struct ID3D12GraphicsCommandList;
- namespace Framework
- {
-
- class DX12Buffer : public DXBuffer
- {
- protected:
- D3D12_RESOURCE_DESC* description;
- ID3D12Resource* buffer;
- ID3D12Resource* intermediate;
- ID3D12Device* device;
- ID3D12GraphicsCommandList* list;
- public:
-
-
- DLLEXPORT DX12Buffer(int eSize,
- ID3D12Device* device,
- ID3D12GraphicsCommandList* list,
- int bindFlags);
-
- DLLEXPORT virtual ~DX12Buffer();
-
- DLLEXPORT void copieren(int byteCount = -1) override;
-
- DLLEXPORT ID3D12Resource* zBuffer() const;
- };
- class DX12IndexBuffer : public DX12Buffer
- {
- private:
- bool ibs;
- DX12DirectCommandQueue* direct;
- DX12CopyCommandQueue* copy;
- public:
- DX12IndexBuffer(int eSize,
- ID3D12Device* device,
- DX12CopyCommandQueue* copy,
- DX12DirectCommandQueue* direct);
- ~DX12IndexBuffer();
-
- DLLEXPORT void copieren(int byteCount = -1) override;
- };
- class DX12VertexBuffer : public DX12Buffer
- {
- private:
- bool vbs;
- DX12DirectCommandQueue* direct;
- DX12CopyCommandQueue* copy;
- public:
- DX12VertexBuffer(int eSize,
- ID3D12Device* device,
- DX12CopyCommandQueue* copy,
- DX12DirectCommandQueue* direct);
- ~DX12VertexBuffer();
-
- DLLEXPORT void copieren(int byteCount = -1) override;
- };
- }
|