| 123456789101112131415161718192021222324252627282930313233343536373839 |
- #pragma once
- #include "ReferenceCounter.h"
- struct ID3D12Device5;
- struct D3D12_RAYTRACING_GEOMETRY_DESC;
- namespace Framework
- {
- class DX12Buffer;
- class DX12DirectCommandQueue;
- class DX12BLAS : public ReferenceCounter
- {
- private:
- DX12Buffer* scratchBuffer;
- DX12Buffer* resultBuffer;
- DX12Buffer* vertexDataBuffer;
- DX12Buffer* indexBuffer;
- DX12Buffer* polygonSizeBuffer;
- ID3D12Device5* zDevice;
- DX12DirectCommandQueue* zDirectQueue;
- D3D12_RAYTRACING_GEOMETRY_DESC* geometryDesc;
- public:
- DX12BLAS(ID3D12Device5* zDevice, DX12DirectCommandQueue* zDirectQueue);
- ~DX12BLAS();
- void build(DX12Buffer* zVertexBuffer,
- DX12Buffer* vertexDataBuffer,
- DX12Buffer* indexBuffer,
- DX12Buffer* polygonSizeBuffer);
- DX12Buffer* zScratchBuffer() const;
- DX12Buffer* zResultBuffer() const;
- DX12Buffer* zVertexDataBuffer() const;
- DX12Buffer* zIndexBuffer() const;
- DX12Buffer* zPolygonSizeBuffer() const;
- };
- } // namespace Framework
|