| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #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:
- DLLEXPORT DX12BLAS(
- ID3D12Device5* zDevice, DX12DirectCommandQueue* zDirectQueue);
- DLLEXPORT ~DX12BLAS();
- DLLEXPORT void build(DX12Buffer* zVertexBuffer,
- DX12Buffer* vertexDataBuffer,
- DX12Buffer* indexBuffer,
- DX12Buffer* polygonSizeBuffer);
- DLLEXPORT DX12Buffer* zScratchBuffer() const;
- DLLEXPORT DX12Buffer* zResultBuffer() const;
- DLLEXPORT DX12Buffer* zVertexDataBuffer() const;
- DLLEXPORT DX12Buffer* zIndexBuffer() const;
- DLLEXPORT DX12Buffer* zPolygonSizeBuffer() const;
- };
- } // namespace Framework
|