diff options
| author | assiduous <assiduous@diligentgraphics.com> | 2020-04-01 04:13:05 +0000 |
|---|---|---|
| committer | assiduous <assiduous@diligentgraphics.com> | 2020-04-01 04:13:05 +0000 |
| commit | 9d4d0de9c600ef29b7ead7716c1dcfd1e7000b0d (patch) | |
| tree | ac220b4b6310d05c42cd53eaa42a7a291bd08d56 /Graphics/GraphicsEngineMetal | |
| parent | Improved PSO creation warnings (diff) | |
| download | DiligentCore-9d4d0de9c600ef29b7ead7716c1dcfd1e7000b0d.tar.gz DiligentCore-9d4d0de9c600ef29b7ead7716c1dcfd1e7000b0d.zip | |
Added PipelineStateCreateInfo struct that is taken by IRenderDevice::CreateInfo instead of PipelineStateDesc struct (API version 240056)
Diffstat (limited to 'Graphics/GraphicsEngineMetal')
4 files changed, 12 insertions, 12 deletions
diff --git a/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h b/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h index 470ce823..d6623102 100644 --- a/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h +++ b/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h @@ -43,9 +43,9 @@ class PipelineStateMtlImpl final : public PipelineStateBase<IPipelineStateMtl, R public: using TPipelineStateBase = PipelineStateBase<IPipelineStateMtl, RenderDeviceMtlImpl>; - PipelineStateMtlImpl(IReferenceCounters* pRefCounters, - class RenderDeviceMtlImpl* pDeviceMtl, - const PipelineStateDesc& PipelineDesc); + PipelineStateMtlImpl(IReferenceCounters* pRefCounters, + class RenderDeviceMtlImpl* pDeviceMtl, + const PipelineStateCreateInfo& CreateInfo); ~PipelineStateMtlImpl(); virtual void QueryInterface(const Diligent::INTERFACE_ID& IID, IObject** ppInterface) override final; diff --git a/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h b/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h index e1f2070c..856795af 100644 --- a/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h +++ b/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h @@ -55,7 +55,7 @@ public: virtual void CreateSampler(const SamplerDesc& SamplerDesc, ISampler** ppSampler) override final; - virtual void CreatePipelineState(const PipelineStateDesc& PipelineDesc, IPipelineState** ppPipelineState) override final; + virtual void CreatePipelineState(const PipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) override final; virtual void CreateFence(const FenceDesc& Desc, IFence** ppFence) override final; diff --git a/Graphics/GraphicsEngineMetal/src/PipelineStateMtlImpl.mm b/Graphics/GraphicsEngineMetal/src/PipelineStateMtlImpl.mm index c0a1a011..5ea1b909 100644 --- a/Graphics/GraphicsEngineMetal/src/PipelineStateMtlImpl.mm +++ b/Graphics/GraphicsEngineMetal/src/PipelineStateMtlImpl.mm @@ -29,13 +29,13 @@ namespace Diligent { -PipelineStateMtlImpl::PipelineStateMtlImpl(IReferenceCounters* pRefCounters, - RenderDeviceMtlImpl* pRenderDeviceMtl, - const PipelineStateDesc& PipelineDesc) : - TPipelineStateBase(pRefCounters, pRenderDeviceMtl, PipelineDesc) +PipelineStateMtlImpl::PipelineStateMtlImpl(IReferenceCounters* pRefCounters, + RenderDeviceMtlImpl* pRenderDeviceMtl, + const PipelineStateCreateInfo& CreateInfo) : + TPipelineStateBase(pRefCounters, pRenderDeviceMtl, CreateInfo.PSODesc) { LOG_ERROR_AND_THROW("Pipeline states are not implemented in Metal backend"); - if (PipelineDesc.IsComputePipeline) + if (CreateInfo.PSODesc.IsComputePipeline) { } diff --git a/Graphics/GraphicsEngineMetal/src/RenderDeviceMtlImpl.mm b/Graphics/GraphicsEngineMetal/src/RenderDeviceMtlImpl.mm index c3a47300..a250c6b5 100644 --- a/Graphics/GraphicsEngineMetal/src/RenderDeviceMtlImpl.mm +++ b/Graphics/GraphicsEngineMetal/src/RenderDeviceMtlImpl.mm @@ -145,13 +145,13 @@ void RenderDeviceMtlImpl :: CreateSampler(const SamplerDesc& SamplerDesc, ISampl } -void RenderDeviceMtlImpl::CreatePipelineState(const PipelineStateDesc& PipelineDesc, IPipelineState** ppPipelineState) +void RenderDeviceMtlImpl::CreatePipelineState(const PipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) { - CreateDeviceObject( "Pipeline state", PipelineDesc, ppPipelineState, + CreateDeviceObject( "Pipeline state", PSOCreateInfo.PSODesc, ppPipelineState, [&]() { PipelineStateMtlImpl* pPipelineStateMtl( NEW_RC_OBJ(m_PSOAllocator, "PipelineStateMtlImpl instance", PipelineStateMtlImpl) - (this, PipelineDesc ) ); + (this, PSOCreateInfo.PSODesc) ); pPipelineStateMtl->QueryInterface( IID_PipelineState, reinterpret_cast<IObject**>(ppPipelineState) ); OnCreateDeviceObject( pPipelineStateMtl ); } |
