23 Microsoft::WRL::ComPtr<ID3D12Device2> device;
24 Microsoft::WRL::ComPtr<IDXGIAdapter4> adapter;
25 std::shared_ptr<CommandQueueD3D12> internalQueue;
26 Microsoft::WRL::ComPtr<ID3D12GraphicsCommandList2> internalCommandList;
27 Microsoft::WRL::ComPtr<D3D12MA::Allocator> allocator;
28 UINT g_RTVDescriptorHeapSize = 0;
30 Microsoft::WRL::ComPtr<ID3D12Fence> deviceRemovedFence;
32 Microsoft::WRL::ComPtr<ID3D12CommandSignature> multidrawSignature, multidrawIndexedSignature, dispatchIndirectSignature;
34 std::optional<D3D12DynamicDescriptorHeap<2048>> RTVHeap, DSVHeap;
35 std::optional<D3D12DynamicDescriptorHeap<65536>> CBV_SRV_UAVHeap;
36 std::optional<D3D12DynamicDescriptorHeap<2048>> SamplerHeap;
44 std::string GetBrandString();
45 RGLSwapchainPtr CreateSwapchain(RGLSurfacePtr, RGLCommandQueuePtr,
int,
int)
final;
50 RGLShaderLibraryPtr CreateShaderLibraryFromName(
const std::string_view& name)
final;
51 RGLShaderLibraryPtr CreateDefaultShaderLibrary()
final;
52 RGLShaderLibraryPtr CreateShaderLibraryFromBytes(
const std::span<const uint8_t>)
final;
53 RGLShaderLibraryPtr CreateShaderLibrarySourceCode(
const std::string_view,
const FromSourceConfig& config)
final;
54 RGLShaderLibraryPtr CreateShaderLibraryFromPath(
const std::filesystem::path&)
final;
64 TextureView GetGlobalBindlessTextureHeap()
const final;
66 RGLCommandQueuePtr CreateCommandQueue(QueueType type)
final;
67 RGLFencePtr CreateFence(
bool preSignaled)
final;
68 void BlockUntilIdle()
final;
70 size_t GetTotalVRAM()
const final;
71 size_t GetCurrentVRAMInUse()
const final;
Definition Texture.hpp:138
Definition Texture.hpp:162
Definition Texture.hpp:43