Add shader getter to IMaterial interface
This commit is contained in:
@@ -22,6 +22,11 @@ const MaterialInfo& LODPreviewMaterialShader::GetInfo() const
|
||||
return _material->GetInfo();
|
||||
}
|
||||
|
||||
GPUShader* LODPreviewMaterialShader::GetShader() const
|
||||
{
|
||||
return _material->GetShader();
|
||||
}
|
||||
|
||||
bool LODPreviewMaterialShader::IsReady() const
|
||||
{
|
||||
return _material && _material->IsReady();
|
||||
|
||||
@@ -30,6 +30,7 @@ public:
|
||||
|
||||
// [IMaterial]
|
||||
const MaterialInfo& GetInfo() const override;
|
||||
GPUShader* GetShader() const override;
|
||||
bool IsReady() const override;
|
||||
bool CanUseInstancing(InstancingHandler& handler) const override;
|
||||
DrawPass GetDrawModes() const override;
|
||||
|
||||
@@ -53,6 +53,11 @@ const MaterialInfo& LightmapUVsDensityMaterialShader::GetInfo() const
|
||||
return _info;
|
||||
}
|
||||
|
||||
GPUShader* LightmapUVsDensityMaterialShader::GetShader() const
|
||||
{
|
||||
return _shader->GetShader();
|
||||
}
|
||||
|
||||
bool LightmapUVsDensityMaterialShader::IsReady() const
|
||||
{
|
||||
return _shader && _shader->IsLoaded();
|
||||
|
||||
@@ -40,6 +40,7 @@ public:
|
||||
|
||||
// [IMaterial]
|
||||
const MaterialInfo& GetInfo() const override;
|
||||
GPUShader* GetShader() const override;
|
||||
bool IsReady() const override;
|
||||
DrawPass GetDrawModes() const override;
|
||||
void Bind(BindParameters& params) override;
|
||||
|
||||
@@ -29,6 +29,11 @@ const MaterialInfo& MaterialComplexityMaterialShader::WrapperShader::GetInfo() c
|
||||
return Info;
|
||||
}
|
||||
|
||||
GPUShader* MaterialComplexityMaterialShader::WrapperShader::GetShader() const
|
||||
{
|
||||
return MaterialAsset->GetShader();
|
||||
}
|
||||
|
||||
bool MaterialComplexityMaterialShader::WrapperShader::IsReady() const
|
||||
{
|
||||
return MaterialAsset && MaterialAsset->IsReady();
|
||||
|
||||
@@ -25,6 +25,7 @@ private:
|
||||
MaterialDomain Domain;
|
||||
AssetReference<Material> MaterialAsset;
|
||||
const MaterialInfo& GetInfo() const override;
|
||||
GPUShader* GetShader() const override;
|
||||
bool IsReady() const override;
|
||||
bool CanUseInstancing(InstancingHandler& handler) const override;
|
||||
DrawPass GetDrawModes() const override;
|
||||
|
||||
@@ -41,6 +41,11 @@ const MaterialInfo& VertexColorsMaterialShader::GetInfo() const
|
||||
return _info;
|
||||
}
|
||||
|
||||
GPUShader* VertexColorsMaterialShader::GetShader() const
|
||||
{
|
||||
return _shader->GetShader();
|
||||
}
|
||||
|
||||
bool VertexColorsMaterialShader::IsReady() const
|
||||
{
|
||||
return _shader && _shader->IsLoaded();
|
||||
|
||||
@@ -38,6 +38,7 @@ public:
|
||||
|
||||
// [IMaterial]
|
||||
const MaterialInfo& GetInfo() const override;
|
||||
GPUShader* GetShader() const override;
|
||||
bool IsReady() const override;
|
||||
DrawPass GetDrawModes() const override;
|
||||
void Bind(BindParameters& params) override;
|
||||
|
||||
Reference in New Issue
Block a user