renamed many source of ShaderGen

This commit is contained in:
HuYingzhuo(hugo/hyzboy) 2023-03-17 10:08:41 +08:00
parent f564f55e7b
commit 555e8fc066
18 changed files with 163 additions and 163 deletions

View File

@ -1,4 +1,4 @@
#include<hgl/shadergen/MaterialCreater.h> #include<hgl/shadergen/MaterialCreateInfo.h>
using namespace hgl; using namespace hgl;
using namespace hgl::graph; using namespace hgl::graph;
@ -6,11 +6,11 @@ using namespace hgl::shadergen;
bool PureColor2DMaterial() bool PureColor2DMaterial()
{ {
MaterialCreater mc(1,false); //一个新材质1个RT输出默认使用Vertex/Fragment shader MaterialCreateInfo mc(1,false); //一个新材质1个RT输出默认使用Vertex/Fragment shader
//vertex部分 //vertex部分
{ {
ShaderCreaterVertex *vsc=mc.GetVS(); //获取vertex shader creater ShaderCreateInfoVertex *vsc=mc.GetVS(); //获取vertex shader creater
//以下代码会被展开为 //以下代码会被展开为
/* /*
@ -46,7 +46,7 @@ void main()
//fragment部分 //fragment部分
{ {
ShaderCreaterFragment *fsc=mc.GetFS(); //获取fragment shader creater ShaderCreateInfoFragment *fsc=mc.GetFS(); //获取fragment shader creater
//以下代码会被展开为 //以下代码会被展开为
/* /*
@ -68,11 +68,11 @@ void main()
bool VertexColor2DMaterial() bool VertexColor2DMaterial()
{ {
MaterialCreater mc(1,false); MaterialCreateInfo mc(1,false);
//vertex部分 //vertex部分
{ {
ShaderCreaterVertex *vsc=mc.GetVS(); ShaderCreateInfoVertex *vsc=mc.GetVS();
vsc->AddInput("vec2","Position"); vsc->AddInput("vec2","Position");
vsc->AddInput("vec4","Color"); vsc->AddInput("vec4","Color");
@ -90,7 +90,7 @@ void main()
//fragment部分 //fragment部分
{ {
ShaderCreaterFragment *fsc=mc.GetFS(); ShaderCreateInfoFragment *fsc=mc.GetFS();
fsc->AddOutput("vec4","Color"); fsc->AddOutput("vec4","Color");

View File

@ -1,14 +1,14 @@
#pragma once #pragma once
#include<hgl/shadergen/MaterialDescriptorManager.h> #include<hgl/shadergen/MaterialDescriptorManager.h>
#include<hgl/shadergen/ShaderCreaterVertex.h> #include<hgl/shadergen/ShaderCreateInfoVertex.h>
#include<hgl/shadergen/ShaderCreaterGeometry.h> #include<hgl/shadergen/ShaderCreateInfoGeometry.h>
#include<hgl/shadergen/ShaderCreaterFragment.h> #include<hgl/shadergen/ShaderCreateInfoFragment.h>
#include<hgl/shadergen/ShaderCreaterMap.h> #include<hgl/shadergen/ShaderCreateInfoMap.h>
#include<hgl/graph/VKSamplerType.h> #include<hgl/graph/VKSamplerType.h>
SHADERGEN_NAMESPACE_BEGIN SHADERGEN_NAMESPACE_BEGIN
class MaterialCreater class MaterialCreateInfo
{ {
protected: protected:
@ -19,11 +19,11 @@ protected:
MaterialDescriptorManager mdm; ///<材质描述符管理器 MaterialDescriptorManager mdm; ///<材质描述符管理器
ShaderCreaterMap shader_map; ///<着色器列表 ShaderCreateInfoMap shader_map; ///<着色器列表
ShaderCreaterVertex *vert; ShaderCreateInfoVertex *vert;
ShaderCreaterGeometry *geom; ShaderCreateInfoGeometry *geom;
ShaderCreaterFragment *frag; ShaderCreateInfoFragment *frag;
public: public:
@ -36,14 +36,14 @@ public:
bool hasFragment()const{return hasShader(VK_SHADER_STAGE_FRAGMENT_BIT);} bool hasFragment()const{return hasShader(VK_SHADER_STAGE_FRAGMENT_BIT);}
// bool hasCompute ()const{return hasShader(VK_SHADER_STAGE_COMPUTE_BIT);} // bool hasCompute ()const{return hasShader(VK_SHADER_STAGE_COMPUTE_BIT);}
ShaderCreaterVertex * GetVS(){return vert;} ShaderCreateInfoVertex * GetVS(){return vert;}
ShaderCreaterGeometry * GetGS(){return geom;} ShaderCreateInfoGeometry * GetGS(){return geom;}
ShaderCreaterFragment * GetFS(){return frag;} ShaderCreateInfoFragment * GetFS(){return frag;}
public: public:
MaterialCreater(const uint rc,const bool rd,const uint32 ss=VK_SHADER_STAGE_VERTEX_BIT|VK_SHADER_STAGE_FRAGMENT_BIT); MaterialCreateInfo(const uint rc,const bool rd,const uint32 ss=VK_SHADER_STAGE_VERTEX_BIT|VK_SHADER_STAGE_FRAGMENT_BIT);
~MaterialCreater()=default; ~MaterialCreateInfo()=default;
bool AddStruct(const AnsiString &ubo_typename,const AnsiString &codes); bool AddStruct(const AnsiString &ubo_typename,const AnsiString &codes);
@ -51,5 +51,5 @@ public:
bool AddSampler(const VkShaderStageFlagBits flag_bits,const DescriptorSetType set_type,const SamplerType &st,const AnsiString &name); bool AddSampler(const VkShaderStageFlagBits flag_bits,const DescriptorSetType set_type,const SamplerType &st,const AnsiString &name);
bool CreateShader(); bool CreateShader();
};//class MaterialCreater };//class MaterialCreateInfo
SHADERGEN_NAMESPACE_END SHADERGEN_NAMESPACE_END

View File

@ -1,5 +1,5 @@
#ifndef HGL_SHADER_CREATER_INCLUDE #ifndef HGL_SHADER_CREATE_INFO_INCLUDE
#define HGL_SHADER_CREATER_INCLUDE #define HGL_SHADER_CREATE_INFO_INCLUDE
#include<hgl/shadergen/ShaderGenNamespace.h> #include<hgl/shadergen/ShaderGenNamespace.h>
#include<hgl/graph/VertexAttrib.h> #include<hgl/graph/VertexAttrib.h>
@ -8,7 +8,7 @@ SHADERGEN_NAMESPACE_BEGIN
class MaterialDescriptorManager; class MaterialDescriptorManager;
class ShaderDescriptorManager; class ShaderDescriptorManager;
class ShaderCreater class ShaderCreateInfo
{ {
protected: protected:
@ -28,7 +28,7 @@ protected:
virtual bool ProcHeader(){return(true);} virtual bool ProcHeader(){return(true);}
virtual bool ProcSubpassInput(); virtual bool ProcSubpassInput();
virtual bool ProcInput(ShaderCreater *); virtual bool ProcInput(ShaderCreateInfo *);
virtual bool ProcOutput(); virtual bool ProcOutput();
virtual bool ProcStruct(); virtual bool ProcStruct();
@ -48,8 +48,8 @@ public:
public: public:
ShaderCreater(VkShaderStageFlagBits ss,MaterialDescriptorManager *m); ShaderCreateInfo(VkShaderStageFlagBits ss,MaterialDescriptorManager *m);
virtual ~ShaderCreater(); virtual ~ShaderCreateInfo();
int AddOutput(const graph::VAT &type,const AnsiString &name); int AddOutput(const graph::VAT &type,const AnsiString &name);
int AddOutput(const AnsiString &type,const AnsiString &name); int AddOutput(const AnsiString &type,const AnsiString &name);
@ -62,7 +62,7 @@ public:
const AnsiString &GetOutputStruct()const{return output_struct;} const AnsiString &GetOutputStruct()const{return output_struct;}
const AnsiString &GetShaderSource()const{return final_shader;} const AnsiString &GetShaderSource()const{return final_shader;}
bool CreateShader(ShaderCreater *); bool CreateShader(ShaderCreateInfo *);
};//class ShaderCreater };//class ShaderCreateInfo
SHADERGEN_NAMESPACE_END SHADERGEN_NAMESPACE_END
#endif//HGL_SHADER_CREATER_INCLUDE #endif//HGL_SHADER_CREATE_INFO_INCLUDE

View File

@ -0,0 +1,22 @@
#pragma once
#include<hgl/shadergen/ShaderCreateInfo.h>
SHADERGEN_NAMESPACE_BEGIN
enum class MaterialType
{
Color, ///<´¿É«²ÄÖÊ
};
class ShaderCreateInfoFragment:public ShaderCreateInfo
{
bool ProcOutput() override;
public:
ShaderCreateInfoFragment(MaterialDescriptorManager *m):ShaderCreateInfo(VK_SHADER_STAGE_FRAGMENT_BIT,m){}
~ShaderCreateInfoFragment()=default;
void UseDefaultMain();
};
SHADERGEN_NAMESPACE_END

View File

@ -0,0 +1,13 @@
#pragma once
#include<hgl/shadergen/ShaderCreateInfo.h>
SHADERGEN_NAMESPACE_BEGIN
class ShaderCreateInfoGeometry:public ShaderCreateInfo
{
public:
ShaderCreateInfoGeometry(MaterialDescriptorManager *m):ShaderCreateInfo(VK_SHADER_STAGE_GEOMETRY_BIT,m){}
~ShaderCreateInfoGeometry()=default;
};
SHADERGEN_NAMESPACE_END

View File

@ -0,0 +1,25 @@
#pragma once
#include<hgl/shadergen/ShaderCreateInfo.h>
SHADERGEN_NAMESPACE_BEGIN
class ShaderCreateInfoMap:public ObjectMap<VkShaderStageFlagBits,ShaderCreateInfo>
{
public:
using ObjectMap<VkShaderStageFlagBits,ShaderCreateInfo>::ObjectMap;
bool Add(ShaderCreateInfo *sc)
{
if(!sc)return(false);
VkShaderStageFlagBits flag=sc->GetShaderStage();
if(KeyExist(flag))
return(false);
ObjectMap<VkShaderStageFlagBits,ShaderCreateInfo>::Add(flag,sc);
return(true);
}
};
SHADERGEN_NAMESPACE_END

View File

@ -0,0 +1,18 @@
#pragma once
#include<hgl/shadergen/ShaderCreateInfo.h>
SHADERGEN_NAMESPACE_BEGIN
class ShaderCreateInfoVertex:public ShaderCreateInfo
{
bool ProcInput(ShaderCreateInfo *) override;
public:
ShaderCreateInfoVertex(MaterialDescriptorManager *m):ShaderCreateInfo(VK_SHADER_STAGE_VERTEX_BIT,m){}
~ShaderCreateInfoVertex()=default;
int AddInput(const graph::VAT &type,const AnsiString &name);
int AddInput(const AnsiString &type,const AnsiString &name);
};
SHADERGEN_NAMESPACE_END

View File

@ -1,22 +0,0 @@
#pragma once
#include<hgl/shadergen/ShaderCreater.h>
SHADERGEN_NAMESPACE_BEGIN
enum class MaterialType
{
Color, ///<´¿É«²ÄÖÊ
};
class ShaderCreaterFragment:public ShaderCreater
{
bool ProcOutput() override;
public:
ShaderCreaterFragment(MaterialDescriptorManager *m):ShaderCreater(VK_SHADER_STAGE_FRAGMENT_BIT,m){}
~ShaderCreaterFragment()=default;
void UseDefaultMain();
};
SHADERGEN_NAMESPACE_END

View File

@ -1,13 +0,0 @@
#pragma once
#include<hgl/shadergen/ShaderCreater.h>
SHADERGEN_NAMESPACE_BEGIN
class ShaderCreaterGeometry:public ShaderCreater
{
public:
ShaderCreaterGeometry(MaterialDescriptorManager *m):ShaderCreater(VK_SHADER_STAGE_GEOMETRY_BIT,m){}
~ShaderCreaterGeometry()=default;
};
SHADERGEN_NAMESPACE_END

View File

@ -1,25 +0,0 @@
#pragma once
#include<hgl/shadergen/ShaderCreater.h>
SHADERGEN_NAMESPACE_BEGIN
class ShaderCreaterMap:public ObjectMap<VkShaderStageFlagBits,ShaderCreater>
{
public:
using ObjectMap<VkShaderStageFlagBits,ShaderCreater>::ObjectMap;
bool Add(ShaderCreater *sc)
{
if(!sc)return(false);
VkShaderStageFlagBits flag=sc->GetShaderStage();
if(KeyExist(flag))
return(false);
ObjectMap<VkShaderStageFlagBits,ShaderCreater>::Add(flag,sc);
return(true);
}
};
SHADERGEN_NAMESPACE_END

View File

@ -1,18 +0,0 @@
#pragma once
#include<hgl/shadergen/ShaderCreater.h>
SHADERGEN_NAMESPACE_BEGIN
class ShaderCreaterVertex:public ShaderCreater
{
bool ProcInput(ShaderCreater *) override;
public:
ShaderCreaterVertex(MaterialDescriptorManager *m):ShaderCreater(VK_SHADER_STAGE_VERTEX_BIT,m){}
~ShaderCreaterVertex()=default;
int AddInput(const graph::VAT &type,const AnsiString &name);
int AddInput(const AnsiString &type,const AnsiString &name);
};
SHADERGEN_NAMESPACE_END

View File

@ -102,7 +102,7 @@ public:
} }
};//struct Standard2DMaterial:public StandardMaterial };//struct Standard2DMaterial:public StandardMaterial
class MaterialCreater; class MaterialCreateInfo;
Material *CreateMaterial() Material *CreateMaterial()
{ {

View File

@ -1,25 +1,25 @@
set(SHADERGEN_INCLUDE_PATH ${ROOT_INCLUDE_PATH}/hgl/shadergen) set(SHADERGEN_INCLUDE_PATH ${ROOT_INCLUDE_PATH}/hgl/shadergen)
SET(SHADER_CREATER_HEADER_FILES ${SHADERGEN_INCLUDE_PATH}/ShaderCreater.h SET(SHADER_CREATER_HEADER_FILES ${SHADERGEN_INCLUDE_PATH}/ShaderCreateInfo.h
${SHADERGEN_INCLUDE_PATH}/ShaderCreaterMap.h ${SHADERGEN_INCLUDE_PATH}/ShaderCreateInfoMap.h
${SHADERGEN_INCLUDE_PATH}/ShaderCreaterVertex.h ${SHADERGEN_INCLUDE_PATH}/ShaderCreateInfoVertex.h
${SHADERGEN_INCLUDE_PATH}/ShaderCreaterGeometry.h ${SHADERGEN_INCLUDE_PATH}/ShaderCreateInfoGeometry.h
${SHADERGEN_INCLUDE_PATH}/ShaderCreaterFragment.h) ${SHADERGEN_INCLUDE_PATH}/ShaderCreateInfoFragment.h)
SET(SHADER_CREATER_SOURCE_FILES ShaderCreater.cpp SET(SHADER_CREATER_SOURCE_FILES ShaderCreateInfo.cpp
ShaderCreaterVertex.cpp ShaderCreateInfoVertex.cpp
ShaderCreaterGeometry.cpp ShaderCreateInfoGeometry.cpp
ShaderCreaterFragment.cpp) ShaderCreateInfoFragment.cpp)
SOURCE_GROUP("Material Creater\\Shader Creater" FILES ${SHADER_CREATER_HEADER_FILES} SOURCE_GROUP("Material Create Info\\Shader" FILES ${SHADER_CREATER_HEADER_FILES}
${SHADER_CREATER_SOURCE_FILES}) ${SHADER_CREATER_SOURCE_FILES})
SET(MATERIAL_CREATER_HEADER_FILES ${SHADERGEN_INCLUDE_PATH}/MaterialCreater.h) SET(MATERIAL_CREATE_INFO_HEADER_FILES ${SHADERGEN_INCLUDE_PATH}/MaterialCreateInfo.h)
SET(MATERIAL_CREATER_SOURCE_FILES MaterialCreater.cpp) SET(MATERIAL_CREATE_INFO_SOURCE_FILES MaterialCreateInfo.cpp)
SOURCE_GROUP("Material Creater" FILES ${MATERIAL_CREATER_HEADER_FILES} SOURCE_GROUP("Material Create Info" FILES ${MATERIAL_CREATE_INFO_HEADER_FILES}
${MATERIAL_CREATER_SOURCE_FILES}) ${MATERIAL_CREATE_INFO_SOURCE_FILES})
SET(SHADERGEN_HEADER_FILES ${SHADERGEN_INCLUDE_PATH}/ShaderGenNamespace.h SET(SHADERGEN_HEADER_FILES ${SHADERGEN_INCLUDE_PATH}/ShaderGenNamespace.h
${SHADERGEN_INCLUDE_PATH}/ShaderDescriptorManager.h ${SHADERGEN_INCLUDE_PATH}/ShaderDescriptorManager.h
@ -37,8 +37,8 @@ SET(GLSL_COMPILER_SOURCE GLSLCompiler.h
SOURCE_GROUP("GLSL Compiler" FILES ${GLSL_COMPILER_SOURCE}) SOURCE_GROUP("GLSL Compiler" FILES ${GLSL_COMPILER_SOURCE})
SOURCE_GROUP("Material Creater\\DescriptorManager" FILES ${SHADERGEN_HEADER_FILES} SOURCE_GROUP("Material Create Info\\Descriptor Manager" FILES ${SHADERGEN_HEADER_FILES}
${SHADERGEN_SOURCE_FILES}) ${SHADERGEN_SOURCE_FILES})
SET(STANDARD_MATERIAL_SOURCE ${SHADERGEN_INCLUDE_PATH}/StandardMaterial.h SET(STANDARD_MATERIAL_SOURCE ${SHADERGEN_INCLUDE_PATH}/StandardMaterial.h
StandardMaterial.cpp) StandardMaterial.cpp)
@ -47,8 +47,8 @@ SOURCE_GROUP("Standard Material" FILES ${STANDARD_MATERIAL_SOURCE})
add_cm_library(ULRE.ShaderGen "ULRE" ${SHADERGEN_HEADER_FILES} add_cm_library(ULRE.ShaderGen "ULRE" ${SHADERGEN_HEADER_FILES}
${SHADERGEN_SOURCE_FILES} ${SHADERGEN_SOURCE_FILES}
${MATERIAL_CREATER_HEADER_FILES} ${MATERIAL_CREATE_INFO_HEADER_FILES}
${MATERIAL_CREATER_SOURCE_FILES} ${MATERIAL_CREATE_INFO_SOURCE_FILES}
${SHADER_CREATER_HEADER_FILES} ${SHADER_CREATER_HEADER_FILES}
${SHADER_CREATER_SOURCE_FILES} ${SHADER_CREATER_SOURCE_FILES}
${GLSL_COMPILER_SOURCE} ${GLSL_COMPILER_SOURCE}

View File

@ -1,23 +1,23 @@
#include<hgl/shadergen/MaterialCreater.h> #include<hgl/shadergen/MaterialCreateInfo.h>
#include<hgl/shadergen/ShaderDescriptorManager.h> #include<hgl/shadergen/ShaderDescriptorManager.h>
using namespace hgl; using namespace hgl;
using namespace hgl::graph; using namespace hgl::graph;
SHADERGEN_NAMESPACE_BEGIN SHADERGEN_NAMESPACE_BEGIN
MaterialCreater::MaterialCreater(const uint rc,const bool rd,const uint32 ss) MaterialCreateInfo::MaterialCreateInfo(const uint rc,const bool rd,const uint32 ss)
{ {
rt_color_count=rc; rt_color_count=rc;
rt_depth=rd; rt_depth=rd;
shader_stage=ss; shader_stage=ss;
if(hasVertex ())shader_map.Add(vert=new ShaderCreaterVertex (&mdm));else vert=nullptr; if(hasVertex ())shader_map.Add(vert=new ShaderCreateInfoVertex (&mdm));else vert=nullptr;
if(hasGeometry ())shader_map.Add(geom=new ShaderCreaterGeometry(&mdm));else geom=nullptr; if(hasGeometry ())shader_map.Add(geom=new ShaderCreateInfoGeometry(&mdm));else geom=nullptr;
if(hasFragment ())shader_map.Add(frag=new ShaderCreaterFragment(&mdm));else frag=nullptr; if(hasFragment ())shader_map.Add(frag=new ShaderCreateInfoFragment(&mdm));else frag=nullptr;
} }
bool MaterialCreater::AddStruct(const AnsiString &struct_name,const AnsiString &codes) bool MaterialCreateInfo::AddStruct(const AnsiString &struct_name,const AnsiString &codes)
{ {
if(struct_name.IsEmpty()||codes.IsEmpty()) if(struct_name.IsEmpty()||codes.IsEmpty())
return(false); return(false);
@ -25,7 +25,7 @@ bool MaterialCreater::AddStruct(const AnsiString &struct_name,const AnsiString &
return mdm.AddStruct(struct_name,codes); return mdm.AddStruct(struct_name,codes);
} }
bool MaterialCreater::AddUBO(const VkShaderStageFlagBits flag_bit,const DescriptorSetType set_type,const AnsiString &type_name,const AnsiString &name) bool MaterialCreateInfo::AddUBO(const VkShaderStageFlagBits flag_bit,const DescriptorSetType set_type,const AnsiString &type_name,const AnsiString &name)
{ {
if(!shader_map.KeyExist(flag_bit)) if(!shader_map.KeyExist(flag_bit))
return(false); return(false);
@ -33,7 +33,7 @@ bool MaterialCreater::AddUBO(const VkShaderStageFlagBits flag_bit,const Descript
if(!mdm.hasStruct(type_name)) if(!mdm.hasStruct(type_name))
return(false); return(false);
ShaderCreater *sc=shader_map[flag_bit]; ShaderCreateInfo *sc=shader_map[flag_bit];
if(!sc) if(!sc)
return(false); return(false);
@ -60,14 +60,14 @@ bool MaterialCreater::AddUBO(const VkShaderStageFlagBits flag_bit,const Descript
} }
} }
bool MaterialCreater::AddSampler(const VkShaderStageFlagBits flag_bit,const DescriptorSetType set_type,const SamplerType &st,const AnsiString &name) bool MaterialCreateInfo::AddSampler(const VkShaderStageFlagBits flag_bit,const DescriptorSetType set_type,const SamplerType &st,const AnsiString &name)
{ {
if(!shader_map.KeyExist(flag_bit)) if(!shader_map.KeyExist(flag_bit))
return(false); return(false);
RANGE_CHECK_RETURN_FALSE(st); RANGE_CHECK_RETURN_FALSE(st);
ShaderCreater *sc=shader_map[flag_bit]; ShaderCreateInfo *sc=shader_map[flag_bit];
if(!sc) if(!sc)
return(false); return(false);
@ -96,14 +96,14 @@ bool MaterialCreater::AddSampler(const VkShaderStageFlagBits flag_bit,const Desc
} }
} }
bool MaterialCreater::CreateShader() bool MaterialCreateInfo::CreateShader()
{ {
if(shader_map.IsEmpty()) if(shader_map.IsEmpty())
return(false); return(false);
mdm.Resort(); mdm.Resort();
ShaderCreater *sc,*last=nullptr; ShaderCreateInfo *sc,*last=nullptr;
for(int i=0;i<shader_map.GetCount();i++) for(int i=0;i<shader_map.GetCount();i++)
{ {

View File

@ -1,21 +1,21 @@
#include<hgl/shadergen/ShaderCreater.h> #include<hgl/shadergen/ShaderCreateInfo.h>
#include<hgl/shadergen/ShaderDescriptorManager.h> #include<hgl/shadergen/ShaderDescriptorManager.h>
#include"GLSLCompiler.h" #include"GLSLCompiler.h"
SHADERGEN_NAMESPACE_BEGIN SHADERGEN_NAMESPACE_BEGIN
ShaderCreater::ShaderCreater(VkShaderStageFlagBits ss,MaterialDescriptorManager *m) ShaderCreateInfo::ShaderCreateInfo(VkShaderStageFlagBits ss,MaterialDescriptorManager *m)
{ {
shader_stage=ss; shader_stage=ss;
mdm=m; mdm=m;
sdm=new ShaderDescriptorManager(ss); sdm=new ShaderDescriptorManager(ss);
} }
ShaderCreater::~ShaderCreater() ShaderCreateInfo::~ShaderCreateInfo()
{ {
delete sdm; delete sdm;
} }
int ShaderCreater::AddOutput(const VAT &type,const AnsiString &name) int ShaderCreateInfo::AddOutput(const VAT &type,const AnsiString &name)
{ {
ShaderStage *ss=new ShaderStage; ShaderStage *ss=new ShaderStage;
@ -27,7 +27,7 @@ int ShaderCreater::AddOutput(const VAT &type,const AnsiString &name)
return sdm->AddOutput(ss); return sdm->AddOutput(ss);
} }
int ShaderCreater::AddOutput(const AnsiString &type,const AnsiString &name) int ShaderCreateInfo::AddOutput(const AnsiString &type,const AnsiString &name)
{ {
VAT vat; VAT vat;
@ -40,7 +40,7 @@ int ShaderCreater::AddOutput(const AnsiString &type,const AnsiString &name)
return AddOutput(vat,name); return AddOutput(vat,name);
} }
bool ShaderCreater::ProcSubpassInput() bool ShaderCreateInfo::ProcSubpassInput()
{ {
auto sil=sdm->GetSubpassInputList(); auto sil=sdm->GetSubpassInputList();
@ -68,7 +68,7 @@ bool ShaderCreater::ProcSubpassInput()
return(true); return(true);
} }
bool ShaderCreater::ProcInput(ShaderCreater *last_sc) bool ShaderCreateInfo::ProcInput(ShaderCreateInfo *last_sc)
{ {
if(!last_sc) if(!last_sc)
return(false); return(false);
@ -85,7 +85,7 @@ bool ShaderCreater::ProcInput(ShaderCreater *last_sc)
return(true); return(true);
} }
bool ShaderCreater::ProcOutput() bool ShaderCreateInfo::ProcOutput()
{ {
output_struct.Clear(); output_struct.Clear();
@ -114,7 +114,7 @@ bool ShaderCreater::ProcOutput()
return(true); return(true);
} }
bool ShaderCreater::ProcStruct() bool ShaderCreateInfo::ProcStruct()
{ {
const AnsiStringList &struct_list=sdm->GetStructList(); const AnsiStringList &struct_list=sdm->GetStructList();
@ -135,7 +135,7 @@ bool ShaderCreater::ProcStruct()
return(true); return(true);
} }
bool ShaderCreater::ProcUBO() bool ShaderCreateInfo::ProcUBO()
{ {
auto ubo_list=sdm->GetUBOList(); auto ubo_list=sdm->GetUBOList();
@ -164,12 +164,12 @@ bool ShaderCreater::ProcUBO()
return(true); return(true);
} }
bool ShaderCreater::ProcSSBO() bool ShaderCreateInfo::ProcSSBO()
{ {
return(false); return(false);
} }
bool ShaderCreater::ProcConst() bool ShaderCreateInfo::ProcConst()
{ {
auto const_list=sdm->GetConstList(); auto const_list=sdm->GetConstList();
@ -198,7 +198,7 @@ bool ShaderCreater::ProcConst()
return(true); return(true);
} }
bool ShaderCreater::ProcSampler() bool ShaderCreateInfo::ProcSampler()
{ {
auto sampler_list=sdm->GetSamplerList(); auto sampler_list=sdm->GetSamplerList();
@ -227,7 +227,7 @@ bool ShaderCreater::ProcSampler()
return(true); return(true);
} }
bool ShaderCreater::CreateShader(ShaderCreater *last_sc) bool ShaderCreateInfo::CreateShader(ShaderCreateInfo *last_sc)
{ {
final_shader="#version 460 core\n"; final_shader="#version 460 core\n";
@ -263,7 +263,7 @@ bool ShaderCreater::CreateShader(ShaderCreater *last_sc)
return(true); return(true);
} }
bool ShaderCreater::CompileToSPV() bool ShaderCreateInfo::CompileToSPV()
{ {
glsl_compiler::SPVData *spv_data=glsl_compiler::Compile(shader_stage,final_shader.c_str()); glsl_compiler::SPVData *spv_data=glsl_compiler::Compile(shader_stage,final_shader.c_str());

View File

@ -1,11 +1,11 @@
#include<hgl/shadergen/ShaderCreaterFragment.h> #include<hgl/shadergen/ShaderCreateInfoFragment.h>
#include<hgl/shadergen/ShaderDescriptorManager.h> #include<hgl/shadergen/ShaderDescriptorManager.h>
SHADERGEN_NAMESPACE_BEGIN SHADERGEN_NAMESPACE_BEGIN
using namespace hgl::graph; using namespace hgl::graph;
void ShaderCreaterFragment::UseDefaultMain() void ShaderCreateInfoFragment::UseDefaultMain()
{ {
main_codes="void main()\n{\n"; main_codes="void main()\n{\n";
@ -28,7 +28,7 @@ void ShaderCreaterFragment::UseDefaultMain()
main_codes+="}"; main_codes+="}";
} }
bool ShaderCreaterFragment::ProcOutput() bool ShaderCreateInfoFragment::ProcOutput()
{ {
const auto &output_list=sdm->GetShaderStageIO().output; const auto &output_list=sdm->GetShaderStageIO().output;

View File

@ -1,4 +1,4 @@
#include<hgl/shadergen/ShaderCreaterVertex.h> #include<hgl/shadergen/ShaderCreateInfoVertex.h>
#include<hgl/shadergen/ShaderDescriptorManager.h> #include<hgl/shadergen/ShaderDescriptorManager.h>
#include<hgl/graph/VertexAttrib.h> #include<hgl/graph/VertexAttrib.h>
#include<hgl/graph/VKShaderStage.h> #include<hgl/graph/VKShaderStage.h>
@ -8,7 +8,7 @@ SHADERGEN_NAMESPACE_BEGIN
using namespace hgl; using namespace hgl;
using namespace hgl::graph; using namespace hgl::graph;
int ShaderCreaterVertex::AddInput(const VAT &type,const AnsiString &name) int ShaderCreateInfoVertex::AddInput(const VAT &type,const AnsiString &name)
{ {
ShaderStage *ss=new ShaderStage; ShaderStage *ss=new ShaderStage;
@ -20,7 +20,7 @@ int ShaderCreaterVertex::AddInput(const VAT &type,const AnsiString &name)
return sdm->AddInput(ss); return sdm->AddInput(ss);
} }
int ShaderCreaterVertex::AddInput(const AnsiString &type,const AnsiString &name) int ShaderCreateInfoVertex::AddInput(const AnsiString &type,const AnsiString &name)
{ {
VAT vat; VAT vat;
@ -30,7 +30,7 @@ int ShaderCreaterVertex::AddInput(const AnsiString &type,const AnsiString &name)
return AddInput(vat,name); return AddInput(vat,name);
} }
bool ShaderCreaterVertex::ProcInput(ShaderCreater *) bool ShaderCreateInfoVertex::ProcInput(ShaderCreateInfo *)
{ {
const auto &input=sdm->GetShaderStageIO().input; const auto &input=sdm->GetShaderStageIO().input;