HDK
|
#include <SurfaceShaderNodeMsl.h>
Public Member Functions | |
const string & | getTarget () const override |
void | createVariables (const ShaderNode &node, GenContext &context, Shader &shader) const override |
void | emitFunctionCall (const ShaderNode &node, GenContext &context, ShaderStage &stage) const override |
Emit the function call or inline source code for given node instance in the given context. More... | |
![]() | |
void | initialize (const InterfaceElement &element, GenContext &context) override |
void | emitFunctionDefinition (const ShaderNode &node, GenContext &context, ShaderStage &stage) const override |
Emit function definition for the given node instance. More... | |
void | emitFunctionCall (const ShaderNode &node, GenContext &context, ShaderStage &stage) const override |
Emit the function call or inline source code for given node instance in the given context. More... | |
![]() | |
virtual | ~ShaderNodeImpl () |
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 | 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 ShaderInput &) const |
virtual bool | isEditable (const ShaderGraphInputSocket &) const |
Static Public Member Functions | |
static ShaderNodeImplPtr | create () |
![]() | |
static ShaderNodeImplPtr | create () |
Additional Inherited Members | |
![]() | |
ShaderNodeImpl () | |
Protected constructor. More... | |
![]() | |
bool | _inlined |
string | _functionName |
string | _functionSource |
FilePath | _sourceFilename |
![]() | |
string | _name |
size_t | _hash |
SurfaceShader node implementation for MSL Used for all surface shaders implemented in source code.
Definition at line 16 of file SurfaceShaderNodeMsl.h.
|
static |
|
overridevirtual |
Create shader variables needed for the implementation of this node (e.g. uniforms, inputs and outputs). Used if the node requires input data from the application.
Reimplemented from ShaderNodeImpl.
|
overridevirtual |
Emit the function call or inline source code for given node instance in the given context.
Reimplemented from ShaderNodeImpl.
|
overridevirtual |
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.