Merge commit '1843c454bd' as 'engine'
This commit is contained in:
commit
e7cc4cd72f
13965 changed files with 7502032 additions and 0 deletions
274
engine/modules/visual_shader/doc_classes/VisualShader.xml
Normal file
274
engine/modules/visual_shader/doc_classes/VisualShader.xml
Normal file
|
|
@ -0,0 +1,274 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShader" inherits="Shader" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A custom shader program with a visual editor.
|
||||
</brief_description>
|
||||
<description>
|
||||
This class provides a graph-like visual editor for creating a [Shader]. Although [VisualShader]s do not require coding, they share the same logic with script shaders. They use [VisualShaderNode]s that can be connected to each other to control the flow of the shader. The visual shader graph is converted to a script shader behind the scenes.
|
||||
</description>
|
||||
<tutorials>
|
||||
<link title="Using VisualShaders">$DOCS_URL/tutorials/shaders/visual_shaders.html</link>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="add_node">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="node" type="VisualShaderNode" />
|
||||
<param index="2" name="position" type="Vector2" />
|
||||
<param index="3" name="id" type="int" />
|
||||
<description>
|
||||
Adds the specified [param node] to the shader.
|
||||
</description>
|
||||
</method>
|
||||
<method name="add_varying">
|
||||
<return type="void" />
|
||||
<param index="0" name="name" type="String" />
|
||||
<param index="1" name="mode" type="int" enum="VisualShader.VaryingMode" />
|
||||
<param index="2" name="type" type="int" enum="VisualShader.VaryingType" />
|
||||
<description>
|
||||
Adds a new varying value node to the shader.
|
||||
</description>
|
||||
</method>
|
||||
<method name="attach_node_to_frame">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<param index="2" name="frame" type="int" />
|
||||
<description>
|
||||
Attaches the given node to the given frame.
|
||||
</description>
|
||||
</method>
|
||||
<method name="can_connect_nodes" qualifiers="const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="from_node" type="int" />
|
||||
<param index="2" name="from_port" type="int" />
|
||||
<param index="3" name="to_node" type="int" />
|
||||
<param index="4" name="to_port" type="int" />
|
||||
<description>
|
||||
Returns [code]true[/code] if the specified nodes and ports can be connected together.
|
||||
</description>
|
||||
</method>
|
||||
<method name="connect_nodes">
|
||||
<return type="int" enum="Error" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="from_node" type="int" />
|
||||
<param index="2" name="from_port" type="int" />
|
||||
<param index="3" name="to_node" type="int" />
|
||||
<param index="4" name="to_port" type="int" />
|
||||
<description>
|
||||
Connects the specified nodes and ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="connect_nodes_forced">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="from_node" type="int" />
|
||||
<param index="2" name="from_port" type="int" />
|
||||
<param index="3" name="to_node" type="int" />
|
||||
<param index="4" name="to_port" type="int" />
|
||||
<description>
|
||||
Connects the specified nodes and ports, even if they can't be connected. Such connection is invalid and will not function properly.
|
||||
</description>
|
||||
</method>
|
||||
<method name="detach_node_from_frame">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<description>
|
||||
Detaches the given node from the frame it is attached to.
|
||||
</description>
|
||||
</method>
|
||||
<method name="disconnect_nodes">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="from_node" type="int" />
|
||||
<param index="2" name="from_port" type="int" />
|
||||
<param index="3" name="to_node" type="int" />
|
||||
<param index="4" name="to_port" type="int" />
|
||||
<description>
|
||||
Connects the specified nodes and ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_node" qualifiers="const">
|
||||
<return type="VisualShaderNode" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<description>
|
||||
Returns the shader node instance with specified [param type] and [param id].
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_node_connections" qualifiers="const">
|
||||
<return type="Dictionary[]" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<description>
|
||||
Returns the list of connected nodes with the specified type.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_node_list" qualifiers="const">
|
||||
<return type="PackedInt32Array" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<description>
|
||||
Returns the list of all nodes in the shader with the specified type.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_node_position" qualifiers="const">
|
||||
<return type="Vector2" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<description>
|
||||
Returns the position of the specified node within the shader graph.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_valid_node_id" qualifiers="const">
|
||||
<return type="int" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<description>
|
||||
Returns next valid node ID that can be added to the shader graph.
|
||||
</description>
|
||||
</method>
|
||||
<method name="has_varying" qualifiers="const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="name" type="String" />
|
||||
<description>
|
||||
Returns [code]true[/code] if the shader has a varying with the given [param name].
|
||||
</description>
|
||||
</method>
|
||||
<method name="is_node_connection" qualifiers="const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="from_node" type="int" />
|
||||
<param index="2" name="from_port" type="int" />
|
||||
<param index="3" name="to_node" type="int" />
|
||||
<param index="4" name="to_port" type="int" />
|
||||
<description>
|
||||
Returns [code]true[/code] if the specified node and port connection exist.
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_node">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<description>
|
||||
Removes the specified node from the shader.
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_varying">
|
||||
<return type="void" />
|
||||
<param index="0" name="name" type="String" />
|
||||
<description>
|
||||
Removes a varying value node with the given [param name]. Prints an error if a node with this name is not found.
|
||||
</description>
|
||||
</method>
|
||||
<method name="replace_node">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<param index="2" name="new_class" type="StringName" />
|
||||
<description>
|
||||
Replaces the specified node with a node of new class type.
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_mode">
|
||||
<return type="void" />
|
||||
<param index="0" name="mode" type="int" enum="Shader.Mode" />
|
||||
<description>
|
||||
Sets the mode of this shader.
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_node_position">
|
||||
<return type="void" />
|
||||
<param index="0" name="type" type="int" enum="VisualShader.Type" />
|
||||
<param index="1" name="id" type="int" />
|
||||
<param index="2" name="position" type="Vector2" />
|
||||
<description>
|
||||
Sets the position of the specified node.
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<members>
|
||||
<member name="graph_offset" type="Vector2" setter="set_graph_offset" getter="get_graph_offset" deprecated="This property does nothing and always equals to zero.">
|
||||
Deprecated.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="TYPE_VERTEX" value="0" enum="Type">
|
||||
A vertex shader, operating on vertices.
|
||||
</constant>
|
||||
<constant name="TYPE_FRAGMENT" value="1" enum="Type">
|
||||
A fragment shader, operating on fragments (pixels).
|
||||
</constant>
|
||||
<constant name="TYPE_LIGHT" value="2" enum="Type">
|
||||
A shader for light calculations.
|
||||
</constant>
|
||||
<constant name="TYPE_START" value="3" enum="Type">
|
||||
A function for the "start" stage of particle shader.
|
||||
</constant>
|
||||
<constant name="TYPE_PROCESS" value="4" enum="Type">
|
||||
A function for the "process" stage of particle shader.
|
||||
</constant>
|
||||
<constant name="TYPE_COLLIDE" value="5" enum="Type">
|
||||
A function for the "collide" stage (particle collision handler) of particle shader.
|
||||
</constant>
|
||||
<constant name="TYPE_START_CUSTOM" value="6" enum="Type">
|
||||
A function for the "start" stage of particle shader, with customized output.
|
||||
</constant>
|
||||
<constant name="TYPE_PROCESS_CUSTOM" value="7" enum="Type">
|
||||
A function for the "process" stage of particle shader, with customized output.
|
||||
</constant>
|
||||
<constant name="TYPE_SKY" value="8" enum="Type">
|
||||
A shader for 3D environment's sky.
|
||||
</constant>
|
||||
<constant name="TYPE_FOG" value="9" enum="Type">
|
||||
A compute shader that runs for each froxel of the volumetric fog map.
|
||||
</constant>
|
||||
<constant name="TYPE_TEXTURE_BLIT" value="10" enum="Type">
|
||||
A shader used to process blit calls to a DrawableTexture.
|
||||
</constant>
|
||||
<constant name="TYPE_MAX" value="11" enum="Type">
|
||||
Represents the size of the [enum Type] enum.
|
||||
</constant>
|
||||
<constant name="VARYING_MODE_VERTEX_TO_FRAG_LIGHT" value="0" enum="VaryingMode">
|
||||
Varying is passed from [code]Vertex[/code] function to [code]Fragment[/code] and [code]Light[/code] functions.
|
||||
</constant>
|
||||
<constant name="VARYING_MODE_FRAG_TO_LIGHT" value="1" enum="VaryingMode">
|
||||
Varying is passed from [code]Fragment[/code] function to [code]Light[/code] function.
|
||||
</constant>
|
||||
<constant name="VARYING_MODE_MAX" value="2" enum="VaryingMode">
|
||||
Represents the size of the [enum VaryingMode] enum.
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_FLOAT" value="0" enum="VaryingType">
|
||||
Varying is of type [float].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_INT" value="1" enum="VaryingType">
|
||||
Varying is of type [int].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_UINT" value="2" enum="VaryingType">
|
||||
Varying is of type unsigned [int].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_VECTOR_2D" value="3" enum="VaryingType">
|
||||
Varying is of type [Vector2].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_VECTOR_3D" value="4" enum="VaryingType">
|
||||
Varying is of type [Vector3].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_VECTOR_4D" value="5" enum="VaryingType">
|
||||
Varying is of type [Vector4].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_BOOLEAN" value="6" enum="VaryingType">
|
||||
Varying is of type [bool].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_TRANSFORM" value="7" enum="VaryingType">
|
||||
Varying is of type [Transform3D].
|
||||
</constant>
|
||||
<constant name="VARYING_TYPE_MAX" value="8" enum="VaryingType">
|
||||
Represents the size of the [enum VaryingType] enum.
|
||||
</constant>
|
||||
<constant name="NODE_ID_INVALID" value="-1">
|
||||
Indicates an invalid [VisualShader] node.
|
||||
</constant>
|
||||
<constant name="NODE_ID_OUTPUT" value="0">
|
||||
Indicates an output node of [VisualShader].
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
103
engine/modules/visual_shader/doc_classes/VisualShaderNode.xml
Normal file
103
engine/modules/visual_shader/doc_classes/VisualShaderNode.xml
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNode" inherits="Resource" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Base class for [VisualShader] nodes. Not related to scene nodes.
|
||||
</brief_description>
|
||||
<description>
|
||||
Visual shader graphs consist of various nodes. Each node in the graph is a separate object and they are represented as a rectangular boxes with title and a set of properties. Each node also has connection ports that allow to connect it to another nodes and control the flow of the shader.
|
||||
</description>
|
||||
<tutorials>
|
||||
<link title="Using VisualShaders">$DOCS_URL/tutorials/shaders/visual_shaders.html</link>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="clear_default_input_values">
|
||||
<return type="void" />
|
||||
<description>
|
||||
Clears the default input ports value.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_default_input_port" qualifiers="const">
|
||||
<return type="int" />
|
||||
<param index="0" name="type" type="int" enum="VisualShaderNode.PortType" />
|
||||
<description>
|
||||
Returns the input port which should be connected by default when this node is created as a result of dragging a connection from an existing node to the empty space on the graph.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_default_input_values" qualifiers="const">
|
||||
<return type="Array" />
|
||||
<description>
|
||||
Returns an [Array] containing default values for all of the input ports of the node in the form [code][index0, value0, index1, value1, ...][/code].
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_input_port_default_value" qualifiers="const">
|
||||
<return type="Variant" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Returns the default value of the input [param port].
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_input_port_default_value">
|
||||
<return type="void" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Removes the default value of the input [param port].
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_default_input_values">
|
||||
<return type="void" />
|
||||
<param index="0" name="values" type="Array" />
|
||||
<description>
|
||||
Sets the default input ports values using an [Array] of the form [code][index0, value0, index1, value1, ...][/code]. For example: [code][0, Vector3(0, 0, 0), 1, Vector3(0, 0, 0)][/code].
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_input_port_default_value">
|
||||
<return type="void" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<param index="1" name="value" type="Variant" />
|
||||
<param index="2" name="prev_value" type="Variant" default="null" />
|
||||
<description>
|
||||
Sets the default [param value] for the selected input [param port].
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<members>
|
||||
<member name="linked_parent_graph_frame" type="int" setter="set_frame" getter="get_frame" default="-1">
|
||||
Represents the index of the frame this node is linked to. If set to [code]-1[/code] the node is not linked to any frame.
|
||||
</member>
|
||||
<member name="output_port_for_preview" type="int" setter="set_output_port_for_preview" getter="get_output_port_for_preview" default="-1">
|
||||
Sets the output port index which will be showed for preview. If set to [code]-1[/code] no port will be open for preview.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="PORT_TYPE_SCALAR" value="0" enum="PortType">
|
||||
Floating-point scalar. Translated to [code skip-lint]float[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_SCALAR_INT" value="1" enum="PortType">
|
||||
Integer scalar. Translated to [code skip-lint]int[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_SCALAR_UINT" value="2" enum="PortType">
|
||||
Unsigned integer scalar. Translated to [code skip-lint]uint[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_VECTOR_2D" value="3" enum="PortType">
|
||||
2D vector of floating-point values. Translated to [code skip-lint]vec2[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_VECTOR_3D" value="4" enum="PortType">
|
||||
3D vector of floating-point values. Translated to [code skip-lint]vec3[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_VECTOR_4D" value="5" enum="PortType">
|
||||
4D vector of floating-point values. Translated to [code skip-lint]vec4[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_BOOLEAN" value="6" enum="PortType">
|
||||
Boolean type. Translated to [code skip-lint]bool[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_TRANSFORM" value="7" enum="PortType">
|
||||
Transform type. Translated to [code skip-lint]mat4[/code] type in shader code.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_SAMPLER" value="8" enum="PortType">
|
||||
Sampler type. Translated to reference of sampler uniform in shader code. Can only be used for input ports in non-uniform nodes.
|
||||
</constant>
|
||||
<constant name="PORT_TYPE_MAX" value="9" enum="PortType">
|
||||
Represents the size of the [enum PortType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeBillboard" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A node that controls how the object faces the camera to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
The output port of this node needs to be connected to [code]Model View Matrix[/code] port of [VisualShaderNodeOutput].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="billboard_type" type="int" setter="set_billboard_type" getter="get_billboard_type" enum="VisualShaderNodeBillboard.BillboardType" default="1">
|
||||
Controls how the object faces the camera.
|
||||
</member>
|
||||
<member name="keep_scale" type="bool" setter="set_keep_scale_enabled" getter="is_keep_scale_enabled" default="false">
|
||||
If [code]true[/code], the shader will keep the scale set for the mesh. Otherwise, the scale is lost when billboarding.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="BILLBOARD_TYPE_DISABLED" value="0" enum="BillboardType">
|
||||
Billboarding is disabled and the node does nothing.
|
||||
</constant>
|
||||
<constant name="BILLBOARD_TYPE_ENABLED" value="1" enum="BillboardType">
|
||||
A standard billboarding algorithm is enabled.
|
||||
</constant>
|
||||
<constant name="BILLBOARD_TYPE_FIXED_Y" value="2" enum="BillboardType">
|
||||
A billboarding algorithm to rotate around Y-axis is enabled.
|
||||
</constant>
|
||||
<constant name="BILLBOARD_TYPE_PARTICLES" value="3" enum="BillboardType">
|
||||
A billboarding algorithm designed to use on particles is enabled.
|
||||
</constant>
|
||||
<constant name="BILLBOARD_TYPE_MAX" value="4" enum="BillboardType">
|
||||
Represents the size of the [enum BillboardType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeBooleanConstant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A boolean constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Has only one output port and no inputs.
|
||||
Translated to [code skip-lint]bool[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="bool" setter="set_constant" getter="get_constant" default="false">
|
||||
A boolean constant which represents a state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeBooleanParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A boolean parameter to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform bool[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="bool" setter="set_default_value" getter="get_default_value" default="false">
|
||||
A default value to be assigned within the shader.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
Enables usage of the [member default_value].
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeClamp" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Clamps a value within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Constrains a value to lie between [code]min[/code] and [code]max[/code] values.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeClamp.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_FLOAT" value="0" enum="OpType">
|
||||
A floating-point scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_INT" value="1" enum="OpType">
|
||||
An integer scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_UINT" value="2" enum="OpType">
|
||||
An unsigned integer scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="3" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="4" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="5" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="6" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeColorConstant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Color] constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Has two output ports representing RGB and alpha channels of [Color].
|
||||
Translated to [code]vec3 rgb[/code] and [code]float alpha[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="Color" setter="set_constant" getter="get_constant" default="Color(1, 1, 1, 1)">
|
||||
A [Color] constant which represents a state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeColorFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Color] function to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Accept a [Color] to the input port and transform it according to [member function].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeColorFunc.Function" default="0">
|
||||
A function to be applied to the input color.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_GRAYSCALE" value="0" enum="Function">
|
||||
Converts the color to grayscale using the following formula:
|
||||
[codeblock]
|
||||
vec3 c = input;
|
||||
float max1 = max(c.r, c.g);
|
||||
float max2 = max(max1, c.b);
|
||||
float max3 = max(max1, max2);
|
||||
return vec3(max3, max3, max3);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="FUNC_HSV2RGB" value="1" enum="Function">
|
||||
Converts HSV vector to RGB equivalent.
|
||||
</constant>
|
||||
<constant name="FUNC_RGB2HSV" value="2" enum="Function">
|
||||
Converts RGB vector to HSV equivalent.
|
||||
</constant>
|
||||
<constant name="FUNC_SEPIA" value="3" enum="Function">
|
||||
Applies sepia tone effect using the following formula:
|
||||
[codeblock]
|
||||
vec3 c = input;
|
||||
float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);
|
||||
float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);
|
||||
float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);
|
||||
return vec3(r, g, b);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="FUNC_LINEAR_TO_SRGB" value="4" enum="Function">
|
||||
Converts color from linear encoding to nonlinear sRGB encoding using the following formula:
|
||||
[codeblock]
|
||||
const vec3 a = vec3(0.055f);
|
||||
return mix((vec3(1.0f) + a) * pow(c.rgb, vec3(1.0f / 2.4f)) - a, 12.92f * c.rgb, lessThan(c.rgb, vec3(0.0031308f)));
|
||||
[/codeblock]
|
||||
The Compatibility renderer uses a simpler formula that may produce undefined behavior with negative input values:
|
||||
[codeblock]
|
||||
vec3 c = input;
|
||||
return max(vec3(1.055) * pow(c, vec3(0.416666667)) - vec3(0.055), vec3(0.0));
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="FUNC_SRGB_TO_LINEAR" value="5" enum="Function">
|
||||
Converts color from nonlinear sRGB encoding to linear encoding using the following formula:
|
||||
[codeblock]
|
||||
vec3 c = input;
|
||||
return mix(pow((c.rgb + vec3(0.055)) * (1.0 / (1.0 + 0.055)), vec3(2.4)), c.rgb * (1.0 / 12.92), lessThan(c.rgb, vec3(0.04045)));
|
||||
[/codeblock]
|
||||
The Compatibility renderer uses a simpler formula that behaves poorly with negative input values:
|
||||
[codeblock]
|
||||
vec3 c = input;
|
||||
return c * (c * (c * 0.305306011 + 0.682171111) + 0.012522878);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="6" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,99 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeColorOp" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Color] operator to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Applies [member operator] to two color inputs.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeColorOp.Operator" default="0">
|
||||
An operator to be applied to the inputs.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_SCREEN" value="0" enum="Operator">
|
||||
Produce a screen effect with the following formula:
|
||||
[codeblock]
|
||||
result = vec3(1.0) - (vec3(1.0) - a) * (vec3(1.0) - b);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_DIFFERENCE" value="1" enum="Operator">
|
||||
Produce a difference effect with the following formula:
|
||||
[codeblock]
|
||||
result = abs(a - b);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_DARKEN" value="2" enum="Operator">
|
||||
Produce a darken effect with the following formula:
|
||||
[codeblock]
|
||||
result = min(a, b);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_LIGHTEN" value="3" enum="Operator">
|
||||
Produce a lighten effect with the following formula:
|
||||
[codeblock]
|
||||
result = max(a, b);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_OVERLAY" value="4" enum="Operator">
|
||||
Produce an overlay effect with the following formula:
|
||||
[codeblock]
|
||||
for (int i = 0; i < 3; i++) {
|
||||
float base = a[i];
|
||||
float blend = b[i];
|
||||
if (base < 0.5) {
|
||||
result[i] = 2.0 * base * blend;
|
||||
} else {
|
||||
result[i] = 1.0 - 2.0 * (1.0 - blend) * (1.0 - base);
|
||||
}
|
||||
}
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_DODGE" value="5" enum="Operator">
|
||||
Produce a dodge effect with the following formula:
|
||||
[codeblock]
|
||||
result = a / (vec3(1.0) - b);
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_BURN" value="6" enum="Operator">
|
||||
Produce a burn effect with the following formula:
|
||||
[codeblock]
|
||||
result = vec3(1.0) - (vec3(1.0) - a) / b;
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_SOFT_LIGHT" value="7" enum="Operator">
|
||||
Produce a soft light effect with the following formula:
|
||||
[codeblock]
|
||||
for (int i = 0; i < 3; i++) {
|
||||
float base = a[i];
|
||||
float blend = b[i];
|
||||
if (base < 0.5) {
|
||||
result[i] = base * (blend + 0.5);
|
||||
} else {
|
||||
result[i] = 1.0 - (1.0 - base) * (1.0 - (blend - 0.5));
|
||||
}
|
||||
}
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_HARD_LIGHT" value="8" enum="Operator">
|
||||
Produce a hard light effect with the following formula:
|
||||
[codeblock]
|
||||
for (int i = 0; i < 3; i++) {
|
||||
float base = a[i];
|
||||
float blend = b[i];
|
||||
if (base < 0.5) {
|
||||
result[i] = base * (2.0 * blend);
|
||||
} else {
|
||||
result[i] = 1.0 - (1.0 - base) * (1.0 - 2.0 * (blend - 0.5));
|
||||
}
|
||||
}
|
||||
[/codeblock]
|
||||
</constant>
|
||||
<constant name="OP_MAX" value="9" enum="Operator">
|
||||
Represents the size of the [enum Operator] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeColorParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Color] parameter to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform vec4[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="Color" setter="set_default_value" getter="get_default_value" default="Color(1, 1, 1, 1)">
|
||||
A default value to be assigned within the shader.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
Enables usage of the [member default_value].
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeComment" inherits="VisualShaderNodeFrame" api_type="core" deprecated="This class has no function anymore and only exists for compatibility." xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Only exists for compatibility. Use [VisualShaderNodeFrame] as a replacement.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node was replaced by [VisualShaderNodeFrame] and only exists to preserve compatibility. In the [VisualShader] editor it behaves exactly like [VisualShaderNodeFrame].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="description" type="String" setter="set_description" getter="get_description" default="""">
|
||||
This property only exists to preserve data authored in earlier versions of Godot. It has currently no function.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeCompare" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A comparison function for common types within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Compares [code]a[/code] and [code]b[/code] of [member type] by [member function]. Returns a boolean scalar. Translates to [code]if[/code] instruction in shader code.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="condition" type="int" setter="set_condition" getter="get_condition" enum="VisualShaderNodeCompare.Condition" default="0">
|
||||
Extra condition which is applied if [member type] is set to [constant CTYPE_VECTOR_3D].
|
||||
</member>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeCompare.Function" default="0">
|
||||
A comparison function.
|
||||
</member>
|
||||
<member name="type" type="int" setter="set_comparison_type" getter="get_comparison_type" enum="VisualShaderNodeCompare.ComparisonType" default="0">
|
||||
The type to be used in the comparison.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="CTYPE_SCALAR" value="0" enum="ComparisonType">
|
||||
A floating-point scalar.
|
||||
</constant>
|
||||
<constant name="CTYPE_SCALAR_INT" value="1" enum="ComparisonType">
|
||||
An integer scalar.
|
||||
</constant>
|
||||
<constant name="CTYPE_SCALAR_UINT" value="2" enum="ComparisonType">
|
||||
An unsigned integer scalar.
|
||||
</constant>
|
||||
<constant name="CTYPE_VECTOR_2D" value="3" enum="ComparisonType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="CTYPE_VECTOR_3D" value="4" enum="ComparisonType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="CTYPE_VECTOR_4D" value="5" enum="ComparisonType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="CTYPE_BOOLEAN" value="6" enum="ComparisonType">
|
||||
A boolean type.
|
||||
</constant>
|
||||
<constant name="CTYPE_TRANSFORM" value="7" enum="ComparisonType">
|
||||
A transform ([code]mat4[/code]) type.
|
||||
</constant>
|
||||
<constant name="CTYPE_MAX" value="8" enum="ComparisonType">
|
||||
Represents the size of the [enum ComparisonType] enum.
|
||||
</constant>
|
||||
<constant name="FUNC_EQUAL" value="0" enum="Function">
|
||||
Comparison for equality ([code]a == b[/code]).
|
||||
</constant>
|
||||
<constant name="FUNC_NOT_EQUAL" value="1" enum="Function">
|
||||
Comparison for inequality ([code]a != b[/code]).
|
||||
</constant>
|
||||
<constant name="FUNC_GREATER_THAN" value="2" enum="Function">
|
||||
Comparison for greater than ([code]a > b[/code]). Cannot be used if [member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM].
|
||||
</constant>
|
||||
<constant name="FUNC_GREATER_THAN_EQUAL" value="3" enum="Function">
|
||||
Comparison for greater than or equal ([code]a >= b[/code]). Cannot be used if [member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM].
|
||||
</constant>
|
||||
<constant name="FUNC_LESS_THAN" value="4" enum="Function">
|
||||
Comparison for less than ([code]a < b[/code]). Cannot be used if [member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM].
|
||||
</constant>
|
||||
<constant name="FUNC_LESS_THAN_EQUAL" value="5" enum="Function">
|
||||
Comparison for less than or equal ([code]a <= b[/code]). Cannot be used if [member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM].
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="6" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
<constant name="COND_ALL" value="0" enum="Condition">
|
||||
The result will be [code]true[/code] if all components in the vector satisfy the comparison condition.
|
||||
</constant>
|
||||
<constant name="COND_ANY" value="1" enum="Condition">
|
||||
The result will be [code]true[/code] if any component in the vector satisfies the comparison condition.
|
||||
</constant>
|
||||
<constant name="COND_MAX" value="2" enum="Condition">
|
||||
Represents the size of the [enum Condition] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeConstant" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A base type for the constants within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
This is an abstract class. See the derived types for descriptions of the possible values.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeCubemap" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Cubemap] sampling node to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]texture(cubemap, vec3)[/code] in the shader language. Returns a color vector and alpha channel as scalar.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="cube_map" type="TextureLayered" setter="set_cube_map" getter="get_cube_map">
|
||||
The [Cubemap] texture to sample when using [constant SOURCE_TEXTURE] as [member source].
|
||||
</member>
|
||||
<member name="source" type="int" setter="set_source" getter="get_source" enum="VisualShaderNodeCubemap.Source" default="0">
|
||||
Defines which source should be used for the sampling.
|
||||
</member>
|
||||
<member name="texture_type" type="int" setter="set_texture_type" getter="get_texture_type" enum="VisualShaderNodeCubemap.TextureType" default="0">
|
||||
Defines the type of data provided by the source texture.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="SOURCE_TEXTURE" value="0" enum="Source">
|
||||
Use the [Cubemap] set via [member cube_map]. If this is set to [member source], the [code]samplerCube[/code] port is ignored.
|
||||
</constant>
|
||||
<constant name="SOURCE_PORT" value="1" enum="Source">
|
||||
Use the [Cubemap] sampler reference passed via the [code]samplerCube[/code] port. If this is set to [member source], the [member cube_map] texture is ignored.
|
||||
</constant>
|
||||
<constant name="SOURCE_MAX" value="2" enum="Source">
|
||||
Represents the size of the [enum Source] enum.
|
||||
</constant>
|
||||
<constant name="TYPE_DATA" value="0" enum="TextureType">
|
||||
No hints are added to the uniform declaration.
|
||||
</constant>
|
||||
<constant name="TYPE_COLOR" value="1" enum="TextureType">
|
||||
Adds [code]source_color[/code] as hint to the uniform declaration for proper conversion from nonlinear sRGB encoding to linear encoding.
|
||||
</constant>
|
||||
<constant name="TYPE_NORMAL_MAP" value="2" enum="TextureType">
|
||||
Adds [code]hint_normal[/code] as hint to the uniform declaration, which internally converts the texture for proper usage as normal map.
|
||||
</constant>
|
||||
<constant name="TYPE_MAX" value="3" enum="TextureType">
|
||||
Represents the size of the [enum TextureType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeCubemapParameter" inherits="VisualShaderNodeTextureParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Cubemap] parameter node to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform samplerCube[/code] in the shader language. The output value can be used as port for [VisualShaderNodeCubemap].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeCurveTexture" inherits="VisualShaderNodeResizableBase" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a [CurveTexture] lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Comes with a built-in editor for texture's curves.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="texture" type="CurveTexture" setter="set_texture" getter="get_texture">
|
||||
The source texture.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeCurveXYZTexture" inherits="VisualShaderNodeResizableBase" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a [CurveXYZTexture] lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Comes with a built-in editor for texture's curves.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="texture" type="CurveXYZTexture" setter="set_texture" getter="get_texture">
|
||||
The source texture.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,199 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeCustom" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Virtual class to define custom [VisualShaderNode]s for use in the Visual Shader Editor.
|
||||
</brief_description>
|
||||
<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 [code]@tool[/code] annotation and provide a [code]class_name[/code] for your custom script. For example:
|
||||
[codeblock]
|
||||
@tool
|
||||
extends VisualShaderNodeCustom
|
||||
class_name VisualShaderNodeNoise
|
||||
[/codeblock]
|
||||
</description>
|
||||
<tutorials>
|
||||
<link title="Visual Shader plugins">$DOCS_URL/tutorials/plugins/editor/visual_shader_plugins.html</link>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="_get_category" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<description>
|
||||
Override this method to define the path to the associated custom node in the Visual Shader Editor's members dialog. The path may look like [code]"MyGame/MyFunctions/Noise"[/code].
|
||||
Defining this method is [b]optional[/b]. If not overridden, the node will be filed under the "Addons" category.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_code" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<param index="0" name="input_vars" type="String[]" />
|
||||
<param index="1" name="output_vars" type="String[]" />
|
||||
<param index="2" name="mode" type="int" enum="Shader.Mode" />
|
||||
<param 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 [param input_vars] and [param output_vars] 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.
|
||||
The output ports can be assigned values in the shader code. For example, [code]return output_vars[0] + " = " + input_vars[0] + ";"[/code].
|
||||
You can customize the generated code based on the shader [param mode] and/or [param type].
|
||||
Defining this method is [b]required[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_default_input_port" qualifiers="virtual const">
|
||||
<return type="int" />
|
||||
<param index="0" name="type" type="int" enum="VisualShaderNode.PortType" />
|
||||
<description>
|
||||
Override this method to define the input port which should be connected by default when this node is created as a result of dragging a connection from an existing node to the empty space on the graph.
|
||||
Defining this method is [b]optional[/b]. If not overridden, the connection will be created to the first valid port.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_description" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<description>
|
||||
Override this method to define the description of the associated custom node in the Visual Shader Editor's members dialog.
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_func_code" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<param index="0" name="mode" type="int" enum="Shader.Mode" />
|
||||
<param index="1" name="type" type="int" enum="VisualShader.Type" />
|
||||
<description>
|
||||
Override this method to add a shader code to the beginning of each shader function (once). 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).
|
||||
If there are multiple custom nodes of different types which use this feature the order of each insertion is undefined.
|
||||
You can customize the generated code based on the shader [param mode] and/or [param type].
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_global_code" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<param 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.
|
||||
You can customize the generated code based on the shader [param mode].
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_input_port_count" qualifiers="virtual const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Override this method to define the number of input ports of the associated custom node.
|
||||
Defining this method is [b]required[/b]. If not overridden, the node has no input ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_input_port_default_value" qualifiers="virtual const">
|
||||
<return type="Variant" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Override this method to define the default value for the specified input port. Prefer use this over [method VisualShaderNode.set_input_port_default_value].
|
||||
Defining this method is [b]required[/b]. If not overridden, the node has no default values for their input ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_input_port_name" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Override this method to define the names of input ports of the associated custom node. The names are used both for the input slots in the editor and as identifiers in the shader code, and are passed in the [code]input_vars[/code] array in [method _get_code].
|
||||
Defining this method is [b]optional[/b], but recommended. If not overridden, input ports are named as [code]"in" + str(port)[/code].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_input_port_type" qualifiers="virtual const">
|
||||
<return type="int" enum="VisualShaderNode.PortType" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Override this method to define the returned type of each input port of the associated custom node.
|
||||
Defining this method is [b]optional[/b], but recommended. If not overridden, input ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] type.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_name" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<description>
|
||||
Override this method to define the name of the associated custom node in the Visual Shader Editor's members dialog and graph.
|
||||
Defining this method is [b]optional[/b], but recommended. If not overridden, the node will be named as "Unnamed".
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_output_port_count" qualifiers="virtual const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Override this method to define the number of output ports of the associated custom node.
|
||||
Defining this method is [b]required[/b]. If not overridden, the node has no output ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_output_port_name" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Override this method to define the names of output ports of the associated custom node. The names are used both for the output slots in the editor and as identifiers in the shader code, and are passed in the [code]output_vars[/code] array in [method _get_code].
|
||||
Defining this method is [b]optional[/b], but recommended. If not overridden, output ports are named as [code]"out" + str(port)[/code].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_output_port_type" qualifiers="virtual const">
|
||||
<return type="int" enum="VisualShaderNode.PortType" />
|
||||
<param index="0" name="port" type="int" />
|
||||
<description>
|
||||
Override this method to define the returned type of each output port of the associated custom node.
|
||||
Defining this method is [b]optional[/b], but recommended. If not overridden, output ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] type.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_property_count" qualifiers="virtual const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Override this method to define the number of the properties.
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_property_default_index" qualifiers="virtual const">
|
||||
<return type="int" />
|
||||
<param index="0" name="index" type="int" />
|
||||
<description>
|
||||
Override this method to define the default index of the property of the associated custom node.
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_property_name" qualifiers="virtual const">
|
||||
<return type="String" />
|
||||
<param index="0" name="index" type="int" />
|
||||
<description>
|
||||
Override this method to define the names of the property of the associated custom node.
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_property_options" qualifiers="virtual const">
|
||||
<return type="PackedStringArray" />
|
||||
<param index="0" name="index" type="int" />
|
||||
<description>
|
||||
Override this method to define the options inside the drop-down list property of the associated custom node.
|
||||
Defining this method is [b]optional[/b].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_get_return_icon_type" qualifiers="virtual const">
|
||||
<return type="int" enum="VisualShaderNode.PortType" />
|
||||
<description>
|
||||
Override this method to define the return icon of the associated custom node in the Visual Shader Editor's members dialog.
|
||||
Defining this method is [b]optional[/b]. If not overridden, no return icon is shown.
|
||||
</description>
|
||||
</method>
|
||||
<method name="_is_available" qualifiers="virtual const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="mode" type="int" enum="Shader.Mode" />
|
||||
<param index="1" name="type" type="int" enum="VisualShader.Type" />
|
||||
<description>
|
||||
Override this method to prevent the node to be visible in the member dialog for the certain [param mode] and/or [param type].
|
||||
Defining this method is [b]optional[/b]. If not overridden, it's [code]true[/code].
|
||||
</description>
|
||||
</method>
|
||||
<method name="_is_highend" qualifiers="virtual const">
|
||||
<return type="bool" />
|
||||
<description>
|
||||
Override this method to enable the high-end mark in the Visual Shader Editor's members dialog. This should return [code]true[/code] for nodes that only work when using the Forward+ and Mobile renderers.
|
||||
Defining this method is [b]optional[/b]. If not overridden, it's [code]false[/code], which indicates this node works with all renderers (including Compatibility).
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_option_index" qualifiers="const">
|
||||
<return type="int" />
|
||||
<param index="0" name="option" type="int" />
|
||||
<description>
|
||||
Returns the selected index of the drop-down list option within a graph. You may use this function to define the specific behavior in the [method _get_code] or [method _get_global_code].
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeDerivativeFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Calculates a derivative within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node is only available in [code]Fragment[/code] and [code]Light[/code] visual shaders.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeDerivativeFunc.Function" default="0">
|
||||
A derivative function type.
|
||||
</member>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeDerivativeFunc.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
<member name="precision" type="int" setter="set_precision" getter="get_precision" enum="VisualShaderNodeDerivativeFunc.Precision" default="0">
|
||||
Sets the level of precision to use for the derivative function. When using the Compatibility renderer, this setting has no effect.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="2" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="3" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="4" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
<constant name="FUNC_SUM" value="0" enum="Function">
|
||||
Sum of absolute derivative in [code]x[/code] and [code]y[/code].
|
||||
</constant>
|
||||
<constant name="FUNC_X" value="1" enum="Function">
|
||||
Derivative in [code]x[/code] using local differencing.
|
||||
</constant>
|
||||
<constant name="FUNC_Y" value="2" enum="Function">
|
||||
Derivative in [code]y[/code] using local differencing.
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="3" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
<constant name="PRECISION_NONE" value="0" enum="Precision">
|
||||
No precision is specified, the GPU driver is allowed to use whatever level of precision it chooses. This is the default option and is equivalent to using [code]dFdx()[/code] or [code]dFdy()[/code] in text shaders.
|
||||
</constant>
|
||||
<constant name="PRECISION_COARSE" value="1" enum="Precision">
|
||||
The derivative will be calculated using the current fragment's neighbors (which may not include the current fragment). This tends to be faster than using [constant PRECISION_FINE], but may not be suitable when more precision is needed. This is equivalent to using [code]dFdxCoarse()[/code] or [code]dFdyCoarse()[/code] in text shaders.
|
||||
</constant>
|
||||
<constant name="PRECISION_FINE" value="2" enum="Precision">
|
||||
The derivative will be calculated using the current fragment and its immediate neighbors. This tends to be slower than using [constant PRECISION_COARSE], but may be necessary when more precision is needed. This is equivalent to using [code]dFdxFine()[/code] or [code]dFdyFine()[/code] in text shaders.
|
||||
</constant>
|
||||
<constant name="PRECISION_MAX" value="3" enum="Precision">
|
||||
Represents the size of the [enum Precision] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeDeterminant" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Calculates the determinant of a [Transform3D] within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]determinant(x)[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeDistanceFade" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node representing distance fade effect.
|
||||
</brief_description>
|
||||
<description>
|
||||
The distance fade effect fades out each pixel based on its distance to another object.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeDotProduct" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Calculates a dot product of two vectors within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]dot(a, b)[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeExpression" inherits="VisualShaderNodeGroupBase" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A custom visual shader graph expression written in Godot Shading Language.
|
||||
</brief_description>
|
||||
<description>
|
||||
Custom Godot Shading Language expression, with a custom number of input and output ports.
|
||||
The provided code is directly injected into the graph's matching shader function ([code]vertex[/code], [code]fragment[/code], or [code]light[/code]), so it cannot be used to declare functions, varyings, uniforms, or global constants. See [VisualShaderNodeGlobalExpression] for such global definitions.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="expression" type="String" setter="set_expression" getter="get_expression" default="""">
|
||||
An expression in Godot Shading Language, which will be injected at the start of the graph's matching shader function ([code]vertex[/code], [code]fragment[/code], or [code]light[/code]), and thus cannot be used to declare functions, varyings, uniforms, or global constants.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFaceForward" inherits="VisualShaderNodeVectorBase" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Returns the vector that points in the same direction as a reference vector within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]faceforward(N, I, Nref)[/code] in the shader language. The function has three vector parameters: [code]N[/code], the vector to orient, [code]I[/code], the incident vector, and [code]Nref[/code], the reference vector. If the dot product of [code]I[/code] and [code]Nref[/code] is smaller than zero the return value is [code]N[/code]. Otherwise, [code]-N[/code] is returned.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFloatConstant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A scalar floating-point constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code skip-lint]float[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="float" setter="set_constant" getter="get_constant" default="0.0">
|
||||
A floating-point constant which represents a state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,117 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFloatFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A scalar floating-point function to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Accept a floating-point scalar ([code]x[/code]) to the input port and transform it according to [member function].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeFloatFunc.Function" default="13">
|
||||
A function to be applied to the scalar.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_SIN" value="0" enum="Function">
|
||||
Returns the sine of the parameter. Translates to [code]sin(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_COS" value="1" enum="Function">
|
||||
Returns the cosine of the parameter. Translates to [code]cos(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_TAN" value="2" enum="Function">
|
||||
Returns the tangent of the parameter. Translates to [code]tan(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ASIN" value="3" enum="Function">
|
||||
Returns the arc-sine of the parameter. Translates to [code]asin(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ACOS" value="4" enum="Function">
|
||||
Returns the arc-cosine of the parameter. Translates to [code]acos(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ATAN" value="5" enum="Function">
|
||||
Returns the arc-tangent of the parameter. Translates to [code]atan(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_SINH" value="6" enum="Function">
|
||||
Returns the hyperbolic sine of the parameter. Translates to [code]sinh(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_COSH" value="7" enum="Function">
|
||||
Returns the hyperbolic cosine of the parameter. Translates to [code]cosh(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_TANH" value="8" enum="Function">
|
||||
Returns the hyperbolic tangent of the parameter. Translates to [code]tanh(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_LOG" value="9" enum="Function">
|
||||
Returns the natural logarithm of the parameter. Translates to [code]log(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_EXP" value="10" enum="Function">
|
||||
Returns the natural exponentiation of the parameter. Translates to [code]exp(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_SQRT" value="11" enum="Function">
|
||||
Returns the square root of the parameter. Translates to [code]sqrt(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ABS" value="12" enum="Function">
|
||||
Returns the absolute value of the parameter. Translates to [code]abs(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_SIGN" value="13" enum="Function">
|
||||
Extracts the sign of the parameter. Translates to [code]sign(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_FLOOR" value="14" enum="Function">
|
||||
Finds the nearest integer less than or equal to the parameter. Translates to [code]floor(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ROUND" value="15" enum="Function">
|
||||
Finds the nearest integer to the parameter. Translates to [code]round(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_CEIL" value="16" enum="Function">
|
||||
Finds the nearest integer that is greater than or equal to the parameter. Translates to [code]ceil(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_FRACT" value="17" enum="Function">
|
||||
Computes the fractional part of the argument. Translates to [code]fract(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_SATURATE" value="18" enum="Function">
|
||||
Clamps the value between [code]0.0[/code] and [code]1.0[/code] using [code]min(max(x, 0.0), 1.0)[/code].
|
||||
</constant>
|
||||
<constant name="FUNC_NEGATE" value="19" enum="Function">
|
||||
Negates the [code]x[/code] using [code]-(x)[/code].
|
||||
</constant>
|
||||
<constant name="FUNC_ACOSH" value="20" enum="Function">
|
||||
Returns the arc-hyperbolic-cosine of the parameter. Translates to [code]acosh(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ASINH" value="21" enum="Function">
|
||||
Returns the arc-hyperbolic-sine of the parameter. Translates to [code]asinh(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ATANH" value="22" enum="Function">
|
||||
Returns the arc-hyperbolic-tangent of the parameter. Translates to [code]atanh(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_DEGREES" value="23" enum="Function">
|
||||
Convert a quantity in radians to degrees. Translates to [code]degrees(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_EXP2" value="24" enum="Function">
|
||||
Returns 2 raised by the power of the parameter. Translates to [code]exp2(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_INVERSE_SQRT" value="25" enum="Function">
|
||||
Returns the inverse of the square root of the parameter. Translates to [code]inversesqrt(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_LOG2" value="26" enum="Function">
|
||||
Returns the base 2 logarithm of the parameter. Translates to [code]log2(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_RADIANS" value="27" enum="Function">
|
||||
Convert a quantity in degrees to radians. Translates to [code]radians(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_RECIPROCAL" value="28" enum="Function">
|
||||
Finds reciprocal value of dividing 1 by [code]x[/code] (i.e. [code]1 / x[/code]).
|
||||
</constant>
|
||||
<constant name="FUNC_ROUNDEVEN" value="29" enum="Function">
|
||||
Finds the nearest even integer to the parameter. Translates to [code]roundEven(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_TRUNC" value="30" enum="Function">
|
||||
Returns a value equal to the nearest integer to [code]x[/code] whose absolute value is not larger than the absolute value of [code]x[/code]. Translates to [code]trunc(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_ONEMINUS" value="31" enum="Function">
|
||||
Subtracts scalar [code]x[/code] from 1 (i.e. [code]1 - x[/code]).
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="32" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFloatOp" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A floating-point scalar operator to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Applies [member operator] to two floating-point inputs: [code]a[/code] and [code]b[/code].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeFloatOp.Operator" default="0">
|
||||
An operator to be applied to the inputs.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_ADD" value="0" enum="Operator">
|
||||
Sums two numbers using [code]a + b[/code].
|
||||
</constant>
|
||||
<constant name="OP_SUB" value="1" enum="Operator">
|
||||
Subtracts two numbers using [code]a - b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MUL" value="2" enum="Operator">
|
||||
Multiplies two numbers using [code]a * b[/code].
|
||||
</constant>
|
||||
<constant name="OP_DIV" value="3" enum="Operator">
|
||||
Divides two numbers using [code]a / b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MOD" value="4" enum="Operator">
|
||||
Calculates the remainder of two numbers. Translates to [code]mod(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_POW" value="5" enum="Operator">
|
||||
Raises the [code]a[/code] to the power of [code]b[/code]. Translates to [code]pow(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_MAX" value="6" enum="Operator">
|
||||
Returns the greater of two numbers. Translates to [code]max(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_MIN" value="7" enum="Operator">
|
||||
Returns the lesser of two numbers. Translates to [code]min(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_ATAN2" value="8" enum="Operator">
|
||||
Returns the arc-tangent of the parameters. Translates to [code]atan(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_STEP" value="9" enum="Operator">
|
||||
Generates a step function by comparing [code]b[/code](x) to [code]a[/code](edge). Returns 0.0 if [code]x[/code] is smaller than [code]edge[/code] and otherwise 1.0. Translates to [code]step(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_ENUM_SIZE" value="10" enum="Operator">
|
||||
Represents the size of the [enum Operator] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFloatParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A scalar float parameter to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform float[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="float" setter="set_default_value" getter="get_default_value" default="0.0">
|
||||
A default value to be assigned within the shader.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
Enables usage of the [member default_value].
|
||||
</member>
|
||||
<member name="hint" type="int" setter="set_hint" getter="get_hint" enum="VisualShaderNodeFloatParameter.Hint" default="0">
|
||||
A hint applied to the uniform, which controls the values it can take when set through the Inspector.
|
||||
</member>
|
||||
<member name="max" type="float" setter="set_max" getter="get_max" default="1.0">
|
||||
Minimum value for range hints. Used if [member hint] is set to [constant HINT_RANGE] or [constant HINT_RANGE_STEP].
|
||||
</member>
|
||||
<member name="min" type="float" setter="set_min" getter="get_min" default="0.0">
|
||||
Maximum value for range hints. Used if [member hint] is set to [constant HINT_RANGE] or [constant HINT_RANGE_STEP].
|
||||
</member>
|
||||
<member name="step" type="float" setter="set_step" getter="get_step" default="0.1">
|
||||
Step (increment) value for the range hint with step. Used if [member hint] is set to [constant HINT_RANGE_STEP].
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="HINT_NONE" value="0" enum="Hint">
|
||||
No hint used.
|
||||
</constant>
|
||||
<constant name="HINT_RANGE" value="1" enum="Hint">
|
||||
A range hint for scalar value, which limits possible input values between [member min] and [member max]. Translated to [code]hint_range(min, max)[/code] in shader code.
|
||||
</constant>
|
||||
<constant name="HINT_RANGE_STEP" value="2" enum="Hint">
|
||||
A range hint for scalar value with step, which limits possible input values between [member min] and [member max], with a step (increment) of [member step]). Translated to [code]hint_range(min, max, step)[/code] in shader code.
|
||||
</constant>
|
||||
<constant name="HINT_MAX" value="3" enum="Hint">
|
||||
Represents the size of the [enum Hint] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFrame" inherits="VisualShaderNodeResizableBase" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A frame other visual shader nodes can be attached to for better organization.
|
||||
</brief_description>
|
||||
<description>
|
||||
A rectangular frame that can be used to group visual shader nodes together to improve organization.
|
||||
Nodes attached to the frame will move with it when it is dragged and it can automatically resize to enclose all attached nodes.
|
||||
Its title, description and color can be customized.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="add_attached_node">
|
||||
<return type="void" />
|
||||
<param index="0" name="node" type="int" />
|
||||
<description>
|
||||
Adds a node to the list of nodes attached to the frame. Should not be called directly, use the [method VisualShader.attach_node_to_frame] method instead.
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_attached_node">
|
||||
<return type="void" />
|
||||
<param index="0" name="node" type="int" />
|
||||
<description>
|
||||
Removes a node from the list of nodes attached to the frame. Should not be called directly, use the [method VisualShader.detach_node_from_frame] method instead.
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<members>
|
||||
<member name="attached_nodes" type="PackedInt32Array" setter="set_attached_nodes" getter="get_attached_nodes" default="PackedInt32Array()">
|
||||
The list of nodes attached to the frame.
|
||||
</member>
|
||||
<member name="autoshrink" type="bool" setter="set_autoshrink_enabled" getter="is_autoshrink_enabled" default="true">
|
||||
If [code]true[/code], the frame will automatically resize to enclose all attached nodes.
|
||||
</member>
|
||||
<member name="tint_color" type="Color" setter="set_tint_color" getter="get_tint_color" default="Color(0.3, 0.3, 0.3, 0.75)">
|
||||
The color of the frame when [member tint_color_enabled] is [code]true[/code].
|
||||
</member>
|
||||
<member name="tint_color_enabled" type="bool" setter="set_tint_color_enabled" getter="is_tint_color_enabled" default="false">
|
||||
If [code]true[/code], the frame will be tinted with the color specified in [member tint_color].
|
||||
</member>
|
||||
<member name="title" type="String" setter="set_title" getter="get_title" default=""Title"">
|
||||
The title of the node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeFresnel" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A Fresnel effect to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Returns falloff based on the dot product of surface normal and view direction of camera (pass associated inputs to it).
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeGlobalExpression" inherits="VisualShaderNodeExpression" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A custom global visual shader graph expression written in Godot Shading Language.
|
||||
</brief_description>
|
||||
<description>
|
||||
Custom Godot Shader Language expression, which is placed on top of the generated shader. You can place various function definitions inside to call later in [VisualShaderNodeExpression]s (which are injected in the main shader functions). You can also declare varyings, uniforms and global constants.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,160 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeGroupBase" inherits="VisualShaderNodeResizableBase" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Base class for a family of nodes with variable number of input and output ports within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Currently, has no direct usage, use the derived classes instead.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="add_input_port">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<param index="1" name="type" type="int" />
|
||||
<param index="2" name="name" type="String" />
|
||||
<description>
|
||||
Adds an input port with the specified [param type] (see [enum VisualShaderNode.PortType]) and [param name].
|
||||
</description>
|
||||
</method>
|
||||
<method name="add_output_port">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<param index="1" name="type" type="int" />
|
||||
<param index="2" name="name" type="String" />
|
||||
<description>
|
||||
Adds an output port with the specified [param type] (see [enum VisualShaderNode.PortType]) and [param name].
|
||||
</description>
|
||||
</method>
|
||||
<method name="clear_input_ports">
|
||||
<return type="void" />
|
||||
<description>
|
||||
Removes all previously specified input ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="clear_output_ports">
|
||||
<return type="void" />
|
||||
<description>
|
||||
Removes all previously specified output ports.
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_free_input_port_id" qualifiers="const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Returns a free input port ID which can be used in [method add_input_port].
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_free_output_port_id" qualifiers="const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Returns a free output port ID which can be used in [method add_output_port].
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_input_port_count" qualifiers="const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Returns the number of input ports in use. Alternative for [method get_free_input_port_id].
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_inputs" qualifiers="const">
|
||||
<return type="String" />
|
||||
<description>
|
||||
Returns a [String] description of the input ports as a colon-separated list using the format [code]id,type,name;[/code] (see [method add_input_port]).
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_output_port_count" qualifiers="const">
|
||||
<return type="int" />
|
||||
<description>
|
||||
Returns the number of output ports in use. Alternative for [method get_free_output_port_id].
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_outputs" qualifiers="const">
|
||||
<return type="String" />
|
||||
<description>
|
||||
Returns a [String] description of the output ports as a colon-separated list using the format [code]id,type,name;[/code] (see [method add_output_port]).
|
||||
</description>
|
||||
</method>
|
||||
<method name="has_input_port" qualifiers="const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<description>
|
||||
Returns [code]true[/code] if the specified input port exists.
|
||||
</description>
|
||||
</method>
|
||||
<method name="has_output_port" qualifiers="const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<description>
|
||||
Returns [code]true[/code] if the specified output port exists.
|
||||
</description>
|
||||
</method>
|
||||
<method name="is_valid_port_name" qualifiers="const">
|
||||
<return type="bool" />
|
||||
<param index="0" name="name" type="String" />
|
||||
<description>
|
||||
Returns [code]true[/code] if the specified port name does not override an existed port name and is valid within the shader.
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_input_port">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<description>
|
||||
Removes the specified input port.
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_output_port">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<description>
|
||||
Removes the specified output port.
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_input_port_name">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<param index="1" name="name" type="String" />
|
||||
<description>
|
||||
Renames the specified input port.
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_input_port_type">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<param index="1" name="type" type="int" />
|
||||
<description>
|
||||
Sets the specified input port's type (see [enum VisualShaderNode.PortType]).
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_inputs">
|
||||
<return type="void" />
|
||||
<param index="0" name="inputs" type="String" />
|
||||
<description>
|
||||
Defines all input ports using a [String] formatted as a colon-separated list: [code]id,type,name;[/code] (see [method add_input_port]).
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_output_port_name">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<param index="1" name="name" type="String" />
|
||||
<description>
|
||||
Renames the specified output port.
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_output_port_type">
|
||||
<return type="void" />
|
||||
<param index="0" name="id" type="int" />
|
||||
<param index="1" name="type" type="int" />
|
||||
<description>
|
||||
Sets the specified output port's type (see [enum VisualShaderNode.PortType]).
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_outputs">
|
||||
<return type="void" />
|
||||
<param index="0" name="outputs" type="String" />
|
||||
<description>
|
||||
Defines all output ports using a [String] formatted as a colon-separated list: [code]id,type,name;[/code] (see [method add_output_port]).
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeIf" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Outputs a 3D vector based on the result of a floating-point comparison within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
This visual shader node has six input ports:
|
||||
- Port [b]1[/b] and [b]2[/b] provide the two floating-point numbers [code]a[/code] and [code]b[/code] that will be compared.
|
||||
- Port [b]3[/b] is the tolerance, which allows similar floating-point numbers to be considered equal.
|
||||
- Ports [b]4[/b], [b]5[/b], and [b]6[/b] are the possible outputs, returned if [code]a == b[/code], [code]a > b[/code], or [code]a < b[/code] respectively.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeInput" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Represents the input shader parameter within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Gives access to input variables (built-ins) available for the shader. See the shading reference for the list of available built-ins for each shader type (check [code]Tutorials[/code] section for link).
|
||||
</description>
|
||||
<tutorials>
|
||||
<link title="Shading reference index">$DOCS_URL/tutorials/shaders/shader_reference/index.html</link>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="get_input_real_name" qualifiers="const">
|
||||
<return type="String" />
|
||||
<description>
|
||||
Returns a translated name of the current constant in the Godot Shader Language. E.g. [code]"ALBEDO"[/code] if the [member input_name] equal to [code]"albedo"[/code].
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<members>
|
||||
<member name="input_name" type="String" setter="set_input_name" getter="get_input_name" default=""[None]"">
|
||||
One of the several input constants in lower-case style like: "vertex" ([code]VERTEX[/code]) or "point_size" ([code]POINT_SIZE[/code]).
|
||||
</member>
|
||||
</members>
|
||||
<signals>
|
||||
<signal name="input_type_changed">
|
||||
<description>
|
||||
Emitted when input is changed via [member input_name].
|
||||
</description>
|
||||
</signal>
|
||||
</signals>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeIntConstant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A scalar integer constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code skip-lint]int[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="int" setter="set_constant" getter="get_constant" default="0">
|
||||
An integer constant which represents a state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeIntFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A scalar integer function to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Accept an integer scalar ([code]x[/code]) to the input port and transform it according to [member function].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeIntFunc.Function" default="2">
|
||||
A function to be applied to the scalar.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_ABS" value="0" enum="Function">
|
||||
Returns the absolute value of the parameter. Translates to [code]abs(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_NEGATE" value="1" enum="Function">
|
||||
Negates the [code]x[/code] using [code]-(x)[/code].
|
||||
</constant>
|
||||
<constant name="FUNC_SIGN" value="2" enum="Function">
|
||||
Extracts the sign of the parameter. Translates to [code]sign(x)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_BITWISE_NOT" value="3" enum="Function">
|
||||
Returns the result of bitwise [code]NOT[/code] operation on the integer. Translates to [code]~a[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="4" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeIntOp" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
An integer scalar operator to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Applies [member operator] to two integer inputs: [code]a[/code] and [code]b[/code].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeIntOp.Operator" default="0">
|
||||
An operator to be applied to the inputs.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_ADD" value="0" enum="Operator">
|
||||
Sums two numbers using [code]a + b[/code].
|
||||
</constant>
|
||||
<constant name="OP_SUB" value="1" enum="Operator">
|
||||
Subtracts two numbers using [code]a - b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MUL" value="2" enum="Operator">
|
||||
Multiplies two numbers using [code]a * b[/code].
|
||||
</constant>
|
||||
<constant name="OP_DIV" value="3" enum="Operator">
|
||||
Divides two numbers using [code]a / b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MOD" value="4" enum="Operator">
|
||||
Calculates the remainder of two numbers using [code]a % b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MAX" value="5" enum="Operator">
|
||||
Returns the greater of two numbers. Translates to [code]max(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_MIN" value="6" enum="Operator">
|
||||
Returns the lesser of two numbers. Translates to [code]max(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_AND" value="7" enum="Operator">
|
||||
Returns the result of bitwise [code]AND[/code] operation on the integer. Translates to [code]a & b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_OR" value="8" enum="Operator">
|
||||
Returns the result of bitwise [code]OR[/code] operation for two integers. Translates to [code]a | b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_XOR" value="9" enum="Operator">
|
||||
Returns the result of bitwise [code]XOR[/code] operation for two integers. Translates to [code]a ^ b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_LEFT_SHIFT" value="10" enum="Operator">
|
||||
Returns the result of bitwise left shift operation on the integer. Translates to [code]a << b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_RIGHT_SHIFT" value="11" enum="Operator">
|
||||
Returns the result of bitwise right shift operation on the integer. Translates to [code]a >> b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_ENUM_SIZE" value="12" enum="Operator">
|
||||
Represents the size of the [enum Operator] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeIntParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node for shader parameter (uniform) of type [int].
|
||||
</brief_description>
|
||||
<description>
|
||||
A [VisualShaderNodeParameter] of type [int]. Offers additional customization for range of accepted values.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="int" setter="set_default_value" getter="get_default_value" default="0">
|
||||
Default value of this parameter, which will be used if not set externally. [member default_value_enabled] must be enabled; defaults to [code]0[/code] otherwise.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
If [code]true[/code], the node will have a custom default value.
|
||||
</member>
|
||||
<member name="enum_names" type="PackedStringArray" setter="set_enum_names" getter="get_enum_names" default="PackedStringArray()">
|
||||
The names used for the enum select in the editor. [member hint] must be [constant HINT_ENUM] for this to take effect.
|
||||
</member>
|
||||
<member name="hint" type="int" setter="set_hint" getter="get_hint" enum="VisualShaderNodeIntParameter.Hint" default="0">
|
||||
Range hint of this node. Use it to customize valid parameter range.
|
||||
</member>
|
||||
<member name="max" type="int" setter="set_max" getter="get_max" default="100">
|
||||
The maximum value this parameter can take. [member hint] must be either [constant HINT_RANGE] or [constant HINT_RANGE_STEP] for this to take effect.
|
||||
</member>
|
||||
<member name="min" type="int" setter="set_min" getter="get_min" default="0">
|
||||
The minimum value this parameter can take. [member hint] must be either [constant HINT_RANGE] or [constant HINT_RANGE_STEP] for this to take effect.
|
||||
</member>
|
||||
<member name="step" type="int" setter="set_step" getter="get_step" default="1">
|
||||
The step between parameter's values. Forces the parameter to be a multiple of the given value. [member hint] must be [constant HINT_RANGE_STEP] for this to take effect.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="HINT_NONE" value="0" enum="Hint">
|
||||
The parameter will not constrain its value.
|
||||
</constant>
|
||||
<constant name="HINT_RANGE" value="1" enum="Hint">
|
||||
The parameter's value must be within the specified [member min]/[member max] range.
|
||||
</constant>
|
||||
<constant name="HINT_RANGE_STEP" value="2" enum="Hint">
|
||||
The parameter's value must be within the specified range, with the given [member step] between values.
|
||||
</constant>
|
||||
<constant name="HINT_ENUM" value="3" enum="Hint">
|
||||
The parameter uses an enum to associate preset values to names in the editor.
|
||||
</constant>
|
||||
<constant name="HINT_MAX" value="4" enum="Hint">
|
||||
Represents the size of the [enum Hint] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeIs" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A boolean comparison operator to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Returns the boolean result of the comparison between [code]INF[/code] or [code]NaN[/code] and a scalar parameter.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeIs.Function" default="0">
|
||||
The comparison function.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_IS_INF" value="0" enum="Function">
|
||||
Comparison with [code]INF[/code] (Infinity).
|
||||
</constant>
|
||||
<constant name="FUNC_IS_NAN" value="1" enum="Function">
|
||||
Comparison with [code]NaN[/code] (Not a Number; indicates invalid numeric results, such as division by zero).
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="2" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeLinearSceneDepth" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that returns the depth value of the DEPTH_TEXTURE node in a linear space.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node can be used in fragment shaders.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeMix" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Linearly interpolates between two values within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]mix(a, b, weight)[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeMix.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D_SCALAR" value="2" enum="OpType">
|
||||
The [code]a[/code] and [code]b[/code] ports use a 2D vector type. The [code]weight[/code] port uses a scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="3" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D_SCALAR" value="4" enum="OpType">
|
||||
The [code]a[/code] and [code]b[/code] ports use a 3D vector type. The [code]weight[/code] port uses a scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="5" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D_SCALAR" value="6" enum="OpType">
|
||||
The [code]a[/code] and [code]b[/code] ports use a 4D vector type. The [code]weight[/code] port uses a scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="7" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeMultiplyAdd" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a fused multiply-add operation within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Uses three operands to compute [code](a * b + c)[/code] expression.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeMultiplyAdd.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="2" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="3" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="4" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeOuterProduct" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Calculates an outer product of two vectors within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
[code]OuterProduct[/code] treats the first parameter [code]c[/code] as a column vector (matrix with one column) and the second parameter [code]r[/code] as a row vector (matrix with one row) and does a linear algebraic matrix multiply [code]c * r[/code], yielding a matrix whose number of rows is the number of components in [code]c[/code] and whose number of columns is the number of components in [code]r[/code].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeOutput" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Represents the output shader parameters within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
This visual shader node is present in all shader graphs in form of "Output" block with multiple output value ports.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParameter" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A base type for the parameters within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
A parameter represents a variable in the shader which is set externally, i.e. from the [ShaderMaterial]. Parameters are exposed as properties in the [ShaderMaterial] and can be assigned from the Inspector or from a script.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="instance_index" type="int" setter="set_instance_index" getter="get_instance_index" default="0">
|
||||
The index within 0-15 range, which is used to avoid clashes when shader used on multiple materials.
|
||||
</member>
|
||||
<member name="parameter_name" type="String" setter="set_parameter_name" getter="get_parameter_name" default="""">
|
||||
Name of the parameter, by which it can be accessed through the [ShaderMaterial] properties.
|
||||
</member>
|
||||
<member name="qualifier" type="int" setter="set_qualifier" getter="get_qualifier" enum="VisualShaderNodeParameter.Qualifier" default="0">
|
||||
Defines the scope of the parameter.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="QUAL_NONE" value="0" enum="Qualifier">
|
||||
The parameter will be tied to the [ShaderMaterial] using this shader.
|
||||
</constant>
|
||||
<constant name="QUAL_GLOBAL" value="1" enum="Qualifier">
|
||||
The parameter will use a global value, defined in Project Settings.
|
||||
</constant>
|
||||
<constant name="QUAL_INSTANCE" value="2" enum="Qualifier">
|
||||
The parameter will be tied to the node with attached [ShaderMaterial] using this shader.
|
||||
</constant>
|
||||
<constant name="QUAL_INSTANCE_INDEX" value="3" enum="Qualifier">
|
||||
The parameter will be tied to the node with attached [ShaderMaterial] using this shader. Enables setting a [member instance_index] property.
|
||||
</constant>
|
||||
<constant name="QUAL_MAX" value="4" enum="Qualifier">
|
||||
Represents the size of the [enum Qualifier] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParameterRef" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A reference to an existing [VisualShaderNodeParameter].
|
||||
</brief_description>
|
||||
<description>
|
||||
Creating a reference to a [VisualShaderNodeParameter] allows you to reuse this parameter in different shaders or shader stages easily.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="parameter_name" type="String" setter="set_parameter_name" getter="get_parameter_name" default=""[None]"">
|
||||
The name of the parameter which this reference points to.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleAccelerator" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that accelerates particles.
|
||||
</brief_description>
|
||||
<description>
|
||||
Particle accelerator can be used in "process" step of particle shader. It will accelerate the particles. Connect it to the Velocity output port.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="mode" type="int" setter="set_mode" getter="get_mode" enum="VisualShaderNodeParticleAccelerator.Mode" default="0">
|
||||
Defines in what manner the particles will be accelerated.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="MODE_LINEAR" value="0" enum="Mode">
|
||||
The particles will be accelerated based on their velocity.
|
||||
</constant>
|
||||
<constant name="MODE_RADIAL" value="1" enum="Mode">
|
||||
The particles will be accelerated towards or away from the center.
|
||||
</constant>
|
||||
<constant name="MODE_TANGENTIAL" value="2" enum="Mode">
|
||||
The particles will be accelerated tangentially to the radius vector from center to their position.
|
||||
</constant>
|
||||
<constant name="MODE_MAX" value="3" enum="Mode">
|
||||
Represents the size of the [enum Mode] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleBoxEmitter" inherits="VisualShaderNodeParticleEmitter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that makes particles emitted in a box shape.
|
||||
</brief_description>
|
||||
<description>
|
||||
[VisualShaderNodeParticleEmitter] that makes the particles emitted in box shape with the specified extents.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleConeVelocity" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that makes particles move in a cone shape.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node can be used in "start" step of particle shader. It defines the initial velocity of the particles, making them move in cone shape starting from the center, with a given spread.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleEmit" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that forces to emit a particle from a sub-emitter.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node internally calls [code]emit_subparticle[/code] shader method. It will emit a particle from the configured sub-emitter and also allows to customize how its emitted. Requires a sub-emitter assigned to the particles node with this shader.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="flags" type="int" setter="set_flags" getter="get_flags" enum="VisualShaderNodeParticleEmit.EmitFlags" default="31">
|
||||
Flags used to override the properties defined in the sub-emitter's process material.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="EMIT_FLAG_POSITION" value="1" enum="EmitFlags">
|
||||
If enabled, the particle starts with the position defined by this node.
|
||||
</constant>
|
||||
<constant name="EMIT_FLAG_ROT_SCALE" value="2" enum="EmitFlags">
|
||||
If enabled, the particle starts with the rotation and scale defined by this node.
|
||||
</constant>
|
||||
<constant name="EMIT_FLAG_VELOCITY" value="4" enum="EmitFlags">
|
||||
If enabled,the particle starts with the velocity defined by this node.
|
||||
</constant>
|
||||
<constant name="EMIT_FLAG_COLOR" value="8" enum="EmitFlags">
|
||||
If enabled, the particle starts with the color defined by this node.
|
||||
</constant>
|
||||
<constant name="EMIT_FLAG_CUSTOM" value="16" enum="EmitFlags">
|
||||
If enabled, the particle starts with the [code]CUSTOM[/code] data defined by this node.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleEmitter" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A base class for particle emitters.
|
||||
</brief_description>
|
||||
<description>
|
||||
Particle emitter nodes can be used in "start" step of particle shaders and they define the starting position of the particles. Connect them to the Position output port.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="mode_2d" type="bool" setter="set_mode_2d" getter="is_mode_2d" default="false">
|
||||
If [code]true[/code], the result of this emitter is projected to 2D space. By default it is [code]false[/code] and meant for use in 3D space.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleMeshEmitter" inherits="VisualShaderNodeParticleEmitter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that makes particles emitted in a shape defined by a [Mesh].
|
||||
</brief_description>
|
||||
<description>
|
||||
[VisualShaderNodeParticleEmitter] that makes the particles emitted in a shape of the assigned [member mesh]. It will emit from the mesh's surfaces, either all or only the specified one.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="mesh" type="Mesh" setter="set_mesh" getter="get_mesh">
|
||||
The [Mesh] that defines emission shape.
|
||||
</member>
|
||||
<member name="surface_index" type="int" setter="set_surface_index" getter="get_surface_index" default="0">
|
||||
Index of the surface that emits particles. [member use_all_surfaces] must be [code]false[/code] for this to take effect.
|
||||
</member>
|
||||
<member name="use_all_surfaces" type="bool" setter="set_use_all_surfaces" getter="is_use_all_surfaces" default="true">
|
||||
If [code]true[/code], the particles will emit from all surfaces of the mesh.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleMultiplyByAxisAngle" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader helper node for multiplying position and rotation of particles.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node helps to multiply a position input vector by rotation using specific axis. Intended to work with emitters.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="degrees_mode" type="bool" setter="set_degrees_mode" getter="is_degrees_mode" default="true">
|
||||
If [code]true[/code], the angle will be interpreted in degrees instead of radians.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleOutput" inherits="VisualShaderNodeOutput" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Visual shader node that defines output values for particle emitting.
|
||||
</brief_description>
|
||||
<description>
|
||||
This node defines how particles are emitted. It allows to customize e.g. position and velocity. Available ports are different depending on which function this node is inside (start, process, collision) and whether custom data is enabled.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleRandomness" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Visual shader node for randomizing particle values.
|
||||
</brief_description>
|
||||
<description>
|
||||
Randomness node will output pseudo-random values of the given type based on the specified minimum and maximum values.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeParticleRandomness.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="2" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="3" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="4" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleRingEmitter" inherits="VisualShaderNodeParticleEmitter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that makes particles emitted in a ring shape.
|
||||
</brief_description>
|
||||
<description>
|
||||
[VisualShaderNodeParticleEmitter] that makes the particles emitted in ring shape with the specified inner and outer radii and height.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeParticleSphereEmitter" inherits="VisualShaderNodeParticleEmitter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that makes particles emitted in a sphere shape.
|
||||
</brief_description>
|
||||
<description>
|
||||
[VisualShaderNodeParticleEmitter] that makes the particles emitted in sphere shape with the specified inner and outer radii.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeProximityFade" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node representing proximity fade effect.
|
||||
</brief_description>
|
||||
<description>
|
||||
The proximity fade effect fades out each pixel based on its distance to another object.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeRandomRange" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that generates a pseudo-random scalar.
|
||||
</brief_description>
|
||||
<description>
|
||||
Random range node will output a pseudo-random scalar value in the specified range, based on the seed. The value is always the same for the given seed and range, so you should provide a changing input, e.g. by using time.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeRemap" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node for remap function.
|
||||
</brief_description>
|
||||
<description>
|
||||
Remap will transform the input range into output range, e.g. you can change a [code]0..1[/code] value to [code]-2..2[/code] etc. See [method @GlobalScope.remap] for more details.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeRemap.OpType" default="0">
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D_SCALAR" value="2" enum="OpType">
|
||||
The [code]value[/code] port uses a 2D vector type, while the [code]input min[/code], [code]input max[/code], [code]output min[/code], and [code]output max[/code] ports use a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="3" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D_SCALAR" value="4" enum="OpType">
|
||||
The [code]value[/code] port uses a 3D vector type, while the [code]input min[/code], [code]input max[/code], [code]output min[/code], and [code]output max[/code] ports use a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="5" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D_SCALAR" value="6" enum="OpType">
|
||||
The [code]value[/code] port uses a 4D vector type, while the [code]input min[/code], [code]input max[/code], [code]output min[/code], and [code]output max[/code] ports use a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="7" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeReroute" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A node that allows rerouting a connection within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Automatically adapts its port type to the type of the incoming connection and ensures valid connections.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="get_port_type" qualifiers="const">
|
||||
<return type="int" enum="VisualShaderNode.PortType" />
|
||||
<description>
|
||||
Returns the port type of the reroute node.
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeResizableBase" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Base class for resizable nodes in a visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Resizable nodes have a handle that allows the user to adjust their size as needed.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="size" type="Vector2" setter="set_size" getter="get_size" default="Vector2(0, 0)">
|
||||
The size of the node in the visual shader graph.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeRotationByAxis" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that modifies the rotation of the object using a rotation matrix.
|
||||
</brief_description>
|
||||
<description>
|
||||
RotationByAxis node will transform the vertices of a mesh with specified axis and angle in radians. It can be used to rotate an object in an arbitrary axis.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeSDFRaymarch" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
SDF raymarching algorithm to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Casts a ray against the screen SDF (signed-distance field) and returns the distance travelled.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeSDFToScreenUV" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A function to convert an SDF (signed-distance field) to screen UV, to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]sdf_to_screen_uv(sdf_pos)[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeSample3D" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A base node for nodes which samples 3D textures in the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
A virtual class, use the descendants instead.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="source" type="int" setter="set_source" getter="get_source" enum="VisualShaderNodeSample3D.Source" default="0">
|
||||
An input source type.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="SOURCE_TEXTURE" value="0" enum="Source">
|
||||
Creates internal uniform and provides a way to assign it within node.
|
||||
</constant>
|
||||
<constant name="SOURCE_PORT" value="1" enum="Source">
|
||||
Use the uniform texture from sampler port.
|
||||
</constant>
|
||||
<constant name="SOURCE_MAX" value="2" enum="Source">
|
||||
Represents the size of the [enum Source] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeScreenNormalWorldSpace" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that unpacks the screen normal texture in World Space.
|
||||
</brief_description>
|
||||
<description>
|
||||
The ScreenNormalWorldSpace node allows to create outline effects.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeScreenUVToSDF" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A function to convert screen UV to an SDF (signed-distance field), to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]screen_uv_to_sdf(uv)[/code] in the shader language. If the UV port isn't connected, [code]SCREEN_UV[/code] is used instead.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeSmoothStep" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Calculates a SmoothStep function within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader language.
|
||||
Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/code] and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/code]. Otherwise, the return value is interpolated between [code]0.0[/code] and [code]1.0[/code] using Hermite polynomials.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeSmoothStep.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D_SCALAR" value="2" enum="OpType">
|
||||
The [code]x[/code] port uses a 2D vector type. The first two ports use a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="3" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D_SCALAR" value="4" enum="OpType">
|
||||
The [code]x[/code] port uses a 3D vector type. The first two ports use a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="5" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D_SCALAR" value="6" enum="OpType">
|
||||
The [code]a[/code] and [code]b[/code] ports use a 4D vector type. The [code]weight[/code] port uses a scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="7" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeStep" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Calculates a Step function within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]step(edge, x)[/code] in the shader language.
|
||||
Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge[/code] and [code]1.0[/code] otherwise.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeStep.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_SCALAR" value="0" enum="OpType">
|
||||
A floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="1" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D_SCALAR" value="2" enum="OpType">
|
||||
The [code]x[/code] port uses a 2D vector type, while the [code]edge[/code] port uses a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="3" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D_SCALAR" value="4" enum="OpType">
|
||||
The [code]x[/code] port uses a 3D vector type, while the [code]edge[/code] port uses a floating-point scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="5" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D_SCALAR" value="6" enum="OpType">
|
||||
The [code]a[/code] and [code]b[/code] ports use a 4D vector type. The [code]weight[/code] port uses a scalar type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="7" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeSwitch" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A selector function for use within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Returns an associated value of the [member op_type] type if the provided boolean value is [code]true[/code] or [code]false[/code].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="op_type" type="int" setter="set_op_type" getter="get_op_type" enum="VisualShaderNodeSwitch.OpType" default="0">
|
||||
A type of operands and returned value.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_TYPE_FLOAT" value="0" enum="OpType">
|
||||
A floating-point scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_INT" value="1" enum="OpType">
|
||||
An integer scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_UINT" value="2" enum="OpType">
|
||||
An unsigned integer scalar.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_2D" value="3" enum="OpType">
|
||||
A 2D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_3D" value="4" enum="OpType">
|
||||
A 3D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_VECTOR_4D" value="5" enum="OpType">
|
||||
A 4D vector type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_BOOLEAN" value="6" enum="OpType">
|
||||
A boolean type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_TRANSFORM" value="7" enum="OpType">
|
||||
A transform type.
|
||||
</constant>
|
||||
<constant name="OP_TYPE_MAX" value="8" enum="OpType">
|
||||
Represents the size of the [enum OpType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTexture" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a 2D texture lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Performs a lookup operation on the provided texture, with support for multiple texture sources to choose from.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="source" type="int" setter="set_source" getter="get_source" enum="VisualShaderNodeTexture.Source" default="0">
|
||||
Determines the source for the lookup.
|
||||
</member>
|
||||
<member name="texture" type="Texture2D" setter="set_texture" getter="get_texture">
|
||||
The source texture, if needed for the selected [member source].
|
||||
</member>
|
||||
<member name="texture_type" type="int" setter="set_texture_type" getter="get_texture_type" enum="VisualShaderNodeTexture.TextureType" default="0">
|
||||
Specifies the type of the texture if [member source] is set to [constant SOURCE_TEXTURE].
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="SOURCE_TEXTURE" value="0" enum="Source">
|
||||
Use the texture given as an argument for this function.
|
||||
</constant>
|
||||
<constant name="SOURCE_SCREEN" value="1" enum="Source">
|
||||
Use the current viewport's texture as the source.
|
||||
</constant>
|
||||
<constant name="SOURCE_2D_TEXTURE" value="2" enum="Source">
|
||||
Use the texture from this shader's texture built-in (e.g. a texture of a [Sprite2D]).
|
||||
</constant>
|
||||
<constant name="SOURCE_2D_NORMAL" value="3" enum="Source">
|
||||
Use the texture from this shader's normal map built-in.
|
||||
</constant>
|
||||
<constant name="SOURCE_DEPTH" value="4" enum="Source">
|
||||
Use the depth texture captured during the depth prepass. Only available when the depth prepass is used (i.e. in spatial shaders and in the forward_plus or gl_compatibility renderers).
|
||||
</constant>
|
||||
<constant name="SOURCE_PORT" value="5" enum="Source">
|
||||
Use the texture provided in the input port for this function.
|
||||
</constant>
|
||||
<constant name="SOURCE_3D_NORMAL" value="6" enum="Source">
|
||||
Use the normal buffer captured during the depth prepass. Only available when the normal-roughness buffer is available (i.e. in spatial shaders and in the forward_plus renderer).
|
||||
</constant>
|
||||
<constant name="SOURCE_ROUGHNESS" value="7" enum="Source">
|
||||
Use the roughness buffer captured during the depth prepass. Only available when the normal-roughness buffer is available (i.e. in spatial shaders and in the forward_plus renderer).
|
||||
</constant>
|
||||
<constant name="SOURCE_MAX" value="8" enum="Source">
|
||||
Represents the size of the [enum Source] enum.
|
||||
</constant>
|
||||
<constant name="TYPE_DATA" value="0" enum="TextureType">
|
||||
No hints are added to the uniform declaration.
|
||||
</constant>
|
||||
<constant name="TYPE_COLOR" value="1" enum="TextureType">
|
||||
Adds [code]source_color[/code] as hint to the uniform declaration for proper conversion from nonlinear sRGB encoding to linear encoding.
|
||||
</constant>
|
||||
<constant name="TYPE_NORMAL_MAP" value="2" enum="TextureType">
|
||||
Adds [code]hint_normal[/code] as hint to the uniform declaration, which internally converts the texture for proper usage as normal map.
|
||||
</constant>
|
||||
<constant name="TYPE_MAX" value="3" enum="TextureType">
|
||||
Represents the size of the [enum TextureType] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTexture2DArray" inherits="VisualShaderNodeSample3D" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A 2D texture uniform array to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform sampler2DArray[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="texture_array" type="TextureLayered" setter="set_texture_array" getter="get_texture_array">
|
||||
A source texture array. Used if [member VisualShaderNodeSample3D.source] is set to [constant VisualShaderNodeSample3D.SOURCE_TEXTURE].
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTexture2DArrayParameter" inherits="VisualShaderNodeTextureParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node for shader parameter (uniform) of type [Texture2DArray].
|
||||
</brief_description>
|
||||
<description>
|
||||
This parameter allows to provide a collection of textures for the shader. You can use [VisualShaderNodeTexture2DArray] to extract the textures from array.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTexture2DParameter" inherits="VisualShaderNodeTextureParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Provides a 2D texture parameter within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform sampler2D[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTexture3D" inherits="VisualShaderNodeSample3D" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a 3D texture lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Performs a lookup operation on the provided texture, with support for multiple texture sources to choose from.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="texture" type="Texture3D" setter="set_texture" getter="get_texture">
|
||||
A source texture. Used if [member VisualShaderNodeSample3D.source] is set to [constant VisualShaderNodeSample3D.SOURCE_TEXTURE].
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTexture3DParameter" inherits="VisualShaderNodeTextureParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Provides a 3D texture parameter within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform sampler3D[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,112 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTextureParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a uniform texture lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Performs a lookup operation on the texture provided as a uniform for the shader.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="color_default" type="int" setter="set_color_default" getter="get_color_default" enum="VisualShaderNodeTextureParameter.ColorDefault" default="0">
|
||||
Sets the default color if no texture is assigned to the uniform.
|
||||
</member>
|
||||
<member name="texture_filter" type="int" setter="set_texture_filter" getter="get_texture_filter" enum="VisualShaderNodeTextureParameter.TextureFilter" default="0">
|
||||
Sets the texture filtering mode.
|
||||
</member>
|
||||
<member name="texture_repeat" type="int" setter="set_texture_repeat" getter="get_texture_repeat" enum="VisualShaderNodeTextureParameter.TextureRepeat" default="0">
|
||||
Sets the texture repeating mode.
|
||||
</member>
|
||||
<member name="texture_source" type="int" setter="set_texture_source" getter="get_texture_source" enum="VisualShaderNodeTextureParameter.TextureSource" default="0">
|
||||
Sets the texture source mode. Used for reading from the screen, depth, or normal_roughness texture.
|
||||
</member>
|
||||
<member name="texture_type" type="int" setter="set_texture_type" getter="get_texture_type" enum="VisualShaderNodeTextureParameter.TextureType" default="0">
|
||||
Defines the type of data provided by the source texture.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="TYPE_DATA" value="0" enum="TextureType">
|
||||
No hints are added to the uniform declaration.
|
||||
</constant>
|
||||
<constant name="TYPE_COLOR" value="1" enum="TextureType">
|
||||
Adds [code]source_color[/code] as hint to the uniform declaration for proper conversion from nonlinear sRGB encoding to linear encoding.
|
||||
</constant>
|
||||
<constant name="TYPE_NORMAL_MAP" value="2" enum="TextureType">
|
||||
Adds [code]hint_normal[/code] as hint to the uniform declaration, which internally converts the texture for proper usage as normal map.
|
||||
</constant>
|
||||
<constant name="TYPE_ANISOTROPY" value="3" enum="TextureType">
|
||||
Adds [code]hint_anisotropy[/code] as hint to the uniform declaration to use for a flowmap.
|
||||
</constant>
|
||||
<constant name="TYPE_MAX" value="4" enum="TextureType">
|
||||
Represents the size of the [enum TextureType] enum.
|
||||
</constant>
|
||||
<constant name="COLOR_DEFAULT_WHITE" value="0" enum="ColorDefault">
|
||||
Defaults to fully opaque white color.
|
||||
</constant>
|
||||
<constant name="COLOR_DEFAULT_BLACK" value="1" enum="ColorDefault">
|
||||
Defaults to fully opaque black color.
|
||||
</constant>
|
||||
<constant name="COLOR_DEFAULT_TRANSPARENT" value="2" enum="ColorDefault">
|
||||
Defaults to fully transparent black color.
|
||||
</constant>
|
||||
<constant name="COLOR_DEFAULT_MAX" value="3" enum="ColorDefault">
|
||||
Represents the size of the [enum ColorDefault] enum.
|
||||
</constant>
|
||||
<constant name="FILTER_DEFAULT" value="0" enum="TextureFilter">
|
||||
Sample the texture using the filter determined by the node this shader is attached to.
|
||||
</constant>
|
||||
<constant name="FILTER_NEAREST" value="1" enum="TextureFilter">
|
||||
The texture filter reads from the nearest pixel only. This makes the texture look pixelated from up close, and grainy from a distance (due to mipmaps not being sampled).
|
||||
</constant>
|
||||
<constant name="FILTER_LINEAR" value="2" enum="TextureFilter">
|
||||
The texture filter blends between the nearest 4 pixels. This makes the texture look smooth from up close, and grainy from a distance (due to mipmaps not being sampled).
|
||||
</constant>
|
||||
<constant name="FILTER_NEAREST_MIPMAP" value="3" enum="TextureFilter">
|
||||
The texture filter reads from the nearest pixel and blends between the nearest 2 mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]). This makes the texture look pixelated from up close, and smooth from a distance.
|
||||
Use this for non-pixel art textures that may be viewed at a low scale (e.g. due to [Camera2D] zoom or sprite scaling), as mipmaps are important to smooth out pixels that are smaller than on-screen pixels.
|
||||
</constant>
|
||||
<constant name="FILTER_LINEAR_MIPMAP" value="4" enum="TextureFilter">
|
||||
The texture filter blends between the nearest 4 pixels and between the nearest 2 mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]). This makes the texture look smooth from up close, and smooth from a distance.
|
||||
Use this for non-pixel art textures that may be viewed at a low scale (e.g. due to [Camera2D] zoom or sprite scaling), as mipmaps are important to smooth out pixels that are smaller than on-screen pixels.
|
||||
</constant>
|
||||
<constant name="FILTER_NEAREST_MIPMAP_ANISOTROPIC" value="5" enum="TextureFilter">
|
||||
The texture filter reads from the nearest pixel and blends between 2 mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the angle between the surface and the camera view. This makes the texture look pixelated from up close, and smooth from a distance. Anisotropic filtering improves texture quality on surfaces that are almost in line with the camera, but is slightly slower. The anisotropic filtering level can be changed by adjusting [member ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level].
|
||||
[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant FILTER_NEAREST_MIPMAP] is usually more appropriate in this case.
|
||||
</constant>
|
||||
<constant name="FILTER_LINEAR_MIPMAP_ANISOTROPIC" value="6" enum="TextureFilter">
|
||||
The texture filter blends between the nearest 4 pixels and blends between 2 mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the angle between the surface and the camera view. This makes the texture look smooth from up close, and smooth from a distance. Anisotropic filtering improves texture quality on surfaces that are almost in line with the camera, but is slightly slower. The anisotropic filtering level can be changed by adjusting [member ProjectSettings.rendering/textures/default_filters/anisotropic_filtering_level].
|
||||
[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant FILTER_LINEAR_MIPMAP] is usually more appropriate in this case.
|
||||
</constant>
|
||||
<constant name="FILTER_MAX" value="7" enum="TextureFilter">
|
||||
Represents the size of the [enum TextureFilter] enum.
|
||||
</constant>
|
||||
<constant name="REPEAT_DEFAULT" value="0" enum="TextureRepeat">
|
||||
Sample the texture using the repeat mode determined by the node this shader is attached to.
|
||||
</constant>
|
||||
<constant name="REPEAT_ENABLED" value="1" enum="TextureRepeat">
|
||||
Texture will repeat normally.
|
||||
</constant>
|
||||
<constant name="REPEAT_DISABLED" value="2" enum="TextureRepeat">
|
||||
Texture will not repeat.
|
||||
</constant>
|
||||
<constant name="REPEAT_MAX" value="3" enum="TextureRepeat">
|
||||
Represents the size of the [enum TextureRepeat] enum.
|
||||
</constant>
|
||||
<constant name="SOURCE_NONE" value="0" enum="TextureSource">
|
||||
The texture source is not specified in the shader.
|
||||
</constant>
|
||||
<constant name="SOURCE_SCREEN" value="1" enum="TextureSource">
|
||||
The texture source is the screen texture which captures all opaque objects drawn this frame.
|
||||
</constant>
|
||||
<constant name="SOURCE_DEPTH" value="2" enum="TextureSource">
|
||||
The texture source is the depth texture from the depth prepass.
|
||||
</constant>
|
||||
<constant name="SOURCE_NORMAL_ROUGHNESS" value="3" enum="TextureSource">
|
||||
The texture source is the normal-roughness buffer from the depth prepass.
|
||||
</constant>
|
||||
<constant name="SOURCE_MAX" value="4" enum="TextureSource">
|
||||
Represents the size of the [enum TextureSource] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTextureParameterTriplanar" inherits="VisualShaderNodeTextureParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs a uniform texture lookup with triplanar within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Performs a lookup operation on the texture provided as a uniform for the shader, with support for triplanar mapping.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTextureSDF" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs an SDF (signed-distance field) texture lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]texture_sdf(sdf_pos)[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTextureSDFNormal" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Performs an SDF (signed-distance field) normal texture lookup within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translates to [code]texture_sdf_normal(sdf_pos)[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformCompose" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Composes a [Transform3D] from four [Vector3]s within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Creates a 4×4 transform matrix using four vectors of type [code]vec3[/code]. Each vector is one row in the matrix and the last column is a [code]vec4(0, 0, 0, 1)[/code].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformConstant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Transform3D] constant for use within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
A constant [Transform3D], which can be used as an input node.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="Transform3D" setter="set_constant" getter="get_constant" default="Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)">
|
||||
A [Transform3D] constant which represents the state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformDecompose" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Decomposes a [Transform3D] into four [Vector3]s within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Takes a 4×4 transform matrix and decomposes it into four [code]vec3[/code] values, one from each row of the matrix.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Computes a [Transform3D] function within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Computes an inverse or transpose function on the provided [Transform3D].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeTransformFunc.Function" default="0">
|
||||
The function to be computed.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_INVERSE" value="0" enum="Function">
|
||||
Perform the inverse operation on the [Transform3D] matrix.
|
||||
</constant>
|
||||
<constant name="FUNC_TRANSPOSE" value="1" enum="Function">
|
||||
Perform the transpose operation on the [Transform3D] matrix.
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="2" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformOp" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Transform3D] operator to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Applies [member operator] to two transform (4×4 matrices) inputs.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeTransformOp.Operator" default="0">
|
||||
The type of the operation to be performed on the transforms.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_AxB" value="0" enum="Operator">
|
||||
Multiplies transform [code]a[/code] by the transform [code]b[/code].
|
||||
</constant>
|
||||
<constant name="OP_BxA" value="1" enum="Operator">
|
||||
Multiplies transform [code]b[/code] by the transform [code]a[/code].
|
||||
</constant>
|
||||
<constant name="OP_AxB_COMP" value="2" enum="Operator">
|
||||
Performs a component-wise multiplication of transform [code]a[/code] by the transform [code]b[/code].
|
||||
</constant>
|
||||
<constant name="OP_BxA_COMP" value="3" enum="Operator">
|
||||
Performs a component-wise multiplication of transform [code]b[/code] by the transform [code]a[/code].
|
||||
</constant>
|
||||
<constant name="OP_ADD" value="4" enum="Operator">
|
||||
Adds two transforms.
|
||||
</constant>
|
||||
<constant name="OP_A_MINUS_B" value="5" enum="Operator">
|
||||
Subtracts the transform [code]a[/code] from the transform [code]b[/code].
|
||||
</constant>
|
||||
<constant name="OP_B_MINUS_A" value="6" enum="Operator">
|
||||
Subtracts the transform [code]b[/code] from the transform [code]a[/code].
|
||||
</constant>
|
||||
<constant name="OP_A_DIV_B" value="7" enum="Operator">
|
||||
Divides the transform [code]a[/code] by the transform [code]b[/code].
|
||||
</constant>
|
||||
<constant name="OP_B_DIV_A" value="8" enum="Operator">
|
||||
Divides the transform [code]b[/code] by the transform [code]a[/code].
|
||||
</constant>
|
||||
<constant name="OP_MAX" value="9" enum="Operator">
|
||||
Represents the size of the [enum Operator] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Transform3D] parameter for use within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform mat4[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="Transform3D" setter="set_default_value" getter="get_default_value" default="Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)">
|
||||
A default value to be assigned within the shader.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
Enables usage of the [member default_value].
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeTransformVecMult" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Multiplies a [Transform3D] and a [Vector3] within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
A multiplication operation on a transform (4×4 matrix) and a vector, with support for different multiplication operators.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeTransformVecMult.Operator" default="0">
|
||||
The multiplication type to be performed.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_AxB" value="0" enum="Operator">
|
||||
Multiplies transform [code]a[/code] by the vector [code]b[/code].
|
||||
</constant>
|
||||
<constant name="OP_BxA" value="1" enum="Operator">
|
||||
Multiplies vector [code]b[/code] by the transform [code]a[/code].
|
||||
</constant>
|
||||
<constant name="OP_3x3_AxB" value="2" enum="Operator">
|
||||
Multiplies transform [code]a[/code] by the vector [code]b[/code], skipping the last row and column of the transform.
|
||||
</constant>
|
||||
<constant name="OP_3x3_BxA" value="3" enum="Operator">
|
||||
Multiplies vector [code]b[/code] by the transform [code]a[/code], skipping the last row and column of the transform.
|
||||
</constant>
|
||||
<constant name="OP_MAX" value="4" enum="Operator">
|
||||
Represents the size of the [enum Operator] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeUIntConstant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
An unsigned scalar integer constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uint[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="int" setter="set_constant" getter="get_constant" default="0">
|
||||
An unsigned integer constant which represents a state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeUIntFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
An unsigned scalar integer function to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Accept an unsigned integer scalar ([code]x[/code]) to the input port and transform it according to [member function].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeUIntFunc.Function" default="0">
|
||||
A function to be applied to the scalar.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_NEGATE" value="0" enum="Function">
|
||||
Negates the [code]x[/code] using [code]-(x)[/code].
|
||||
</constant>
|
||||
<constant name="FUNC_BITWISE_NOT" value="1" enum="Function">
|
||||
Returns the result of bitwise [code]NOT[/code] operation on the integer. Translates to [code]~a[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="2" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeUIntOp" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
An unsigned integer scalar operator to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Applies [member operator] to two unsigned integer inputs: [code]a[/code] and [code]b[/code].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeUIntOp.Operator" default="0">
|
||||
An operator to be applied to the inputs.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="OP_ADD" value="0" enum="Operator">
|
||||
Sums two numbers using [code]a + b[/code].
|
||||
</constant>
|
||||
<constant name="OP_SUB" value="1" enum="Operator">
|
||||
Subtracts two numbers using [code]a - b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MUL" value="2" enum="Operator">
|
||||
Multiplies two numbers using [code]a * b[/code].
|
||||
</constant>
|
||||
<constant name="OP_DIV" value="3" enum="Operator">
|
||||
Divides two numbers using [code]a / b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MOD" value="4" enum="Operator">
|
||||
Calculates the remainder of two numbers using [code]a % b[/code].
|
||||
</constant>
|
||||
<constant name="OP_MAX" value="5" enum="Operator">
|
||||
Returns the greater of two numbers. Translates to [code]max(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_MIN" value="6" enum="Operator">
|
||||
Returns the lesser of two numbers. Translates to [code]max(a, b)[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_AND" value="7" enum="Operator">
|
||||
Returns the result of bitwise [code]AND[/code] operation on the integer. Translates to [code]a & b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_OR" value="8" enum="Operator">
|
||||
Returns the result of bitwise [code]OR[/code] operation for two integers. Translates to [code]a | b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_XOR" value="9" enum="Operator">
|
||||
Returns the result of bitwise [code]XOR[/code] operation for two integers. Translates to [code]a ^ b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_LEFT_SHIFT" value="10" enum="Operator">
|
||||
Returns the result of bitwise left shift operation on the integer. Translates to [code]a << b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_BITWISE_RIGHT_SHIFT" value="11" enum="Operator">
|
||||
Returns the result of bitwise right shift operation on the integer. Translates to [code]a >> b[/code] in the Godot Shader Language.
|
||||
</constant>
|
||||
<constant name="OP_ENUM_SIZE" value="12" enum="Operator">
|
||||
Represents the size of the [enum Operator] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeUIntParameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node for shader parameter (uniform) of type unsigned [int].
|
||||
</brief_description>
|
||||
<description>
|
||||
A [VisualShaderNodeParameter] of type unsigned [int]. Offers additional customization for range of accepted values.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="int" setter="set_default_value" getter="get_default_value" default="0">
|
||||
Default value of this parameter, which will be used if not set externally. [member default_value_enabled] must be enabled; defaults to [code]0[/code] otherwise.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
If [code]true[/code], the node will have a custom default value.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeUVFunc" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
Contains functions to modify texture coordinates ([code]uv[/code]) to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
UV functions are similar to [Vector2] functions, but the input port of this node uses the shader's UV value by default.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeUVFunc.Function" default="0">
|
||||
A function to be applied to the texture coordinates.
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
<constant name="FUNC_PANNING" value="0" enum="Function">
|
||||
Translates [code]uv[/code] by using [code]scale[/code] and [code]offset[/code] values using the following formula: [code]uv = uv + offset * scale[/code]. [code]uv[/code] port is connected to [code]UV[/code] built-in by default.
|
||||
</constant>
|
||||
<constant name="FUNC_SCALING" value="1" enum="Function">
|
||||
Scales [code]uv[/code] by using [code]scale[/code] and [code]pivot[/code] values using the following formula: [code]uv = (uv - pivot) * scale + pivot[/code]. [code]uv[/code] port is connected to [code]UV[/code] built-in by default.
|
||||
</constant>
|
||||
<constant name="FUNC_MAX" value="2" enum="Function">
|
||||
Represents the size of the [enum Function] enum.
|
||||
</constant>
|
||||
</constants>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeUVPolarCoord" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that modifies the texture UV using polar coordinates.
|
||||
</brief_description>
|
||||
<description>
|
||||
UV polar coord node will transform UV values into polar coordinates, with specified scale, zoom strength and repeat parameters. It can be used to create various swirl distortions.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeVarying" inherits="VisualShaderNode" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that represents a "varying" shader value.
|
||||
</brief_description>
|
||||
<description>
|
||||
Varying values are shader variables that can be passed between shader functions, e.g. from Vertex shader to Fragment shader.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="varying_name" type="String" setter="set_varying_name" getter="get_varying_name" default=""[None]"">
|
||||
Name of the variable. Must be unique.
|
||||
</member>
|
||||
<member name="varying_type" type="int" setter="set_varying_type" getter="get_varying_type" enum="VisualShader.VaryingType" default="0">
|
||||
Type of the variable. Determines where the variable can be accessed.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeVaryingGetter" inherits="VisualShaderNodeVarying" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that gets a value of a varying.
|
||||
</brief_description>
|
||||
<description>
|
||||
Outputs a value of a varying defined in the shader. You need to first create a varying that can be used in the given function, e.g. varying getter in Fragment shader requires a varying with mode set to [constant VisualShader.VARYING_MODE_VERTEX_TO_FRAG_LIGHT].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeVaryingSetter" inherits="VisualShaderNodeVarying" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A visual shader node that sets a value of a varying.
|
||||
</brief_description>
|
||||
<description>
|
||||
Inputs a value to a varying defined in the shader. You need to first create a varying that can be used in the given function, e.g. varying setter in Fragment shader requires a varying with mode set to [constant VisualShader.VARYING_MODE_FRAG_TO_LIGHT].
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeVec2Constant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Vector2] constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
A constant [Vector2], which can be used as an input node.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="Vector2" setter="set_constant" getter="get_constant" default="Vector2(0, 0)">
|
||||
A [Vector2] constant which represents the state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeVec2Parameter" inherits="VisualShaderNodeParameter" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Vector2] parameter to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
Translated to [code]uniform vec2[/code] in the shader language.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="default_value" type="Vector2" setter="set_default_value" getter="get_default_value" default="Vector2(0, 0)">
|
||||
A default value to be assigned within the shader.
|
||||
</member>
|
||||
<member name="default_value_enabled" type="bool" setter="set_default_value_enabled" getter="is_default_value_enabled" default="false">
|
||||
Enables usage of the [member default_value].
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="VisualShaderNodeVec3Constant" inherits="VisualShaderNodeConstant" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
||||
<brief_description>
|
||||
A [Vector3] constant to be used within the visual shader graph.
|
||||
</brief_description>
|
||||
<description>
|
||||
A constant [Vector3], which can be used as an input node.
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<members>
|
||||
<member name="constant" type="Vector3" setter="set_constant" getter="get_constant" default="Vector3(0, 0, 0)">
|
||||
A [Vector3] constant which represents the state of this node.
|
||||
</member>
|
||||
</members>
|
||||
</class>
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue