2018-07-26 17:56:21 +08:00
|
|
|
<?xml version="1.0" encoding="UTF-8" ?>
|
2020-02-01 09:03:48 +08:00
|
|
|
<class name="VisualShader" inherits="Shader" version="4.0">
|
2018-07-26 17:56:21 +08:00
|
|
|
<brief_description>
|
2019-10-11 23:06:57 +08:00
|
|
|
A custom shader program with a visual editor.
|
2018-07-26 17:56:21 +08:00
|
|
|
</brief_description>
|
|
|
|
<description>
|
2019-10-11 23:06:57 +08:00
|
|
|
This class allows you to define a custom shader program that can be used for various materials to render objects.
|
|
|
|
The visual shader editor creates the shader.
|
2018-07-26 17:56:21 +08:00
|
|
|
</description>
|
|
|
|
<tutorials>
|
|
|
|
</tutorials>
|
|
|
|
<methods>
|
|
|
|
<method name="add_node">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="node" type="VisualShaderNode">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="position" type="Vector2">
|
|
|
|
</argument>
|
|
|
|
<argument index="3" name="id" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="can_connect_nodes" qualifiers="const">
|
|
|
|
<return type="bool">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="from_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="from_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="3" name="to_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="4" name="to_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="connect_nodes">
|
|
|
|
<return type="int" enum="Error">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="from_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="from_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="3" name="to_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="4" name="to_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
2019-05-29 00:08:13 +08:00
|
|
|
<method name="connect_nodes_forced">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="from_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="from_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="3" name="to_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="4" name="to_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
2018-07-26 17:56:21 +08:00
|
|
|
<method name="disconnect_nodes">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="from_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="from_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="3" name="to_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="4" name="to_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="get_node" qualifiers="const">
|
|
|
|
<return type="VisualShaderNode">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="id" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="get_node_connections" qualifiers="const">
|
|
|
|
<return type="Array">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="get_node_list" qualifiers="const">
|
2020-02-26 01:10:58 +08:00
|
|
|
<return type="PackedInt32Array">
|
2018-07-26 17:56:21 +08:00
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="get_node_position" qualifiers="const">
|
|
|
|
<return type="Vector2">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="id" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="get_valid_node_id" qualifiers="const">
|
|
|
|
<return type="int">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="is_node_connection" qualifiers="const">
|
|
|
|
<return type="bool">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="from_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="from_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="3" name="to_node" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="4" name="to_port" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="remove_node">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="id" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="set_mode">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="mode" type="int" enum="Shader.Mode">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="set_node_position">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="type" type="int" enum="VisualShader.Type">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="id" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="2" name="position" type="Vector2">
|
|
|
|
</argument>
|
|
|
|
<description>
|
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
</methods>
|
|
|
|
<members>
|
2019-09-24 19:34:03 +08:00
|
|
|
<member name="code" type="String" setter="set_code" getter="get_code" override="true" default=""shader_type spatial;void vertex() {// Output:0}void fragment() {// Output:0}void light() {// Output:0}"" />
|
2019-06-29 18:38:01 +08:00
|
|
|
<member name="graph_offset" type="Vector2" setter="set_graph_offset" getter="get_graph_offset" default="Vector2( 0, 0 )">
|
2018-07-26 17:56:21 +08:00
|
|
|
</member>
|
|
|
|
</members>
|
|
|
|
<constants>
|
|
|
|
<constant name="TYPE_VERTEX" value="0" enum="Type">
|
|
|
|
</constant>
|
|
|
|
<constant name="TYPE_FRAGMENT" value="1" enum="Type">
|
|
|
|
</constant>
|
|
|
|
<constant name="TYPE_LIGHT" value="2" enum="Type">
|
|
|
|
</constant>
|
|
|
|
<constant name="TYPE_MAX" value="3" enum="Type">
|
2019-06-27 17:10:53 +08:00
|
|
|
Represents the size of the [enum Type] enum.
|
2018-07-26 17:56:21 +08:00
|
|
|
</constant>
|
|
|
|
<constant name="NODE_ID_INVALID" value="-1">
|
|
|
|
</constant>
|
|
|
|
<constant name="NODE_ID_OUTPUT" value="0">
|
|
|
|
</constant>
|
|
|
|
</constants>
|
|
|
|
</class>
|