added GetBindingMap at MaterialDescriptorManager and MaterialParameters
This commit is contained in:
parent
18a4212935
commit
fefdc19674
@ -5,11 +5,14 @@
|
||||
#include<hgl/graph/VKShaderDescriptorSet.h>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
using BindingMap=Map<AnsiString,int>;
|
||||
using BindingMapArray=BindingMap[VK_DESCRIPTOR_TYPE_RANGE_SIZE];
|
||||
|
||||
class MaterialDescriptorManager
|
||||
{
|
||||
UTF8String mtl_name;
|
||||
|
||||
Map<AnsiString,int> binding_map[DESCRIPTOR_SET_TYPE_COUNT][VK_DESCRIPTOR_TYPE_RANGE_SIZE];
|
||||
BindingMapArray binding_map[DESCRIPTOR_SET_TYPE_COUNT];
|
||||
|
||||
private:
|
||||
|
||||
@ -32,6 +35,11 @@ public:
|
||||
return dsl_ci[size_t(set_type)].bindingCount;
|
||||
}
|
||||
|
||||
const BindingMapArray &GetBindingMap(const DescriptorSetType &set_type)const
|
||||
{
|
||||
return binding_map[size_t(set_type)];
|
||||
}
|
||||
|
||||
const int GetBinding(const DescriptorSetType &set_type,const VkDescriptorType &desc_type,const AnsiString &name)const;
|
||||
|
||||
const int GetUBO (const DescriptorSetType &set_type,const AnsiString &name,bool dynamic)const{return GetBinding(set_type,dynamic?VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER,name);}
|
||||
|
@ -31,6 +31,7 @@ public:
|
||||
const VkDescriptorSet GetVkDescriptorSet ()const{return descriptor_set->GetDescriptorSet();}
|
||||
|
||||
const uint32_t GetDescriptorCount ()const{return desc_manager->GetBindCount(set_type);} ///<获取总共需要绑定的描述符数量
|
||||
const BindingMapArray & GetBindingMap ()const{return desc_manager->GetBindingMap(set_type);}
|
||||
|
||||
const uint32_t GetDynamicCount ()const //返回动态ubo/ssbo总量
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user