parent
e317e34c15
commit
f253f7b6e6
3 changed files with 7 additions and 7 deletions
|
@ -27,8 +27,8 @@
|
|||
<return type="String" />
|
||||
<argument index="0" name="input_vars" type="PackedStringArray" />
|
||||
<argument index="1" name="output_vars" type="String[]" />
|
||||
<argument index="2" name="mode" type="int" />
|
||||
<argument index="3" name="type" type="int" />
|
||||
<argument index="2" name="mode" type="int" enum="Shader.Mode" />
|
||||
<argument index="3" name="type" type="int" enum="VisualShader.Type" />
|
||||
<description>
|
||||
Override this method to define the actual shader code of the associated custom node. The shader code should be returned as a string, which can have multiple lines (the [code]"""[/code] multiline string construct can be used for convenience).
|
||||
The [code]input_vars[/code] and [code]output_vars[/code] arrays contain the string names of the various input and output variables, as defined by [code]_get_input_*[/code] and [code]_get_output_*[/code] virtual methods in this class.
|
||||
|
@ -46,7 +46,7 @@
|
|||
</method>
|
||||
<method name="_get_global_code" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<argument index="0" name="mode" type="int" />
|
||||
<argument index="0" name="mode" type="int" enum="Shader.Mode" />
|
||||
<description>
|
||||
Override this method to add shader code on top of the global shader, to define your own standard library of reusable methods, varyings, constants, uniforms, etc. The shader code should be returned as a string, which can have multiple lines (the [code]"""[/code] multiline string construct can be used for convenience).
|
||||
Be careful with this functionality as it can cause name conflicts with other custom nodes, so be sure to give the defined entities unique names.
|
||||
|
|
|
@ -354,7 +354,7 @@ String VisualShaderNodeCustom::generate_code(Shader::Mode p_mode, VisualShader::
|
|||
}
|
||||
String code = " {\n";
|
||||
String _code;
|
||||
GDVIRTUAL_CALL(_get_code, input_vars, output_vars, (int)p_mode, (int)p_type, _code);
|
||||
GDVIRTUAL_CALL(_get_code, input_vars, output_vars, p_mode, p_type, _code);
|
||||
bool nend = _code.ends_with("\n");
|
||||
_code = _code.insert(0, " ");
|
||||
_code = _code.replace("\n", "\n ");
|
||||
|
@ -371,7 +371,7 @@ String VisualShaderNodeCustom::generate_code(Shader::Mode p_mode, VisualShader::
|
|||
|
||||
String VisualShaderNodeCustom::generate_global_per_node(Shader::Mode p_mode, VisualShader::Type p_type, int p_id) const {
|
||||
String ret;
|
||||
if (GDVIRTUAL_CALL(_get_global_code, (int)p_mode, ret)) {
|
||||
if (GDVIRTUAL_CALL(_get_global_code, p_mode, ret)) {
|
||||
String code = "// " + get_caption() + "\n";
|
||||
code += ret;
|
||||
code += "\n";
|
||||
|
|
|
@ -328,8 +328,8 @@ protected:
|
|||
GDVIRTUAL0RC(int, _get_output_port_count)
|
||||
GDVIRTUAL1RC(int, _get_output_port_type, int)
|
||||
GDVIRTUAL1RC(String, _get_output_port_name, int)
|
||||
GDVIRTUAL4RC(String, _get_code, Vector<String>, TypedArray<String>, int, int)
|
||||
GDVIRTUAL1RC(String, _get_global_code, int)
|
||||
GDVIRTUAL4RC(String, _get_code, Vector<String>, TypedArray<String>, Shader::Mode, VisualShader::Type)
|
||||
GDVIRTUAL1RC(String, _get_global_code, Shader::Mode)
|
||||
GDVIRTUAL0RC(bool, _is_highend)
|
||||
|
||||
protected:
|
||||
|
|
Loading…
Reference in a new issue