:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/3.6/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/3.6/doc/classes/VisualShaderNodeGroupBase.xml. .. _class_VisualShaderNodeGroupBase: VisualShaderNodeGroupBase ========================= **Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`Reference` **<** :ref:`Object` **Inherited By:** :ref:`VisualShaderNodeExpression` Base class for a family of nodes with variable amount of input and output ports within the visual shader graph. .. rst-class:: classref-introduction-group Description ----------- Currently, has no direct usage, use the derived classes instead. .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +-------------------------------+------------------------------------------------------------+---------------------+ | :ref:`Vector2` | :ref:`size` | ``Vector2( 0, 0 )`` | +-------------------------------+------------------------------------------------------------+---------------------+ .. rst-class:: classref-reftable-group Methods ------- .. table:: :widths: auto +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_input_port` **(** :ref:`int` id, :ref:`int` type, :ref:`String` name **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_output_port` **(** :ref:`int` id, :ref:`int` type, :ref:`String` name **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`clear_input_ports` **(** **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`clear_output_ports` **(** **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_free_input_port_id` **(** **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_free_output_port_id` **(** **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_input_port_count` **(** **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_inputs` **(** **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_output_port_count` **(** **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_outputs` **(** **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_input_port` **(** :ref:`int` id **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_output_port` **(** :ref:`int` id **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid_port_name` **(** :ref:`String` name **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`remove_input_port` **(** :ref:`int` id **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`remove_output_port` **(** :ref:`int` id **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_input_port_name` **(** :ref:`int` id, :ref:`String` name **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_input_port_type` **(** :ref:`int` id, :ref:`int` type **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_inputs` **(** :ref:`String` inputs **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_output_port_name` **(** :ref:`int` id, :ref:`String` name **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_output_port_type` **(** :ref:`int` id, :ref:`int` type **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_outputs` **(** :ref:`String` outputs **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_VisualShaderNodeGroupBase_property_size: .. rst-class:: classref-property :ref:`Vector2` **size** = ``Vector2( 0, 0 )`` .. rst-class:: classref-property-setget - void **set_size** **(** :ref:`Vector2` value **)** - :ref:`Vector2` **get_size** **(** **)** The size of the node in the visual shader graph. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Method Descriptions ------------------- .. _class_VisualShaderNodeGroupBase_method_add_input_port: .. rst-class:: classref-method void **add_input_port** **(** :ref:`int` id, :ref:`int` type, :ref:`String` name **)** Adds an input port with the specified ``type`` (see :ref:`PortType`) and ``name``. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_add_output_port: .. rst-class:: classref-method void **add_output_port** **(** :ref:`int` id, :ref:`int` type, :ref:`String` name **)** Adds an output port with the specified ``type`` (see :ref:`PortType`) and ``name``. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_clear_input_ports: .. rst-class:: classref-method void **clear_input_ports** **(** **)** Removes all previously specified input ports. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_clear_output_ports: .. rst-class:: classref-method void **clear_output_ports** **(** **)** Removes all previously specified output ports. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_get_free_input_port_id: .. rst-class:: classref-method :ref:`int` **get_free_input_port_id** **(** **)** |const| Returns a free input port ID which can be used in :ref:`add_input_port`. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_get_free_output_port_id: .. rst-class:: classref-method :ref:`int` **get_free_output_port_id** **(** **)** |const| Returns a free output port ID which can be used in :ref:`add_output_port`. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_get_input_port_count: .. rst-class:: classref-method :ref:`int` **get_input_port_count** **(** **)** |const| Returns the number of input ports in use. Alternative for :ref:`get_free_input_port_id`. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_get_inputs: .. rst-class:: classref-method :ref:`String` **get_inputs** **(** **)** |const| Returns a :ref:`String` description of the input ports as a colon-separated list using the format ``id,type,name;`` (see :ref:`add_input_port`). .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_get_output_port_count: .. rst-class:: classref-method :ref:`int` **get_output_port_count** **(** **)** |const| Returns the number of output ports in use. Alternative for :ref:`get_free_output_port_id`. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_get_outputs: .. rst-class:: classref-method :ref:`String` **get_outputs** **(** **)** |const| Returns a :ref:`String` description of the output ports as a colon-separated list using the format ``id,type,name;`` (see :ref:`add_output_port`). .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_has_input_port: .. rst-class:: classref-method :ref:`bool` **has_input_port** **(** :ref:`int` id **)** |const| Returns ``true`` if the specified input port exists. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_has_output_port: .. rst-class:: classref-method :ref:`bool` **has_output_port** **(** :ref:`int` id **)** |const| Returns ``true`` if the specified output port exists. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_is_valid_port_name: .. rst-class:: classref-method :ref:`bool` **is_valid_port_name** **(** :ref:`String` name **)** |const| Returns ``true`` if the specified port name does not override an existed port name and is valid within the shader. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_remove_input_port: .. rst-class:: classref-method void **remove_input_port** **(** :ref:`int` id **)** Removes the specified input port. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_remove_output_port: .. rst-class:: classref-method void **remove_output_port** **(** :ref:`int` id **)** Removes the specified output port. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_set_input_port_name: .. rst-class:: classref-method void **set_input_port_name** **(** :ref:`int` id, :ref:`String` name **)** Renames the specified input port. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_set_input_port_type: .. rst-class:: classref-method void **set_input_port_type** **(** :ref:`int` id, :ref:`int` type **)** Sets the specified input port's type (see :ref:`PortType`). .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_set_inputs: .. rst-class:: classref-method void **set_inputs** **(** :ref:`String` inputs **)** Defines all input ports using a :ref:`String` formatted as a colon-separated list: ``id,type,name;`` (see :ref:`add_input_port`). .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_set_output_port_name: .. rst-class:: classref-method void **set_output_port_name** **(** :ref:`int` id, :ref:`String` name **)** Renames the specified output port. .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_set_output_port_type: .. rst-class:: classref-method void **set_output_port_type** **(** :ref:`int` id, :ref:`int` type **)** Sets the specified output port's type (see :ref:`PortType`). .. rst-class:: classref-item-separator ---- .. _class_VisualShaderNodeGroupBase_method_set_outputs: .. rst-class:: classref-method void **set_outputs** **(** :ref:`String` outputs **)** Defines all output ports using a :ref:`String` formatted as a colon-separated list: ``id,type,name;`` (see :ref:`add_output_port`). .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`