HDK
|
Base class for common GLSL node implementations. More...
#include <GlslShaderGenerator.h>
Public Member Functions | |
const string & | getTarget () const override |
bool | isEditable (const ShaderInput &input) const override |
Public Member Functions inherited from ShaderNodeImpl | |
virtual | ~ShaderNodeImpl () |
virtual void | initialize (const InterfaceElement &element, GenContext &context) |
const string & | getName () const |
Return the name of this implementation. More... | |
size_t | getHash () const |
virtual void | addInputs (ShaderNode &node, GenContext &context) const |
Add additional inputs on a node. More... | |
virtual void | setValues (const Node &node, ShaderNode &shaderNode, GenContext &context) const |
Set values for additional inputs on a node. More... | |
virtual void | addClassification (ShaderNode &node) const |
Add additional classifications on a node. More... | |
virtual void | createVariables (const ShaderNode &node, GenContext &context, Shader &shader) const |
virtual void | emitFunctionDefinition (const ShaderNode &node, GenContext &context, ShaderStage &stage) const |
Emit function definition for the given node instance. More... | |
virtual void | emitFunctionCall (const ShaderNode &node, GenContext &context, ShaderStage &stage) const |
Emit the function call or inline source code for given node instance in the given context. More... | |
virtual void | emitOutputVariables (const ShaderNode &node, GenContext &context, ShaderStage &stage) const |
Emit declaration and initialization of output variables to use in a function call. More... | |
virtual ShaderGraph * | getGraph () const |
virtual bool | isEditable (const ShaderGraphInputSocket &) const |
Protected Types | |
enum | Space { MODEL_SPACE = 0, OBJECT_SPACE = 1, WORLD_SPACE = 2 } |
Protected Member Functions | |
GlslImplementation () | |
Protected Member Functions inherited from ShaderNodeImpl | |
ShaderNodeImpl () | |
Protected constructor. More... | |
Static Protected Attributes | |
static const string | SPACE |
Internal string constants. More... | |
static const string | TO_SPACE |
static const string | FROM_SPACE |
static const string | WORLD |
static const string | OBJECT |
static const string | MODEL |
static const string | INDEX |
static const string | GEOMPROP |
Additional Inherited Members | |
Protected Attributes inherited from ShaderNodeImpl | |
string | _name |
size_t | _hash |
Base class for common GLSL node implementations.
Definition at line 91 of file GlslShaderGenerator.h.
|
protected |
Enumerator | |
---|---|
MODEL_SPACE | |
OBJECT_SPACE | |
WORLD_SPACE |
Definition at line 104 of file GlslShaderGenerator.h.
|
inlineprotected |
Definition at line 99 of file GlslShaderGenerator.h.
Return an identifier for the target used by this implementation. By default an empty string is returned, representing all targets. Only override this method if your derived node implementation class is for a specific target.
Reimplemented from ShaderNodeImpl.
|
overridevirtual |
Returns true if an input is editable by users. Editable inputs are allowed to be published as shader uniforms and hence must be presentable in a user interface. By default all inputs are considered to be editable.
Reimplemented from ShaderNodeImpl.
Reimplemented in GeomPropValueNodeGlsl.
Definition at line 114 of file GlslShaderGenerator.h.
Definition at line 119 of file GlslShaderGenerator.h.
Definition at line 118 of file GlslShaderGenerator.h.
Definition at line 117 of file GlslShaderGenerator.h.
Definition at line 116 of file GlslShaderGenerator.h.
Internal string constants.
Definition at line 112 of file GlslShaderGenerator.h.
Definition at line 113 of file GlslShaderGenerator.h.
Definition at line 115 of file GlslShaderGenerator.h.