summaryrefslogtreecommitdiff
path: root/doc/classes
diff options
context:
space:
mode:
Diffstat (limited to 'doc/classes')
-rw-r--r--doc/classes/@GlobalScope.xml72
-rw-r--r--doc/classes/AStar.xml4
-rw-r--r--doc/classes/AStar2D.xml4
-rw-r--r--doc/classes/Animation.xml4
-rw-r--r--doc/classes/Array.xml32
-rw-r--r--doc/classes/ArrayMesh.xml8
-rw-r--r--doc/classes/BoxContainer.xml6
-rw-r--r--doc/classes/CanvasItem.xml2
-rw-r--r--doc/classes/ColorPicker.xml2
-rw-r--r--doc/classes/Curve3D.xml4
-rw-r--r--doc/classes/Engine.xml4
-rw-r--r--doc/classes/GIProbeData.xml4
-rw-r--r--doc/classes/Geometry.xml8
-rw-r--r--doc/classes/Gradient.xml4
-rw-r--r--doc/classes/HeightMapShape.xml2
-rw-r--r--doc/classes/ItemList.xml2
-rw-r--r--doc/classes/MeshDataTool.xml14
-rw-r--r--doc/classes/MeshLibrary.xml5
-rw-r--r--doc/classes/MultiMesh.xml2
-rw-r--r--doc/classes/MultiplayerAPI.xml2
-rw-r--r--doc/classes/Navigation.xml2
-rw-r--r--doc/classes/Navigation2D.xml2
-rw-r--r--doc/classes/NavigationMesh.xml4
-rw-r--r--doc/classes/NavigationPolygon.xml12
-rw-r--r--doc/classes/NavigationRegion.xml (renamed from doc/classes/NavigationMeshInstance.xml)8
-rw-r--r--doc/classes/NavigationRegion2D.xml (renamed from doc/classes/NavigationPolygonInstance.xml)2
-rw-r--r--doc/classes/NavigationServer.xml20
-rw-r--r--doc/classes/Node.xml8
-rw-r--r--doc/classes/PackedFloat32Array.xml (renamed from doc/classes/PackedRealArray.xml)17
-rw-r--r--doc/classes/PackedFloat64Array.xml114
-rw-r--r--doc/classes/PackedInt32Array.xml114
-rw-r--r--doc/classes/PackedInt64Array.xml (renamed from doc/classes/PackedIntArray.xml)18
-rw-r--r--doc/classes/PackedScene.xml2
-rw-r--r--doc/classes/PhysicsServer.xml2
-rw-r--r--doc/classes/Polygon2D.xml6
-rw-r--r--doc/classes/PolygonPathFinder.xml2
-rw-r--r--doc/classes/ProjectSettings.xml21
-rw-r--r--doc/classes/Rect2.xml14
-rw-r--r--doc/classes/Rect2i.xml52
-rw-r--r--doc/classes/ReflectionProbe.xml4
-rw-r--r--doc/classes/ResourceInteractiveLoader.xml55
-rw-r--r--doc/classes/ResourceLoader.xml36
-rw-r--r--doc/classes/SceneTree.xml2
-rw-r--r--doc/classes/ScrollContainer.xml4
-rw-r--r--doc/classes/Sky.xml4
-rw-r--r--doc/classes/String.xml58
-rw-r--r--doc/classes/SurfaceTool.xml4
-rw-r--r--doc/classes/TextEdit.xml4
-rw-r--r--doc/classes/Vector2.xml14
-rw-r--r--doc/classes/Vector2i.xml61
-rw-r--r--doc/classes/Vector3.xml14
-rw-r--r--doc/classes/Vector3i.xml72
-rw-r--r--doc/classes/VisualServer.xml4
-rw-r--r--doc/classes/VisualShader.xml4
-rw-r--r--doc/classes/VisualShaderNode.xml13
-rw-r--r--doc/classes/VisualShaderNodeCompare.xml11
-rw-r--r--doc/classes/VisualShaderNodeFloatConstant.xml (renamed from doc/classes/VisualShaderNodeScalarConstant.xml)5
-rw-r--r--doc/classes/VisualShaderNodeFloatFunc.xml116
-rw-r--r--doc/classes/VisualShaderNodeFloatOp.xml50
-rw-r--r--doc/classes/VisualShaderNodeFloatUniform.xml (renamed from doc/classes/VisualShaderNodeScalarUniform.xml)6
-rw-r--r--doc/classes/VisualShaderNodeIf.xml2
-rw-r--r--doc/classes/VisualShaderNodeInput.xml4
-rw-r--r--doc/classes/VisualShaderNodeIntConstant.xml20
-rw-r--r--doc/classes/VisualShaderNodeIntFunc.xml32
-rw-r--r--doc/classes/VisualShaderNodeIntOp.xml41
-rw-r--r--doc/classes/VisualShaderNodeIntUniform.xml38
-rw-r--r--doc/classes/VisualShaderNodeScalarFunc.xml81
-rw-r--r--doc/classes/VisualShaderNodeScalarOp.xml37
-rw-r--r--doc/classes/WorldMarginShape.xml (renamed from doc/classes/PlaneShape.xml)6
69 files changed, 1062 insertions, 345 deletions
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml
index f7f5f6bc29..74c364bad5 100644
--- a/doc/classes/@GlobalScope.xml
+++ b/doc/classes/@GlobalScope.xml
@@ -1480,76 +1480,94 @@
<constant name="TYPE_VECTOR2" value="5" enum="Variant.Type">
Variable is of type [Vector2].
</constant>
- <constant name="TYPE_RECT2" value="6" enum="Variant.Type">
+ <constant name="TYPE_VECTOR2I" value="6" enum="Variant.Type">
+ Variable is of type [Vector2i].
+ </constant>
+ <constant name="TYPE_RECT2" value="7" enum="Variant.Type">
Variable is of type [Rect2].
</constant>
- <constant name="TYPE_VECTOR3" value="7" enum="Variant.Type">
+ <constant name="TYPE_RECT2I" value="8" enum="Variant.Type">
+ Variable is of type [Rect2i].
+ </constant>
+ <constant name="TYPE_VECTOR3" value="9" enum="Variant.Type">
Variable is of type [Vector3].
</constant>
- <constant name="TYPE_TRANSFORM2D" value="8" enum="Variant.Type">
+ <constant name="TYPE_VECTOR3I" value="10" enum="Variant.Type">
+ Variable is of type [Vector3i].
+ </constant>
+ <constant name="TYPE_TRANSFORM2D" value="11" enum="Variant.Type">
Variable is of type [Transform2D].
</constant>
- <constant name="TYPE_PLANE" value="9" enum="Variant.Type">
+ <constant name="TYPE_PLANE" value="12" enum="Variant.Type">
Variable is of type [Plane].
</constant>
- <constant name="TYPE_QUAT" value="10" enum="Variant.Type">
+ <constant name="TYPE_QUAT" value="13" enum="Variant.Type">
Variable is of type [Quat].
</constant>
- <constant name="TYPE_AABB" value="11" enum="Variant.Type">
+ <constant name="TYPE_AABB" value="14" enum="Variant.Type">
Variable is of type [AABB].
</constant>
- <constant name="TYPE_BASIS" value="12" enum="Variant.Type">
+ <constant name="TYPE_BASIS" value="15" enum="Variant.Type">
Variable is of type [Basis].
</constant>
- <constant name="TYPE_TRANSFORM" value="13" enum="Variant.Type">
+ <constant name="TYPE_TRANSFORM" value="16" enum="Variant.Type">
Variable is of type [Transform].
</constant>
- <constant name="TYPE_COLOR" value="14" enum="Variant.Type">
+ <constant name="TYPE_COLOR" value="17" enum="Variant.Type">
Variable is of type [Color].
</constant>
- <constant name="TYPE_STRING_NAME" value="15" enum="Variant.Type">
+ <constant name="TYPE_STRING_NAME" value="18" enum="Variant.Type">
+ Variable is of type [StringName].
</constant>
- <constant name="TYPE_NODE_PATH" value="16" enum="Variant.Type">
+ <constant name="TYPE_NODE_PATH" value="19" enum="Variant.Type">
Variable is of type [NodePath].
</constant>
- <constant name="TYPE_RID" value="17" enum="Variant.Type">
+ <constant name="TYPE_RID" value="20" enum="Variant.Type">
Variable is of type [RID].
</constant>
- <constant name="TYPE_OBJECT" value="18" enum="Variant.Type">
+ <constant name="TYPE_OBJECT" value="21" enum="Variant.Type">
Variable is of type [Object].
</constant>
- <constant name="TYPE_CALLABLE" value="19" enum="Variant.Type">
+ <constant name="TYPE_CALLABLE" value="22" enum="Variant.Type">
+ Variable is of type [Callable].
</constant>
- <constant name="TYPE_SIGNAL" value="20" enum="Variant.Type">
+ <constant name="TYPE_SIGNAL" value="23" enum="Variant.Type">
+ Variable is of type [Signal].
</constant>
- <constant name="TYPE_DICTIONARY" value="21" enum="Variant.Type">
+ <constant name="TYPE_DICTIONARY" value="24" enum="Variant.Type">
Variable is of type [Dictionary].
</constant>
- <constant name="TYPE_ARRAY" value="22" enum="Variant.Type">
+ <constant name="TYPE_ARRAY" value="25" enum="Variant.Type">
Variable is of type [Array].
</constant>
- <constant name="TYPE_RAW_ARRAY" value="23" enum="Variant.Type">
+ <constant name="TYPE_RAW_ARRAY" value="26" enum="Variant.Type">
Variable is of type [PackedByteArray].
</constant>
- <constant name="TYPE_INT_ARRAY" value="24" enum="Variant.Type">
- Variable is of type [PackedIntArray].
+ <constant name="TYPE_INT32_ARRAY" value="27" enum="Variant.Type">
+ Variable is of type [PackedInt32Array].
+ </constant>
+ <constant name="TYPE_INT64_ARRAY" value="28" enum="Variant.Type">
+ Variable is of type [PackedInt64Array].
+ </constant>
+ <constant name="TYPE_FLOAT32_ARRAY" value="29" enum="Variant.Type">
+ Variable is of type [PackedFloat32Array].
</constant>
- <constant name="TYPE_REAL_ARRAY" value="25" enum="Variant.Type">
- Variable is of type [PackedRealArray].
+ <constant name="TYPE_FLOAT64_ARRAY" value="30" enum="Variant.Type">
+ Variable is of type [PackedFloat64Array].
</constant>
- <constant name="TYPE_STRING_ARRAY" value="26" enum="Variant.Type">
+ <constant name="TYPE_STRING_ARRAY" value="31" enum="Variant.Type">
Variable is of type [PackedStringArray].
</constant>
- <constant name="TYPE_VECTOR2_ARRAY" value="27" enum="Variant.Type">
+ <constant name="TYPE_VECTOR2_ARRAY" value="32" enum="Variant.Type">
Variable is of type [PackedVector2Array].
</constant>
- <constant name="TYPE_VECTOR3_ARRAY" value="28" enum="Variant.Type">
+ <constant name="TYPE_VECTOR3_ARRAY" value="33" enum="Variant.Type">
Variable is of type [PackedVector3Array].
</constant>
- <constant name="TYPE_COLOR_ARRAY" value="29" enum="Variant.Type">
+ <constant name="TYPE_COLOR_ARRAY" value="34" enum="Variant.Type">
Variable is of type [PackedColorArray].
</constant>
- <constant name="TYPE_MAX" value="30" enum="Variant.Type">
+ <constant name="TYPE_MAX" value="35" enum="Variant.Type">
Represents the size of the [enum Variant.Type] enum.
</constant>
<constant name="OP_EQUAL" value="0" enum="Variant.Operator">
diff --git a/doc/classes/AStar.xml b/doc/classes/AStar.xml
index d175aa6f45..e930abba87 100644
--- a/doc/classes/AStar.xml
+++ b/doc/classes/AStar.xml
@@ -152,7 +152,7 @@
</description>
</method>
<method name="get_id_path">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="from_id" type="int">
</argument>
@@ -185,7 +185,7 @@
</description>
</method>
<method name="get_point_connections">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="id" type="int">
</argument>
diff --git a/doc/classes/AStar2D.xml b/doc/classes/AStar2D.xml
index af1fb3e273..2639f62552 100644
--- a/doc/classes/AStar2D.xml
+++ b/doc/classes/AStar2D.xml
@@ -111,7 +111,7 @@
</description>
</method>
<method name="get_id_path">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="from_id" type="int">
</argument>
@@ -144,7 +144,7 @@
</description>
</method>
<method name="get_point_connections">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="id" type="int">
</argument>
diff --git a/doc/classes/Animation.xml b/doc/classes/Animation.xml
index 51de591f49..0926ef9855 100644
--- a/doc/classes/Animation.xml
+++ b/doc/classes/Animation.xml
@@ -274,7 +274,7 @@
</description>
</method>
<method name="method_track_get_key_indices" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="track_idx" type="int">
</argument>
@@ -627,7 +627,7 @@
</description>
</method>
<method name="value_track_get_key_indices" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="track_idx" type="int">
</argument>
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml
index f99af5b091..234949277a 100644
--- a/doc/classes/Array.xml
+++ b/doc/classes/Array.xml
@@ -14,6 +14,12 @@
array[2] = "Three"
print(array[-2]) # Three.
[/codeblock]
+ Arrays can be concatenated using the [code]+[/code] operator:
+ [codeblock]
+ var array1 = ["One", 2]
+ var array2 = [3, "Four"]
+ print(array1 + array2) # ["One", 2, 3, "Four"]
+ [/codeblock]
Arrays are always passed by reference.
</description>
<tutorials>
@@ -58,19 +64,37 @@
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PackedRealArray">
+ <argument index="0" name="from" type="PackedFloat64Array">
+ </argument>
+ <description>
+ Constructs an array from a [PackedFloat64Array].
+ </description>
+ </method>
+ <method name="Array">
+ <return type="Array">
+ </return>
+ <argument index="0" name="from" type="PackedFloat32Array">
+ </argument>
+ <description>
+ Constructs an array from a [PackedFloat32Array].
+ </description>
+ </method>
+ <method name="Array">
+ <return type="Array">
+ </return>
+ <argument index="0" name="from" type="PackedInt64Array">
</argument>
<description>
- Constructs an array from a [PackedRealArray].
+ Constructs an array from a [PackedInt64Array].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PackedIntArray">
+ <argument index="0" name="from" type="PackedInt32Array">
</argument>
<description>
- Constructs an array from a [PackedIntArray].
+ Constructs an array from a [PackedInt32Array].
</description>
</method>
<method name="Array">
diff --git a/doc/classes/ArrayMesh.xml b/doc/classes/ArrayMesh.xml
index 3c599792ad..33b62054df 100644
--- a/doc/classes/ArrayMesh.xml
+++ b/doc/classes/ArrayMesh.xml
@@ -208,7 +208,7 @@
[PackedVector3Array] of vertex normals.
</constant>
<constant name="ARRAY_TANGENT" value="2" enum="ArrayType">
- [PackedRealArray] of vertex tangents. Each element in groups of 4 floats, first 3 floats determine the tangent, and the last the binormal direction as -1 or 1.
+ [PackedFloat32Array] of vertex tangents. Each element in groups of 4 floats, first 3 floats determine the tangent, and the last the binormal direction as -1 or 1.
</constant>
<constant name="ARRAY_COLOR" value="3" enum="ArrayType">
[PackedColorArray] of vertex colors.
@@ -220,13 +220,13 @@
[PackedVector2Array] for second UV coordinates.
</constant>
<constant name="ARRAY_BONES" value="6" enum="ArrayType">
- [PackedRealArray] or [PackedIntArray] of bone indices. Each element in groups of 4 floats.
+ [PackedFloat32Array] or [PackedInt32Array] of bone indices. Each element in groups of 4 floats.
</constant>
<constant name="ARRAY_WEIGHTS" value="7" enum="ArrayType">
- [PackedRealArray] of bone weights. Each element in groups of 4 floats.
+ [PackedFloat32Array] of bone weights. Each element in groups of 4 floats.
</constant>
<constant name="ARRAY_INDEX" value="8" enum="ArrayType">
- [PackedIntArray] of integers used as indices referencing vertices, colors, normals, tangents, and textures. All of those arrays must have the same number of elements as the vertex array. No index can be beyond the vertex array size. When this index array is present, it puts the function into "index mode," where the index selects the *i*'th vertex, normal, tangent, color, UV, etc. This means if you want to have different normals or colors along an edge, you have to duplicate the vertices.
+ [PackedInt32Array] of integers used as indices referencing vertices, colors, normals, tangents, and textures. All of those arrays must have the same number of elements as the vertex array. No index can be beyond the vertex array size. When this index array is present, it puts the function into "index mode," where the index selects the *i*'th vertex, normal, tangent, color, UV, etc. This means if you want to have different normals or colors along an edge, you have to duplicate the vertices.
For triangles, the index array is interpreted as triples, referring to the vertices of each triangle. For lines, the index array is in pairs indicating the start and end of each line.
</constant>
<constant name="ARRAY_MAX" value="9" enum="ArrayType">
diff --git a/doc/classes/BoxContainer.xml b/doc/classes/BoxContainer.xml
index 4b5d4c853a..0d8233e6ff 100644
--- a/doc/classes/BoxContainer.xml
+++ b/doc/classes/BoxContainer.xml
@@ -4,7 +4,7 @@
Base class for box containers.
</brief_description>
<description>
- Arranges child controls vertically or horizontally, and rearranges the controls automatically when their minimum size changes.
+ Arranges child [Control] nodes vertically or horizontally, and rearranges them automatically when their minimum size changes.
</description>
<tutorials>
</tutorials>
@@ -15,13 +15,13 @@
<argument index="0" name="begin" type="bool">
</argument>
<description>
- Adds a control to the box as a spacer. If [code]true[/code], [code]begin[/code] will insert the spacer control in front of other children.
+ Adds a [Control] node to the box as a spacer. If [code]begin[/code] is [code]true[/code], it will insert the [Control] node in front of all other children.
</description>
</method>
</methods>
<members>
<member name="alignment" type="int" setter="set_alignment" getter="get_alignment" enum="BoxContainer.AlignMode" default="0">
- The alignment of the container's children (must be one of [constant ALIGN_BEGIN], [constant ALIGN_CENTER] or [constant ALIGN_END]).
+ The alignment of the container's children (must be one of [constant ALIGN_BEGIN], [constant ALIGN_CENTER], or [constant ALIGN_END]).
</member>
</members>
<constants>
diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml
index e6251a1d66..dec7c907a4 100644
--- a/doc/classes/CanvasItem.xml
+++ b/doc/classes/CanvasItem.xml
@@ -260,7 +260,7 @@
<argument index="9" name="texture_repeat" type="int" enum="CanvasItem.TextureRepeat" default="0">
</argument>
<description>
- Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points for a triangle and 4 points for a quad.
+ Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points for a triangle, and 4 points for a quad.
</description>
</method>
<method name="draw_rect">
diff --git a/doc/classes/ColorPicker.xml b/doc/classes/ColorPicker.xml
index 0805a87d18..5ab929d911 100644
--- a/doc/classes/ColorPicker.xml
+++ b/doc/classes/ColorPicker.xml
@@ -4,7 +4,7 @@
Color picker control.
</brief_description>
<description>
- [Control] node displaying a color picker widget. It's useful for selecting a color from an RGB/RGBA colorspace.
+ Displays a color picker widget. Useful for selecting a color from an RGB/RGBA colorspace.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Curve3D.xml b/doc/classes/Curve3D.xml
index c5345c8025..5024cdefbd 100644
--- a/doc/classes/Curve3D.xml
+++ b/doc/classes/Curve3D.xml
@@ -48,10 +48,10 @@
</description>
</method>
<method name="get_baked_tilts" qualifiers="const">
- <return type="PackedRealArray">
+ <return type="PackedFloat32Array">
</return>
<description>
- Returns the cache of tilts as a [PackedRealArray].
+ Returns the cache of tilts as a [PackedFloat32Array].
</description>
</method>
<method name="get_baked_up_vectors" qualifiers="const">
diff --git a/doc/classes/Engine.xml b/doc/classes/Engine.xml
index 8cdb9c1c3f..45c153b6dc 100644
--- a/doc/classes/Engine.xml
+++ b/doc/classes/Engine.xml
@@ -147,10 +147,10 @@
If [code]true[/code], it is running inside the editor. Useful for tool scripts.
</member>
<member name="iterations_per_second" type="int" setter="set_iterations_per_second" getter="get_iterations_per_second" default="60">
- The number of fixed iterations per second (for fixed process and physics).
+ The number of fixed iterations per second. This controls how often physics simulation and [method Node._physics_process] methods are run. This value should generally always be set to [code]60[/code] or above, as Godot doesn't interpolate the physics step. As a result, values lower than [code]60[/code] will look stuttery. This value can be increased to make input more reactive or work around tunneling issues, but keep in mind doing so will increase CPU usage.
</member>
<member name="physics_jitter_fix" type="float" setter="set_physics_jitter_fix" getter="get_physics_jitter_fix" default="0.5">
- Controls how much physic ticks are synchronized with real time. For 0 or less, the ticks are synchronized. Such values are recommended for network games, where clock synchronization matters. Higher values cause higher deviation of in-game clock and real clock, but allows to smooth out framerate jitters. The default value of 0.5 should be fine for most; values above 2 could cause the game to react to dropped frames with a noticeable delay and are not recommended.
+ Controls how much physics ticks are synchronized with real time. For 0 or less, the ticks are synchronized. Such values are recommended for network games, where clock synchronization matters. Higher values cause higher deviation of in-game clock and real clock, but allows to smooth out framerate jitters. The default value of 0.5 should be fine for most; values above 2 could cause the game to react to dropped frames with a noticeable delay and are not recommended.
</member>
<member name="target_fps" type="int" setter="set_target_fps" getter="get_target_fps" default="0">
The desired frames per second. If the hardware cannot keep up, this setting may not be respected. A value of 0 means no limit.
diff --git a/doc/classes/GIProbeData.xml b/doc/classes/GIProbeData.xml
index 3504d127b8..228e1afb4c 100644
--- a/doc/classes/GIProbeData.xml
+++ b/doc/classes/GIProbeData.xml
@@ -22,7 +22,7 @@
</argument>
<argument index="5" name="distance_field" type="PackedByteArray">
</argument>
- <argument index="6" name="level_counts" type="PackedIntArray">
+ <argument index="6" name="level_counts" type="PackedInt32Array">
</argument>
<description>
</description>
@@ -40,7 +40,7 @@
</description>
</method>
<method name="get_level_counts" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
</description>
diff --git a/doc/classes/Geometry.xml b/doc/classes/Geometry.xml
index 9d4e0d0388..b2d77f6f92 100644
--- a/doc/classes/Geometry.xml
+++ b/doc/classes/Geometry.xml
@@ -445,21 +445,21 @@
</description>
</method>
<method name="triangulate_delaunay_2d">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="points" type="PackedVector2Array">
</argument>
<description>
- Triangulates the area specified by discrete set of [code]points[/code] such that no point is inside the circumcircle of any resulting triangle. Returns a [PackedIntArray] where each triangle consists of three consecutive point indices into [code]points[/code] (i.e. the returned array will have [code]n * 3[/code] elements, with [code]n[/code] being the number of found triangles). If the triangulation did not succeed, an empty [PackedIntArray] is returned.
+ Triangulates the area specified by discrete set of [code]points[/code] such that no point is inside the circumcircle of any resulting triangle. Returns a [PackedInt32Array] where each triangle consists of three consecutive point indices into [code]points[/code] (i.e. the returned array will have [code]n * 3[/code] elements, with [code]n[/code] being the number of found triangles). If the triangulation did not succeed, an empty [PackedInt32Array] is returned.
</description>
</method>
<method name="triangulate_polygon">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="polygon" type="PackedVector2Array">
</argument>
<description>
- Triangulates the polygon specified by the points in [code]polygon[/code]. Returns a [PackedIntArray] where each triangle consists of three consecutive point indices into [code]polygon[/code] (i.e. the returned array will have [code]n * 3[/code] elements, with [code]n[/code] being the number of found triangles). If the triangulation did not succeed, an empty [PackedIntArray] is returned.
+ Triangulates the polygon specified by the points in [code]polygon[/code]. Returns a [PackedInt32Array] where each triangle consists of three consecutive point indices into [code]polygon[/code] (i.e. the returned array will have [code]n * 3[/code] elements, with [code]n[/code] being the number of found triangles). If the triangulation did not succeed, an empty [PackedInt32Array] is returned.
</description>
</method>
</methods>
diff --git a/doc/classes/Gradient.xml b/doc/classes/Gradient.xml
index 12c87f9cff..05aebef9de 100644
--- a/doc/classes/Gradient.xml
+++ b/doc/classes/Gradient.xml
@@ -90,8 +90,8 @@
<member name="colors" type="PackedColorArray" setter="set_colors" getter="get_colors" default="PackedColorArray( 0, 0, 0, 1, 1, 1, 1, 1 )">
Gradient's colors returned as a [PackedColorArray].
</member>
- <member name="offsets" type="PackedRealArray" setter="set_offsets" getter="get_offsets" default="PackedRealArray( 0, 1 )">
- Gradient's offsets returned as a [PackedRealArray].
+ <member name="offsets" type="PackedFloat32Array" setter="set_offsets" getter="get_offsets" default="PackedFloat32Array( 0, 1 )">
+ Gradient's offsets returned as a [PackedFloat32Array].
</member>
</members>
<constants>
diff --git a/doc/classes/HeightMapShape.xml b/doc/classes/HeightMapShape.xml
index 505961cd0c..029f3642d2 100644
--- a/doc/classes/HeightMapShape.xml
+++ b/doc/classes/HeightMapShape.xml
@@ -11,7 +11,7 @@
<methods>
</methods>
<members>
- <member name="map_data" type="PackedRealArray" setter="set_map_data" getter="get_map_data" default="PackedRealArray( 0, 0, 0, 0 )">
+ <member name="map_data" type="PackedFloat32Array" setter="set_map_data" getter="get_map_data" default="PackedFloat32Array( 0, 0, 0, 0 )">
Height map data, pool array must be of [member map_width] * [member map_depth] size.
</member>
<member name="map_depth" type="int" setter="set_map_depth" getter="get_map_depth" default="2">
diff --git a/doc/classes/ItemList.xml b/doc/classes/ItemList.xml
index d53fabaacb..c6ed1e22ed 100644
--- a/doc/classes/ItemList.xml
+++ b/doc/classes/ItemList.xml
@@ -142,7 +142,7 @@
</description>
</method>
<method name="get_selected_items">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns an array with the indexes of the selected items.
diff --git a/doc/classes/MeshDataTool.xml b/doc/classes/MeshDataTool.xml
index bdc9d20305..81ff5969e3 100644
--- a/doc/classes/MeshDataTool.xml
+++ b/doc/classes/MeshDataTool.xml
@@ -57,7 +57,7 @@
</description>
</method>
<method name="get_edge_faces" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -160,7 +160,7 @@
</description>
</method>
<method name="get_vertex_bones" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -185,7 +185,7 @@
</description>
</method>
<method name="get_vertex_edges" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -194,7 +194,7 @@
</description>
</method>
<method name="get_vertex_faces" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -248,7 +248,7 @@
</description>
</method>
<method name="get_vertex_weights" qualifiers="const">
- <return type="PackedRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -303,7 +303,7 @@
</return>
<argument index="0" name="idx" type="int">
</argument>
- <argument index="1" name="bones" type="PackedIntArray">
+ <argument index="1" name="bones" type="PackedInt32Array">
</argument>
<description>
Sets the bones of the given vertex.
@@ -380,7 +380,7 @@
</return>
<argument index="0" name="idx" type="int">
</argument>
- <argument index="1" name="weights" type="PackedRealArray">
+ <argument index="1" name="weights" type="PackedFloat32Array">
</argument>
<description>
Sets the bone weights of the given vertex.
diff --git a/doc/classes/MeshLibrary.xml b/doc/classes/MeshLibrary.xml
index ec12a0ff42..a96f6d7231 100644
--- a/doc/classes/MeshLibrary.xml
+++ b/doc/classes/MeshLibrary.xml
@@ -36,7 +36,7 @@
</description>
</method>
<method name="get_item_list" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns the list of item IDs in use.
@@ -84,8 +84,7 @@
<argument index="0" name="id" type="int">
</argument>
<description>
- Returns a generated item preview (a 3D rendering in isometric perspective).
- [b]Note:[/b] Since item previews are only generated in an editor context, this function will return an empty [Texture2D] in a running project.
+ When running in the editor, returns a generated item preview (a 3D rendering in isometric perspective). When used in a running project, returns the manually-defined item preview which can be set using [method set_item_preview]. Returns an empty [Texture2D] if no preview was manually set in a running project.
</description>
</method>
<method name="get_item_shapes" qualifiers="const">
diff --git a/doc/classes/MultiMesh.xml b/doc/classes/MultiMesh.xml
index 6831fc88df..24b87f8e28 100644
--- a/doc/classes/MultiMesh.xml
+++ b/doc/classes/MultiMesh.xml
@@ -105,7 +105,7 @@
</method>
</methods>
<members>
- <member name="buffer" type="PackedRealArray" setter="set_buffer" getter="get_buffer" default="PackedRealArray( )">
+ <member name="buffer" type="PackedFloat32Array" setter="set_buffer" getter="get_buffer" default="PackedFloat32Array( )">
</member>
<member name="color_array" type="PackedColorArray" setter="_set_color_array" getter="_get_color_array">
</member>
diff --git a/doc/classes/MultiplayerAPI.xml b/doc/classes/MultiplayerAPI.xml
index 968357ea07..9c753818d9 100644
--- a/doc/classes/MultiplayerAPI.xml
+++ b/doc/classes/MultiplayerAPI.xml
@@ -19,7 +19,7 @@
</description>
</method>
<method name="get_network_connected_peers" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns the peer IDs of all connected peers of this MultiplayerAPI's [member network_peer].
diff --git a/doc/classes/Navigation.xml b/doc/classes/Navigation.xml
index 0000ca6bd5..93170bca4a 100644
--- a/doc/classes/Navigation.xml
+++ b/doc/classes/Navigation.xml
@@ -4,7 +4,7 @@
Mesh-based navigation and pathfinding node.
</brief_description>
<description>
- Provides navigation and pathfinding within a collection of [NavigationMesh]es. These will be automatically collected from child [NavigationMeshInstance] nodes. In addition to basic pathfinding, this class also assists with aligning navigation agents with the meshes they are navigating on.
+ Provides navigation and pathfinding within a collection of [NavigationMesh]es. These will be automatically collected from child [NavigationRegion] nodes. In addition to basic pathfinding, this class also assists with aligning navigation agents with the meshes they are navigating on.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Navigation2D.xml b/doc/classes/Navigation2D.xml
index 0d016a3210..dcbfbc2350 100644
--- a/doc/classes/Navigation2D.xml
+++ b/doc/classes/Navigation2D.xml
@@ -4,7 +4,7 @@
2D navigation and pathfinding node.
</brief_description>
<description>
- Navigation2D provides navigation and pathfinding within a 2D area, specified as a collection of [NavigationPolygon] resources. These are automatically collected from child [NavigationPolygonInstance] nodes.
+ Navigation2D provides navigation and pathfinding within a 2D area, specified as a collection of [NavigationPolygon] resources. These are automatically collected from child [NavigationRegion2D] nodes.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/NavigationMesh.xml b/doc/classes/NavigationMesh.xml
index 04ebb1336c..6deca4394f 100644
--- a/doc/classes/NavigationMesh.xml
+++ b/doc/classes/NavigationMesh.xml
@@ -10,7 +10,7 @@
<method name="add_polygon">
<return type="void">
</return>
- <argument index="0" name="polygon" type="PackedIntArray">
+ <argument index="0" name="polygon" type="PackedInt32Array">
</argument>
<description>
</description>
@@ -38,7 +38,7 @@
</description>
</method>
<method name="get_polygon">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
diff --git a/doc/classes/NavigationPolygon.xml b/doc/classes/NavigationPolygon.xml
index 908617fb91..b0f77dff83 100644
--- a/doc/classes/NavigationPolygon.xml
+++ b/doc/classes/NavigationPolygon.xml
@@ -11,16 +11,16 @@
var outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
polygon.add_outline(outline)
polygon.make_polygons_from_outlines()
- $NavigationPolygonInstance.navpoly = polygon
+ $NavigationRegion2D.navpoly = polygon
[/codeblock]
Using [method add_polygon] and indices of the vertices array.
[codeblock]
var polygon = NavigationPolygon.new()
var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
polygon.set_vertices(vertices)
- var indices = PackedIntArray(0, 3, 1)
+ var indices = PackedInt32Array(0, 3, 1)
polygon.add_polygon(indices)
- $NavigationPolygonInstance.navpoly = polygon
+ $NavigationRegion2D.navpoly = polygon
[/codeblock]
</description>
<tutorials>
@@ -49,7 +49,7 @@
<method name="add_polygon">
<return type="void">
</return>
- <argument index="0" name="polygon" type="PackedIntArray">
+ <argument index="0" name="polygon" type="PackedInt32Array">
</argument>
<description>
Adds a polygon using the indices of the vertices you get when calling [method get_vertices].
@@ -86,12 +86,12 @@
</description>
</method>
<method name="get_polygon">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
- Returns a [PackedIntArray] containing the indices of the vertices of a created polygon.
+ Returns a [PackedInt32Array] containing the indices of the vertices of a created polygon.
</description>
</method>
<method name="get_polygon_count" qualifiers="const">
diff --git a/doc/classes/NavigationMeshInstance.xml b/doc/classes/NavigationRegion.xml
index 75bd62e278..41fac70654 100644
--- a/doc/classes/NavigationMeshInstance.xml
+++ b/doc/classes/NavigationRegion.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="NavigationMeshInstance" inherits="Spatial" version="4.0">
+<class name="NavigationRegion" inherits="Spatial" version="4.0">
<brief_description>
- An instance of a [NavigationMesh].
+ A region of the navigation map.
</brief_description>
<description>
- An instance of a [NavigationMesh]. It tells the [Navigation] node what can be navigated and what cannot, based on the [NavigationMesh] resource. This should be a child of a [Navigation] node.
+ A region of the navigation map. It tells the [Navigation] node what can be navigated and what cannot, based on the [NavigationMesh] resource. This should be a child of a [Navigation] node (even not a direct child).
</description>
<tutorials>
</tutorials>
@@ -19,7 +19,7 @@
</methods>
<members>
<member name="enabled" type="bool" setter="set_enabled" getter="is_enabled" default="true">
- Determines if the [NavigationMeshInstance] is enabled or disabled.
+ Determines if the [NavigationRegion] is enabled or disabled.
</member>
<member name="navmesh" type="NavigationMesh" setter="set_navigation_mesh" getter="get_navigation_mesh">
The [NavigationMesh] resource to use.
diff --git a/doc/classes/NavigationPolygonInstance.xml b/doc/classes/NavigationRegion2D.xml
index 34c6b09859..aef114e1db 100644
--- a/doc/classes/NavigationPolygonInstance.xml
+++ b/doc/classes/NavigationRegion2D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="NavigationPolygonInstance" inherits="Node2D" version="4.0">
+<class name="NavigationRegion2D" inherits="Node2D" version="4.0">
<brief_description>
</brief_description>
<description>
diff --git a/doc/classes/NavigationServer.xml b/doc/classes/NavigationServer.xml
index 5eb9f34ead..1b534b8458 100644
--- a/doc/classes/NavigationServer.xml
+++ b/doc/classes/NavigationServer.xml
@@ -298,6 +298,17 @@
Sets the map up direction.
</description>
</method>
+ <method name="process">
+ <return type="void">
+ </return>
+ <argument index="0" name="delta_time" type="float">
+ </argument>
+ <description>
+ Process the collision avoidance agents.
+ The result of this process is needed by the physics server, so this must be called in the main thread.
+ Note: This function is not thread safe.
+ </description>
+ </method>
<method name="region_bake_navmesh" qualifiers="const">
<return type="void">
</return>
@@ -358,15 +369,6 @@
Control activation of this server.
</description>
</method>
- <method name="step">
- <return type="void">
- </return>
- <argument index="0" name="delta_time" type="float">
- </argument>
- <description>
- Steps the server. This is not threadsafe and must be called in single thread.
- </description>
- </method>
</methods>
<constants>
</constants>
diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml
index 3ddc3af200..eb15bc2ad9 100644
--- a/doc/classes/Node.xml
+++ b/doc/classes/Node.xml
@@ -129,21 +129,23 @@
child_node.get_parent().remove_child(child_node)
add_child(child_node)
[/codeblock]
+ If you need the child node to be added below a specific node in the list of children, use [method add_child_below_node] instead of this method.
[b]Note:[/b] If you want a child to be persisted to a [PackedScene], you must set [member owner] in addition to calling [method add_child]. This is typically relevant for [url=https://godot.readthedocs.io/en/latest/tutorials/misc/running_code_in_the_editor.html]tool scripts[/url] and [url=https://godot.readthedocs.io/en/latest/tutorials/plugins/editor/index.html]editor plugins[/url]. If [method add_child] is called without setting [member owner], the newly added [Node] will not be visible in the scene tree, though it will be visible in the 2D/3D view.
</description>
</method>
<method name="add_child_below_node">
<return type="void">
</return>
- <argument index="0" name="node" type="Node">
+ <argument index="0" name="preceding_node" type="Node">
</argument>
- <argument index="1" name="child_node" type="Node">
+ <argument index="1" name="node" type="Node">
</argument>
<argument index="2" name="legible_unique_name" type="bool" default="false">
</argument>
<description>
- Adds a child node. The child is placed below the given node in the list of children.
+ Adds a child node below the [code]preceding_node[/code].
If [code]legible_unique_name[/code] is [code]true[/code], the child node will have an human-readable name based on the name of the node being instanced instead of its type.
+ Use [method add_child] instead of this method if you don't need the child node to be added below a specific node in the list of children.
</description>
</method>
<method name="add_to_group">
diff --git a/doc/classes/PackedRealArray.xml b/doc/classes/PackedFloat32Array.xml
index 0d40c2517f..ee82586cdb 100644
--- a/doc/classes/PackedRealArray.xml
+++ b/doc/classes/PackedFloat32Array.xml
@@ -1,22 +1,23 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PackedRealArray" version="4.0">
+<class name="PackedFloat32Array" version="4.0">
<brief_description>
- A packed [Array] of reals ([float]).
+ A packed [Array] of 32-bit floating-point values.
</brief_description>
<description>
- An [Array] specifically designed to hold floating-point values ([float]). Packs data tightly, so it saves memory for large array sizes.
+ An [Array] specifically designed to hold 32-bit floating-point values. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
+ If you need to pack 64-bit floats tightly, see [PackedFloat64Array].
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PackedRealArray">
- <return type="PackedRealArray">
+ <method name="PackedFloat32Array">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PackedRealArray]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedFloat32Array]. Optionally, you can pass in a generic [Array] that will be converted.
</description>
</method>
<method name="append">
@@ -31,10 +32,10 @@
<method name="append_array">
<return type="void">
</return>
- <argument index="0" name="array" type="PackedRealArray">
+ <argument index="0" name="array" type="PackedFloat32Array">
</argument>
<description>
- Appends a [PackedRealArray] at the end of this array.
+ Appends a [PackedFloat32Array] at the end of this array.
</description>
</method>
<method name="empty">
diff --git a/doc/classes/PackedFloat64Array.xml b/doc/classes/PackedFloat64Array.xml
new file mode 100644
index 0000000000..ce2300c65a
--- /dev/null
+++ b/doc/classes/PackedFloat64Array.xml
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PackedFloat64Array" version="4.0">
+ <brief_description>
+ A packed [Array] of 64-bit floating-point values.
+ </brief_description>
+ <description>
+ An [Array] specifically designed to hold 64-bit floating-point values. Packs data tightly, so it saves memory for large array sizes.
+ [b]Note:[/b] This type is passed by value and not by reference.
+ If you only need to pack 32-bit floats tightly, see [PackedFloat32Array] for a more memory-friendly alternative.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="PackedFloat64Array">
+ <return type="PackedFloat64Array">
+ </return>
+ <argument index="0" name="from" type="Array">
+ </argument>
+ <description>
+ Constructs a new [PackedFloat64Array]. Optionally, you can pass in a generic [Array] that will be converted.
+ </description>
+ </method>
+ <method name="append">
+ <return type="void">
+ </return>
+ <argument index="0" name="value" type="float">
+ </argument>
+ <description>
+ Appends an element at the end of the array (alias of [method push_back]).
+ </description>
+ </method>
+ <method name="append_array">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedFloat64Array">
+ </argument>
+ <description>
+ Appends a [PackedFloat64Array] at the end of this array.
+ </description>
+ </method>
+ <method name="empty">
+ <return type="bool">
+ </return>
+ <description>
+ Returns [code]true[/code] if the array is empty.
+ </description>
+ </method>
+ <method name="insert">
+ <return type="int">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <argument index="1" name="value" type="float">
+ </argument>
+ <description>
+ Inserts a new element at a given position in the array. The position must be valid, or at the end of the array ([code]idx == size()[/code]).
+ </description>
+ </method>
+ <method name="invert">
+ <return type="void">
+ </return>
+ <description>
+ Reverses the order of the elements in the array.
+ </description>
+ </method>
+ <method name="push_back">
+ <return type="void">
+ </return>
+ <argument index="0" name="value" type="float">
+ </argument>
+ <description>
+ Appends an element at the end of the array.
+ </description>
+ </method>
+ <method name="remove">
+ <return type="void">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <description>
+ Removes an element from the array by index.
+ </description>
+ </method>
+ <method name="resize">
+ <return type="void">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <description>
+ Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size.
+ </description>
+ </method>
+ <method name="set">
+ <return type="void">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <argument index="1" name="value" type="float">
+ </argument>
+ <description>
+ Changes the float at the given index.
+ </description>
+ </method>
+ <method name="size">
+ <return type="int">
+ </return>
+ <description>
+ Returns the size of the array.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/PackedInt32Array.xml b/doc/classes/PackedInt32Array.xml
new file mode 100644
index 0000000000..176c624956
--- /dev/null
+++ b/doc/classes/PackedInt32Array.xml
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PackedInt32Array" version="4.0">
+ <brief_description>
+ A packed [Array] of 32-bit integers.
+ </brief_description>
+ <description>
+ An [Array] specifically designed to hold 32-bit integer values. Packs data tightly, so it saves memory for large array sizes.
+ [b]Note:[/b] This type is passed by value and not by reference.
+ [b]Note:[/b] This type stores signed 32-bit integers, which means it can take values in the interval [code][-2^31, 2^31 - 1][/code], i.e. [code][-2147483648, 2147483647][/code]. Exceeding those bounds will wrap around. In comparison, [int] uses signed 64-bit integers which can hold much larger values. If you need to pack 64-bit integers tightly, see [PackedInt64Array].
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="PackedInt32Array">
+ <return type="PackedInt32Array">
+ </return>
+ <argument index="0" name="from" type="Array">
+ </argument>
+ <description>
+ Constructs a new [PackedInt32Array]. Optionally, you can pass in a generic [Array] that will be converted.
+ </description>
+ </method>
+ <method name="append">
+ <return type="void">
+ </return>
+ <argument index="0" name="integer" type="int">
+ </argument>
+ <description>
+ Appends an element at the end of the array (alias of [method push_back]).
+ </description>
+ </method>
+ <method name="append_array">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedInt32Array">
+ </argument>
+ <description>
+ Appends a [PackedInt32Array] at the end of this array.
+ </description>
+ </method>
+ <method name="empty">
+ <return type="bool">
+ </return>
+ <description>
+ Returns [code]true[/code] if the array is empty.
+ </description>
+ </method>
+ <method name="insert">
+ <return type="int">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <argument index="1" name="integer" type="int">
+ </argument>
+ <description>
+ Inserts a new integer at a given position in the array. The position must be valid, or at the end of the array ([code]idx == size()[/code]).
+ </description>
+ </method>
+ <method name="invert">
+ <return type="void">
+ </return>
+ <description>
+ Reverses the order of the elements in the array.
+ </description>
+ </method>
+ <method name="push_back">
+ <return type="void">
+ </return>
+ <argument index="0" name="integer" type="int">
+ </argument>
+ <description>
+ Appends a value to the array.
+ </description>
+ </method>
+ <method name="remove">
+ <return type="void">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <description>
+ Removes an element from the array by index.
+ </description>
+ </method>
+ <method name="resize">
+ <return type="void">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <description>
+ Sets the size of the array. If the array is grown, reserves elements at the end of the array. If the array is shrunk, truncates the array to the new size.
+ </description>
+ </method>
+ <method name="set">
+ <return type="void">
+ </return>
+ <argument index="0" name="idx" type="int">
+ </argument>
+ <argument index="1" name="integer" type="int">
+ </argument>
+ <description>
+ Changes the integer at the given index.
+ </description>
+ </method>
+ <method name="size">
+ <return type="int">
+ </return>
+ <description>
+ Returns the array size.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/PackedIntArray.xml b/doc/classes/PackedInt64Array.xml
index ca98157be5..d8a8071590 100644
--- a/doc/classes/PackedIntArray.xml
+++ b/doc/classes/PackedInt64Array.xml
@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PackedIntArray" version="4.0">
+<class name="PackedInt64Array" version="4.0">
<brief_description>
- A packed [Array] of integers ([int]).
+ A packed [Array] of 64-bit integers.
</brief_description>
<description>
- An [Array] specifically designed to hold integer values ([int]). Packs data tightly, so it saves memory for large array sizes.
+ An [Array] specifically designed to hold 64-bit integer values. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
- [b]Note:[/b] This type is limited to signed 32-bit integers, which means it can only take values in the interval [code][-2^31, 2^31 - 1][/code], i.e. [code][-2147483648, 2147483647][/code]. Exceeding those bounds will wrap around. In comparison, [int] uses signed 64-bit integers which can hold much larger values.
+ [b]Note:[/b] This type stores signed 64-bit integers, which means it can take values in the interval [code][-2^63, 2^63 - 1][/code], i.e. [code][-9223372036854775808, 9223372036854775807][/code]. Exceeding those bounds will wrap around. If you only need to pack 32-bit integers tightly, see [PackedInt32Array] for a more memory-friendly alternative.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PackedIntArray">
- <return type="PackedIntArray">
+ <method name="PackedInt64Array">
+ <return type="PackedInt64Array">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PackedIntArray]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedInt64Array]. Optionally, you can pass in a generic [Array] that will be converted.
</description>
</method>
<method name="append">
@@ -32,10 +32,10 @@
<method name="append_array">
<return type="void">
</return>
- <argument index="0" name="array" type="PackedIntArray">
+ <argument index="0" name="array" type="PackedInt64Array">
</argument>
<description>
- Appends a [PackedIntArray] at the end of this array.
+ Appends a [PackedInt64Array] at the end of this array.
</description>
</method>
<method name="empty">
diff --git a/doc/classes/PackedScene.xml b/doc/classes/PackedScene.xml
index 8efe1e2b4b..e422545b7b 100644
--- a/doc/classes/PackedScene.xml
+++ b/doc/classes/PackedScene.xml
@@ -65,7 +65,7 @@
</method>
</methods>
<members>
- <member name="_bundled" type="Dictionary" setter="_set_bundled_scene" getter="_get_bundled_scene" default="{&quot;conn_count&quot;: 0,&quot;conns&quot;: PackedIntArray( ),&quot;editable_instances&quot;: [ ],&quot;names&quot;: PackedStringArray( ),&quot;node_count&quot;: 0,&quot;node_paths&quot;: [ ],&quot;nodes&quot;: PackedIntArray( ),&quot;variants&quot;: [ ],&quot;version&quot;: 2}">
+ <member name="_bundled" type="Dictionary" setter="_set_bundled_scene" getter="_get_bundled_scene" default="{&quot;conn_count&quot;: 0,&quot;conns&quot;: PackedInt32Array( ),&quot;editable_instances&quot;: [ ],&quot;names&quot;: PackedStringArray( ),&quot;node_count&quot;: 0,&quot;node_paths&quot;: [ ],&quot;nodes&quot;: PackedInt32Array( ),&quot;variants&quot;: [ ],&quot;version&quot;: 2}">
A dictionary representation of the scene contents.
Available keys include "rnames" and "variants" for resources, "node_count", "nodes", "node_paths" for nodes, "editable_instances" for base scene children overrides, "conn_count" and "conns" for signal connections, and "version" for the format style of the PackedScene.
</member>
diff --git a/doc/classes/PhysicsServer.xml b/doc/classes/PhysicsServer.xml
index 592d3d8e4e..c9f4accee2 100644
--- a/doc/classes/PhysicsServer.xml
+++ b/doc/classes/PhysicsServer.xml
@@ -1467,7 +1467,7 @@
If [code]set[/code] there is a linear motor on this axis that targets a specific velocity.
</constant>
<constant name="SHAPE_PLANE" value="0" enum="ShapeType">
- The [Shape] is a [PlaneShape].
+ The [Shape] is a [WorldMarginShape].
</constant>
<constant name="SHAPE_RAY" value="1" enum="ShapeType">
The [Shape] is a [RayShape].
diff --git a/doc/classes/Polygon2D.xml b/doc/classes/Polygon2D.xml
index 2a408e277a..f777545733 100644
--- a/doc/classes/Polygon2D.xml
+++ b/doc/classes/Polygon2D.xml
@@ -14,7 +14,7 @@
</return>
<argument index="0" name="path" type="NodePath">
</argument>
- <argument index="1" name="weights" type="PackedRealArray">
+ <argument index="1" name="weights" type="PackedFloat32Array">
</argument>
<description>
</description>
@@ -48,7 +48,7 @@
</description>
</method>
<method name="get_bone_weights" qualifiers="const">
- <return type="PackedRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="index" type="int">
</argument>
@@ -70,7 +70,7 @@
</return>
<argument index="0" name="index" type="int">
</argument>
- <argument index="1" name="weights" type="PackedRealArray">
+ <argument index="1" name="weights" type="PackedFloat32Array">
</argument>
<description>
</description>
diff --git a/doc/classes/PolygonPathFinder.xml b/doc/classes/PolygonPathFinder.xml
index 0b535159a7..49453d32ac 100644
--- a/doc/classes/PolygonPathFinder.xml
+++ b/doc/classes/PolygonPathFinder.xml
@@ -72,7 +72,7 @@
</return>
<argument index="0" name="points" type="PackedVector2Array">
</argument>
- <argument index="1" name="connections" type="PackedIntArray">
+ <argument index="1" name="connections" type="PackedInt32Array">
</argument>
<description>
</description>
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index 236931f877..a2c6ed34e0 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -968,10 +968,12 @@
Enables [member Viewport.physics_object_picking] on the root viewport.
</member>
<member name="physics/common/physics_fps" type="int" setter="" getter="" default="60">
- Frames per second used in the physics. Physics always needs a fixed amount of frames per second.
+ The number of fixed iterations per second. This controls how often physics simulation and [method Node._physics_process] methods are run.
+ [b]Note:[/b] This property is only read when the project starts. To change the physics FPS at runtime, set [member Engine.iterations_per_second] instead.
</member>
<member name="physics/common/physics_jitter_fix" type="float" setter="" getter="" default="0.5">
Fix to improve physics jitter, specially on monitors where refresh rate is different than the physics FPS.
+ [b]Note:[/b] This property is only read when the project starts. To change the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead.
</member>
<member name="rendering/environment/default_clear_color" type="Color" setter="" getter="" default="Color( 0.3, 0.3, 0.3, 1 )">
Default background clear color. Overridable per [Viewport] using its [Environment]. See [member Environment.background_mode] and [member Environment.background_color] in particular. To change this default color programmatically, use [method VisualServer.set_default_clear_color].
@@ -1035,23 +1037,28 @@
Lower-end override for [member rendering/quality/intended_usage/framebuffer_allocation] on mobile devices, due to performance concerns or driver support.
</member>
<member name="rendering/quality/reflection_atlas/reflection_count" type="int" setter="" getter="" default="64">
+ Number of cubemaps to store in the reflection atlas. The number of [ReflectionProbe]s in a scene will be limited by this amount. A higher number requires more VRAM.
</member>
- <member name="rendering/quality/reflection_atlas/reflection_size" type="int" setter="" getter="" default="256">
+ <member name="rendering/quality/reflection_atlas/reflection_size" type="int" setter="" getter="" default="128">
+ Size of cubemap faces for [ReflectionProbe]s. A higher number requires more VRAM and may make reflection probe updating slower.
</member>
<member name="rendering/quality/reflection_atlas/reflection_size.mobile" type="int" setter="" getter="" default="128">
+ Lower-end override for [member rendering/quality/reflection_atlas/reflection_size] on mobile devices, due to performance concerns or driver support.
+ </member>
+ <member name="rendering/quality/reflections/fast_filter_high_quality" type="bool" setter="" getter="" default="false">
+ Use a higher quality variant of the fast filtering algorithm. Significantly slower than using default quality, but results in smoother reflections. Should only be used when the scene is especially detailed.
</member>
<member name="rendering/quality/reflections/ggx_samples" type="int" setter="" getter="" default="1024">
+ Sets the number of samples to take when using importance sampling for [Sky]s and [ReflectionProbe]s. A higher value will result in smoother, higher quality reflections, but increases time to calculate radiance maps. In general, fewer samples are needed for simpler, low dynamic range environments while more samples are needed for HDR environments and environments with a high level of detail.
</member>
<member name="rendering/quality/reflections/ggx_samples.mobile" type="int" setter="" getter="" default="128">
- </member>
- <member name="rendering/quality/reflections/ggx_samples_realtime" type="int" setter="" getter="" default="64">
- </member>
- <member name="rendering/quality/reflections/ggx_samples_realtime.mobile" type="int" setter="" getter="" default="16">
+ Lower-end override for [member rendering/quality/reflections/ggx_samples] on mobile devices, due to performance concerns or driver support.
</member>
<member name="rendering/quality/reflections/roughness_layers" type="int" setter="" getter="" default="6">
+ Limits the number of layers to use in radiance maps when using importance sampling. A lower number will be slightly faster and take up less VRAM.
</member>
<member name="rendering/quality/reflections/texture_array_reflections" type="bool" setter="" getter="" default="true">
- If [code]true[/code], uses texture arrays instead of mipmaps for reflection probes and panorama backgrounds (sky). This reduces jitter noise on reflections, but costs more performance and memory.
+ If [code]true[/code], uses texture arrays instead of mipmaps for reflection probes and panorama backgrounds (sky). This reduces jitter noise and upscaling artifacts on reflections, but is significantly slower to compute and uses [member rendering/quality/reflections/roughness_layers] times more memory.
</member>
<member name="rendering/quality/reflections/texture_array_reflections.mobile" type="bool" setter="" getter="" default="false">
Lower-end override for [member rendering/quality/reflections/texture_array_reflections] on mobile devices, due to performance concerns or driver support.
diff --git a/doc/classes/Rect2.xml b/doc/classes/Rect2.xml
index e32b19ff00..26abfb538b 100644
--- a/doc/classes/Rect2.xml
+++ b/doc/classes/Rect2.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="Rect2" version="4.0">
<brief_description>
- 2D axis-aligned bounding box.
+ 2D axis-aligned bounding box using floating point coordinates.
</brief_description>
<description>
- Rect2 consists of a position, a size, and several utility functions. It is typically used for fast overlap tests.
+ [Rect2] consists of a position, a size, and several utility functions. It is typically used for fast overlap tests.
+ It uses floating point coordinates.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/math/index.html</link>
@@ -36,6 +37,15 @@
Constructs a [Rect2] by x, y, width, and height.
</description>
</method>
+ <method name="Rect2">
+ <return type="Rect2">
+ </return>
+ <argument index="0" name="from" type="Rect2i">
+ </argument>
+ <description>
+ Constructs a [Rect2] from a [Rect2i].
+ </description>
+ </method>
<method name="abs">
<return type="Rect2">
</return>
diff --git a/doc/classes/Rect2i.xml b/doc/classes/Rect2i.xml
new file mode 100644
index 0000000000..2e8be384c1
--- /dev/null
+++ b/doc/classes/Rect2i.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Rect2i" version="4.0">
+ <brief_description>
+ 2D axis-aligned bounding box using integer coordinates.
+ </brief_description>
+ <description>
+ [Rect2i] consists of a position, a size, and several utility functions. It is typically used for fast overlap tests.
+ It uses integer coordinates.
+ </description>
+ <tutorials>
+ <link>https://docs.godotengine.org/en/latest/tutorials/math/index.html</link>
+ </tutorials>
+ <methods>
+ <method name="Rect2i">
+ <return type="Rect2i">
+ </return>
+ <argument index="0" name="position" type="Vector2">
+ </argument>
+ <argument index="1" name="size" type="Vector2">
+ </argument>
+ <description>
+ Constructs a [Rect2i] by position and size.
+ </description>
+ </method>
+ <method name="Rect2i">
+ <return type="Rect2i">
+ </return>
+ <argument index="0" name="x" type="int">
+ </argument>
+ <argument index="1" name="y" type="int">
+ </argument>
+ <argument index="2" name="width" type="int">
+ </argument>
+ <argument index="3" name="height" type="int">
+ </argument>
+ <description>
+ Constructs a [Rect2i] by x, y, width, and height.
+ </description>
+ </method>
+ <method name="Rect2i">
+ <return type="Rect2i">
+ </return>
+ <argument index="0" name="from" type="Rect2">
+ </argument>
+ <description>
+ Constructs a new [Rect2i] from [Rect2]. The floating point coordinates will be truncated.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/ReflectionProbe.xml b/doc/classes/ReflectionProbe.xml
index 9c7a645fec..e138af6841 100644
--- a/doc/classes/ReflectionProbe.xml
+++ b/doc/classes/ReflectionProbe.xml
@@ -4,7 +4,7 @@
Captures its surroundings to create reflections.
</brief_description>
<description>
- Capture its surroundings as a dual parabolid image, and stores versions of it with increasing levels of blur to simulate different material roughnesses.
+ Captures its surroundings as a cubemap, and stores versions of it with increasing levels of blur to simulate different material roughnesses.
The [ReflectionProbe] is used to create high-quality reflections at the cost of performance. It can be combined with [GIProbe]s and Screen Space Reflections to achieve high quality reflections. [ReflectionProbe]s render all objects within their [member cull_mask], so updating them can be quite expensive. It is best to update them once with the important static objects and then leave them.
</description>
<tutorials>
@@ -52,7 +52,7 @@
</members>
<constants>
<constant name="UPDATE_ONCE" value="0" enum="UpdateMode">
- Update the probe once on the next frame.
+ Update the probe once on the next frame. The corresponding radiance map will be generated over the following six frames. This is slower to update than [constant UPDATE_ALWAYS] but can result in higher quality reflections.
</constant>
<constant name="UPDATE_ALWAYS" value="1" enum="UpdateMode">
Update the probe every frame. This is needed when you want to capture dynamic objects. However, it results in an increased render time. Use [constant UPDATE_ONCE] whenever possible.
diff --git a/doc/classes/ResourceInteractiveLoader.xml b/doc/classes/ResourceInteractiveLoader.xml
deleted file mode 100644
index 64e94c4f2d..0000000000
--- a/doc/classes/ResourceInteractiveLoader.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ResourceInteractiveLoader" inherits="Reference" version="4.0">
- <brief_description>
- Interactive [Resource] loader.
- </brief_description>
- <description>
- Interactive [Resource] loader. This object is returned by [ResourceLoader] when performing an interactive load. It allows loading resources with high granularity, which makes it mainly useful for displaying loading bars or percentages.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- <method name="get_resource">
- <return type="Resource">
- </return>
- <description>
- Returns the loaded resource if the load operation completed successfully, [code]null[/code] otherwise.
- </description>
- </method>
- <method name="get_stage" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the load stage. The total amount of stages can be queried with [method get_stage_count].
- </description>
- </method>
- <method name="get_stage_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the total amount of stages (calls to [method poll]) needed to completely load this resource.
- </description>
- </method>
- <method name="poll">
- <return type="int" enum="Error">
- </return>
- <description>
- Polls the loading operation, i.e. loads a data chunk up to the next stage.
- Returns [constant OK] if the poll is successful but the load operation has not finished yet (intermediate stage). This means [method poll] will have to be called again until the last stage is completed.
- Returns [constant ERR_FILE_EOF] if the load operation has completed successfully. The loaded resource can be obtained by calling [method get_resource].
- Returns another [enum Error] code if the poll has failed.
- </description>
- </method>
- <method name="wait">
- <return type="int" enum="Error">
- </return>
- <description>
- Polls the loading operation successively until the resource is completely loaded or a [method poll] fails.
- Returns [constant ERR_FILE_EOF] if the load operation has completed successfully. The loaded resource can be obtained by calling [method get_resource].
- Returns another [enum Error] code if a poll has failed, aborting the operation.
- </description>
- </method>
- </methods>
- <constants>
- </constants>
-</class>
diff --git a/doc/classes/ResourceLoader.xml b/doc/classes/ResourceLoader.xml
index d2a0ac22d6..533bc9ec28 100644
--- a/doc/classes/ResourceLoader.xml
+++ b/doc/classes/ResourceLoader.xml
@@ -48,7 +48,7 @@
</argument>
<description>
Returns whether a cached resource is available for the given [code]path[/code].
- Once a resource has been loaded by the engine, it is cached in memory for faster access, and future calls to the [method load] or [method load_interactive] methods will use the cached version. The cached resource can be overridden by using [method Resource.take_over_path] on a new resource for that same path.
+ Once a resource has been loaded by the engine, it is cached in memory for faster access, and future calls to the [method load] method will use the cached version. The cached resource can be overridden by using [method Resource.take_over_path] on a new resource for that same path.
</description>
</method>
<method name="load">
@@ -68,16 +68,34 @@
Returns an empty resource if no ResourceFormatLoader could handle the file.
</description>
</method>
- <method name="load_interactive">
- <return type="ResourceInteractiveLoader">
+ <method name="load_threaded_get">
+ <return type="Resource">
+ </return>
+ <argument index="0" name="path" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="load_threaded_get_status">
+ <return type="int" enum="ResourceLoader.ThreadLoadStatus">
+ </return>
+ <argument index="0" name="path" type="String">
+ </argument>
+ <argument index="1" name="progress" type="Array" default="[ ]">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="load_threaded_request">
+ <return type="int" enum="Error">
</return>
<argument index="0" name="path" type="String">
</argument>
<argument index="1" name="type_hint" type="String" default="&quot;&quot;">
</argument>
+ <argument index="2" name="use_sub_threads" type="bool" default="false">
+ </argument>
<description>
- Starts loading a resource interactively. The returned [ResourceInteractiveLoader] object allows to load with high granularity, calling its [method ResourceInteractiveLoader.poll] method successively to load chunks.
- An optional [code]type_hint[/code] can be used to further specify the [Resource] type that should be handled by the [ResourceFormatLoader].
</description>
</method>
<method name="set_abort_on_missing_resources">
@@ -91,5 +109,13 @@
</method>
</methods>
<constants>
+ <constant name="THREAD_LOAD_INVALID_RESOURCE" value="0" enum="ThreadLoadStatus">
+ </constant>
+ <constant name="THREAD_LOAD_IN_PROGRESS" value="1" enum="ThreadLoadStatus">
+ </constant>
+ <constant name="THREAD_LOAD_FAILED" value="2" enum="ThreadLoadStatus">
+ </constant>
+ <constant name="THREAD_LOAD_LOADED" value="3" enum="ThreadLoadStatus">
+ </constant>
</constants>
</class>
diff --git a/doc/classes/SceneTree.xml b/doc/classes/SceneTree.xml
index 37f0944ca1..e6778013cf 100644
--- a/doc/classes/SceneTree.xml
+++ b/doc/classes/SceneTree.xml
@@ -83,7 +83,7 @@
</description>
</method>
<method name="get_network_connected_peers" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns the peer IDs of all connected peers of this [SceneTree]'s [member network_peer].
diff --git a/doc/classes/ScrollContainer.xml b/doc/classes/ScrollContainer.xml
index 0b113bebe5..9c5634f43a 100644
--- a/doc/classes/ScrollContainer.xml
+++ b/doc/classes/ScrollContainer.xml
@@ -4,7 +4,9 @@
A helper node for displaying scrollable elements such as lists.
</brief_description>
<description>
- A ScrollContainer node meant to contain a [Control] child. ScrollContainers will automatically create a scrollbar child ([HScrollBar], [VScrollBar], or both) when needed and will only draw the Control within the ScrollContainer area. Scrollbars will automatically be drawn at the right (for vertical) or bottom (for horizontal) and will enable dragging to move the viewable Control (and its children) within the ScrollContainer. Scrollbars will also automatically resize the grabber based on the [member Control.rect_min_size] of the Control relative to the ScrollContainer. Works great with a [Panel] control. You can set [code]EXPAND[/code] on the children's size flags, so they will upscale to the ScrollContainer's size if it's larger (scroll is invisible for the chosen dimension).
+ A ScrollContainer node meant to contain a [Control] child.
+ ScrollContainers will automatically create a scrollbar child ([HScrollBar], [VScrollBar], or both) when needed and will only draw the Control within the ScrollContainer area. Scrollbars will automatically be drawn at the right (for vertical) or bottom (for horizontal) and will enable dragging to move the viewable Control (and its children) within the ScrollContainer. Scrollbars will also automatically resize the grabber based on the [member Control.rect_min_size] of the Control relative to the ScrollContainer.
+ Works great with a [Panel] control. You can set [code]EXPAND[/code] on the children's size flags, so they will upscale to the ScrollContainer's size if it's larger (scroll is invisible for the chosen dimension).
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Sky.xml b/doc/classes/Sky.xml
index 72599a323d..ba9c5ee661 100644
--- a/doc/classes/Sky.xml
+++ b/doc/classes/Sky.xml
@@ -12,6 +12,7 @@
</methods>
<members>
<member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="Sky.ProcessMode" default="0">
+ Sets the method for generating the radiance map from the sky. The radiance map is a cubemap with increasingly blurry versions of the sky corresponding to different levels of roughness. Radiance maps can be expensive to calculate. See [enum ProcessMode] for options.
</member>
<member name="radiance_size" type="int" setter="set_radiance_size" getter="get_radiance_size" enum="Sky.RadianceSize" default="2">
The [Sky]'s radiance map size. The higher the radiance map size, the more detailed the lighting from the [Sky] will be.
@@ -45,8 +46,11 @@
Represents the size of the [enum RadianceSize] enum.
</constant>
<constant name="PROCESS_MODE_QUALITY" value="0" enum="ProcessMode">
+ Uses high quality importance sampling to process the radiance map. In general, this results in much higher quality than [constant PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be used if you plan on changing the sky at runtime.
</constant>
<constant name="PROCESS_MODE_REALTIME" value="1" enum="ProcessMode">
+ Uses the fast filtering algorithm to process the radiance map. In general this results in lower quality, but substantially faster run times.
+ [b]Note:[/b] The fast filtering algorithm is limited to 128x128 cubemaps, so [member radiance_size] must be set to [constant RADIANCE_SIZE_128].
</constant>
</constants>
</class>
diff --git a/doc/classes/String.xml b/doc/classes/String.xml
index 7127ebdbff..1a5182b76e 100644
--- a/doc/classes/String.xml
+++ b/doc/classes/String.xml
@@ -49,6 +49,15 @@
<method name="String">
<return type="String">
</return>
+ <argument index="0" name="from" type="Vector2i">
+ </argument>
+ <description>
+ Constructs a new String from the given [Vector2i].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
<argument index="0" name="from" type="Rect2">
</argument>
<description>
@@ -58,6 +67,15 @@
<method name="String">
<return type="String">
</return>
+ <argument index="0" name="from" type="Rect2i">
+ </argument>
+ <description>
+ Constructs a new String from the given [Rect2i].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
<argument index="0" name="from" type="Vector3">
</argument>
<description>
@@ -67,6 +85,15 @@
<method name="String">
<return type="String">
</return>
+ <argument index="0" name="from" type="Vector3i">
+ </argument>
+ <description>
+ Constructs a new String from the given [Vector3i].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
<argument index="0" name="from" type="Transform2D">
</argument>
<description>
@@ -133,6 +160,7 @@
<argument index="0" name="from" type="StringName">
</argument>
<description>
+ Constructs a new String from the given [StringName].
</description>
</method>
<method name="String">
@@ -159,6 +187,7 @@
<argument index="0" name="from" type="Callable">
</argument>
<description>
+ Constructs a new String from the given [Callable].
</description>
</method>
<method name="String">
@@ -167,6 +196,7 @@
<argument index="0" name="from" type="Signal">
</argument>
<description>
+ Constructs a new String from the given [Signal].
</description>
</method>
<method name="String">
@@ -199,19 +229,37 @@
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PackedIntArray">
+ <argument index="0" name="from" type="PackedInt32Array">
+ </argument>
+ <description>
+ Constructs a new String from the given [PackedInt32Array].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
+ <argument index="0" name="from" type="PackedInt64Array">
+ </argument>
+ <description>
+ Constructs a new String from the given [PackedInt64Array].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
+ <argument index="0" name="from" type="PackedFloat32Array">
</argument>
<description>
- Constructs a new String from the given [PackedIntArray].
+ Constructs a new String from the given [PackedFloat32Array].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PackedRealArray">
+ <argument index="0" name="from" type="PackedFloat64Array">
</argument>
<description>
- Constructs a new String from the given [PackedRealArray].
+ Constructs a new String from the given [PackedFloat64Array].
</description>
</method>
<method name="String">
@@ -849,7 +897,7 @@
</description>
</method>
<method name="split_floats">
- <return type="PackedRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="delimiter" type="String">
</argument>
diff --git a/doc/classes/SurfaceTool.xml b/doc/classes/SurfaceTool.xml
index a265d16cd9..4304a8df5e 100644
--- a/doc/classes/SurfaceTool.xml
+++ b/doc/classes/SurfaceTool.xml
@@ -22,7 +22,7 @@
<method name="add_bones">
<return type="void">
</return>
- <argument index="0" name="bones" type="PackedIntArray">
+ <argument index="0" name="bones" type="PackedInt32Array">
</argument>
<description>
Adds an array of bones for the next vertex to use. [code]bones[/code] must contain 4 integers.
@@ -123,7 +123,7 @@
<method name="add_weights">
<return type="void">
</return>
- <argument index="0" name="weights" type="PackedRealArray">
+ <argument index="0" name="weights" type="PackedFloat32Array">
</argument>
<description>
Specifies weight values for next vertex to use. [code]weights[/code] must contain 4 values.
diff --git a/doc/classes/TextEdit.xml b/doc/classes/TextEdit.xml
index 2ab8b939c7..d4eeb574eb 100644
--- a/doc/classes/TextEdit.xml
+++ b/doc/classes/TextEdit.xml
@@ -299,7 +299,7 @@
</description>
</method>
<method name="search" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="key" type="String">
</argument>
@@ -311,7 +311,7 @@
</argument>
<description>
Perform a search inside the text. Search flags can be specified in the [enum SearchFlags] enum.
- Returns an empty [code]PackedIntArray[/code] if no result was found. Otherwise, the result line and column can be accessed at indices specified in the [enum SearchResult] enum, e.g:
+ Returns an empty [code]PackedInt32Array[/code] if no result was found. Otherwise, the result line and column can be accessed at indices specified in the [enum SearchResult] enum, e.g:
[codeblock]
var result = search(key, flags, line, column)
if result.size() &gt; 0:
diff --git a/doc/classes/Vector2.xml b/doc/classes/Vector2.xml
index 4eef103d1f..7b02a1a4c9 100644
--- a/doc/classes/Vector2.xml
+++ b/doc/classes/Vector2.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="Vector2" version="4.0">
<brief_description>
- Vector used for 2D math.
+ Vector used for 2D math using floating point coordinates.
</brief_description>
<description>
2-element structure that can be used to represent positions in 2D space or any other pair of numeric values.
+ It uses floating point coordinates.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/math/index.html</link>
@@ -13,12 +14,21 @@
<method name="Vector2">
<return type="Vector2">
</return>
+ <argument index="0" name="from" type="Vector2i">
+ </argument>
+ <description>
+ Constructs a new [Vector2] from [Vector2i].
+ </description>
+ </method>
+ <method name="Vector2">
+ <return type="Vector2">
+ </return>
<argument index="0" name="x" type="float">
</argument>
<argument index="1" name="y" type="float">
</argument>
<description>
- Constructs a new Vector2 from the given [code]x[/code] and [code]y[/code].
+ Constructs a new [Vector2] from the given [code]x[/code] and [code]y[/code].
</description>
</method>
<method name="abs">
diff --git a/doc/classes/Vector2i.xml b/doc/classes/Vector2i.xml
new file mode 100644
index 0000000000..a516eb01dd
--- /dev/null
+++ b/doc/classes/Vector2i.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Vector2i" version="4.0">
+ <brief_description>
+ Vector used for 2D math using integer coordinates.
+ </brief_description>
+ <description>
+ 2-element structure that can be used to represent positions in 2D space or any other pair of numeric values.
+ It uses integer coordinates.
+ </description>
+ <tutorials>
+ <link>https://docs.godotengine.org/en/latest/tutorials/math/index.html</link>
+ </tutorials>
+ <methods>
+ <method name="Vector2i">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="x" type="int">
+ </argument>
+ <argument index="1" name="y" type="int">
+ </argument>
+ <description>
+ Constructs a new [Vector2i] from the given [code]x[/code] and [code]y[/code].
+ </description>
+ </method>
+ <method name="Vector2i">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="from" type="Vector2">
+ </argument>
+ <description>
+ Constructs a new [Vector2i] from [Vector2]. The floating point coordinates will be truncated.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ <constant name="AXIS_X" value="0">
+ Enumerated value for the X axis.
+ </constant>
+ <constant name="AXIS_Y" value="1">
+ Enumerated value for the Y axis.
+ </constant>
+ <constant name="ZERO" value="Vector2i( 0, 0 )">
+ Zero vector.
+ </constant>
+ <constant name="ONE" value="Vector2i( 1, 1 )">
+ One vector.
+ </constant>
+ <constant name="LEFT" value="Vector2i( -1, 0 )">
+ Left unit vector.
+ </constant>
+ <constant name="RIGHT" value="Vector2i( 1, 0 )">
+ Right unit vector.
+ </constant>
+ <constant name="UP" value="Vector2i( 0, -1 )">
+ Up unit vector.
+ </constant>
+ <constant name="DOWN" value="Vector2i( 0, 1 )">
+ Down unit vector.
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/Vector3.xml b/doc/classes/Vector3.xml
index 7ae89cc450..600c03ba7d 100644
--- a/doc/classes/Vector3.xml
+++ b/doc/classes/Vector3.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="Vector3" version="4.0">
<brief_description>
- Vector used for 3D math.
+ Vector used for 3D math using floating point coordinates.
</brief_description>
<description>
3-element structure that can be used to represent positions in 3D space or any other pair of numeric values.
+ It uses floating point coordinates.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/math/index.html</link>
@@ -13,6 +14,15 @@
<method name="Vector3">
<return type="Vector3">
</return>
+ <argument index="0" name="from" type="Vector3i">
+ </argument>
+ <description>
+ Constructs a new [Vector3] from [Vector3i].
+ </description>
+ </method>
+ <method name="Vector3">
+ <return type="Vector3">
+ </return>
<argument index="0" name="x" type="float">
</argument>
<argument index="1" name="y" type="float">
@@ -20,7 +30,7 @@
<argument index="2" name="z" type="float">
</argument>
<description>
- Returns a Vector3 with the given components.
+ Returns a [Vector3] with the given components.
</description>
</method>
<method name="abs">
diff --git a/doc/classes/Vector3i.xml b/doc/classes/Vector3i.xml
new file mode 100644
index 0000000000..4f5a658b89
--- /dev/null
+++ b/doc/classes/Vector3i.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Vector3i" version="4.0">
+ <brief_description>
+ Vector used for 3D math using integer coordinates.
+ </brief_description>
+ <description>
+ 3-element structure that can be used to represent positions in 3D space or any other pair of numeric values.
+ It uses integer coordinates.
+ </description>
+ <tutorials>
+ <link>https://docs.godotengine.org/en/latest/tutorials/math/index.html</link>
+ </tutorials>
+ <methods>
+ <method name="Vector3i">
+ <return type="Vector3i">
+ </return>
+ <argument index="0" name="x" type="int">
+ </argument>
+ <argument index="1" name="y" type="int">
+ </argument>
+ <argument index="2" name="z" type="int">
+ </argument>
+ <description>
+ Returns a [Vector3i] with the given components.
+ </description>
+ </method>
+ <method name="Vector3i">
+ <return type="Vector3i">
+ </return>
+ <argument index="0" name="from" type="Vector3">
+ </argument>
+ <description>
+ Constructs a new [Vector3i] from [Vector3]. The floating point coordinates will be truncated.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ <constant name="AXIS_X" value="0">
+ Enumerated value for the X axis.
+ </constant>
+ <constant name="AXIS_Y" value="1">
+ Enumerated value for the Y axis.
+ </constant>
+ <constant name="AXIS_Z" value="2">
+ Enumerated value for the Z axis.
+ </constant>
+ <constant name="ZERO" value="Vector3i( 0, 0, 0 )">
+ Zero vector.
+ </constant>
+ <constant name="ONE" value="Vector3i( 1, 1, 1 )">
+ One vector.
+ </constant>
+ <constant name="LEFT" value="Vector3i( -1, 0, 0 )">
+ Left unit vector.
+ </constant>
+ <constant name="RIGHT" value="Vector3i( 1, 0, 0 )">
+ Right unit vector.
+ </constant>
+ <constant name="UP" value="Vector3i( 0, 1, 0 )">
+ Up unit vector.
+ </constant>
+ <constant name="DOWN" value="Vector3i( 0, -1, 0 )">
+ Down unit vector.
+ </constant>
+ <constant name="FORWARD" value="Vector3i( 0, 0, -1 )">
+ Forward unit vector.
+ </constant>
+ <constant name="BACK" value="Vector3i( 0, 0, 1 )">
+ Back unit vector.
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/VisualServer.xml b/doc/classes/VisualServer.xml
index 187fd2300a..ca2058ddbb 100644
--- a/doc/classes/VisualServer.xml
+++ b/doc/classes/VisualServer.xml
@@ -1943,7 +1943,7 @@
</description>
</method>
<method name="multimesh_get_buffer" qualifiers="const">
- <return type="PackedRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="multimesh" type="RID">
</argument>
@@ -2078,7 +2078,7 @@
</return>
<argument index="0" name="multimesh" type="RID">
</argument>
- <argument index="1" name="buffer" type="PackedRealArray">
+ <argument index="1" name="buffer" type="PackedFloat32Array">
</argument>
<description>
</description>
diff --git a/doc/classes/VisualShader.xml b/doc/classes/VisualShader.xml
index 99ba665979..0dd8ec0064 100644
--- a/doc/classes/VisualShader.xml
+++ b/doc/classes/VisualShader.xml
@@ -107,7 +107,7 @@
</description>
</method>
<method name="get_node_list" qualifiers="const">
- <return type="PackedIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="type" type="int" enum="VisualShader.Type">
</argument>
@@ -183,6 +183,8 @@
<member name="code" type="String" setter="set_code" getter="get_code" override="true" default="&quot;shader_type spatial;void vertex() {// Output:0}void fragment() {// Output:0}void light() {// Output:0}&quot;" />
<member name="graph_offset" type="Vector2" setter="set_graph_offset" getter="get_graph_offset" default="Vector2( 0, 0 )">
</member>
+ <member name="version" type="String" setter="set_version" getter="get_version" default="&quot;&quot;">
+ </member>
</members>
<constants>
<constant name="TYPE_VERTEX" value="0" enum="Type">
diff --git a/doc/classes/VisualShaderNode.xml b/doc/classes/VisualShaderNode.xml
index d3227f421e..72ce743656 100644
--- a/doc/classes/VisualShaderNode.xml
+++ b/doc/classes/VisualShaderNode.xml
@@ -61,19 +61,22 @@
<constant name="PORT_TYPE_SCALAR" value="0" enum="PortType">
Floating-point scalar. Translated to [code]float[/code] type in shader code.
</constant>
- <constant name="PORT_TYPE_VECTOR" value="1" enum="PortType">
+ <constant name="PORT_TYPE_SCALAR_INT" value="1" enum="PortType">
+ Integer scalar. Translated to [code]int[/code] type in shader code.
+ </constant>
+ <constant name="PORT_TYPE_VECTOR" value="2" enum="PortType">
3D vector of floating-point values. Translated to [code]vec3[/code] type in shader code.
</constant>
- <constant name="PORT_TYPE_BOOLEAN" value="2" enum="PortType">
+ <constant name="PORT_TYPE_BOOLEAN" value="3" enum="PortType">
Boolean type. Translated to [code]bool[/code] type in shader code.
</constant>
- <constant name="PORT_TYPE_TRANSFORM" value="3" enum="PortType">
+ <constant name="PORT_TYPE_TRANSFORM" value="4" enum="PortType">
Transform type. Translated to [code]mat4[/code] type in shader code.
</constant>
- <constant name="PORT_TYPE_SAMPLER" value="4" enum="PortType">
+ <constant name="PORT_TYPE_SAMPLER" value="5" 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="5" enum="PortType">
+ <constant name="PORT_TYPE_MAX" value="6" enum="PortType">
Represents the size of the [enum PortType] enum.
</constant>
</constants>
diff --git a/doc/classes/VisualShaderNodeCompare.xml b/doc/classes/VisualShaderNodeCompare.xml
index f207cba0a5..9c2331edea 100644
--- a/doc/classes/VisualShaderNodeCompare.xml
+++ b/doc/classes/VisualShaderNodeCompare.xml
@@ -25,13 +25,16 @@
<constant name="CTYPE_SCALAR" value="0" enum="ComparisonType">
A floating-point scalar.
</constant>
- <constant name="CTYPE_VECTOR" value="1" enum="ComparisonType">
+ <constant name="CTYPE_SCALAR_INT" value="1" enum="ComparisonType">
+ An integer scalar.
+ </constant>
+ <constant name="CTYPE_VECTOR" value="2" enum="ComparisonType">
A 3D vector type.
</constant>
- <constant name="CTYPE_BOOLEAN" value="2" enum="ComparisonType">
+ <constant name="CTYPE_BOOLEAN" value="3" enum="ComparisonType">
A boolean type.
</constant>
- <constant name="CTYPE_TRANSFORM" value="3" enum="ComparisonType">
+ <constant name="CTYPE_TRANSFORM" value="4" enum="ComparisonType">
A transform ([code]mat4[/code]) type.
</constant>
<constant name="FUNC_EQUAL" value="0" enum="Function">
@@ -50,7 +53,7 @@
Comparison for less than ([code]a &lt; 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 &lt; b[/code]). Cannot be used if [member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM].
+ Comparison for less than or equal ([code]a &lt;= b[/code]). Cannot be used if [member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM].
</constant>
<constant name="COND_ALL" value="0" enum="Condition">
The result will be true if all of component in vector satisfy the comparison condition.
diff --git a/doc/classes/VisualShaderNodeScalarConstant.xml b/doc/classes/VisualShaderNodeFloatConstant.xml
index f7b94d9e39..3ba9ff07d3 100644
--- a/doc/classes/VisualShaderNodeScalarConstant.xml
+++ b/doc/classes/VisualShaderNodeFloatConstant.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisualShaderNodeScalarConstant" inherits="VisualShaderNode" version="4.0">
+<class name="VisualShaderNodeFloatConstant" inherits="VisualShaderNode" version="4.0">
<brief_description>
+ A scalar floating-point constant to be used within the visual shader graph.
</brief_description>
<description>
+ Translated to [code]float[/code] in the shader language.
</description>
<tutorials>
</tutorials>
@@ -10,6 +12,7 @@
</methods>
<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>
<constants>
diff --git a/doc/classes/VisualShaderNodeFloatFunc.xml b/doc/classes/VisualShaderNodeFloatFunc.xml
new file mode 100644
index 0000000000..bb7486e8cf
--- /dev/null
+++ b/doc/classes/VisualShaderNodeFloatFunc.xml
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="VisualShaderNodeFloatFunc" inherits="VisualShaderNode" version="4.0">
+ <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>
+ <methods>
+ </methods>
+ <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. See [enum Function] for options.
+ </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_FRAC" 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>
+ </constants>
+</class>
diff --git a/doc/classes/VisualShaderNodeFloatOp.xml b/doc/classes/VisualShaderNodeFloatOp.xml
new file mode 100644
index 0000000000..2c9ebabb89
--- /dev/null
+++ b/doc/classes/VisualShaderNodeFloatOp.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="VisualShaderNodeFloatOp" inherits="VisualShaderNode" version="4.0">
+ <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>
+ <methods>
+ </methods>
+ <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. See [enum Operator] for options.
+ </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>
+ </constants>
+</class>
diff --git a/doc/classes/VisualShaderNodeScalarUniform.xml b/doc/classes/VisualShaderNodeFloatUniform.xml
index fab766d3f9..33ece8ac1b 100644
--- a/doc/classes/VisualShaderNodeScalarUniform.xml
+++ b/doc/classes/VisualShaderNodeFloatUniform.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisualShaderNodeScalarUniform" inherits="VisualShaderNodeUniform" version="4.0">
+<class name="VisualShaderNodeFloatUniform" inherits="VisualShaderNodeUniform" version="4.0">
<brief_description>
- A scalar uniform to be used within the visual shader graph.
+ A scalar float uniform to be used within the visual shader graph.
</brief_description>
<description>
Translated to [code]uniform float[/code] in the shader language.
@@ -11,7 +11,7 @@
<methods>
</methods>
<members>
- <member name="hint" type="int" setter="set_hint" getter="get_hint" enum="VisualShaderNodeScalarUniform.Hint" default="0">
+ <member name="hint" type="int" setter="set_hint" getter="get_hint" enum="VisualShaderNodeFloatUniform.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">
diff --git a/doc/classes/VisualShaderNodeIf.xml b/doc/classes/VisualShaderNodeIf.xml
index 0a8fdcfd4d..1ebd945d42 100644
--- a/doc/classes/VisualShaderNodeIf.xml
+++ b/doc/classes/VisualShaderNodeIf.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisualShaderNodeIf" inherits="VisualShaderNode" version="4.0">
<brief_description>
+ Compares two floating-point numbers in order to return a required vector within the visual shader graph.
</brief_description>
<description>
+ First two ports are scalar floatin-point numbers to compare, third is tolerance comparsion amount and last three ports represents a vectors returned if [code]a == b[/code], [code]a &gt; b[/code] and [code]a &lt; b[/code] respectivly.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/VisualShaderNodeInput.xml b/doc/classes/VisualShaderNodeInput.xml
index 1c8d8d84c4..ed629508d0 100644
--- a/doc/classes/VisualShaderNodeInput.xml
+++ b/doc/classes/VisualShaderNodeInput.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisualShaderNodeInput" inherits="VisualShaderNode" version="4.0">
<brief_description>
+ Represents the input shader parameter within the visual shader graph.
</brief_description>
<description>
</description>
@@ -11,16 +12,19 @@
<return type="String">
</return>
<description>
+ Returns a translated name of the current constant in the Godot Shader Language. eg. [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="&quot;[None]&quot;">
+ 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>
diff --git a/doc/classes/VisualShaderNodeIntConstant.xml b/doc/classes/VisualShaderNodeIntConstant.xml
new file mode 100644
index 0000000000..1c407b21ca
--- /dev/null
+++ b/doc/classes/VisualShaderNodeIntConstant.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="VisualShaderNodeIntConstant" inherits="VisualShaderNode" version="4.0">
+ <brief_description>
+ A scalar integer constant to be used within the visual shader graph.
+ </brief_description>
+ <description>
+ Translated to [code]int[/code] in the shader language.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <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>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/VisualShaderNodeIntFunc.xml b/doc/classes/VisualShaderNodeIntFunc.xml
new file mode 100644
index 0000000000..5c68c0ec71
--- /dev/null
+++ b/doc/classes/VisualShaderNodeIntFunc.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="VisualShaderNodeIntFunc" inherits="VisualShaderNode" version="4.0">
+ <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>
+ <methods>
+ </methods>
+ <members>
+ <member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeIntFunc.Function" default="3">
+ A function to be applied to the scalar. See [enum Function] for options.
+ </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_CLAMP" value="1" enum="Function">
+ Constrains a parameter between [code]min[/code] and [code]max[/code]. Translates to [code]clamp(x, min, max)[/code] in the Godot Shader Language.
+ </constant>
+ <constant name="FUNC_NEGATE" value="2" enum="Function">
+ Negates the [code]x[/code] using [code]-(x)[/code].
+ </constant>
+ <constant name="FUNC_SIGN" value="3" enum="Function">
+ Extracts the sign of the parameter. Translates to [code]sign(x)[/code] in the Godot Shader Language.
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/VisualShaderNodeIntOp.xml b/doc/classes/VisualShaderNodeIntOp.xml
new file mode 100644
index 0000000000..fc9a0a9a0a
--- /dev/null
+++ b/doc/classes/VisualShaderNodeIntOp.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="VisualShaderNodeIntOp" inherits="VisualShaderNode" version="4.0">
+ <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>
+ <methods>
+ </methods>
+ <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. See [enum Operator] for options.
+ </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>
+ </constants>
+</class>
diff --git a/doc/classes/VisualShaderNodeIntUniform.xml b/doc/classes/VisualShaderNodeIntUniform.xml
new file mode 100644
index 0000000000..8c7c288177
--- /dev/null
+++ b/doc/classes/VisualShaderNodeIntUniform.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="VisualShaderNodeIntUniform" inherits="VisualShaderNodeUniform" version="4.0">
+ <brief_description>
+ A scalar integer uniform to be used within the visual shader graph.
+ </brief_description>
+ <description>
+ Translated to [code]uniform int[/code] in the shader language.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <members>
+ <member name="hint" type="int" setter="set_hint" getter="get_hint" enum="VisualShaderNodeIntUniform.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="int" setter="set_max" getter="get_max" default="100">
+ 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="int" setter="set_min" getter="get_min" default="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="int" setter="set_step" getter="get_step" default="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>
+ </constants>
+</class>
diff --git a/doc/classes/VisualShaderNodeScalarFunc.xml b/doc/classes/VisualShaderNodeScalarFunc.xml
deleted file mode 100644
index b306d198f6..0000000000
--- a/doc/classes/VisualShaderNodeScalarFunc.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisualShaderNodeScalarFunc" inherits="VisualShaderNode" version="4.0">
- <brief_description>
- </brief_description>
- <description>
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <members>
- <member name="function" type="int" setter="set_function" getter="get_function" enum="VisualShaderNodeScalarFunc.Function" default="13">
- </member>
- </members>
- <constants>
- <constant name="FUNC_SIN" value="0" enum="Function">
- </constant>
- <constant name="FUNC_COS" value="1" enum="Function">
- </constant>
- <constant name="FUNC_TAN" value="2" enum="Function">
- </constant>
- <constant name="FUNC_ASIN" value="3" enum="Function">
- </constant>
- <constant name="FUNC_ACOS" value="4" enum="Function">
- </constant>
- <constant name="FUNC_ATAN" value="5" enum="Function">
- </constant>
- <constant name="FUNC_SINH" value="6" enum="Function">
- </constant>
- <constant name="FUNC_COSH" value="7" enum="Function">
- </constant>
- <constant name="FUNC_TANH" value="8" enum="Function">
- </constant>
- <constant name="FUNC_LOG" value="9" enum="Function">
- </constant>
- <constant name="FUNC_EXP" value="10" enum="Function">
- </constant>
- <constant name="FUNC_SQRT" value="11" enum="Function">
- </constant>
- <constant name="FUNC_ABS" value="12" enum="Function">
- </constant>
- <constant name="FUNC_SIGN" value="13" enum="Function">
- </constant>
- <constant name="FUNC_FLOOR" value="14" enum="Function">
- </constant>
- <constant name="FUNC_ROUND" value="15" enum="Function">
- </constant>
- <constant name="FUNC_CEIL" value="16" enum="Function">
- </constant>
- <constant name="FUNC_FRAC" value="17" enum="Function">
- </constant>
- <constant name="FUNC_SATURATE" value="18" enum="Function">
- </constant>
- <constant name="FUNC_NEGATE" value="19" enum="Function">
- </constant>
- <constant name="FUNC_ACOSH" value="20" enum="Function">
- </constant>
- <constant name="FUNC_ASINH" value="21" enum="Function">
- </constant>
- <constant name="FUNC_ATANH" value="22" enum="Function">
- </constant>
- <constant name="FUNC_DEGREES" value="23" enum="Function">
- </constant>
- <constant name="FUNC_EXP2" value="24" enum="Function">
- </constant>
- <constant name="FUNC_INVERSE_SQRT" value="25" enum="Function">
- </constant>
- <constant name="FUNC_LOG2" value="26" enum="Function">
- </constant>
- <constant name="FUNC_RADIANS" value="27" enum="Function">
- </constant>
- <constant name="FUNC_RECIPROCAL" value="28" enum="Function">
- </constant>
- <constant name="FUNC_ROUNDEVEN" value="29" enum="Function">
- </constant>
- <constant name="FUNC_TRUNC" value="30" enum="Function">
- </constant>
- <constant name="FUNC_ONEMINUS" value="31" enum="Function">
- </constant>
- </constants>
-</class>
diff --git a/doc/classes/VisualShaderNodeScalarOp.xml b/doc/classes/VisualShaderNodeScalarOp.xml
deleted file mode 100644
index f13f16cdd2..0000000000
--- a/doc/classes/VisualShaderNodeScalarOp.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisualShaderNodeScalarOp" inherits="VisualShaderNode" version="4.0">
- <brief_description>
- </brief_description>
- <description>
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <members>
- <member name="operator" type="int" setter="set_operator" getter="get_operator" enum="VisualShaderNodeScalarOp.Operator" default="0">
- </member>
- </members>
- <constants>
- <constant name="OP_ADD" value="0" enum="Operator">
- </constant>
- <constant name="OP_SUB" value="1" enum="Operator">
- </constant>
- <constant name="OP_MUL" value="2" enum="Operator">
- </constant>
- <constant name="OP_DIV" value="3" enum="Operator">
- </constant>
- <constant name="OP_MOD" value="4" enum="Operator">
- </constant>
- <constant name="OP_POW" value="5" enum="Operator">
- </constant>
- <constant name="OP_MAX" value="6" enum="Operator">
- </constant>
- <constant name="OP_MIN" value="7" enum="Operator">
- </constant>
- <constant name="OP_ATAN2" value="8" enum="Operator">
- </constant>
- <constant name="OP_STEP" value="9" enum="Operator">
- </constant>
- </constants>
-</class>
diff --git a/doc/classes/PlaneShape.xml b/doc/classes/WorldMarginShape.xml
index b40e133d00..54f76a066b 100644
--- a/doc/classes/PlaneShape.xml
+++ b/doc/classes/WorldMarginShape.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PlaneShape" inherits="Shape" version="4.0">
+<class name="WorldMarginShape" inherits="Shape" version="4.0">
<brief_description>
Infinite plane shape for 3D collisions.
</brief_description>
<description>
- An infinite plane shape for 3D collisions. Note that the [Plane]'s normal matters; anything "below" the plane will collide with it. If the [PlaneShape] is used in a [PhysicsBody], it will cause colliding objects placed "below" it to teleport "above" the plane.
+ An infinite plane shape for 3D collisions. Note that the [Plane]'s normal matters; anything "below" the plane will collide with it. If the [WorldMarginShape] is used in a [PhysicsBody], it will cause colliding objects placed "below" it to teleport "above" the plane.
</description>
<tutorials>
</tutorials>
@@ -12,7 +12,7 @@
</methods>
<members>
<member name="plane" type="Plane" setter="set_plane" getter="get_plane" default="Plane( 0, 1, 0, 0 )">
- The [Plane] used by the [PlaneShape] for collision.
+ The [Plane] used by the [WorldMarginShape] for collision.
</member>
</members>
<constants>