used DescriptorSetType::MaterialInstance

This commit is contained in:
hyzboy 2023-09-22 01:31:04 +08:00
parent 12e18b517b
commit d456c2bf92
No known key found for this signature in database
GPG Key ID: 067EE4525D4FB6D3
6 changed files with 6 additions and 5 deletions

@ -1 +1 @@
Subproject commit bde86e8016713480cd102693708894ab3b6bfabb Subproject commit e37055e34e72ab5723a350037ec216ca7ee12cfb

View File

@ -34,6 +34,7 @@ public:
#define MP_TYPE_IS(name) const bool is##name()const{return set_type==DescriptorSetType::name;} #define MP_TYPE_IS(name) const bool is##name()const{return set_type==DescriptorSetType::name;}
MP_TYPE_IS(Instance) MP_TYPE_IS(Instance)
MP_TYPE_IS(MaterialInstance)
MP_TYPE_IS(PerMaterial) MP_TYPE_IS(PerMaterial)
MP_TYPE_IS(PerFrame) MP_TYPE_IS(PerFrame)
MP_TYPE_IS(Global) MP_TYPE_IS(Global)

View File

@ -34,7 +34,7 @@ void RenderAssignBuffer::Bind(MaterialInstance *mi)const
if(assign_binding_count<=0)return; if(assign_binding_count<=0)return;
mi->BindUBO(DescriptorSetType::PerFrame,mtl::SBS_LocalToWorld.name,ubo_l2w); mi->BindUBO(DescriptorSetType::PerFrame,mtl::SBS_LocalToWorld.name,ubo_l2w);
mi->BindUBO(DescriptorSetType::PerMaterial,mtl::SBS_MaterialInstance.name,ubo_mi); mi->BindUBO(DescriptorSetType::MaterialInstance,mtl::SBS_MaterialInstance.name,ubo_mi);
} }
void RenderAssignBuffer::Clear() void RenderAssignBuffer::Clear()

View File

@ -166,7 +166,7 @@ bool MaterialCreateInfo::SetMaterialInstance(const AnsiString &glsl_codes,const
hgl::strcpy(mi_ubo->name,DESCRIPTOR_NAME_MAX_LENGTH,SBS_MaterialInstance.name); hgl::strcpy(mi_ubo->name,DESCRIPTOR_NAME_MAX_LENGTH,SBS_MaterialInstance.name);
mi_ubo->stage_flag=shader_stage_flag_bits; mi_ubo->stage_flag=shader_stage_flag_bits;
mdi.AddUBO(shader_stage_flag_bits,DescriptorSetType::PerMaterial,mi_ubo); mdi.AddUBO(shader_stage_flag_bits,DescriptorSetType::MaterialInstance,mi_ubo);
const AnsiString MI_MAX_COUNT=AnsiString::numberOf(mi_max_count); const AnsiString MI_MAX_COUNT=AnsiString::numberOf(mi_max_count);

View File

@ -155,7 +155,7 @@ bool ShaderCreateInfo::ProcSubpassInput()
void ShaderCreateInfo::SetMaterialInstance(UBODescriptor *ubo,const AnsiString &mi) void ShaderCreateInfo::SetMaterialInstance(UBODescriptor *ubo,const AnsiString &mi)
{ {
sdm->AddUBO(DescriptorSetType::PerMaterial,ubo); sdm->AddUBO(DescriptorSetType::MaterialInstance,ubo);
sdm->AddStruct(mtl::MaterialInstanceStruct); sdm->AddStruct(mtl::MaterialInstanceStruct);
if(shader_stage==VK_SHADER_STAGE_VERTEX_BIT) if(shader_stage==VK_SHADER_STAGE_VERTEX_BIT)