跳到主要内容

VisualShaderNodeCustom

继承

VisualShaderNode

简要描述

虚类,用于定义要在Visual Shader编辑器中使用的自定义VisualShaderNode

描述

通过继承此类,您可以创建一个自定义VisualShader脚本插件,它将自动添加到Visual Shader Editor。

为了将节点注册为编辑器附加组件,必须使用tool关键字并为您的自定义脚本提供class_name

tool
extends VisualShaderNodeCustom
class_name VisualShaderNodeNoise

方法

返回值类型方法名称
String_get_category() virtual
String_get_code(input_vars: Array, output_vars: Array, mode: int, type: int) virtual
String_get_description() virtual
String_get_global_code(mode: int) virtual
int_get_input_port_count() virtual
String_get_input_port_name(port: int) virtual
int_get_input_port_type(port: int) virtual
String_get_name() virtual
int_get_output_port_count() virtual
String_get_output_port_name(port: int) virtual
int_get_output_port_type(port: int) virtual
int_get_return_icon_type() virtual
String_get_subcategory() virtual

方法说明

  • _get_category _get_category() virtual

重写此方法,以在Visual Shader编辑器的成员对话框中定义关联的自定义节点的类别。

定义此方法是可选


  • _get_code _get_code(input_vars: Array, output_vars: Array, mode: int, type: int) virtual

重写此方法以定义关联的自定义节点的实际着色器代码。

input_varsoutput_vars数组包含各种输入和输出变量的字符串名,如_get_input _ *和` get_output * [

可以在着色器代码中为输出端口分配值。

您可以基于着色器mode(请参见Shader.Mode)和/或type(请参见VisualShader.Type)来自定义生成的代码。

定义此方法是必需的


  • _get_description _get_description() virtual

重写此方法,以在Visual Shader编辑器的成员对话框中定义关联的自定义节点的描述。

定义此方法是可选


  • _get_global_code _get_global_code(mode: int) virtual

重写此方法可在全局着色器的顶部添加着色器代码,以定义自己的可重用方法,变量,常量,统一等标准库。着色器代码会以字符串形式返回,可以包含多行(

请谨慎使用此功能,因为它可能导致名称与其他自定义节点发生冲突,因此请确保为定义的实体提供唯一的名称。

您可以基于着色器来自定义生成的代码mode(请参阅Shader.Mode)。

定义此方法是可选


  • _get_input_port_count _get_input_port_count() virtual

重写此方法以定义关联的自定义节点的输入端口数量。

定义此方法是必需的


  • _get_input_port_name _get_input_port_name(port: int) virtual

重写此方法以定义关联的自定义节点的输入端口的名称。

定义此方法是可选,但建议使用。


  • _get_input_port_type _get_input_port_type(port: int) virtual

重写此方法以定义关联的自定义节点的每个输入端口的返回类型(有关可能的类型,请参见VisualShaderNode.PortType)。

定义此方法是可选,但建议使用。


  • _get_name _get_name() virtual

重写此方法以在Visual Shader编辑器的成员对话框和图形中定义关联的自定义节点的名称。

定义此方法是可选,但建议使用。


  • _get_output_port_count _get_output_port_count() virtual

重写此方法以定义关联的自定义节点的输出端口数量。

定义此方法是必需的


  • _get_output_port_name _get_output_port_name(port: int) virtual

重写此方法以定义关联的自定义节点的输出端口的名称。

定义此方法是可选,但建议使用。


  • _get_output_port_type _get_output_port_type(port: int) virtual

重写此方法以定义关联的自定义节点的每个输出端口的返回类型(有关可能的类型,请参见VisualShaderNode.PortType)。

定义此方法是可选,但建议使用。


  • _get_return_icon_type _get_return_icon_type() virtual

重写此方法以在Visual Shader编辑器的成员对话框中定义关联的自定义节点的返回图标。

定义此方法是可选


  • _get_subcategory _get_subcategory() virtual

重写此方法,以在Visual Shader编辑器的成员对话框中定义关联的自定义节点的子类别。

定义此方法是可选