From fc94ee82b4760ca39deaf026010483cb948eac64 Mon Sep 17 00:00:00 2001 From: "HuYingzhuo(hugo/hyzboy)" Date: Fri, 2 Jun 2023 14:22:07 +0800 Subject: [PATCH] layout and renamed value --- CMCore | 2 +- inc/hgl/shadergen/MaterialCreateInfo.h | 32 +++++++++++----------- src/SceneGraph/Vulkan/VKDeviceMaterial.cpp | 3 +- src/ShaderGen/2d/Std2DMaterial.cpp | 3 +- src/ShaderGen/MaterialCreateInfo.cpp | 6 ++-- 5 files changed, 22 insertions(+), 24 deletions(-) diff --git a/CMCore b/CMCore index fbb3154e..215494ea 160000 --- a/CMCore +++ b/CMCore @@ -1 +1 @@ -Subproject commit fbb3154e5b8ca0e3d0480ad121a704359f527966 +Subproject commit 215494ead2c3e2b60191f6f77d1648d6a466f93f diff --git a/inc/hgl/shadergen/MaterialCreateInfo.h b/inc/hgl/shadergen/MaterialCreateInfo.h index f65d876e..5e0df587 100644 --- a/inc/hgl/shadergen/MaterialCreateInfo.h +++ b/inc/hgl/shadergen/MaterialCreateInfo.h @@ -20,7 +20,7 @@ protected: MaterialDescriptorInfo mdi; ///<材质描述符管理器 AnsiString mi_codes; ///mtl_name;} + const AnsiString &GetName ()const{return config->mtl_name;} - const uint32 GetShaderStage()const{return config->shader_stage;} + const uint32 GetShaderStage ()const{return config->shader_stage;} - bool hasShader(const VkShaderStageFlagBits ss)const{return config->shader_stage&ss;} + bool hasShader (const VkShaderStageFlagBits ss)const{return config->shader_stage&ss;} - bool hasVertex ()const{return hasShader(VK_SHADER_STAGE_VERTEX_BIT);} -// bool hasTessCtrl()const{return hasShader(VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT);} -// bool hasTessEval()const{return hasShader(VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT);} - bool hasGeometry()const{return hasShader(VK_SHADER_STAGE_GEOMETRY_BIT);} - bool hasFragment()const{return hasShader(VK_SHADER_STAGE_FRAGMENT_BIT);} -// bool hasCompute ()const{return hasShader(VK_SHADER_STAGE_COMPUTE_BIT);} + bool hasVertex ()const{return hasShader(VK_SHADER_STAGE_VERTEX_BIT);} +// bool hasTessCtrl ()const{return hasShader(VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT);} +// bool hasTessEval ()const{return hasShader(VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT);} + bool hasGeometry ()const{return hasShader(VK_SHADER_STAGE_GEOMETRY_BIT);} + bool hasFragment ()const{return hasShader(VK_SHADER_STAGE_FRAGMENT_BIT);} +// bool hasCompute ()const{return hasShader(VK_SHADER_STAGE_COMPUTE_BIT);} ShaderCreateInfoVertex * GetVS()const{return vert;} ShaderCreateInfoGeometry * GetGS()const{return geom;} ShaderCreateInfoFragment * GetFS()const{return frag;} +public: + + const MaterialDescriptorInfo &GetMDI()const{return mdi;} + const uint32_t GetMIDataBytes()const{return mi_data_bytes;} + public: MaterialCreateInfo(const MaterialConfig *); @@ -56,10 +61,7 @@ public: bool SetMaterialInstance(const AnsiString &mi_glsl_codes,const uint32_t mi_struct_bytes,const uint32_t shader_stage); bool AddStruct(const AnsiString &ubo_typename,const AnsiString &codes); - bool AddStruct(const ShaderBufferSource &ss) - { - return AddStruct(ss.struct_name,ss.codes); - } + bool AddStruct(const ShaderBufferSource &ss){return AddStruct(ss.struct_name,ss.codes);} bool AddUBO(const VkShaderStageFlagBits flag_bits,const DescriptorSetType set_type,const AnsiString &type_name,const AnsiString &name); bool AddSampler(const VkShaderStageFlagBits flag_bits,const DescriptorSetType set_type,const SamplerType &st,const AnsiString &name); @@ -67,7 +69,5 @@ public: bool AddUBO(const uint32_t flag_bits,const DescriptorSetType &set_type,const ShaderBufferSource &ss); bool CreateShader(); - - const MaterialDescriptorInfo &GetMDI()const{return mdi;} };//class MaterialCreateInfo STD_MTL_NAMESPACE_END diff --git a/src/SceneGraph/Vulkan/VKDeviceMaterial.cpp b/src/SceneGraph/Vulkan/VKDeviceMaterial.cpp index 1d2b94b7..73c19df3 100644 --- a/src/SceneGraph/Vulkan/VKDeviceMaterial.cpp +++ b/src/SceneGraph/Vulkan/VKDeviceMaterial.cpp @@ -34,8 +34,7 @@ DescriptorSet *GPUDevice::CreateDS(const PipelineLayoutData *pld,const Descripto MaterialParameters *GPUDevice::CreateMP(const MaterialDescriptorManager *desc_manager,const PipelineLayoutData *pld,const DescriptorSetType &desc_set_type) { if(!desc_manager||!pld)return(nullptr); - if(!RangeCheck(desc_set_type)) - return(nullptr); + RANGE_CHECK_RETURN_NULLPTR(desc_set_type) DescriptorSet *ds=CreateDS(pld,desc_set_type); diff --git a/src/ShaderGen/2d/Std2DMaterial.cpp b/src/ShaderGen/2d/Std2DMaterial.cpp index 67b688f9..6f2219c8 100644 --- a/src/ShaderGen/2d/Std2DMaterial.cpp +++ b/src/ShaderGen/2d/Std2DMaterial.cpp @@ -14,8 +14,7 @@ Std2DMaterial::Std2DMaterial(const Material2DConfig *c) bool Std2DMaterial::CreateVertexShader(ShaderCreateInfoVertex *vsc) { - if(!RangeCheck(cfg->coordinate_system)) - return(false); + RANGE_CHECK_RETURN_FALSE(cfg->coordinate_system) vsc->AddInput(VAT_VEC2,VAN::Position); diff --git a/src/ShaderGen/MaterialCreateInfo.cpp b/src/ShaderGen/MaterialCreateInfo.cpp index 95f7c864..2a810b14 100644 --- a/src/ShaderGen/MaterialCreateInfo.cpp +++ b/src/ShaderGen/MaterialCreateInfo.cpp @@ -15,7 +15,7 @@ MaterialCreateInfo::MaterialCreateInfo(const MaterialConfig *mc) if(hasGeometry ())shader_map.Add(geom=new ShaderCreateInfoGeometry(&mdi));else geom=nullptr; if(hasFragment ())shader_map.Add(frag=new ShaderCreateInfoFragment(&mdi));else frag=nullptr; - mi_length=0; + mi_data_bytes=0; mi_shader_stage=0; } @@ -129,13 +129,13 @@ bool MaterialCreateInfo::AddUBO(const uint32_t flag_bits,const DescriptorSetType */ bool MaterialCreateInfo::SetMaterialInstance(const AnsiString &mi_glsl_codes,const uint32_t mi_struct_bytes,const uint32_t shader_stage) { - if(mi_length>0)return(false); //已经有数据了 + if(mi_data_bytes>0)return(false); //已经有数据了 if(shader_stage==0)return(false); if(mi_struct_bytes>0&&mi_glsl_codes.Length()<4)return(false); - mi_length=mi_struct_bytes; + mi_data_bytes=mi_struct_bytes; if(mi_struct_bytes>0) mi_codes=mi_glsl_codes;