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;}
MP_TYPE_IS(Instance)
MP_TYPE_IS(MaterialInstance)
MP_TYPE_IS(PerMaterial)
MP_TYPE_IS(PerFrame)
MP_TYPE_IS(Global)

View File

@ -34,7 +34,7 @@ void RenderAssignBuffer::Bind(MaterialInstance *mi)const
if(assign_binding_count<=0)return;
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()

View File

@ -48,7 +48,7 @@ void main()
~MaterialRectTexture2D()=default;
bool CustomVertexShader(ShaderCreateInfoVertex *vsc) override
{
{
{
RANGE_CHECK_RETURN_FALSE(cfg->coordinate_system)

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);
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);

View File

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