CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
MaterialGraphNode.hpp File Reference

Go to the source code of this file.

Classes

class  CeresEngine::MaterialGraphNode
 
class  CeresEngine::MaterialGraphOutputNode
 A material graph node that represents the material output. More...
 
class  CeresEngine::MaterialGraphLiteralNode< T >
 
class  CeresEngine::MaterialGraphMathNode< T >
 
class  CeresEngine::MaterialGraphBinaryMathNode< T, O >
 

Namespaces

namespace  CeresEngine
 

Macros

#define CE_MATERIAL_GRAPH_NUMERIC_TYPES(F)
 
#define CE_MATERIAL_GRAPH_MATH_NODE_T(T)
 
#define CE_MATERIAL_GRAPH_MATH_NODE_T(T)
 

Typedefs

using CeresEngine::MaterialGraphFloatLiteralNode = MaterialGraphLiteralNode< float >
 
using CeresEngine::MaterialGraphVector2LiteralNode = MaterialGraphLiteralNode< Vector2f >
 
using CeresEngine::MaterialGraphVector3LiteralNode = MaterialGraphLiteralNode< Vector3f >
 
using CeresEngine::MaterialGraphVector4LiteralNode = MaterialGraphLiteralNode< Vector4f >
 
using CeresEngine::MaterialGraphFloatMathNode = MaterialGraphMathNode< Float >
 
using CeresEngine::MaterialGraphVector2MathNode = MaterialGraphMathNode< Vector2 >
 
using CeresEngine::MaterialGraphVector3MathNode = MaterialGraphMathNode< Vector3 >
 
using CeresEngine::MaterialGraphVector4MathNode = MaterialGraphMathNode< Vector4 >
 
using CeresEngine::MaterialGraphFloatAddNode = MaterialGraphBinaryMathNode< Float, MaterialGraphMathOperation::Add >
 
using CeresEngine::MaterialGraphFloatSubtractNode = MaterialGraphBinaryMathNode< Float, MaterialGraphMathOperation::Subtract >
 
using CeresEngine::MaterialGraphFloatMultiplyNode = MaterialGraphBinaryMathNode< Float, MaterialGraphMathOperation::Multiply >
 
using CeresEngine::MaterialGraphFloatDivideNode = MaterialGraphBinaryMathNode< Float, MaterialGraphMathOperation::Divide >
 
using CeresEngine::MaterialGraphVector2AddNode = MaterialGraphBinaryMathNode< Vector2, MaterialGraphMathOperation::Add >
 
using CeresEngine::MaterialGraphVector2SubtractNode = MaterialGraphBinaryMathNode< Vector2, MaterialGraphMathOperation::Subtract >
 
using CeresEngine::MaterialGraphVector2MultiplyNode = MaterialGraphBinaryMathNode< Vector2, MaterialGraphMathOperation::Multiply >
 
using CeresEngine::MaterialGraphVector2DivideNode = MaterialGraphBinaryMathNode< Vector2, MaterialGraphMathOperation::Divide >
 
using CeresEngine::MaterialGraphVector3AddNode = MaterialGraphBinaryMathNode< Vector3, MaterialGraphMathOperation::Add >
 
using CeresEngine::MaterialGraphVector3SubtractNode = MaterialGraphBinaryMathNode< Vector3, MaterialGraphMathOperation::Subtract >
 
using CeresEngine::MaterialGraphVector3MultiplyNode = MaterialGraphBinaryMathNode< Vector3, MaterialGraphMathOperation::Multiply >
 
using CeresEngine::MaterialGraphVector3DivideNode = MaterialGraphBinaryMathNode< Vector3, MaterialGraphMathOperation::Divide >
 
using CeresEngine::MaterialGraphVector4AddNode = MaterialGraphBinaryMathNode< Vector4, MaterialGraphMathOperation::Add >
 
using CeresEngine::MaterialGraphVector4SubtractNode = MaterialGraphBinaryMathNode< Vector4, MaterialGraphMathOperation::Subtract >
 
using CeresEngine::MaterialGraphVector4MultiplyNode = MaterialGraphBinaryMathNode< Vector4, MaterialGraphMathOperation::Multiply >
 
using CeresEngine::MaterialGraphVector4DivideNode = MaterialGraphBinaryMathNode< Vector4, MaterialGraphMathOperation::Divide >
 

Enumerations

enum class  CeresEngine::MaterialGraphMathOperation {
  CeresEngine::Add , CeresEngine::Subtract , CeresEngine::Multiply , CeresEngine::Divide ,
  CeresEngine::Max , CeresEngine::Min
}
 

Macro Definition Documentation

◆ CE_MATERIAL_GRAPH_MATH_NODE_T [1/2]

#define CE_MATERIAL_GRAPH_MATH_NODE_T (   T)
Value:
extern template class MaterialGraphMathNode<T>; \
using MaterialGraph##T##MathNode = MaterialGraphMathNode<T>;

◆ CE_MATERIAL_GRAPH_MATH_NODE_T [2/2]

#define CE_MATERIAL_GRAPH_MATH_NODE_T (   T)
Value:
extern template class MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Add>; \
using MaterialGraph##T##AddNode = MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Add>; \
\
extern template class MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Subtract>; \
using MaterialGraph##T##SubtractNode = MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Subtract>; \
\
extern template class MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Multiply>; \
using MaterialGraph##T##MultiplyNode = MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Multiply>; \
\
extern template class MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Divide>; \
using MaterialGraph##T##DivideNode = MaterialGraphBinaryMathNode<T, MaterialGraphMathOperation::Divide>;

◆ CE_MATERIAL_GRAPH_NUMERIC_TYPES

#define CE_MATERIAL_GRAPH_NUMERIC_TYPES (   F)
Value:
F(Float) \
F(Vector2) \
F(Vector3) \
F(Vector4)