![]() |
Murl Engine Lua Addon API
Version 1.0 beta
|
The IConstantBufferParameter graph node interface.
A single constant buffer parameter is used in conjunction with a Graph::IShaderProgram and its referenced Graph::IShader nodes, in order to set the value of a specific custom (or predefined) uniform variable in these GPU shaders.
Each constant buffer parameter is defined by a name and data type matching the name and type of a uniform variable in the shader(s); in addition, it is possible to reference an optional parent parameter whose value can be modulated by a given arithmetic operation such as addition, replacement or multiplication.
Constant buffer parameters must be grouped together in a Graph::IConstantBufferParameterGroup, which in turn must be part of a set of groups in a Graph::IConstantBufferParameters node.
See the Graph::IUniform base interface for accessing actual uniform parameters. See Graph::IConstantBufferParameterGroup for grouping individual parameter nodes. See Graph::IConstantBufferParameters for collecting individual groups.
Get the constant Graph::INode interface. This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
Murl.Graph.INode GetNodeInterface()
Get the constant Graph::IConstantBufferParameter container storing the optional parent. This method returns a constant pointer to the node's Graph::IConstantBufferParameter container that stores an optional reference to another generic parameter object, to query the object's parent.
Murl.Graph.IGenericNodeTarget.GraphIConstantBufferParameter GetParentConstantBufferParameterNodeTarget()
Set the actual uniform variable name. Once initialized, the variable name cannot be changed.
name | The uniform name. |
Set the arithmetic operation for modulating the optional parent's value.
Boolean SetOperation(Murl.IEnums.AluOperation operation)
operation | The modulation operation. |
Set the actual parameter value(s) by string. Sets the modified state to true if successful.
Boolean SetValue(String value)
value | The value(s) in string representation. |
Set an actual parameter value by string and index. Sets the modified state to true if successful.
Boolean SetValue(String value, Integer index)
value | The value in string representation. |
index | The zero-based index to the value. |
Set an actual float parameter value. Sets the modified state to true if successful.
Boolean SetFloatValue(Number value, Integer index)
value | The value. |
index | The zero-based index to the value. |
Set an actual integer parameter value. Sets the modified state to true if successful.
Boolean SetSInt32Value(Integer value, Integer index)
value | The value. |
index | The zero-based index to the value. |
Get an actual float parameter value.
Number GetFloatValue(Integer index)
index | The zero-based index to the value. |
Get an actual integer parameter value.
Integer GetSInt32Value(Integer index)
index | The zero-based index to the value. |
Get an actual modulated float parameter value.
Number GetModulatedFloatValue(Integer index)
index | The zero-based index to the value. |
Get an actual modulated integer parameter value.
Integer GetModulatedSInt32Value(Integer index)
index | The zero-based index to the value. |
Set the modified state of the parameter value.
Boolean SetValueModified(Boolean isModified)
isModified | The modified state. |
Query the modified state of the parameter value.
Boolean IsValueModified()