5 #include <tbb/concurrent_unordered_set.h> 7 #include <DXUtils/D3DFactory.h> 20 static void EraseAll() noexcept;
30 bool IsDataValid()
const noexcept;
32 std::vector<D3D12_INPUT_ELEMENT_DESC> mInputLayoutDescriptors{};
34 ID3D12RootSignature* mRootSignature{
nullptr };
37 D3D12_SHADER_BYTECODE mVertexShaderBytecode{ 0UL };
38 D3D12_SHADER_BYTECODE mGeometryShaderBytecode{ 0UL };
39 D3D12_SHADER_BYTECODE mDomainShaderBytecode{ 0UL };
40 D3D12_SHADER_BYTECODE mHullShaderBytecode{ 0UL };
41 D3D12_SHADER_BYTECODE mPixelShaderBytecode{ 0UL };
43 D3D12_BLEND_DESC mBlendDescriptor = D3DFactory::GetDisabledBlendDesc();
44 D3D12_RASTERIZER_DESC mRasterizerDescriptor = D3DFactory::GetDefaultRasterizerDesc();
45 D3D12_DEPTH_STENCIL_DESC mDepthStencilDescriptor = D3DFactory::GetDefaultDepthStencilDesc();
46 std::uint32_t mNumRenderTargets{ 0U };
47 DXGI_FORMAT mRenderTargetFormats[D3D12_SIMULTANEOUS_RENDER_TARGET_COUNT]{ DXGI_FORMAT_UNKNOWN };
48 DXGI_SAMPLE_DESC mSampleDescriptor{ 1U, 0U };
49 std::uint32_t mSampleMask{ UINT_MAX };
50 D3D12_PRIMITIVE_TOPOLOGY_TYPE mPrimitiveTopologyType{ D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE };
58 static ID3D12PipelineState& CreateGraphicsPSOByDescriptor(
const D3D12_GRAPHICS_PIPELINE_STATE_DESC& psoDescriptor) noexcept;
63 static std::mutex mMutex;
Definition: PSOManager.h:11
Definition: concurrent_unordered_set.h:58
Definition: PSOManager.h:22