部分范例迁移到新WorkObject/CreateMaterialInstance结构

This commit is contained in:
2025-05-18 23:42:39 +08:00
parent 455cb0aa63
commit 66bb363035
12 changed files with 48 additions and 51 deletions

View File

@@ -45,6 +45,11 @@ public:
};//class RegistryMaterialFactoryClass
#define DEFINE_MATERIAL_FACTORY_CLASS(name,cfg_type) \
namespace inline_material \
{ \
constexpr const char name[]=#name; \
} \
\
MaterialCreateInfo *Create##name(const VulkanDevAttr *dev_attr,cfg_type *); \
\
namespace \

View File

@@ -74,6 +74,8 @@ namespace hgl::graph
MaterialCreateInfo(const MaterialCreateConfig *);
~MaterialCreateInfo()=default;
void SetDevice(const VulkanDevAttr *dev_attr);
bool SetMaterialInstance(const AnsiString &mi_glsl_codes,const uint32_t mi_struct_bytes,const uint32_t shader_stage_flag_bits);
bool SetLocalToWorld(const uint32_t shader_stage_flag_bits);
@@ -87,7 +89,7 @@ namespace hgl::graph
bool AddSampler(const VkShaderStageFlagBits flag_bits,const DescriptorSetType set_type,const SamplerType &st,const AnsiString &name);
bool CreateShader(const VulkanDevAttr *dev_attr);
bool CreateShader();
};//class MaterialCreateInfo
}//namespace mtl
}//namespace hgl::graph