diff --git a/doc/classes/VisualShaderNode.xml b/doc/classes/VisualShaderNode.xml
index 9a74f2322e8..199224b1907 100644
--- a/doc/classes/VisualShaderNode.xml
+++ b/doc/classes/VisualShaderNode.xml
@@ -4,6 +4,7 @@
Base class for nodes in a visual shader graph.
+ 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 has also connection ports that allow to connect it to another nodes and control the flow of the shader.
https://docs.godotengine.org/en/latest/tutorials/shading/visual_shaders.html
diff --git a/doc/classes/VisualShaderNodeCurve3Texture.xml b/doc/classes/VisualShaderNodeCurve3Texture.xml
new file mode 100644
index 00000000000..c5ed37ebaa4
--- /dev/null
+++ b/doc/classes/VisualShaderNodeCurve3Texture.xml
@@ -0,0 +1,20 @@
+
+
+
+ Performs a [Curve3Texture] lookup within the visual shader graph.
+
+
+ Comes with a built-in editor for texture's curves.
+
+
+
+
+
+
+
+ The source texture.
+
+
+
+
+
diff --git a/doc/classes/VisualShaderNodeCurveTexture.xml b/doc/classes/VisualShaderNodeCurveTexture.xml
index 26b7b07df2b..4839ceab92a 100644
--- a/doc/classes/VisualShaderNodeCurveTexture.xml
+++ b/doc/classes/VisualShaderNodeCurveTexture.xml
@@ -1,8 +1,10 @@
+ Performs a [CurveTexture] lookup within the visual shader graph.
+ Comes with a built-in editor for texture's curves.
@@ -10,6 +12,7 @@
+ The source texture.
diff --git a/doc/classes/VisualShaderNodeResizableBase.xml b/doc/classes/VisualShaderNodeResizableBase.xml
index 9052f6854ba..f42289a10e2 100644
--- a/doc/classes/VisualShaderNodeResizableBase.xml
+++ b/doc/classes/VisualShaderNodeResizableBase.xml
@@ -1,8 +1,10 @@
+ Base class for resizable nodes in a visual shader graph.
+ Resizable nodes have a handle that allows the user to adjust their size as needed.
diff --git a/modules/visual_script/doc_classes/VisualScriptExpression.xml b/modules/visual_script/doc_classes/VisualScriptExpression.xml
index 5253f7bc7d1..223adbbb96a 100644
--- a/modules/visual_script/doc_classes/VisualScriptExpression.xml
+++ b/modules/visual_script/doc_classes/VisualScriptExpression.xml
@@ -1,8 +1,10 @@
+ A Visual Script node that can execute a custom expression.
+ A Visual Script node that can execute a custom expression. Values can be provided for the input and the expression result can be retrieved from the output.
diff --git a/modules/visual_script/doc_classes/VisualScriptFunction.xml b/modules/visual_script/doc_classes/VisualScriptFunction.xml
index 873d26a5be4..652418bd641 100644
--- a/modules/visual_script/doc_classes/VisualScriptFunction.xml
+++ b/modules/visual_script/doc_classes/VisualScriptFunction.xml
@@ -1,8 +1,10 @@
+ A Visual Script node representing a function.
+ [VisualScriptFunction] represents a function header. It is the starting point for the function body and can be used to tweak the function's properties (e.g. RPC mode).
diff --git a/modules/visual_script/doc_classes/VisualScriptFunctionCall.xml b/modules/visual_script/doc_classes/VisualScriptFunctionCall.xml
index 48104afcf7a..f0b666e57ac 100644
--- a/modules/visual_script/doc_classes/VisualScriptFunctionCall.xml
+++ b/modules/visual_script/doc_classes/VisualScriptFunctionCall.xml
@@ -1,8 +1,10 @@
+ A Visual Script node for calling a function.
+ [VisualScriptFunctionCall] is created when you add or drag and drop a function onto the Visual Script graph. It allows to tweak parameters of the call, e.g. what object the function is called on.
@@ -10,46 +12,66 @@
+ The script to be used when [member call_mode] is set to [constant CALL_MODE_INSTANCE].
+ The base type to be used when [member call_mode] is set to [constant CALL_MODE_INSTANCE].
+ The type to be used when [member call_mode] is set to [constant CALL_MODE_BASIC_TYPE].
+ [code]call_mode[/code] determines the target object on which the method will be called. See [enum CallMode] for options.
+ The name of the function to be called.
+ The node path to use when [member call_mode] is set to [constant CALL_MODE_NODE_PATH].
+ The mode for RPC calls. See [method Node.rpc] for more details and [enum RPCCallMode] for available options.
+ The singleton to call the method on. Used when [member call_mode] is set to [constant CALL_MODE_SINGLETON].
+ Number of default arguments that will be used when calling the function. Can't be higher than the number of available default arguments in the method's declaration.
+ If [code]false[/code], call errors (e.g. wrong number of arguments) will be ignored.
+ The method will be called on this [Object].
+ The method will be called on the given [Node] in the scene tree.
+ The method will be called on an instanced node with the given type and script.
+ The method will be called on a GDScript basic type (e.g. [Vector2]).
+ The method will be called on a singleton.
+ The method will be called locally.
+ The method will be called remotely.
+ The method will be called remotely using an unreliable protocol.
+ The method will be called remotely for the given peer.
+ The method will be called remotely for the given peer, using an unreliable protocol.
diff --git a/modules/visual_script/doc_classes/VisualScriptFunctionState.xml b/modules/visual_script/doc_classes/VisualScriptFunctionState.xml
index 16c1629fe4d..54a02bf2708 100644
--- a/modules/visual_script/doc_classes/VisualScriptFunctionState.xml
+++ b/modules/visual_script/doc_classes/VisualScriptFunctionState.xml
@@ -1,8 +1,10 @@
+ A Visual Script node representing a function state.
+ [VisualScriptFunctionState] is returned from [VisualScriptYield] and can be used to resume a paused function call.
@@ -17,12 +19,14 @@
+ Connects this [VisualScriptFunctionState] to a signal in the given object to automatically resume when it's emitted.
+ Returns whether the function state is valid.
@@ -31,6 +35,7 @@
+ Resumes the function to run from the point it was yielded.
diff --git a/modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml b/modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml
index ef17bd8a281..87fdfd4e53f 100644
--- a/modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml
+++ b/modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml
@@ -1,8 +1,10 @@
+ A Visual Script node returning a constant from [@GlobalScope].
+ A Visual Script node returning a constant from [@GlobalScope].
@@ -10,6 +12,7 @@
+ The constant to be used.
diff --git a/modules/visual_script/doc_classes/VisualScriptIndexGet.xml b/modules/visual_script/doc_classes/VisualScriptIndexGet.xml
index bb1618a6556..b348048298d 100644
--- a/modules/visual_script/doc_classes/VisualScriptIndexGet.xml
+++ b/modules/visual_script/doc_classes/VisualScriptIndexGet.xml
@@ -1,8 +1,10 @@
+ A Visual Script node for getting a value from an array or a dictionary.
+ [VisualScriptIndexGet] will return the value stored in an array or a dictionary under the given index.
diff --git a/modules/visual_script/doc_classes/VisualScriptIndexSet.xml b/modules/visual_script/doc_classes/VisualScriptIndexSet.xml
index 4ff96f72119..d7fe7340ad5 100644
--- a/modules/visual_script/doc_classes/VisualScriptIndexSet.xml
+++ b/modules/visual_script/doc_classes/VisualScriptIndexSet.xml
@@ -1,8 +1,10 @@
+ A Visual Script node for setting a value in an array or a dictionary.
+ [VisualScriptIndexSet] will set the value stored in an array or a dictionary under the given index to the provided new value.
diff --git a/modules/visual_script/doc_classes/VisualScriptInputAction.xml b/modules/visual_script/doc_classes/VisualScriptInputAction.xml
index 9ca67feacbb..d6fa1115000 100644
--- a/modules/visual_script/doc_classes/VisualScriptInputAction.xml
+++ b/modules/visual_script/doc_classes/VisualScriptInputAction.xml
@@ -1,8 +1,10 @@
+ A Visual Script node returning a state of an action.
+ [VisualScriptInputAction] can be used to check if an action is pressed or released.
@@ -10,18 +12,24 @@
+ Name of the action.
+ State of the action to check. See [enum Mode] for options.
+ [code]True[/code] if action is pressed.
+ [code]True[/code] if action is released (i.e. not pressed).
+ [code]True[/code] on the frame the action was pressed.
+ [code]True[/code] on the frame the action was released.
diff --git a/modules/visual_script/doc_classes/VisualScriptLists.xml b/modules/visual_script/doc_classes/VisualScriptLists.xml
index 8a7254b46a8..671c427228b 100644
--- a/modules/visual_script/doc_classes/VisualScriptLists.xml
+++ b/modules/visual_script/doc_classes/VisualScriptLists.xml
@@ -19,6 +19,7 @@
+ Adds an input port to the Visual Script node.
@@ -31,6 +32,7 @@
+ Adds an output port to the Visual Script node.
@@ -39,6 +41,7 @@
+ Removes an input port from the Visual Script node.
@@ -47,6 +50,7 @@
+ Removes an output port from the Visual Script node.
@@ -57,6 +61,7 @@
+ Sets the name of an input port.
@@ -67,6 +72,7 @@
+ Sets the type of an input port.
@@ -77,6 +83,7 @@
+ Sets the name of an output port.
@@ -87,6 +94,7 @@
+ Sets the type of an output port.
diff --git a/modules/visual_script/doc_classes/VisualScriptOperator.xml b/modules/visual_script/doc_classes/VisualScriptOperator.xml
index c8ce0f27320..cbbefa7f713 100644
--- a/modules/visual_script/doc_classes/VisualScriptOperator.xml
+++ b/modules/visual_script/doc_classes/VisualScriptOperator.xml
@@ -1,6 +1,7 @@
+ A Visual Script node that performs an operation on two values.
[b]Input Ports:[/b]
@@ -15,8 +16,10 @@
+ The operation to be performed. See [enum Variant.Operator] for available options.
+ The type of the values for this operation. See [enum Variant.Type] for available options.
diff --git a/modules/visual_script/doc_classes/VisualScriptPropertyGet.xml b/modules/visual_script/doc_classes/VisualScriptPropertyGet.xml
index ff6c723a3eb..c1bf443ea31 100644
--- a/modules/visual_script/doc_classes/VisualScriptPropertyGet.xml
+++ b/modules/visual_script/doc_classes/VisualScriptPropertyGet.xml
@@ -1,8 +1,10 @@
+ A Visual Script node returning a value of a property from an [Object].
+ [VisualScriptPropertyGet] can return a value of any property from the current object or other objects.
@@ -10,28 +12,39 @@
+ The script to be used when [member set_mode] is set to [constant CALL_MODE_INSTANCE].
+ The base type to be used when [member set_mode] is set to [constant CALL_MODE_INSTANCE].
+ The type to be used when [member set_mode] is set to [constant CALL_MODE_BASIC_TYPE].
+ The indexed name of the property to retrieve. See [method Object.get_indexed] for details.
+ The node path to use when [member set_mode] is set to [constant CALL_MODE_NODE_PATH].
+ The name of the property to retrieve. Changing this will clear [member index].
+ [code]set_mode[/code] determines the target object from which the property will be retrieved. See [enum CallMode] for options.
+ The property will be retrieved from this [Object].
+ The property will be retrieved from the given [Node] in the scene tree.
+ The property will be retrieved from an instanced node with the given type and script.
+ The property will be retrieved from a GDScript basic type (e.g. [Vector2]).
diff --git a/modules/visual_script/doc_classes/VisualScriptPropertySet.xml b/modules/visual_script/doc_classes/VisualScriptPropertySet.xml
index 71bfc4c8a56..75d6a63469c 100644
--- a/modules/visual_script/doc_classes/VisualScriptPropertySet.xml
+++ b/modules/visual_script/doc_classes/VisualScriptPropertySet.xml
@@ -1,8 +1,10 @@
+ A Visual Script node that sets a property of an [Object].
+ [VisualScriptPropertySet] can set the value of any property from the current object or other objects.
@@ -10,52 +12,75 @@
+ The additional operation to perform when assigning. See [enum AssignOp] for options.
+ The script to be used when [member set_mode] is set to [constant CALL_MODE_INSTANCE].
+ The base type to be used when [member set_mode] is set to [constant CALL_MODE_INSTANCE].
+ The type to be used when [member set_mode] is set to [constant CALL_MODE_BASIC_TYPE].
+ The indexed name of the property to set. See [method Object.set_indexed] for details.
+ The node path to use when [member set_mode] is set to [constant CALL_MODE_NODE_PATH].
+ The name of the property to set. Changing this will clear [member index].
+ [code]set_mode[/code] determines the target object on which the property will be set. See [enum CallMode] for options.
+ The property will be set on this [Object].
+ The property will be set on the given [Node] in the scene tree.
+ The property will be set on an instanced node with the given type and script.
+ The property will be set on a GDScript basic type (e.g. [Vector2]).
+ The property will be assigned regularly.
+ The value will be added to the property. Equivalent of doing [code]+=[/code].
+ The value will be subtracted from the property. Equivalent of doing [code]-=[/code].
+ The property will be multiplied by the value. Equivalent of doing [code]*=[/code].
+ The property will be divided by the value. Equivalent of doing [code]/=[/code].
+ A modulo operation will be performed on the property and the value. Equivalent of doing [code]%=[/code].
+ The property will be binarly shifted to the left by the given value. Equivalent of doing [code]<<[/code].
+ The property will be binarly shifted to the right by the given value. Equivalent of doing [code]>>[/code].
+ A binary [code]AND[/code] operation will be performed on the property. Equivalent of doing [code]&=[/code].
+ A binary [code]OR[/code] operation will be performed on the property. Equivalent of doing [code]|=[/code].
+ A binary [code]XOR[/code] operation will be performed on the property. Equivalent of doing [code]^=[/code].
diff --git a/modules/visual_script/doc_classes/VisualScriptSceneTree.xml b/modules/visual_script/doc_classes/VisualScriptSceneTree.xml
index 191d4b69772..8cddd02c77e 100644
--- a/modules/visual_script/doc_classes/VisualScriptSceneTree.xml
+++ b/modules/visual_script/doc_classes/VisualScriptSceneTree.xml
@@ -1,8 +1,10 @@
+ A Visual Script node for accessing [SceneTree] methods.
+ A Visual Script node for accessing [SceneTree] methods.
diff --git a/modules/visual_script/doc_classes/VisualScriptSubCall.xml b/modules/visual_script/doc_classes/VisualScriptSubCall.xml
index cb3b04b5835..89a10edde49 100644
--- a/modules/visual_script/doc_classes/VisualScriptSubCall.xml
+++ b/modules/visual_script/doc_classes/VisualScriptSubCall.xml
@@ -1,8 +1,10 @@
+ Calls a method called [code]_subcall[/code] in this object.
+ [VisualScriptSubCall] will call method named [code]_subcall[/code] in the current script. It will fail if the method doesn't exist or the provided arguments are wrong.
@@ -13,6 +15,7 @@
+ Called by this node.
diff --git a/modules/visual_script/doc_classes/VisualScriptTypeCast.xml b/modules/visual_script/doc_classes/VisualScriptTypeCast.xml
index 9e3e020f2d1..5dd1ad3421b 100644
--- a/modules/visual_script/doc_classes/VisualScriptTypeCast.xml
+++ b/modules/visual_script/doc_classes/VisualScriptTypeCast.xml
@@ -1,8 +1,10 @@
+ A Visual Script node that casts the given value to another type.
+ [VisualScriptTypeCast] will perform a type conversion to an [Object]-derived type.
@@ -10,8 +12,10 @@
+ The target script class to be converted to. If none, only the [member base_type] will be used.
+ The target type to be converted to.
diff --git a/modules/visual_script/doc_classes/VisualScriptYield.xml b/modules/visual_script/doc_classes/VisualScriptYield.xml
index 0a8d529a484..b04ab7b014e 100644
--- a/modules/visual_script/doc_classes/VisualScriptYield.xml
+++ b/modules/visual_script/doc_classes/VisualScriptYield.xml
@@ -1,8 +1,10 @@
+ A Visual Script node used to pause a function execution.
+ [VisualScriptYield] will pause the function call and return [VisualScriptFunctionState], which can be used to resume the function.
@@ -10,16 +12,21 @@
+ The mode to use for yielding. See [enum YieldMode] for available options.
+ The time to wait when [member mode] is set to [constant YIELD_WAIT].
+ Yields during an idle frame.
+ Yields during a physics frame.
+ Yields a function and waits the given time.
diff --git a/modules/visual_script/doc_classes/VisualScriptYieldSignal.xml b/modules/visual_script/doc_classes/VisualScriptYieldSignal.xml
index c59234433f6..c6c3188d08d 100644
--- a/modules/visual_script/doc_classes/VisualScriptYieldSignal.xml
+++ b/modules/visual_script/doc_classes/VisualScriptYieldSignal.xml
@@ -1,8 +1,10 @@
+ A Visual Script node yielding for a signal.
+ [VisualScriptYieldSignal] will pause the function execution until the provided signal is emitted.
@@ -10,20 +12,27 @@
+ The base type to be used when [member call_mode] is set to [constant CALL_MODE_INSTANCE].
+ [code]call_mode[/code] determines the target object to wait for the signal emission. See [enum CallMode] for options.
+ The node path to use when [member call_mode] is set to [constant CALL_MODE_NODE_PATH].
+ The signal name to be waited for.
+ A signal from this [Object] will be used.
+ A signal from the given [Node] in the scene tree will be used.
+ A signal from an instanced node with the given type will be used.