used newly ShaderAttributeArray
This commit is contained in:
@@ -183,9 +183,9 @@ public: //Texture
|
||||
|
||||
void Clear(TextureCreateInfo *);
|
||||
|
||||
bool ChangeTexture2D(Texture2D *,DeviceBuffer *buf,const List<Image2DRegion> &, VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
bool ChangeTexture2D(Texture2D *,DeviceBuffer *buf,uint32_t left,uint32_t top,uint32_t width,uint32_t height, VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
bool ChangeTexture2D(Texture2D *,void *data, uint32_t left,uint32_t top,uint32_t width,uint32_t height,uint32_t size,VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
bool ChangeTexture2D(Texture2D *,DeviceBuffer *buf, const List<Image2DRegion> &, VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
bool ChangeTexture2D(Texture2D *,DeviceBuffer *buf, uint32_t left,uint32_t top,uint32_t width,uint32_t height, VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
bool ChangeTexture2D(Texture2D *,void *data, uint32_t left,uint32_t top,uint32_t width,uint32_t height,uint32_t size,VkPipelineStageFlags=VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT);
|
||||
|
||||
template<typename T>
|
||||
bool ChangeTexture2D(Texture2D *tex,DeviceBuffer *buf,const RectScope2<T> &rs)
|
||||
@@ -220,7 +220,7 @@ public: //shader & material
|
||||
PipelineLayoutData *CreatePipelineLayoutData(const MaterialDescriptorSets *);
|
||||
void Destroy(PipelineLayoutData *);
|
||||
|
||||
DescriptorSet * CreateDescriptorSets(const PipelineLayoutData *,const DescriptorSetType &type)const;
|
||||
DescriptorSet * CreateDescriptorSets(const PipelineLayoutData *,const DescriptorSetType &type)const;
|
||||
MaterialParameters *CreateMP(const MaterialDescriptorSets *,const PipelineLayoutData *,const DescriptorSetType &);
|
||||
MaterialParameters *CreateMP(Material *,const DescriptorSetType &);
|
||||
|
||||
|
@@ -14,6 +14,7 @@
|
||||
#include<hgl/graph/VKRenderable.h>
|
||||
#include<hgl/graph/font/TextPrimitive.h>
|
||||
#include<hgl/type/ResManage.h>
|
||||
#include<hgl/shadergen/MaterialCreateInfo.h>
|
||||
VK_NAMESPACE_BEGIN
|
||||
using MaterialID =int;
|
||||
using MaterialInstanceID =int;
|
||||
@@ -90,6 +91,8 @@ public: //Material
|
||||
const ShaderModule *CreateShaderModule(const OSString &filename,ShaderResource *shader_resource);
|
||||
|
||||
Material * CreateMaterial(const OSString &);
|
||||
Material * CreateMaterial(const hgl::shadergen::MaterialCreateInfo *);
|
||||
|
||||
MaterialInstance * CreateMaterialInstance(Material *,const VILConfig *vil_cfg=nullptr);
|
||||
MaterialInstance * CreateMaterialInstance(const OSString &,const VILConfig *vil_cfg=nullptr);
|
||||
|
||||
|
@@ -60,7 +60,7 @@ class VertexShaderModule:public ShaderModule
|
||||
uint32_t attr_count;
|
||||
VAT *type_list;
|
||||
const char **name_list;
|
||||
ShaderAttribute **ssi_list;
|
||||
ShaderAttribute *attr_list;
|
||||
|
||||
private:
|
||||
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
const int GetInputBinding(const AnsiString &name)const{return shader_resource->GetInputBinding(name);}
|
||||
const ShaderAttribute * GetInput (const AnsiString &name)const{return shader_resource->GetInput(name);}
|
||||
const uint GetInputCount () const{return shader_resource->GetInputCount();}
|
||||
const ShaderAttributeList & GetInputs () const{return shader_resource->GetInputs();}
|
||||
const ShaderAttributeArray & GetInputs () const{return shader_resource->GetInputs();}
|
||||
|
||||
//const uint32_t GetAttrCount()const{return attr_count;}
|
||||
|
||||
|
@@ -21,7 +21,7 @@ class ShaderResource
|
||||
public:
|
||||
|
||||
ShaderResource(const VkShaderStageFlagBits &,const void *,const uint32);
|
||||
virtual ~ShaderResource()=default;
|
||||
virtual ~ShaderResource();
|
||||
|
||||
const VkShaderStageFlagBits GetStage ()const {return stage_flag;}
|
||||
const char * GetStageName ()const {return GetShaderStageName(stage_flag);}
|
||||
@@ -29,11 +29,11 @@ public:
|
||||
const uint32_t * GetCode ()const {return (uint32_t *)spv_data;}
|
||||
const uint32_t GetCodeSize ()const {return spv_size;}
|
||||
|
||||
ShaderAttributeList & GetInputs () {return stage_io.input;}
|
||||
// ShaderAttributeList & GetOutputs () {return stage_io.output;}
|
||||
ShaderAttributeArray & GetInputs () {return stage_io.input;}
|
||||
// ShaderAttributeArray & GetOutputs () {return stage_io.output;}
|
||||
|
||||
const uint GetInputCount ()const {return stage_io.input.GetCount();}
|
||||
// const uint GetOutputCount ()const {return stage_io.output.GetCount();}
|
||||
const uint GetInputCount ()const {return stage_io.input.count;}
|
||||
// const uint GetOutputCount ()const {return stage_io.output.count;}
|
||||
|
||||
const ShaderAttribute * GetInput (const AnsiString &)const;
|
||||
const int GetInputBinding (const AnsiString &)const;
|
||||
|
Reference in New Issue
Block a user