Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

VisualShaderNodeCustom

Inherits: VisualShaderNode < Resource < RefCounted < Object

Virtual class to define custom VisualShaderNodes for use in the Visual Shader Editor.

Description

By inheriting this class you can create a custom VisualShader script addon which will be automatically added to the Visual Shader Editor. The VisualShaderNode's behavior is defined by overriding the provided virtual methods.

In order for the node to be registered as an editor addon, you must use the @tool annotation and provide a class_name for your custom script. For example:

@tool
extends VisualShaderNodeCustom
class_name VisualShaderNodeNoise

Tutorials

Methods

String

_get_category ( ) virtual const

String

_get_code ( String[] input_vars, String[] output_vars, Mode mode, Type type ) virtual const

int

_get_default_input_port ( PortType type ) virtual const

String

_get_description ( ) virtual const

String

_get_func_code ( Mode mode, Type type ) virtual const

String

_get_global_code ( Mode mode ) virtual const

int

_get_input_port_count ( ) virtual const

Variant

_get_input_port_default_value ( int port ) virtual const

String

_get_input_port_name ( int port ) virtual const

PortType

_get_input_port_type ( int port ) virtual const

String

_get_name ( ) virtual const

int

_get_output_port_count ( ) virtual const

String

_get_output_port_name ( int port ) virtual const

PortType

_get_output_port_type ( int port ) virtual const

int

_get_property_count ( ) virtual const

int

_get_property_default_index ( int index ) virtual const

String

_get_property_name ( int index ) virtual const

PackedStringArray