MaterialX 1.39.1
|
Utility class for implementations of nodes which perform convolutions. More...
#include <ConvolutionNode.h>
Public Member Functions | |
void | createVariables (const ShaderNode &node, GenContext &context, Shader &shader) const override |
Create shader variables needed for the implementation of this node (e.g. More... | |
Public Member Functions inherited from ShaderNodeImpl | |
virtual const string & | getTarget () const |
Return an identifier for the target used by this implementation. More... | |
virtual void | initialize (const InterfaceElement &element, GenContext &context) |
Initialize with the given implementation element. More... | |
const string & | getName () const |
Return the name of this implementation. | |
size_t | getHash () const |
Return a hash for this implementation. More... | |
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 |
Create shader variables needed for the implementation of this node (e.g. More... | |
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. | |
virtual ShaderGraph * | getGraph () const |
Return a pointer to the graph if this implementation is using a graph, or returns nullptr otherwise. More... | |
virtual bool | isEditable (const ShaderInput &) const |
Returns true if an input is editable by users. More... | |
virtual bool | isEditable (const ShaderGraphInputSocket &) const |
Returns true if a graph input is accessible by users. More... | |
Protected Member Functions | |
ConvolutionNode () | |
Constructor. | |
virtual bool | acceptsInputType (TypeDesc type) const =0 |
Derived classes are responsible for returning if a given type is an acceptable input. More... | |
bool | acceptsInputType (const TypeDesc *type) const |
virtual void | computeSampleOffsetStrings (const string &sampleSizeName, const string &offsetTypeString, unsigned int filterWidth, StringVec &offsetStrings) const =0 |
virtual const ShaderInput * | getSamplingInput (const ShaderNode &node) const |
Get input which is used for sampling. More... | |
void | emitInputSamplesUV (const ShaderNode &node, unsigned int sampleCount, unsigned int filterWidth, float filterSize, float filterOffset, const string &sampleSizeFunctionUV, GenContext &context, ShaderStage &stage, StringVec &sampleStrings) const |
Generate upstream / input sampling code in uv space and cache the output variable names which will hold the sample values after execution. | |
Protected Member Functions inherited from ShaderNodeImpl | |
ShaderNodeImpl () | |
Protected constructor. | |
Additional Inherited Members | |
Protected Attributes inherited from ShaderNodeImpl | |
string | _name |
size_t | _hash |
Utility class for implementations of nodes which perform convolutions.
|
protectedpure virtual |
Derived classes are responsible for returning if a given type is an acceptable input.
Implemented in HeightToNormalNodeGlsl, and BlurNode.
|
protectedpure virtual |
Implemented in HeightToNormalNodeGlsl, and BlurNode.
|
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.
Reimplemented in HeightToNormalNodeGlsl.
|
protectedvirtual |
Get input which is used for sampling.
If there is none then a null pointer is returned.