From cdbfa86363d3186ab51e98eb83a918b8e33f42ee Mon Sep 17 00:00:00 2001 From: Lars Hoerttrich <larshoerttrich@uni-koblenz.de> Date: Sun, 13 Jun 2021 12:22:42 +0200 Subject: [PATCH] [#57] moved descriptorSetHandle to material-class --- .../include/vkcv/material/Material.hpp | 4 ++++ .../vkcv/material/pbrMetallicRoughness.hpp | 19 +++++++++---------- .../material/src/vkcv/material/Material.cpp | 4 ++++ .../vkcv/material/pbrMetallicRoughness.cpp | 2 +- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/modules/material/include/vkcv/material/Material.hpp b/modules/material/include/vkcv/material/Material.hpp index fe7a250a..00b49207 100644 --- a/modules/material/include/vkcv/material/Material.hpp +++ b/modules/material/include/vkcv/material/Material.hpp @@ -1,10 +1,14 @@ #pragma once +#include <vkcv/Handles.hpp> namespace vkcv::material { class Material { private: public: + const DescriptorSetHandle m_DescriptorSetHandle; + protected: + Material(const DescriptorSetHandle& setHandle); }; } diff --git a/modules/material/include/vkcv/material/pbrMetallicRoughness.hpp b/modules/material/include/vkcv/material/pbrMetallicRoughness.hpp index 35fb5016..353143b7 100644 --- a/modules/material/include/vkcv/material/pbrMetallicRoughness.hpp +++ b/modules/material/include/vkcv/material/pbrMetallicRoughness.hpp @@ -2,7 +2,6 @@ #include <vector> -#include <vkcv/Handles.hpp> #include <vkcv/DescriptorConfig.hpp> #include <vkcv/Core.hpp> @@ -13,15 +12,17 @@ namespace vkcv::material { class PBRMaterial : Material { + private: + PBRMaterial(const ImageHandle& colorImg, + const SamplerHandle& colorSmp, + const ImageHandle& normalImg, + const SamplerHandle& normalSmp, + const ImageHandle& metRoughImg, + const SamplerHandle& metRoughSmp, + const DescriptorSetHandle& setHandle) noexcept; public: PBRMaterial() = delete; - PBRMaterial(const ImageHandle &colorImg, - const SamplerHandle &colorSmp, - const ImageHandle &normalImg, - const SamplerHandle &normalSmp, - const ImageHandle &metRoughImg, - const SamplerHandle &metRoughSmp, - const DescriptorSetHandle &setHandle) noexcept; + const ImageHandle m_ColorTexture; const SamplerHandle m_ColorSampler; @@ -35,8 +36,6 @@ namespace vkcv::material // ImageHandle m_OcclusionTexture; // SamplerHandle m_EmissiveTexture; - const DescriptorSetHandle m_DescriptorSetHandle; - /* * Returns the material's necessary descriptor bindings which serves as its descriptor layout * The binding is in the following order: diff --git a/modules/material/src/vkcv/material/Material.cpp b/modules/material/src/vkcv/material/Material.cpp index 373c46fe..9168bcfb 100644 --- a/modules/material/src/vkcv/material/Material.cpp +++ b/modules/material/src/vkcv/material/Material.cpp @@ -5,4 +5,8 @@ namespace vkcv::material { //TODO + Material::Material(const DescriptorSetHandle& setHandle) : m_DescriptorSetHandle(setHandle) + { + } + } diff --git a/modules/material/src/vkcv/material/pbrMetallicRoughness.cpp b/modules/material/src/vkcv/material/pbrMetallicRoughness.cpp index 05481b52..03470236 100644 --- a/modules/material/src/vkcv/material/pbrMetallicRoughness.cpp +++ b/modules/material/src/vkcv/material/pbrMetallicRoughness.cpp @@ -17,7 +17,7 @@ namespace vkcv::material m_NormalSampler(normalSmp), m_MetRoughTexture(metRoughImg), m_MetRoughSampler(metRoughSmp), - m_DescriptorSetHandle(setHandle) + Material(setHandle) { } -- GitLab