2019-12-10 21:52:10 +08:00
|
|
|
|
#ifndef HGL_GRAPH_SHADER_MAKER_INCLUDE
|
|
|
|
|
#define HGL_GRAPH_SHADER_MAKER_INCLUDE
|
2019-12-06 21:47:17 +08:00
|
|
|
|
|
2019-12-12 22:25:40 +08:00
|
|
|
|
#include<hgl/graph/shader/node/finished.h>
|
2019-12-14 20:52:58 +08:00
|
|
|
|
#include<hgl/graph/shader/node/vertex_input.h>
|
2019-12-12 22:25:40 +08:00
|
|
|
|
BEGIN_SHADER_NAMESPACE
|
|
|
|
|
class ShaderMaker
|
2019-12-06 21:47:17 +08:00
|
|
|
|
{
|
2019-12-12 22:25:40 +08:00
|
|
|
|
node::Finished *fin_node;
|
2019-12-06 21:47:17 +08:00
|
|
|
|
|
2019-12-14 20:52:58 +08:00
|
|
|
|
protected:
|
|
|
|
|
|
|
|
|
|
List<node::VertexInput *> vi_list; ///<顶点输入节点列表
|
|
|
|
|
// List<node::Texture *> tex_list; ///<纹理输入节点列表
|
|
|
|
|
// List<node::UBO *> ubo_list; ///<UBO输入节点列表
|
|
|
|
|
// List<node::Function *> func_list; ///<材质函数节点列表
|
|
|
|
|
|
2019-12-12 22:25:40 +08:00
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
ShaderMaker(node::Finished *fn){fin_node=fn;}
|
2019-12-13 17:55:20 +08:00
|
|
|
|
virtual ~ShaderMaker()=default;
|
2019-12-12 22:25:40 +08:00
|
|
|
|
|
2019-12-14 20:52:58 +08:00
|
|
|
|
virtual bool Check();
|
2019-12-13 17:55:20 +08:00
|
|
|
|
virtual bool Make();
|
2019-12-12 22:25:40 +08:00
|
|
|
|
};//class ShaderMaker
|
|
|
|
|
END_SHADER_NAMESPACE
|
2019-12-10 21:52:10 +08:00
|
|
|
|
#endif//HGL_GRAPH_SHADER_MAKER_INCLUDE
|