From 33e1dca8e674e5e5a05c97151a4a8e1644f6b174 Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Tue, 5 Mar 2019 21:22:48 -0800 Subject: Keep fixing metal backend --- .../include/PipelineStateMtlImpl.h | 24 +++++++++++++++++++++ .../include/RenderDeviceMtlImpl.h | 3 +-- .../GraphicsEngineMetal/include/ShaderMtlImpl.h | 25 ++++++---------------- Graphics/GraphicsEngineMetal/src/ShaderMtlImpl.mm | 8 +++---- 4 files changed, 36 insertions(+), 24 deletions(-) (limited to 'Graphics/GraphicsEngineMetal') diff --git a/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h b/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h index 5117cf28..49550369 100644 --- a/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h +++ b/Graphics/GraphicsEngineMetal/include/PipelineStateMtlImpl.h @@ -54,6 +54,30 @@ public: virtual bool IsCompatibleWith(const IPipelineState *pPSO)const override final; + virtual void BindStaticResources(Uint32 ShaderFlags, IResourceMapping* pResourceMapping, Uint32 Flags)override final + { + LOG_ERROR_MESSAGE("PipelineStateMtlImpl::BindStaticResources() is not implemented"); + } + + virtual Uint32 GetStaticVariableCount(SHADER_TYPE ShaderType) const override final + { + LOG_ERROR_MESSAGE("PipelineStateMtlImpl::GetStaticVariableCount() is not implemented"); + return 0; + } + + virtual IShaderResourceVariable* GetStaticShaderVariable(SHADER_TYPE ShaderType, const Char* Name) override final; + { + LOG_ERROR_MESSAGE("PipelineStateMtlImpl::GetStaticShaderVariable() is not implemented"); + return nullptr; + } + + virtual IShaderResourceVariable* GetStaticShaderVariable(SHADER_TYPE ShaderType, Uint32 Index) override final; + { + LOG_ERROR_MESSAGE("PipelineStateMtlImpl::GetStaticShaderVariable() is not implemented"); + return nullptr; + } + + private: }; diff --git a/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h b/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h index fbc40a0c..0f49380f 100644 --- a/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h +++ b/Graphics/GraphicsEngineMetal/include/RenderDeviceMtlImpl.h @@ -66,8 +66,7 @@ public: private: virtual void TestTextureFormat( TEXTURE_FORMAT TexFormat )override final; - EngineMtlAttribs m_EngineAttribs; - + EngineMtlCreateInfo m_EngineAttribs; }; } diff --git a/Graphics/GraphicsEngineMetal/include/ShaderMtlImpl.h b/Graphics/GraphicsEngineMetal/include/ShaderMtlImpl.h index 8d3f09a2..8b73035c 100644 --- a/Graphics/GraphicsEngineMetal/include/ShaderMtlImpl.h +++ b/Graphics/GraphicsEngineMetal/include/ShaderMtlImpl.h @@ -44,34 +44,23 @@ public: ShaderMtlImpl(IReferenceCounters* pRefCounters, class RenderDeviceMtlImpl* pRenderDeviceMtl, - const ShaderCreationAttribs& CreationAttribs); + const ShaderCreateInfo& ShaderCI); ~ShaderMtlImpl(); - virtual void QueryInterface( const Diligent::INTERFACE_ID &IID, IObject** ppInterface )override final; + virtual void QueryInterface( const INTERFACE_ID& IID, IObject** ppInterface )override final; - virtual void BindResources( IResourceMapping* pResourceMapping, Uint32 Flags )override final + virtual Uint32 GetResourceCount()const override final { - LOG_ERROR_MESSAGE("ShaderMtlImpl::BindResources() is not implemented"); - } - - virtual IShaderVariable* GetShaderVariable( const Char* Name )override final - { - LOG_ERROR_MESSAGE("ShaderMtlImpl::GetShaderVariable() is not implemented"); - return nullptr; - } - - virtual Uint32 GetVariableCount() const override final - { - LOG_ERROR_MESSAGE("ShaderMtlImpl::GetVariableCount() is not implemented"); + LOG_ERROR_MESSAGE("ShaderMtlImpl::GetResourceCount() is not implemented"); return 0; } - virtual IShaderVariable* GetShaderVariable(Uint32 Index)override final + virtual ShaderResourceDesc GetResource(Uint32 Index)const override final { - LOG_ERROR_MESSAGE("ShaderMtlImpl::GetShaderVariable() is not implemented"); + LOG_ERROR_MESSAGE("ShaderMtlImpl::GetResource() is not implemented"); return nullptr; } - + private: }; diff --git a/Graphics/GraphicsEngineMetal/src/ShaderMtlImpl.mm b/Graphics/GraphicsEngineMetal/src/ShaderMtlImpl.mm index 489c3004..7f9f04f6 100644 --- a/Graphics/GraphicsEngineMetal/src/ShaderMtlImpl.mm +++ b/Graphics/GraphicsEngineMetal/src/ShaderMtlImpl.mm @@ -28,10 +28,10 @@ namespace Diligent { -ShaderMtlImpl::ShaderMtlImpl(IReferenceCounters* pRefCounters, - RenderDeviceMtlImpl* pRenderDeviceMtl, - const ShaderCreationAttribs& CreationAttribs) : - TShaderBase(pRefCounters, pRenderDeviceMtl, CreationAttribs.Desc) +ShaderMtlImpl::ShaderMtlImpl(IReferenceCounters* pRefCounters, + RenderDeviceMtlImpl* pRenderDeviceMtl, + const ShaderCreateInfo& ShaderCI) : + TShaderBase(pRefCounters, pRenderDeviceMtl, ShaderCI.Desc) { LOG_ERROR_AND_THROW("Shaders are not implemented in Metal backend"); } -- cgit v1.2.3