Polyphase Game Engine
Loading...
Searching...
No Matches
InputNodes.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <string>
6
7static const glm::vec4 kInputNodeColor = glm::vec4(0.9f, 0.6f, 0.1f, 1.0f);
8
9// --- Float Input ---
11{
12public:
14 virtual void SetupPins() override;
15 virtual void Evaluate() override;
16 virtual void SaveStream(Stream& stream) override;
17 virtual void LoadStream(Stream& stream, uint32_t version) override;
18 virtual const char* GetNodeTypeName() const override { return "Float Input"; }
19 virtual const char* GetNodeCategory() const override { return "Input"; }
20 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
21 virtual bool IsInputNode() const override { return true; }
22 virtual const std::string& GetInputName() const override { return mInputName; }
23 virtual void SetInputName(const std::string& name) override { mInputName = name; }
24
25protected:
26 std::string mInputName = "Float";
27};
28
29// --- Int Input ---
30class IntInputNode : public GraphNode
31{
32public:
34 virtual void SetupPins() override;
35 virtual void Evaluate() override;
36 virtual void SaveStream(Stream& stream) override;
37 virtual void LoadStream(Stream& stream, uint32_t version) override;
38 virtual const char* GetNodeTypeName() const override { return "Int Input"; }
39 virtual const char* GetNodeCategory() const override { return "Input"; }
40 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
41 virtual bool IsInputNode() const override { return true; }
42 virtual const std::string& GetInputName() const override { return mInputName; }
43 virtual void SetInputName(const std::string& name) override { mInputName = name; }
44
45protected:
46 std::string mInputName = "Integer";
47};
48
49// --- Bool Input ---
51{
52public:
54 virtual void SetupPins() override;
55 virtual void Evaluate() override;
56 virtual void SaveStream(Stream& stream) override;
57 virtual void LoadStream(Stream& stream, uint32_t version) override;
58 virtual const char* GetNodeTypeName() const override { return "Bool Input"; }
59 virtual const char* GetNodeCategory() const override { return "Input"; }
60 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
61 virtual bool IsInputNode() const override { return true; }
62 virtual const std::string& GetInputName() const override { return mInputName; }
63 virtual void SetInputName(const std::string& name) override { mInputName = name; }
64
65protected:
66 std::string mInputName = "Bool";
67};
68
69// --- String Input ---
71{
72public:
74 virtual void SetupPins() override;
75 virtual void Evaluate() override;
76 virtual void SaveStream(Stream& stream) override;
77 virtual void LoadStream(Stream& stream, uint32_t version) override;
78 virtual const char* GetNodeTypeName() const override { return "String Input"; }
79 virtual const char* GetNodeCategory() const override { return "Input"; }
80 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
81 virtual bool IsInputNode() const override { return true; }
82 virtual const std::string& GetInputName() const override { return mInputName; }
83 virtual void SetInputName(const std::string& name) override { mInputName = name; }
84
85protected:
86 std::string mInputName = "String";
87};
88
89// --- Byte Input ---
91{
92public:
94 virtual void SetupPins() override;
95 virtual void Evaluate() override;
96 virtual void SaveStream(Stream& stream) override;
97 virtual void LoadStream(Stream& stream, uint32_t version) override;
98 virtual const char* GetNodeTypeName() const override { return "Byte Input"; }
99 virtual const char* GetNodeCategory() const override { return "Input"; }
100 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
101 virtual bool IsInputNode() const override { return true; }
102 virtual const std::string& GetInputName() const override { return mInputName; }
103 virtual void SetInputName(const std::string& name) override { mInputName = name; }
104
105protected:
106 std::string mInputName = "Byte";
107};
108
109// --- Asset Input ---
111{
112public:
114 virtual void SetupPins() override;
115 virtual void Evaluate() override;
116 virtual void SaveStream(Stream& stream) override;
117 virtual void LoadStream(Stream& stream, uint32_t version) override;
118 virtual const char* GetNodeTypeName() const override { return "Asset Input"; }
119 virtual const char* GetNodeCategory() const override { return "Input"; }
120 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
121 virtual bool IsInputNode() const override { return true; }
122 virtual const std::string& GetInputName() const override { return mInputName; }
123 virtual void SetInputName(const std::string& name) override { mInputName = name; }
124
125protected:
126 std::string mInputName = "Asset";
127};
128
129// --- Vector Input ---
131{
132public:
134 virtual void SetupPins() override;
135 virtual void Evaluate() override;
136 virtual void SaveStream(Stream& stream) override;
137 virtual void LoadStream(Stream& stream, uint32_t version) override;
138 virtual const char* GetNodeTypeName() const override { return "Vector Input"; }
139 virtual const char* GetNodeCategory() const override { return "Input"; }
140 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
141 virtual bool IsInputNode() const override { return true; }
142 virtual const std::string& GetInputName() const override { return mInputName; }
143 virtual void SetInputName(const std::string& name) override { mInputName = name; }
144
145protected:
146 std::string mInputName = "Vector";
147};
148
149// --- Color Input ---
151{
152public:
154 virtual void SetupPins() override;
155 virtual void Evaluate() override;
156 virtual void SaveStream(Stream& stream) override;
157 virtual void LoadStream(Stream& stream, uint32_t version) override;
158 virtual const char* GetNodeTypeName() const override { return "Color Input"; }
159 virtual const char* GetNodeCategory() const override { return "Input"; }
160 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
161 virtual bool IsInputNode() const override { return true; }
162 virtual const std::string& GetInputName() const override { return mInputName; }
163 virtual void SetInputName(const std::string& name) override { mInputName = name; }
164
165protected:
166 std::string mInputName = "Color";
167};
168
169// --- Node Input ---
171{
172public:
174 virtual void SetupPins() override;
175 virtual void Evaluate() override;
176 virtual void SaveStream(Stream& stream) override;
177 virtual void LoadStream(Stream& stream, uint32_t version) override;
178 virtual const char* GetNodeTypeName() const override { return "Node Input"; }
179 virtual const char* GetNodeCategory() const override { return "Input"; }
180 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
181 virtual bool IsInputNode() const override { return true; }
182 virtual const std::string& GetInputName() const override { return mInputName; }
183 virtual void SetInputName(const std::string& name) override { mInputName = name; }
184
185protected:
186 std::string mInputName = "Node";
187};
188
189// --- Node3D Input ---
191{
192public:
194 virtual void SetupPins() override;
195 virtual void Evaluate() override;
196 virtual void SaveStream(Stream& stream) override;
197 virtual void LoadStream(Stream& stream, uint32_t version) override;
198 virtual const char* GetNodeTypeName() const override { return "Node3D Input"; }
199 virtual const char* GetNodeCategory() const override { return "Input"; }
200 virtual glm::vec4 GetNodeColor() const override { return kInputNodeColor; }
201 virtual bool IsInputNode() const override { return true; }
202 virtual const std::string& GetInputName() const override { return mInputName; }
203 virtual void SetInputName(const std::string& name) override { mInputName = name; }
204
205protected:
206 std::string mInputName = "Node3D";
207};
Definition InputNodes.h:111
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:123
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:184
virtual const std::string & GetInputName() const override
Definition InputNodes.h:122
virtual void SetupPins() override
Definition InputNodes.cpp:173
virtual bool IsInputNode() const override
Definition InputNodes.h:121
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:118
virtual void Evaluate() override
Definition InputNodes.cpp:179
std::string mInputName
Definition InputNodes.h:126
DECLARE_GRAPH_NODE(AssetInputNode, GraphNode)
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:120
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:119
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:190
Definition InputNodes.h:51
virtual const std::string & GetInputName() const override
Definition InputNodes.h:62
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:60
std::string mInputName
Definition InputNodes.h:66
virtual void Evaluate() override
Definition InputNodes.cpp:101
DECLARE_GRAPH_NODE(BoolInputNode, GraphNode)
virtual bool IsInputNode() const override
Definition InputNodes.h:61
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:112
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:58
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:59
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:63
virtual void SetupPins() override
Definition InputNodes.cpp:95
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:106
Definition InputNodes.h:91
virtual void Evaluate() override
Definition InputNodes.cpp:153
DECLARE_GRAPH_NODE(ByteInputNode, GraphNode)
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:98
virtual void SetupPins() override
Definition InputNodes.cpp:147
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:158
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:99
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:103
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:100
virtual const std::string & GetInputName() const override
Definition InputNodes.h:102
virtual bool IsInputNode() const override
Definition InputNodes.h:101
std::string mInputName
Definition InputNodes.h:106
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:164
Definition InputNodes.h:151
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:236
virtual void Evaluate() override
Definition InputNodes.cpp:231
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:242
virtual void SetupPins() override
Definition InputNodes.cpp:225
DECLARE_GRAPH_NODE(ColorInputNode, GraphNode)
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:159
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:160
virtual const std::string & GetInputName() const override
Definition InputNodes.h:162
std::string mInputName
Definition InputNodes.h:166
virtual bool IsInputNode() const override
Definition InputNodes.h:161
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:163
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:158
Definition InputNodes.h:11
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:60
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:23
virtual bool IsInputNode() const override
Definition InputNodes.h:21
virtual void SetupPins() override
Definition InputNodes.cpp:43
virtual void Evaluate() override
Definition InputNodes.cpp:49
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:18
DECLARE_GRAPH_NODE(FloatInputNode, GraphNode)
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:54
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:20
std::string mInputName
Definition InputNodes.h:26
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:19
virtual const std::string & GetInputName() const override
Definition InputNodes.h:22
Definition GraphNode.h:73
Definition InputNodes.h:31
DECLARE_GRAPH_NODE(IntInputNode, GraphNode)
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:38
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:86
virtual void Evaluate() override
Definition InputNodes.cpp:75
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:40
virtual void SetupPins() override
Definition InputNodes.cpp:69
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:39
std::string mInputName
Definition InputNodes.h:46
virtual const std::string & GetInputName() const override
Definition InputNodes.h:42
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:43
virtual bool IsInputNode() const override
Definition InputNodes.h:41
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:80
Definition InputNodes.h:191
std::string mInputName
Definition InputNodes.h:206
virtual bool IsInputNode() const override
Definition InputNodes.h:201
virtual void Evaluate() override
Definition InputNodes.cpp:283
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:199
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:198
virtual const std::string & GetInputName() const override
Definition InputNodes.h:202
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:200
virtual void SetupPins() override
Definition InputNodes.cpp:277
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:288
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:294
DECLARE_GRAPH_NODE(Node3DInputNode, GraphNode)
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:203
Definition InputNodes.h:171
virtual bool IsInputNode() const override
Definition InputNodes.h:181
std::string mInputName
Definition InputNodes.h:186
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:268
virtual void Evaluate() override
Definition InputNodes.cpp:257
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:178
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:183
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:262
virtual void SetupPins() override
Definition InputNodes.cpp:251
DECLARE_GRAPH_NODE(NodeInputNode, GraphNode)
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:179
virtual const std::string & GetInputName() const override
Definition InputNodes.h:182
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:180
Definition Stream.h:21
Definition InputNodes.h:71
virtual const std::string & GetInputName() const override
Definition InputNodes.h:82
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:78
virtual bool IsInputNode() const override
Definition InputNodes.h:81
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:132
DECLARE_GRAPH_NODE(StringInputNode, GraphNode)
virtual void Evaluate() override
Definition InputNodes.cpp:127
virtual void SetupPins() override
Definition InputNodes.cpp:121
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:79
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:80
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:83
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:138
std::string mInputName
Definition InputNodes.h:86
Definition InputNodes.h:131
DECLARE_GRAPH_NODE(VectorInputNode, GraphNode)
virtual void LoadStream(Stream &stream, uint32_t version) override
Definition InputNodes.cpp:216
virtual const char * GetNodeCategory() const override
Definition InputNodes.h:139
virtual const std::string & GetInputName() const override
Definition InputNodes.h:142
virtual const char * GetNodeTypeName() const override
Definition InputNodes.h:138
virtual void SetInputName(const std::string &name) override
Definition InputNodes.h:143
virtual void SetupPins() override
Definition InputNodes.cpp:199
virtual void Evaluate() override
Definition InputNodes.cpp:205
virtual bool IsInputNode() const override
Definition InputNodes.h:141
std::string mInputName
Definition InputNodes.h:146
virtual void SaveStream(Stream &stream) override
Definition InputNodes.cpp:210
virtual glm::vec4 GetNodeColor() const override
Definition InputNodes.h:140