summaryrefslogtreecommitdiff
path: root/doc/classes
diff options
context:
space:
mode:
Diffstat (limited to 'doc/classes')
-rw-r--r--doc/classes/@GlobalScope.xml91
-rw-r--r--doc/classes/ARVRController.xml2
-rw-r--r--doc/classes/ARVRInterface.xml2
-rw-r--r--doc/classes/ARVRPositionalTracker.xml9
-rw-r--r--doc/classes/ARVRServer.xml8
-rw-r--r--doc/classes/AStar.xml6
-rw-r--r--doc/classes/AStar2D.xml6
-rw-r--r--doc/classes/AcceptDialog.xml2
-rw-r--r--doc/classes/AnimatedSprite.xml6
-rw-r--r--doc/classes/AnimatedSprite3D.xml4
-rw-r--r--doc/classes/Animation.xml41
-rw-r--r--doc/classes/AnimationNode.xml12
-rw-r--r--doc/classes/AnimationNodeAnimation.xml2
-rw-r--r--doc/classes/AnimationNodeBlendTree.xml40
-rw-r--r--doc/classes/AnimationNodeOneShot.xml5
-rw-r--r--doc/classes/AnimationNodeOutput.xml1
-rw-r--r--doc/classes/AnimationNodeStateMachine.xml38
-rw-r--r--doc/classes/AnimationNodeStateMachinePlayback.xml8
-rw-r--r--doc/classes/AnimationNodeStateMachineTransition.xml2
-rw-r--r--doc/classes/AnimationNodeTimeScale.xml2
-rw-r--r--doc/classes/AnimationNodeTimeSeek.xml2
-rw-r--r--doc/classes/AnimationNodeTransition.xml4
-rw-r--r--doc/classes/AnimationPlayer.xml48
-rw-r--r--doc/classes/AnimationTree.xml9
-rw-r--r--doc/classes/Area.xml4
-rw-r--r--doc/classes/Area2D.xml2
-rw-r--r--doc/classes/Array.xml96
-rw-r--r--doc/classes/ArrayMesh.xml27
-rw-r--r--doc/classes/AudioEffectCompressor.xml2
-rw-r--r--doc/classes/AudioEffectRecord.xml6
-rw-r--r--doc/classes/AudioServer.xml6
-rw-r--r--doc/classes/AudioStreamGeneratorPlayback.xml2
-rw-r--r--doc/classes/AudioStreamPlayer.xml2
-rw-r--r--doc/classes/AudioStreamPlayer2D.xml2
-rw-r--r--doc/classes/AudioStreamPlayer3D.xml2
-rw-r--r--doc/classes/AudioStreamSample.xml2
-rw-r--r--doc/classes/BaseMaterial3D.xml15
-rw-r--r--doc/classes/Basis.xml2
-rw-r--r--doc/classes/BoxContainer.xml6
-rw-r--r--doc/classes/CPUParticles.xml6
-rw-r--r--doc/classes/CPUParticles2D.xml6
-rw-r--r--doc/classes/Callable.xml95
-rw-r--r--doc/classes/CanvasItem.xml71
-rw-r--r--doc/classes/CheckBox.xml2
-rw-r--r--doc/classes/CheckButton.xml2
-rw-r--r--doc/classes/ClassDB.xml60
-rw-r--r--doc/classes/CollisionPolygon.xml2
-rw-r--r--doc/classes/CollisionPolygon2D.xml5
-rw-r--r--doc/classes/CollisionShape2D.xml2
-rw-r--r--doc/classes/Color.xml4
-rw-r--r--doc/classes/ColorPicker.xml12
-rw-r--r--doc/classes/ConcavePolygonShape.xml5
-rw-r--r--doc/classes/ConcavePolygonShape2D.xml2
-rw-r--r--doc/classes/ConfigFile.xml33
-rw-r--r--doc/classes/Control.xml64
-rw-r--r--doc/classes/ConvexPolygonShape.xml2
-rw-r--r--doc/classes/ConvexPolygonShape2D.xml4
-rw-r--r--doc/classes/Crypto.xml4
-rw-r--r--doc/classes/Curve2D.xml6
-rw-r--r--doc/classes/Curve3D.xml14
-rw-r--r--doc/classes/DTLSServer.xml90
-rw-r--r--doc/classes/Dictionary.xml8
-rw-r--r--doc/classes/Directory.xml3
-rw-r--r--doc/classes/EditorExportPlugin.xml11
-rw-r--r--doc/classes/EditorFeatureProfile.xml16
-rw-r--r--doc/classes/EditorFileDialog.xml3
-rw-r--r--doc/classes/EditorFileSystem.xml5
-rw-r--r--doc/classes/EditorFileSystemDirectory.xml2
-rw-r--r--doc/classes/EditorInspectorPlugin.xml2
-rw-r--r--doc/classes/EditorPlugin.xml16
-rw-r--r--doc/classes/EditorProperty.xml18
-rw-r--r--doc/classes/EditorResourcePreview.xml4
-rw-r--r--doc/classes/EditorSettings.xml10
-rw-r--r--doc/classes/EditorSpatialGizmo.xml6
-rw-r--r--doc/classes/Engine.xml4
-rw-r--r--doc/classes/Environment.xml1
-rw-r--r--doc/classes/Expression.xml2
-rw-r--r--doc/classes/File.xml14
-rw-r--r--doc/classes/FileDialog.xml12
-rw-r--r--doc/classes/Font.xml1
-rw-r--r--doc/classes/FuncRef.xml2
-rw-r--r--doc/classes/GIProbeData.xml14
-rw-r--r--doc/classes/Geometry.xml78
-rw-r--r--doc/classes/Gradient.xml8
-rw-r--r--doc/classes/GraphEdit.xml39
-rw-r--r--doc/classes/GraphNode.xml17
-rw-r--r--doc/classes/GridContainer.xml2
-rw-r--r--doc/classes/HSeparator.xml2
-rw-r--r--doc/classes/HSlider.xml6
-rw-r--r--doc/classes/HSplitContainer.xml3
-rw-r--r--doc/classes/HTTPClient.xml10
-rw-r--r--doc/classes/HTTPRequest.xml6
-rw-r--r--doc/classes/HashingContext.xml4
-rw-r--r--doc/classes/HeightMapShape.xml2
-rw-r--r--doc/classes/HingeJoint.xml4
-rw-r--r--doc/classes/Image.xml44
-rw-r--r--doc/classes/ImageTexture.xml1
-rw-r--r--doc/classes/Input.xml19
-rw-r--r--doc/classes/InputEvent.xml8
-rw-r--r--doc/classes/InputEventAction.xml2
-rw-r--r--doc/classes/InputEventGesture.xml2
-rw-r--r--doc/classes/InputEventKey.xml26
-rw-r--r--doc/classes/InputMap.xml20
-rw-r--r--doc/classes/ItemList.xml2
-rw-r--r--doc/classes/KinematicBody.xml3
-rw-r--r--doc/classes/KinematicBody2D.xml3
-rw-r--r--doc/classes/Line2D.xml2
-rw-r--r--doc/classes/MainLoop.xml6
-rw-r--r--doc/classes/Marshalls.xml10
-rw-r--r--doc/classes/Mesh.xml2
-rw-r--r--doc/classes/MeshDataTool.xml14
-rw-r--r--doc/classes/MeshLibrary.xml5
-rw-r--r--doc/classes/MonoGCHandle.xml13
-rw-r--r--doc/classes/MultiMesh.xml12
-rw-r--r--doc/classes/MultiplayerAPI.xml6
-rw-r--r--doc/classes/Navigation.xml46
-rw-r--r--doc/classes/Navigation2D.xml24
-rw-r--r--doc/classes/Navigation2DServer.xml26
-rw-r--r--doc/classes/NavigationAgent.xml6
-rw-r--r--doc/classes/NavigationAgent2D.xml6
-rw-r--r--doc/classes/NavigationMesh.xml10
-rw-r--r--doc/classes/NavigationPolygon.xml36
-rw-r--r--doc/classes/NavigationRegion.xml (renamed from doc/classes/NavigationMeshInstance.xml)10
-rw-r--r--doc/classes/NavigationRegion2D.xml (renamed from doc/classes/NavigationPolygonInstance.xml)2
-rw-r--r--doc/classes/NavigationServer.xml72
-rw-r--r--doc/classes/Node.xml42
-rw-r--r--doc/classes/OS.xml92
-rw-r--r--doc/classes/Object.xml55
-rw-r--r--doc/classes/OccluderPolygon2D.xml2
-rw-r--r--doc/classes/PackedByteArray.xml (renamed from doc/classes/PoolByteArray.xml)44
-rw-r--r--doc/classes/PackedColorArray.xml (renamed from doc/classes/PoolColorArray.xml)30
-rw-r--r--doc/classes/PackedDataContainer.xml2
-rw-r--r--doc/classes/PackedDataContainerRef.xml1
-rw-r--r--doc/classes/PackedFloat32Array.xml (renamed from doc/classes/PoolRealArray.xml)31
-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/PoolIntArray.xml)36
-rw-r--r--doc/classes/PackedScene.xml2
-rw-r--r--doc/classes/PackedStringArray.xml (renamed from doc/classes/PoolStringArray.xml)39
-rw-r--r--doc/classes/PackedVector2Array.xml (renamed from doc/classes/PoolVector2Array.xml)30
-rw-r--r--doc/classes/PackedVector3Array.xml (renamed from doc/classes/PoolVector3Array.xml)30
-rw-r--r--doc/classes/PacketPeer.xml4
-rw-r--r--doc/classes/PacketPeerDTLS.xml66
-rw-r--r--doc/classes/PacketPeerUDP.xml19
-rw-r--r--doc/classes/Panel.xml1
-rw-r--r--doc/classes/PanelContainer.xml1
-rw-r--r--doc/classes/PanoramaSky.xml2
-rw-r--r--doc/classes/Performance.xml54
-rw-r--r--doc/classes/Physics2DServer.xml6
-rw-r--r--doc/classes/PhysicsServer.xml10
-rw-r--r--doc/classes/PinJoint.xml2
-rw-r--r--doc/classes/Plane.xml2
-rw-r--r--doc/classes/Polygon2D.xml22
-rw-r--r--doc/classes/PolygonPathFinder.xml8
-rw-r--r--doc/classes/PopupPanel.xml1
-rw-r--r--doc/classes/ProgressBar.xml5
-rw-r--r--doc/classes/ProjectSettings.xml53
-rw-r--r--doc/classes/Quat.xml4
-rw-r--r--doc/classes/Rect2.xml19
-rw-r--r--doc/classes/Rect2i.xml52
-rw-r--r--doc/classes/ReflectionProbe.xml4
-rw-r--r--doc/classes/ResourceFormatLoader.xml4
-rw-r--r--doc/classes/ResourceFormatSaver.xml2
-rw-r--r--doc/classes/ResourceInteractiveLoader.xml55
-rw-r--r--doc/classes/ResourceLoader.xml49
-rw-r--r--doc/classes/ResourcePreloader.xml14
-rw-r--r--doc/classes/ResourceSaver.xml2
-rw-r--r--doc/classes/RichTextLabel.xml19
-rw-r--r--doc/classes/SceneState.xml12
-rw-r--r--doc/classes/SceneTree.xml24
-rw-r--r--doc/classes/Script.xml11
-rw-r--r--doc/classes/ScriptEditor.xml1
-rw-r--r--doc/classes/ScrollContainer.xml4
-rw-r--r--doc/classes/Semaphore.xml13
-rw-r--r--doc/classes/Shader.xml6
-rw-r--r--doc/classes/ShaderMaterial.xml4
-rw-r--r--doc/classes/Signal.xml97
-rw-r--r--doc/classes/SkeletonIK.xml4
-rw-r--r--doc/classes/Skin.xml18
-rw-r--r--doc/classes/Sky.xml4
-rw-r--r--doc/classes/SpringArm.xml6
-rw-r--r--doc/classes/Sprite.xml3
-rw-r--r--doc/classes/Sprite3D.xml1
-rw-r--r--doc/classes/SpriteBase3D.xml3
-rw-r--r--doc/classes/SpriteFrames.xml32
-rw-r--r--doc/classes/StreamPeer.xml4
-rw-r--r--doc/classes/StreamPeerBuffer.xml2
-rw-r--r--doc/classes/StreamPeerSSL.xml2
-rw-r--r--doc/classes/StreamTexture.xml1
-rw-r--r--doc/classes/String.xml138
-rw-r--r--doc/classes/StringName.xml24
-rw-r--r--doc/classes/SurfaceTool.xml14
-rw-r--r--doc/classes/TabContainer.xml22
-rw-r--r--doc/classes/Tabs.xml21
-rw-r--r--doc/classes/TextEdit.xml10
-rw-r--r--doc/classes/Texture2D.xml2
-rw-r--r--doc/classes/TextureLayered.xml2
-rw-r--r--doc/classes/Theme.xml108
-rw-r--r--doc/classes/Thread.xml2
-rw-r--r--doc/classes/Transform.xml8
-rw-r--r--doc/classes/Transform2D.xml8
-rw-r--r--doc/classes/Translation.xml12
-rw-r--r--doc/classes/TranslationServer.xml4
-rw-r--r--doc/classes/Tree.xml1
-rw-r--r--doc/classes/TreeItem.xml4
-rw-r--r--doc/classes/Tween.xml54
-rw-r--r--doc/classes/UDPServer.xml98
-rw-r--r--doc/classes/UndoRedo.xml8
-rw-r--r--doc/classes/VSeparator.xml2
-rw-r--r--doc/classes/VSlider.xml6
-rw-r--r--doc/classes/VSplitContainer.xml3
-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/VideoPlayer.xml2
-rw-r--r--doc/classes/Viewport.xml2
-rw-r--r--doc/classes/VisualServer.xml72
-rw-r--r--doc/classes/VisualShader.xml21
-rw-r--r--doc/classes/VisualShaderNode.xml14
-rw-r--r--doc/classes/VisualShaderNodeCompare.xml11
-rw-r--r--doc/classes/VisualShaderNodeCustom.xml16
-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/WindowDialog.xml9
-rw-r--r--doc/classes/WorldMarginShape.xml (renamed from doc/classes/PlaneShape.xml)6
-rw-r--r--doc/classes/XMLParser.xml2
237 files changed, 3152 insertions, 1333 deletions
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml
index 439937e4f5..74c364bad5 100644
--- a/doc/classes/@GlobalScope.xml
+++ b/doc/classes/@GlobalScope.xml
@@ -4,7 +4,7 @@
Global scope constants and variables.
</brief_description>
<description>
- Global scope constants and variables. This is all that resides in the globals, constants regarding error codes, scancodes, property hints, etc.
+ Global scope constants and variables. This is all that resides in the globals, constants regarding error codes, keycodes, property hints, etc.
Singletons are also documented here, since they can be accessed from anywhere.
</description>
<tutorials>
@@ -30,6 +30,9 @@
<member name="Geometry" type="Geometry" setter="" getter="">
The [Geometry] singleton.
</member>
+ <member name="GodotSharp" type="GodotSharp" setter="" getter="">
+ The [GodotSharp] singleton. Only available when using Godot's Mono build.
+ </member>
<member name="IP" type="IP" setter="" getter="">
The [IP] singleton.
</member>
@@ -50,7 +53,7 @@
The [JavaScript] singleton.
[b]Note:[/b] Only implemented on HTML5.
</member>
- <member name="Marshalls" type="Reference" setter="" getter="">
+ <member name="Marshalls" type="Marshalls" setter="" getter="">
The [Marshalls] singleton.
</member>
<member name="Navigation2DServer" type="Navigation2DServer" setter="" getter="">
@@ -143,7 +146,7 @@
Vertical bottom alignment, usually for text-derived classes.
</constant>
<constant name="SPKEY" value="16777216">
- Scancodes with this bit applied are non-printable.
+ Keycodes with this bit applied are non-printable.
</constant>
<constant name="KEY_ESCAPE" value="16777217" enum="KeyList">
Escape key.
@@ -1477,70 +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_NODE_PATH" 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="19" enum="Variant.Type">
Variable is of type [NodePath].
</constant>
- <constant name="TYPE_RID" value="16" enum="Variant.Type">
+ <constant name="TYPE_RID" value="20" enum="Variant.Type">
Variable is of type [RID].
</constant>
- <constant name="TYPE_OBJECT" value="17" enum="Variant.Type">
+ <constant name="TYPE_OBJECT" value="21" enum="Variant.Type">
Variable is of type [Object].
</constant>
- <constant name="TYPE_DICTIONARY" value="18" enum="Variant.Type">
+ <constant name="TYPE_CALLABLE" value="22" enum="Variant.Type">
+ Variable is of type [Callable].
+ </constant>
+ <constant name="TYPE_SIGNAL" value="23" enum="Variant.Type">
+ Variable is of type [Signal].
+ </constant>
+ <constant name="TYPE_DICTIONARY" value="24" enum="Variant.Type">
Variable is of type [Dictionary].
</constant>
- <constant name="TYPE_ARRAY" value="19" enum="Variant.Type">
+ <constant name="TYPE_ARRAY" value="25" enum="Variant.Type">
Variable is of type [Array].
</constant>
- <constant name="TYPE_RAW_ARRAY" value="20" enum="Variant.Type">
- Variable is of type [PoolByteArray].
+ <constant name="TYPE_RAW_ARRAY" value="26" enum="Variant.Type">
+ Variable is of type [PackedByteArray].
+ </constant>
+ <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_INT_ARRAY" value="21" enum="Variant.Type">
- Variable is of type [PoolIntArray].
+ <constant name="TYPE_FLOAT32_ARRAY" value="29" enum="Variant.Type">
+ Variable is of type [PackedFloat32Array].
</constant>
- <constant name="TYPE_REAL_ARRAY" value="22" enum="Variant.Type">
- Variable is of type [PoolRealArray].
+ <constant name="TYPE_FLOAT64_ARRAY" value="30" enum="Variant.Type">
+ Variable is of type [PackedFloat64Array].
</constant>
- <constant name="TYPE_STRING_ARRAY" value="23" enum="Variant.Type">
- Variable is of type [PoolStringArray].
+ <constant name="TYPE_STRING_ARRAY" value="31" enum="Variant.Type">
+ Variable is of type [PackedStringArray].
</constant>
- <constant name="TYPE_VECTOR2_ARRAY" value="24" enum="Variant.Type">
- Variable is of type [PoolVector2Array].
+ <constant name="TYPE_VECTOR2_ARRAY" value="32" enum="Variant.Type">
+ Variable is of type [PackedVector2Array].
</constant>
- <constant name="TYPE_VECTOR3_ARRAY" value="25" enum="Variant.Type">
- Variable is of type [PoolVector3Array].
+ <constant name="TYPE_VECTOR3_ARRAY" value="33" enum="Variant.Type">
+ Variable is of type [PackedVector3Array].
</constant>
- <constant name="TYPE_COLOR_ARRAY" value="26" enum="Variant.Type">
- Variable is of type [PoolColorArray].
+ <constant name="TYPE_COLOR_ARRAY" value="34" enum="Variant.Type">
+ Variable is of type [PackedColorArray].
</constant>
- <constant name="TYPE_MAX" value="27" 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/ARVRController.xml b/doc/classes/ARVRController.xml
index e485bd6f1a..ebae25feb7 100644
--- a/doc/classes/ARVRController.xml
+++ b/doc/classes/ARVRController.xml
@@ -57,7 +57,7 @@
</description>
</method>
<method name="is_button_pressed" qualifiers="const">
- <return type="int">
+ <return type="bool">
</return>
<argument index="0" name="button" type="int">
</argument>
diff --git a/doc/classes/ARVRInterface.xml b/doc/classes/ARVRInterface.xml
index d9757ad023..0727bda668 100644
--- a/doc/classes/ARVRInterface.xml
+++ b/doc/classes/ARVRInterface.xml
@@ -26,7 +26,7 @@
</description>
</method>
<method name="get_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<description>
Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc).
diff --git a/doc/classes/ARVRPositionalTracker.xml b/doc/classes/ARVRPositionalTracker.xml
index a151f8d652..640b721d37 100644
--- a/doc/classes/ARVRPositionalTracker.xml
+++ b/doc/classes/ARVRPositionalTracker.xml
@@ -34,7 +34,7 @@
</description>
</method>
<method name="get_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<description>
Returns the controller or anchor point's name if available.
@@ -54,6 +54,13 @@
Returns the world-space controller position.
</description>
</method>
+ <method name="get_tracker_id" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ Returns the internal tracker ID. This uniquely identifies the tracker per tracker type and matches the ID you need to specify for nodes such as the [ARVRController] and [ARVRAnchor] nodes.
+ </description>
+ </method>
<method name="get_tracks_orientation" qualifiers="const">
<return type="bool">
</return>
diff --git a/doc/classes/ARVRServer.xml b/doc/classes/ARVRServer.xml
index 6f0e4488fa..6db7121858 100644
--- a/doc/classes/ARVRServer.xml
+++ b/doc/classes/ARVRServer.xml
@@ -120,21 +120,21 @@
</members>
<signals>
<signal name="interface_added">
- <argument index="0" name="interface_name" type="String">
+ <argument index="0" name="interface_name" type="StringName">
</argument>
<description>
Emitted when a new interface has been added.
</description>
</signal>
<signal name="interface_removed">
- <argument index="0" name="interface_name" type="String">
+ <argument index="0" name="interface_name" type="StringName">
</argument>
<description>
Emitted when an interface is removed.
</description>
</signal>
<signal name="tracker_added">
- <argument index="0" name="tracker_name" type="String">
+ <argument index="0" name="tracker_name" type="StringName">
</argument>
<argument index="1" name="type" type="int">
</argument>
@@ -145,7 +145,7 @@
</description>
</signal>
<signal name="tracker_removed">
- <argument index="0" name="tracker_name" type="String">
+ <argument index="0" name="tracker_name" type="StringName">
</argument>
<argument index="1" name="type" type="int">
</argument>
diff --git a/doc/classes/AStar.xml b/doc/classes/AStar.xml
index ccbb033444..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="PoolIntArray">
+ <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="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="id" type="int">
</argument>
@@ -213,7 +213,7 @@
</description>
</method>
<method name="get_point_path">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="from_id" type="int">
</argument>
diff --git a/doc/classes/AStar2D.xml b/doc/classes/AStar2D.xml
index d620ef2a79..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="PoolIntArray">
+ <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="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="id" type="int">
</argument>
@@ -172,7 +172,7 @@
</description>
</method>
<method name="get_point_path">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="from_id" type="int">
</argument>
diff --git a/doc/classes/AcceptDialog.xml b/doc/classes/AcceptDialog.xml
index b0b9c155bb..01540383dc 100644
--- a/doc/classes/AcceptDialog.xml
+++ b/doc/classes/AcceptDialog.xml
@@ -76,7 +76,7 @@
</description>
</signal>
<signal name="custom_action">
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Emitted when a custom button is pressed. See [method add_button].
diff --git a/doc/classes/AnimatedSprite.xml b/doc/classes/AnimatedSprite.xml
index 3caad10f6d..b5c1d38ff9 100644
--- a/doc/classes/AnimatedSprite.xml
+++ b/doc/classes/AnimatedSprite.xml
@@ -19,7 +19,7 @@
<method name="play">
<return type="void">
</return>
- <argument index="0" name="anim" type="String" default="&quot;&quot;">
+ <argument index="0" name="anim" type="StringName" default="@&quot;&quot;">
</argument>
<argument index="1" name="backwards" type="bool" default="false">
</argument>
@@ -36,7 +36,7 @@
</method>
</methods>
<members>
- <member name="animation" type="String" setter="set_animation" getter="get_animation" default="&quot;default&quot;">
+ <member name="animation" type="StringName" setter="set_animation" getter="get_animation" default="@&quot;default&quot;">
The current animation from the [code]frames[/code] resource. If this value changes, the [code]frame[/code] counter is reset.
</member>
<member name="centered" type="bool" setter="set_centered" getter="is_centered" default="true">
@@ -61,8 +61,10 @@
If [code]true[/code], the [member animation] is currently playing.
</member>
<member name="shininess" type="float" setter="set_shininess" getter="get_shininess" default="1.0">
+ Strength of the specular light effect of this [AnimatedSprite].
</member>
<member name="specular_color" type="Color" setter="set_specular_color" getter="get_specular_color" default="Color( 1, 1, 1, 1 )">
+ The color of the specular light effect.
</member>
<member name="speed_scale" type="float" setter="set_speed_scale" getter="get_speed_scale" default="1.0">
The animation speed is multiplied by this value.
diff --git a/doc/classes/AnimatedSprite3D.xml b/doc/classes/AnimatedSprite3D.xml
index e24119c6c7..ad9706a52a 100644
--- a/doc/classes/AnimatedSprite3D.xml
+++ b/doc/classes/AnimatedSprite3D.xml
@@ -19,7 +19,7 @@
<method name="play">
<return type="void">
</return>
- <argument index="0" name="anim" type="String" default="&quot;&quot;">
+ <argument index="0" name="anim" type="StringName" default="@&quot;&quot;">
</argument>
<description>
Plays the animation named [code]anim[/code]. If no [code]anim[/code] is provided, the current animation is played.
@@ -34,7 +34,7 @@
</method>
</methods>
<members>
- <member name="animation" type="String" setter="set_animation" getter="get_animation" default="&quot;default&quot;">
+ <member name="animation" type="StringName" setter="set_animation" getter="get_animation" default="@&quot;default&quot;">
The current animation from the [code]frames[/code] resource. If this value changes, the [code]frame[/code] counter is reset.
</member>
<member name="frame" type="int" setter="set_frame" getter="get_frame" default="0">
diff --git a/doc/classes/Animation.xml b/doc/classes/Animation.xml
index f77dfdc9a1..09811d5617 100644
--- a/doc/classes/Animation.xml
+++ b/doc/classes/Animation.xml
@@ -14,7 +14,7 @@
animation.track_insert_key(track_index, 0.0, 0)
animation.track_insert_key(track_index, 0.5, 100)
[/codeblock]
- Animations are just data containers, and must be added to nodes such as an [AnimationPlayer] to be played back.
+ Animations are just data containers, and must be added to nodes such as an [AnimationPlayer] to be played back. Animation tracks have different types, each with its own set of dedicated methods. Check [enum TrackType] to see available types.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/animation/index.html</link>
@@ -32,13 +32,14 @@
</description>
</method>
<method name="animation_track_get_key_animation" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="track_idx" type="int">
</argument>
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the animation name at the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of an Animation Track.
</description>
</method>
<method name="animation_track_insert_key">
@@ -48,9 +49,10 @@
</argument>
<argument index="1" name="time" type="float">
</argument>
- <argument index="2" name="animation" type="String">
+ <argument index="2" name="animation" type="StringName">
</argument>
<description>
+ Inserts a key with value [code]animation[/code] at the given [code]time[/code] (in seconds). The [code]track_idx[/code] must be the index of an Animation Track.
</description>
</method>
<method name="animation_track_set_key_animation">
@@ -60,9 +62,10 @@
</argument>
<argument index="1" name="key_idx" type="int">
</argument>
- <argument index="2" name="animation" type="String">
+ <argument index="2" name="animation" type="StringName">
</argument>
<description>
+ Sets the key identified by [code]key_idx[/code] to value [code]animation[/code]. The [code]track_idx[/code] must be the index of an Animation Track.
</description>
</method>
<method name="audio_track_get_key_end_offset" qualifiers="const">
@@ -73,6 +76,8 @@
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the end offset of the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of an Audio Track.
+ End offset is the number of seconds cut off at the ending of the audio stream.
</description>
</method>
<method name="audio_track_get_key_start_offset" qualifiers="const">
@@ -83,6 +88,8 @@
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the start offset of the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of an Audio Track.
+ Start offset is the number of seconds cut off at the beginning of the audio stream.
</description>
</method>
<method name="audio_track_get_key_stream" qualifiers="const">
@@ -93,6 +100,7 @@
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the audio stream of the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of an Audio Track.
</description>
</method>
<method name="audio_track_insert_key">
@@ -109,6 +117,8 @@
<argument index="4" name="end_offset" type="float" default="0">
</argument>
<description>
+ Inserts an Audio Track key at the given [code]time[/code] in seconds. The [code]track_idx[/code] must be the index of an Audio Track.
+ [code]stream[/code] is the [AudioStream] resource to play. [code]start_offset[/code] is the number of seconds cut off at the beginning of the audio stream, while [code]end_offset[/code] is at the ending.
</description>
</method>
<method name="audio_track_set_key_end_offset">
@@ -121,6 +131,7 @@
<argument index="2" name="offset" type="float">
</argument>
<description>
+ Sets the end offset of the key identified by [code]key_idx[/code] to value [code]offset[/code]. The [code]track_idx[/code] must be the index of an Audio Track.
</description>
</method>
<method name="audio_track_set_key_start_offset">
@@ -133,6 +144,7 @@
<argument index="2" name="offset" type="float">
</argument>
<description>
+ Sets the start offset of the key identified by [code]key_idx[/code] to value [code]offset[/code]. The [code]track_idx[/code] must be the index of an Audio Track.
</description>
</method>
<method name="audio_track_set_key_stream">
@@ -145,6 +157,7 @@
<argument index="2" name="stream" type="Resource">
</argument>
<description>
+ Sets the stream of the key identified by [code]key_idx[/code] to value [code]offset[/code]. The [code]track_idx[/code] must be the index of an Audio Track.
</description>
</method>
<method name="bezier_track_get_key_in_handle" qualifiers="const">
@@ -155,6 +168,7 @@
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the in handle of the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="bezier_track_get_key_out_handle" qualifiers="const">
@@ -165,6 +179,7 @@
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the out handle of the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="bezier_track_get_key_value" qualifiers="const">
@@ -175,6 +190,7 @@
<argument index="1" name="key_idx" type="int">
</argument>
<description>
+ Returns the value of the key identified by [code]key_idx[/code]. The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="bezier_track_insert_key">
@@ -191,6 +207,8 @@
<argument index="4" name="out_handle" type="Vector2" default="Vector2( 0, 0 )">
</argument>
<description>
+ Inserts a Bezier Track key at the given [code]time[/code] in seconds. The [code]track_idx[/code] must be the index of a Bezier Track.
+ [code]in_handle[/code] is the left-side weight of the added Bezier curve point, [code]out_handle[/code] is the right-side one, while [code]value[/code] is the actual value at this point.
</description>
</method>
<method name="bezier_track_interpolate" qualifiers="const">
@@ -201,6 +219,7 @@
<argument index="1" name="time" type="float">
</argument>
<description>
+ Returns the interpolated value at the given [code]time[/code] (in seconds). The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="bezier_track_set_key_in_handle">
@@ -213,6 +232,7 @@
<argument index="2" name="in_handle" type="Vector2">
</argument>
<description>
+ Sets the in handle of the key identified by [code]key_idx[/code] to value [code]in_handle[/code]. The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="bezier_track_set_key_out_handle">
@@ -225,6 +245,7 @@
<argument index="2" name="out_handle" type="Vector2">
</argument>
<description>
+ Sets the out handle of the key identified by [code]key_idx[/code] to value [code]out_handle[/code]. The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="bezier_track_set_key_value">
@@ -237,6 +258,7 @@
<argument index="2" name="value" type="float">
</argument>
<description>
+ Sets the value of the key identified by [code]key_idx[/code] to the given value. The [code]track_idx[/code] must be the index of a Bezier Track.
</description>
</method>
<method name="clear">
@@ -274,7 +296,7 @@
</description>
</method>
<method name="method_track_get_key_indices" qualifiers="const">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="track_idx" type="int">
</argument>
@@ -287,7 +309,7 @@
</description>
</method>
<method name="method_track_get_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="track_idx" type="int">
</argument>
@@ -627,7 +649,7 @@
</description>
</method>
<method name="value_track_get_key_indices" qualifiers="const">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="track_idx" type="int">
</argument>
@@ -675,6 +697,7 @@
<signals>
<signal name="tracks_changed">
<description>
+ Emitted when there's a change in the list of tracks, e.g. tracks are added, moved or have changed paths.
</description>
</signal>
</signals>
@@ -689,10 +712,13 @@
Method tracks call functions with given arguments per key.
</constant>
<constant name="TYPE_BEZIER" value="3" enum="TrackType">
+ Bezier tracks are used to interpolate a value using custom curves. They can also be used to animate sub-properties of vectors and colors (e.g. alpha value of a [Color]).
</constant>
<constant name="TYPE_AUDIO" value="4" enum="TrackType">
+ Audio tracks are used to play an audio stream with either type of [AudioStreamPlayer]. The stream can be trimmed and previewed in the animation.
</constant>
<constant name="TYPE_ANIMATION" value="5" enum="TrackType">
+ Animation tracks play animations in other [AnimationPlayer] nodes.
</constant>
<constant name="INTERPOLATION_NEAREST" value="0" enum="InterpolationType">
No interpolation (nearest value).
@@ -713,6 +739,7 @@
Update at the keyframes.
</constant>
<constant name="UPDATE_CAPTURE" value="3" enum="UpdateMode">
+ Same as linear interpolation, but also interpolates from the current value (i.e. dynamically at runtime) if the first key isn't at 0 seconds.
</constant>
</constants>
</class>
diff --git a/doc/classes/AnimationNode.xml b/doc/classes/AnimationNode.xml
index 331a30bd9e..3d6ebd5934 100644
--- a/doc/classes/AnimationNode.xml
+++ b/doc/classes/AnimationNode.xml
@@ -23,7 +23,7 @@
<method name="blend_animation">
<return type="void">
</return>
- <argument index="0" name="animation" type="String">
+ <argument index="0" name="animation" type="StringName">
</argument>
<argument index="1" name="time" type="float">
</argument>
@@ -59,7 +59,7 @@
<method name="blend_node">
<return type="float">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="node" type="AnimationNode">
</argument>
@@ -119,7 +119,7 @@
<method name="get_parameter" qualifiers="const">
<return type="Variant">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Gets the value of a parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees.
@@ -128,7 +128,7 @@
<method name="get_parameter_default_value" qualifiers="virtual">
<return type="Variant">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Gets the default value of a parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees.
@@ -142,7 +142,7 @@
</description>
</method>
<method name="has_filter" qualifiers="virtual">
- <return type="String">
+ <return type="bool">
</return>
<description>
Returns [code]true[/code] whether you want the blend tree editor to display filter editing on this node.
@@ -193,7 +193,7 @@
<method name="set_parameter">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
diff --git a/doc/classes/AnimationNodeAnimation.xml b/doc/classes/AnimationNodeAnimation.xml
index 369969a2d4..ab44148c15 100644
--- a/doc/classes/AnimationNodeAnimation.xml
+++ b/doc/classes/AnimationNodeAnimation.xml
@@ -12,7 +12,7 @@
<methods>
</methods>
<members>
- <member name="animation" type="String" setter="set_animation" getter="get_animation" default="&quot;&quot;">
+ <member name="animation" type="StringName" setter="set_animation" getter="get_animation" default="@&quot;&quot;">
Animation to use as an output. It is one of the animations provided by [member AnimationTree.anim_player].
</member>
</members>
diff --git a/doc/classes/AnimationNodeBlendTree.xml b/doc/classes/AnimationNodeBlendTree.xml
index 5a86af6865..4a34d75ff9 100644
--- a/doc/classes/AnimationNodeBlendTree.xml
+++ b/doc/classes/AnimationNodeBlendTree.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationNodeBlendTree" inherits="AnimationRootNode" version="4.0">
<brief_description>
+ [AnimationTree] node resource that contains many blend type nodes.
</brief_description>
<description>
+ This node may contain a sub-tree of any other blend type nodes, such as mix, blend2, blend3, one shot, etc. This is one of the most commonly used roots.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html</link>
@@ -11,106 +13,122 @@
<method name="add_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="node" type="AnimationNode">
</argument>
<argument index="2" name="position" type="Vector2" default="Vector2( 0, 0 )">
</argument>
<description>
+ Adds an [AnimationNode] at the given [code]position[/code]. The [code]name[/code] is used to identify the created sub-node later.
</description>
</method>
<method name="connect_node">
<return type="void">
</return>
- <argument index="0" name="input_node" type="String">
+ <argument index="0" name="input_node" type="StringName">
</argument>
<argument index="1" name="input_index" type="int">
</argument>
- <argument index="2" name="output_node" type="String">
+ <argument index="2" name="output_node" type="StringName">
</argument>
<description>
+ Connects the output of an [AnimationNode] as input for another [AnimationNode], at the input port specified by [code]input_index[/code].
</description>
</method>
<method name="disconnect_node">
<return type="void">
</return>
- <argument index="0" name="input_node" type="String">
+ <argument index="0" name="input_node" type="StringName">
</argument>
<argument index="1" name="input_index" type="int">
</argument>
<description>
+ Disconnects the node connected to the specified input.
</description>
</method>
<method name="get_node" qualifiers="const">
<return type="AnimationNode">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
+ Returns the sub-node with the specified [code]name[/code].
</description>
</method>
<method name="get_node_position" qualifiers="const">
<return type="Vector2">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
+ Returns the position of the sub-node with the specified [code]name[/code].
</description>
</method>
<method name="has_node" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
+ Returns [code]true[/code] if a sub-node with specified [code]name[/code] exists.
</description>
</method>
<method name="remove_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
+ Removes a sub-node.
</description>
</method>
<method name="rename_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="new_name" type="String">
+ <argument index="1" name="new_name" type="StringName">
</argument>
<description>
+ Changes the name of a sub-node.
</description>
</method>
<method name="set_node_position">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="position" type="Vector2">
</argument>
<description>
+ Modifies the position of a sub-node.
</description>
</method>
</methods>
<members>
<member name="graph_offset" type="Vector2" setter="set_graph_offset" getter="get_graph_offset" default="Vector2( 0, 0 )">
+ The global offset of all sub-nodes.
</member>
</members>
<constants>
<constant name="CONNECTION_OK" value="0">
+ The connection was successful.
</constant>
<constant name="CONNECTION_ERROR_NO_INPUT" value="1">
+ The input node is [code]null[/code].
</constant>
<constant name="CONNECTION_ERROR_NO_INPUT_INDEX" value="2">
+ The specified input port is out of range.
</constant>
<constant name="CONNECTION_ERROR_NO_OUTPUT" value="3">
+ The output node is [code]null[/code].
</constant>
<constant name="CONNECTION_ERROR_SAME_NODE" value="4">
+ Input and output nodes are the same.
</constant>
<constant name="CONNECTION_ERROR_CONNECTION_EXISTS" value="5">
+ The specified connection already exists.
</constant>
</constants>
</class>
diff --git a/doc/classes/AnimationNodeOneShot.xml b/doc/classes/AnimationNodeOneShot.xml
index b6e4ed9c98..4ba0b82df6 100644
--- a/doc/classes/AnimationNodeOneShot.xml
+++ b/doc/classes/AnimationNodeOneShot.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationNodeOneShot" inherits="AnimationNode" version="4.0">
<brief_description>
+ Plays an animation once in [AnimationNodeBlendTree].
</brief_description>
<description>
+ A resource to add to an [AnimationNodeBlendTree]. This node will execute a sub-animation and return once it finishes. Blend times for fading in and out can be customized, as well as filters.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html</link>
@@ -25,10 +27,13 @@
</methods>
<members>
<member name="autorestart" type="bool" setter="set_autorestart" getter="has_autorestart" default="false">
+ If [code]true[/code], the sub-animation will restart automatically after finishing.
</member>
<member name="autorestart_delay" type="float" setter="set_autorestart_delay" getter="get_autorestart_delay" default="1.0">
+ The delay after which the automatic restart is triggered, in seconds.
</member>
<member name="autorestart_random_delay" type="float" setter="set_autorestart_random_delay" getter="get_autorestart_random_delay" default="0.0">
+ If [member autorestart] is [code]true[/code], a random additional delay (in seconds) between 0 and this value will be added to [member autorestart_delay].
</member>
<member name="fadein_time" type="float" setter="set_fadein_time" getter="get_fadein_time" default="0.1">
</member>
diff --git a/doc/classes/AnimationNodeOutput.xml b/doc/classes/AnimationNodeOutput.xml
index f4bded2cd1..38b05eb650 100644
--- a/doc/classes/AnimationNodeOutput.xml
+++ b/doc/classes/AnimationNodeOutput.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationNodeOutput" inherits="AnimationNode" version="4.0">
<brief_description>
+ Generic output node to be added to [AnimationNodeBlendTree].
</brief_description>
<description>
</description>
diff --git a/doc/classes/AnimationNodeStateMachine.xml b/doc/classes/AnimationNodeStateMachine.xml
index 39a9af5ead..b647ff70b8 100644
--- a/doc/classes/AnimationNodeStateMachine.xml
+++ b/doc/classes/AnimationNodeStateMachine.xml
@@ -18,7 +18,7 @@
<method name="add_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="node" type="AnimationNode">
</argument>
@@ -31,9 +31,9 @@
<method name="add_transition">
<return type="void">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
- <argument index="1" name="to" type="String">
+ <argument index="1" name="to" type="StringName">
</argument>
<argument index="2" name="transition" type="AnimationNodeStateMachineTransition">
</argument>
@@ -58,14 +58,14 @@
<method name="get_node" qualifiers="const">
<return type="AnimationNode">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns the animation node with the given name.
</description>
</method>
<method name="get_node_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="node" type="AnimationNode">
</argument>
@@ -76,7 +76,7 @@
<method name="get_node_position" qualifiers="const">
<return type="Vector2">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns the given node's coordinates. Used for display in the editor.
@@ -106,7 +106,7 @@
</description>
</method>
<method name="get_transition_from" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -115,7 +115,7 @@
</description>
</method>
<method name="get_transition_to" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -126,7 +126,7 @@
<method name="has_node" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the graph contains the given node.
@@ -135,9 +135,9 @@
<method name="has_transition" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
- <argument index="1" name="to" type="String">
+ <argument index="1" name="to" type="StringName">
</argument>
<description>
Returns [code]true[/code] if there is a transition between the given nodes.
@@ -146,7 +146,7 @@
<method name="remove_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Deletes the given node from the graph.
@@ -155,9 +155,9 @@
<method name="remove_transition">
<return type="void">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
- <argument index="1" name="to" type="String">
+ <argument index="1" name="to" type="StringName">
</argument>
<description>
Deletes the transition between the two specified nodes.
@@ -175,9 +175,9 @@
<method name="rename_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="new_name" type="String">
+ <argument index="1" name="new_name" type="StringName">
</argument>
<description>
Renames the given node.
@@ -186,7 +186,7 @@
<method name="set_end_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Sets the given node as the graph end point.
@@ -204,7 +204,7 @@
<method name="set_node_position">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="position" type="Vector2">
</argument>
@@ -215,7 +215,7 @@
<method name="set_start_node">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Sets the given node as the graph start point.
diff --git a/doc/classes/AnimationNodeStateMachinePlayback.xml b/doc/classes/AnimationNodeStateMachinePlayback.xml
index 0198237bed..f4b89a5086 100644
--- a/doc/classes/AnimationNodeStateMachinePlayback.xml
+++ b/doc/classes/AnimationNodeStateMachinePlayback.xml
@@ -16,14 +16,14 @@
</tutorials>
<methods>
<method name="get_current_node" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<description>
Returns the currently playing animation state.
</description>
</method>
<method name="get_travel_path" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the current travel path as computed internally by the A* algorithm.
@@ -39,7 +39,7 @@
<method name="start">
<return type="void">
</return>
- <argument index="0" name="node" type="String">
+ <argument index="0" name="node" type="StringName">
</argument>
<description>
Starts playing the given animation.
@@ -55,7 +55,7 @@
<method name="travel">
<return type="void">
</return>
- <argument index="0" name="to_node" type="String">
+ <argument index="0" name="to_node" type="StringName">
</argument>
<description>
Transitions from the current state to another one, following the shortest path.
diff --git a/doc/classes/AnimationNodeStateMachineTransition.xml b/doc/classes/AnimationNodeStateMachineTransition.xml
index d40a6f1e46..f0b7cc4099 100644
--- a/doc/classes/AnimationNodeStateMachineTransition.xml
+++ b/doc/classes/AnimationNodeStateMachineTransition.xml
@@ -10,7 +10,7 @@
<methods>
</methods>
<members>
- <member name="advance_condition" type="String" setter="set_advance_condition" getter="get_advance_condition" default="&quot;&quot;">
+ <member name="advance_condition" type="StringName" setter="set_advance_condition" getter="get_advance_condition" default="@&quot;&quot;">
Turn on auto advance when this condition is set. The provided name will become a boolean parameter on the [AnimationTree] that can be controlled from code (see [url=https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html#controlling-from-code][/url]). For example, if [member AnimationTree.tree_root] is an [AnimationNodeStateMachine] and [member advance_condition] is set to [code]"idle"[/code]:
[codeblock]
$animation_tree["parameters/conditions/idle"] = is_on_floor and (linear_velocity.x == 0)
diff --git a/doc/classes/AnimationNodeTimeScale.xml b/doc/classes/AnimationNodeTimeScale.xml
index 229f9bbba2..5c2e6cb692 100644
--- a/doc/classes/AnimationNodeTimeScale.xml
+++ b/doc/classes/AnimationNodeTimeScale.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationNodeTimeScale" inherits="AnimationNode" version="4.0">
<brief_description>
+ A time-scaling animation node to be used with [AnimationTree].
</brief_description>
<description>
+ Allows scaling the speed of the animation (or reversing it) in any children nodes. Setting it to 0 will pause the animation.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html</link>
diff --git a/doc/classes/AnimationNodeTimeSeek.xml b/doc/classes/AnimationNodeTimeSeek.xml
index 5a9cbe4861..0fef106da5 100644
--- a/doc/classes/AnimationNodeTimeSeek.xml
+++ b/doc/classes/AnimationNodeTimeSeek.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationNodeTimeSeek" inherits="AnimationNode" version="4.0">
<brief_description>
+ A time-seeking animation node to be used with [AnimationTree].
</brief_description>
<description>
+ This node can be used to cause a seek command to happen to any sub-children of the graph. After setting the time, this value returns to -1.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html</link>
diff --git a/doc/classes/AnimationNodeTransition.xml b/doc/classes/AnimationNodeTransition.xml
index bf94fe0466..11250c5b17 100644
--- a/doc/classes/AnimationNodeTransition.xml
+++ b/doc/classes/AnimationNodeTransition.xml
@@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationNodeTransition" inherits="AnimationNode" version="4.0">
<brief_description>
+ A generic animation transition node for [AnimationTree].
</brief_description>
<description>
+ Simple state machine for cases which don't require a more advanced [AnimationNodeStateMachine]. Animations can be connected to the inputs and transition times can be specified.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html</link>
@@ -47,8 +49,10 @@
</methods>
<members>
<member name="input_count" type="int" setter="set_enabled_inputs" getter="get_enabled_inputs" default="0">
+ The number of available input ports for this node.
</member>
<member name="xfade_time" type="float" setter="set_cross_fade_time" getter="get_cross_fade_time" default="0.0">
+ Cross-fading time (in seconds) between each animation connected to the inputs.
</member>
</members>
<constants>
diff --git a/doc/classes/AnimationPlayer.xml b/doc/classes/AnimationPlayer.xml
index 3e8315f686..1420b1bf64 100644
--- a/doc/classes/AnimationPlayer.xml
+++ b/doc/classes/AnimationPlayer.xml
@@ -16,7 +16,7 @@
<method name="add_animation">
<return type="int" enum="Error">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="animation" type="Animation">
</argument>
@@ -34,9 +34,9 @@
</description>
</method>
<method name="animation_get_next" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
- <argument index="0" name="anim_from" type="String">
+ <argument index="0" name="anim_from" type="StringName">
</argument>
<description>
Returns the name of the next animation in the queue.
@@ -45,9 +45,9 @@
<method name="animation_set_next">
<return type="void">
</return>
- <argument index="0" name="anim_from" type="String">
+ <argument index="0" name="anim_from" type="StringName">
</argument>
- <argument index="1" name="anim_to" type="String">
+ <argument index="1" name="anim_to" type="StringName">
</argument>
<description>
Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] animation completes.
@@ -68,7 +68,7 @@
</description>
</method>
<method name="find_animation" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="animation" type="Animation">
</argument>
@@ -79,14 +79,14 @@
<method name="get_animation" qualifiers="const">
<return type="Animation">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns the [Animation] with key [code]name[/code] or [code]null[/code] if not found.
</description>
</method>
<method name="get_animation_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the list of stored animation names.
@@ -95,9 +95,9 @@
<method name="get_blend_time" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="anim_from" type="String">
+ <argument index="0" name="anim_from" type="StringName">
</argument>
- <argument index="1" name="anim_to" type="String">
+ <argument index="1" name="anim_to" type="StringName">
</argument>
<description>
Gets the blend time (in seconds) between two animations, referenced by their names.
@@ -111,7 +111,7 @@
</description>
</method>
<method name="get_queue">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns a list of the animation names that are currently queued to play.
@@ -120,7 +120,7 @@
<method name="has_animation" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] with key [code]name[/code].
@@ -136,7 +136,7 @@
<method name="play">
<return type="void">
</return>
- <argument index="0" name="name" type="String" default="&quot;&quot;">
+ <argument index="0" name="name" type="StringName" default="&quot;&quot;">
</argument>
<argument index="1" name="custom_blend" type="float" default="-1">
</argument>
@@ -153,7 +153,7 @@
<method name="play_backwards">
<return type="void">
</return>
- <argument index="0" name="name" type="String" default="&quot;&quot;">
+ <argument index="0" name="name" type="StringName" default="&quot;&quot;">
</argument>
<argument index="1" name="custom_blend" type="float" default="-1">
</argument>
@@ -165,7 +165,7 @@
<method name="queue">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Queues an animation for playback once the current one is done.
@@ -175,7 +175,7 @@
<method name="remove_animation">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Removes the animation with key [code]name[/code].
@@ -184,9 +184,9 @@
<method name="rename_animation">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="newname" type="String">
+ <argument index="1" name="newname" type="StringName">
</argument>
<description>
Renames an existing animation with key [code]name[/code] to [code]newname[/code].
@@ -206,9 +206,9 @@
<method name="set_blend_time">
<return type="void">
</return>
- <argument index="0" name="anim_from" type="String">
+ <argument index="0" name="anim_from" type="StringName">
</argument>
- <argument index="1" name="anim_to" type="String">
+ <argument index="1" name="anim_to" type="StringName">
</argument>
<argument index="2" name="sec" type="float">
</argument>
@@ -264,23 +264,23 @@
</members>
<signals>
<signal name="animation_changed">
- <argument index="0" name="old_name" type="String">
+ <argument index="0" name="old_name" type="StringName">
</argument>
- <argument index="1" name="new_name" type="String">
+ <argument index="1" name="new_name" type="StringName">
</argument>
<description>
If the currently being played animation changes, this signal will notify of such change.
</description>
</signal>
<signal name="animation_finished">
- <argument index="0" name="anim_name" type="String">
+ <argument index="0" name="anim_name" type="StringName">
</argument>
<description>
Notifies when an animation finished playing.
</description>
</signal>
<signal name="animation_started">
- <argument index="0" name="anim_name" type="String">
+ <argument index="0" name="anim_name" type="StringName">
</argument>
<description>
Notifies when an animation starts playing.
diff --git a/doc/classes/AnimationTree.xml b/doc/classes/AnimationTree.xml
index 2a7db37eea..9642dd1c70 100644
--- a/doc/classes/AnimationTree.xml
+++ b/doc/classes/AnimationTree.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimationTree" inherits="Node" version="4.0">
<brief_description>
+ A node to be used for advanced animation transitions in an [AnimationPlayer].
</brief_description>
<description>
</description>
@@ -15,6 +16,7 @@
<argument index="0" name="delta" type="float">
</argument>
<description>
+ Manually advance the animations by the specified time (in seconds).
</description>
</method>
<method name="get_root_motion_transform" qualifiers="const">
@@ -36,22 +38,29 @@
</methods>
<members>
<member name="active" type="bool" setter="set_active" getter="is_active" default="false">
+ If [code]true[/code], the [AnimationTree] will be processing.
</member>
<member name="anim_player" type="NodePath" setter="set_animation_player" getter="get_animation_player" default="NodePath(&quot;&quot;)">
+ The path to the [AnimationPlayer] used for animating.
</member>
<member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="AnimationTree.AnimationProcessMode" default="1">
+ The process mode of this [AnimationTree]. See [enum AnimationProcessMode] for available modes.
</member>
<member name="root_motion_track" type="NodePath" setter="set_root_motion_track" getter="get_root_motion_track" default="NodePath(&quot;&quot;)">
</member>
<member name="tree_root" type="AnimationNode" setter="set_tree_root" getter="get_tree_root">
+ The root animation node of this [AnimationTree]. See [AnimationNode].
</member>
</members>
<constants>
<constant name="ANIMATION_PROCESS_PHYSICS" value="0" enum="AnimationProcessMode">
+ The animations will progress during the physics frame (i.e. [method Node._physics_process]).
</constant>
<constant name="ANIMATION_PROCESS_IDLE" value="1" enum="AnimationProcessMode">
+ The animations will progress during the idle frame (i.e. [method Node._process]).
</constant>
<constant name="ANIMATION_PROCESS_MANUAL" value="2" enum="AnimationProcessMode">
+ The animations will only progress manually (see [method advance]).
</constant>
</constants>
</class>
diff --git a/doc/classes/Area.xml b/doc/classes/Area.xml
index f2f9284ae3..b273a7a9d9 100644
--- a/doc/classes/Area.xml
+++ b/doc/classes/Area.xml
@@ -89,7 +89,7 @@
<member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="0.1">
The rate at which objects stop spinning in this area. Represents the angular velocity lost per second. Values range from [code]0[/code] (no damping) to [code]1[/code] (full damping).
</member>
- <member name="audio_bus_name" type="String" setter="set_audio_bus" getter="get_audio_bus" default="&quot;Master&quot;">
+ <member name="audio_bus_name" type="StringName" setter="set_audio_bus" getter="get_audio_bus" default="@&quot;Master&quot;">
The name of the area's audio bus.
</member>
<member name="audio_bus_override" type="bool" setter="set_audio_bus_override" getter="is_overriding_audio_bus" default="false">
@@ -131,7 +131,7 @@
<member name="reverb_bus_enable" type="bool" setter="set_use_reverb_bus" getter="is_using_reverb_bus" default="false">
If [code]true[/code], the area applies reverb to its associated audio.
</member>
- <member name="reverb_bus_name" type="String" setter="set_reverb_bus" getter="get_reverb_bus" default="&quot;Master&quot;">
+ <member name="reverb_bus_name" type="StringName" setter="set_reverb_bus" getter="get_reverb_bus" default="@&quot;Master&quot;">
The reverb bus name to use for this area's associated audio.
</member>
<member name="reverb_bus_uniformity" type="float" setter="set_reverb_uniformity" getter="get_reverb_uniformity" default="0.0">
diff --git a/doc/classes/Area2D.xml b/doc/classes/Area2D.xml
index 715e9b3286..0c1317f19d 100644
--- a/doc/classes/Area2D.xml
+++ b/doc/classes/Area2D.xml
@@ -90,7 +90,7 @@
<member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="1.0">
The rate at which objects stop spinning in this area. Represents the angular velocity lost per second. Values range from [code]0[/code] (no damping) to [code]1[/code] (full damping).
</member>
- <member name="audio_bus_name" type="String" setter="set_audio_bus_name" getter="get_audio_bus_name" default="&quot;Master&quot;">
+ <member name="audio_bus_name" type="StringName" setter="set_audio_bus_name" getter="get_audio_bus_name" default="@&quot;Master&quot;">
The name of the area's audio bus.
</member>
<member name="audio_bus_override" type="bool" setter="set_audio_bus_override" getter="is_overriding_audio_bus" default="false">
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml
index 08455bb7bc..6401feb95c 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>
@@ -22,67 +28,87 @@
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolColorArray">
+ <argument index="0" name="from" type="PackedColorArray">
+ </argument>
+ <description>
+ Constructs an array from a [PackedColorArray].
+ </description>
+ </method>
+ <method name="Array">
+ <return type="Array">
+ </return>
+ <argument index="0" name="from" type="PackedVector3Array">
+ </argument>
+ <description>
+ Constructs an array from a [PackedVector3Array].
+ </description>
+ </method>
+ <method name="Array">
+ <return type="Array">
+ </return>
+ <argument index="0" name="from" type="PackedVector2Array">
</argument>
<description>
- Constructs an array from a [PoolColorArray].
+ Constructs an array from a [PackedVector2Array].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolVector3Array">
+ <argument index="0" name="from" type="PackedStringArray">
</argument>
<description>
- Constructs an array from a [PoolVector3Array].
+ Constructs an array from a [PackedStringArray].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolVector2Array">
+ <argument index="0" name="from" type="PackedFloat64Array">
</argument>
<description>
- Constructs an array from a [PoolVector2Array].
+ Constructs an array from a [PackedFloat64Array].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolStringArray">
+ <argument index="0" name="from" type="PackedFloat32Array">
</argument>
<description>
- Constructs an array from a [PoolStringArray].
+ Constructs an array from a [PackedFloat32Array].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolRealArray">
+ <argument index="0" name="from" type="PackedInt64Array">
</argument>
<description>
- Constructs an array from a [PoolRealArray].
+ Constructs an array from a [PackedInt64Array].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolIntArray">
+ <argument index="0" name="from" type="PackedInt32Array">
</argument>
<description>
- Constructs an array from a [PoolIntArray].
+ Constructs an array from a [PackedInt32Array].
</description>
</method>
<method name="Array">
<return type="Array">
</return>
- <argument index="0" name="from" type="PoolByteArray">
+ <argument index="0" name="from" type="PackedByteArray">
</argument>
<description>
- Constructs an array from a [PoolByteArray].
+ Constructs an array from a [PackedByteArray].
</description>
</method>
<method name="append">
+ <return type="void">
+ </return>
<argument index="0" name="value" type="Variant">
</argument>
<description>
@@ -90,7 +116,7 @@
</description>
</method>
<method name="back">
- <return type="Variant">
+ <return type="void">
</return>
<description>
Returns the last element of the array, or [code]null[/code] if the array is empty.
@@ -101,7 +127,7 @@
</return>
<argument index="0" name="value" type="Variant">
</argument>
- <argument index="1" name="before" type="bool" default="True">
+ <argument index="1" name="before" type="bool" default="true">
</argument>
<description>
Finds the index of an existing value (or the insertion index that maintains sorting order, if the value is not yet present in the array) using binary search. Optionally, a [code]before[/code] specifier can be passed. If [code]false[/code], the returned index comes after all existing entries of the value in the array.
@@ -117,7 +143,7 @@
</argument>
<argument index="2" name="func" type="String">
</argument>
- <argument index="3" name="before" type="bool" default="True">
+ <argument index="3" name="before" type="bool" default="true">
</argument>
<description>
Finds the index of an existing value (or the insertion index that maintains sorting order, if the value is not yet present in the array) using binary search and a custom comparison method. Optionally, a [code]before[/code] specifier can be passed. If [code]false[/code], the returned index comes after all existing entries of the value in the array. The custom method receives two arguments (an element from the array and the value searched for) and must return [code]true[/code] if the first argument is less than the second, and return [code]false[/code] otherwise.
@@ -125,6 +151,8 @@
</description>
</method>
<method name="clear">
+ <return type="void">
+ </return>
<description>
Clears the array. This is equivalent to using [method resize] with a size of [code]0[/code].
</description>
@@ -141,7 +169,7 @@
<method name="duplicate">
<return type="Array">
</return>
- <argument index="0" name="deep" type="bool" default="False">
+ <argument index="0" name="deep" type="bool" default="false">
</argument>
<description>
Returns a copy of the array.
@@ -156,6 +184,8 @@
</description>
</method>
<method name="erase">
+ <return type="void">
+ </return>
<argument index="0" name="value" type="Variant">
</argument>
<description>
@@ -183,7 +213,7 @@
</description>
</method>
<method name="front">
- <return type="Variant">
+ <return type="void">
</return>
<description>
Returns the first element of the array, or [code]null[/code] if the array is empty.
@@ -212,6 +242,8 @@
</description>
</method>
<method name="insert">
+ <return type="void">
+ </return>
<argument index="0" name="position" type="int">
</argument>
<argument index="1" name="value" type="Variant">
@@ -221,39 +253,43 @@
</description>
</method>
<method name="invert">
+ <return type="void">
+ </return>
<description>
Reverses the order of the elements in the array.
</description>
</method>
<method name="max">
- <return type="Variant">
+ <return type="void">
</return>
<description>
Returns the maximum value contained in the array if all elements are of comparable types. If the elements can't be compared, [code]null[/code] is returned.
</description>
</method>
<method name="min">
- <return type="Variant">
+ <return type="void">
</return>
<description>
Returns the minimum value contained in the array if all elements are of comparable types. If the elements can't be compared, [code]null[/code] is returned.
</description>
</method>
<method name="pop_back">
- <return type="Variant">
+ <return type="void">
</return>
<description>
Removes and returns the last element of the array. Returns [code]null[/code] if the array is empty.
</description>
</method>
<method name="pop_front">
- <return type="Variant">
+ <return type="void">
</return>
<description>
Removes and returns the first element of the array. Returns [code]null[/code] if the array is empty.
</description>
</method>
<method name="push_back">
+ <return type="void">
+ </return>
<argument index="0" name="value" type="Variant">
</argument>
<description>
@@ -261,6 +297,8 @@
</description>
</method>
<method name="push_front">
+ <return type="void">
+ </return>
<argument index="0" name="value" type="Variant">
</argument>
<description>
@@ -268,6 +306,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="position" type="int">
</argument>
<description>
@@ -275,6 +315,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="size" type="int">
</argument>
<description>
@@ -293,6 +335,8 @@
</description>
</method>
<method name="shuffle">
+ <return type="void">
+ </return>
<description>
Shuffles the array such that the items will have a random order. This method uses the global random number generator common to methods such as [method @GDScript.randi]. Call [method @GDScript.randomize] to ensure that a new seed will be used each time if you want non-reproducible shuffling.
</description>
@@ -313,13 +357,15 @@
</argument>
<argument index="2" name="step" type="int" default="1">
</argument>
- <argument index="3" name="deep" type="bool" default="False">
+ <argument index="3" name="deep" type="bool" default="false">
</argument>
<description>
Duplicates the subset described in the function and returns it in an array, deeply copying the array if [code]deep[/code] is [code]true[/code]. Lower and upper index are inclusive, with the [code]step[/code] describing the change between indices while slicing.
</description>
</method>
<method name="sort">
+ <return type="void">
+ </return>
<description>
Sorts the array.
[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural order). This may lead to unexpected behavior when sorting an array of strings ending with a sequence of numbers. Consider the following example:
@@ -331,6 +377,8 @@
</description>
</method>
<method name="sort_custom">
+ <return type="void">
+ </return>
<argument index="0" name="obj" type="Object">
</argument>
<argument index="1" name="func" type="String">
diff --git a/doc/classes/ArrayMesh.xml b/doc/classes/ArrayMesh.xml
index 2dbf55e522..47abd2e996 100644
--- a/doc/classes/ArrayMesh.xml
+++ b/doc/classes/ArrayMesh.xml
@@ -7,7 +7,7 @@
The [ArrayMesh] is used to construct a [Mesh] by specifying the attributes as arrays.
The most basic example is the creation of a single triangle:
[codeblock]
- var vertices = PoolVector3Array()
+ var vertices = PackedVector3Array()
vertices.push_back(Vector3(0, 1, 0))
vertices.push_back(Vector3(1, 0, 0))
vertices.push_back(Vector3(0, 0, 1))
@@ -30,7 +30,7 @@
<method name="add_blend_shape">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Adds name for a blend shape that will be added with [method add_surface_from_arrays]. Must be called before surface is added.
@@ -70,6 +70,7 @@
<return type="void">
</return>
<description>
+ Removes all surfaces from this [ArrayMesh].
</description>
</method>
<method name="get_blend_shape_count" qualifiers="const">
@@ -80,7 +81,7 @@
</description>
</method>
<method name="get_blend_shape_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="index" type="int">
</argument>
@@ -178,7 +179,7 @@
</argument>
<argument index="1" name="offset" type="int">
</argument>
- <argument index="2" name="data" type="PoolByteArray">
+ <argument index="2" name="data" type="PackedByteArray">
</argument>
<description>
Updates a specified region of mesh arrays on the GPU.
@@ -202,31 +203,31 @@
Amount of weights/bone indices per vertex (always 4).
</constant>
<constant name="ARRAY_VERTEX" value="0" enum="ArrayType">
- [PoolVector3Array], [PoolVector2Array], or [Array] of vertex positions.
+ [PackedVector3Array], [PackedVector2Array], or [Array] of vertex positions.
</constant>
<constant name="ARRAY_NORMAL" value="1" enum="ArrayType">
- [PoolVector3Array] of vertex normals.
+ [PackedVector3Array] of vertex normals.
</constant>
<constant name="ARRAY_TANGENT" value="2" enum="ArrayType">
- [PoolRealArray] 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">
- [PoolColorArray] of vertex colors.
+ [PackedColorArray] of vertex colors.
</constant>
<constant name="ARRAY_TEX_UV" value="4" enum="ArrayType">
- [PoolVector2Array] for UV coordinates.
+ [PackedVector2Array] for UV coordinates.
</constant>
<constant name="ARRAY_TEX_UV2" value="5" enum="ArrayType">
- [PoolVector2Array] for second UV coordinates.
+ [PackedVector2Array] for second UV coordinates.
</constant>
<constant name="ARRAY_BONES" value="6" enum="ArrayType">
- [PoolRealArray] or [PoolIntArray] 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">
- [PoolRealArray] 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">
- [PoolIntArray] 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/AudioEffectCompressor.xml b/doc/classes/AudioEffectCompressor.xml
index fe0d63777f..3117978d8a 100644
--- a/doc/classes/AudioEffectCompressor.xml
+++ b/doc/classes/AudioEffectCompressor.xml
@@ -32,7 +32,7 @@
<member name="release_ms" type="float" setter="set_release_ms" getter="get_release_ms" default="250.0">
Compressor's delay time to stop reducing the signal after the signal level falls below the threshold, in milliseconds. Value can range from 20 to 2000.
</member>
- <member name="sidechain" type="String" setter="set_sidechain" getter="get_sidechain" default="&quot;&quot;">
+ <member name="sidechain" type="StringName" setter="set_sidechain" getter="get_sidechain" default="@&quot;&quot;">
Reduce the sound level using another audio bus for threshold detection.
</member>
<member name="threshold" type="float" setter="set_threshold" getter="get_threshold" default="0.0">
diff --git a/doc/classes/AudioEffectRecord.xml b/doc/classes/AudioEffectRecord.xml
index 189e3c7059..4dac81322f 100644
--- a/doc/classes/AudioEffectRecord.xml
+++ b/doc/classes/AudioEffectRecord.xml
@@ -1,22 +1,26 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="AudioEffectRecord" inherits="AudioEffect" version="4.0">
<brief_description>
+ Audio effect used for recording sound from a microphone.
</brief_description>
<description>
</description>
<tutorials>
+ <link>https://docs.godotengine.org/en/latest/tutorials/audio/recording_with_microphone.html</link>
</tutorials>
<methods>
<method name="get_recording" qualifiers="const">
<return type="AudioStreamSample">
</return>
<description>
+ Returns the recorded sample.
</description>
</method>
<method name="is_recording_active" qualifiers="const">
<return type="bool">
</return>
<description>
+ Returns whether the recording is active or not.
</description>
</method>
<method name="set_recording_active">
@@ -25,11 +29,13 @@
<argument index="0" name="record" type="bool">
</argument>
<description>
+ If [code]true[/code], the sound will be recorded. Note that restarting the recording will remove the previously recorded sample.
</description>
</method>
</methods>
<members>
<member name="format" type="int" setter="set_format" getter="get_format" enum="AudioStreamSample.Format" default="1">
+ Specifies the format in which the sample will be recorded. See [enum AudioStreamSample.Format] for available formats.
</member>
</members>
<constants>
diff --git a/doc/classes/AudioServer.xml b/doc/classes/AudioServer.xml
index 72acf616a9..49c6f5bb34 100644
--- a/doc/classes/AudioServer.xml
+++ b/doc/classes/AudioServer.xml
@@ -107,7 +107,7 @@
<method name="get_bus_index" qualifiers="const">
<return type="int">
</return>
- <argument index="0" name="bus_name" type="String">
+ <argument index="0" name="bus_name" type="StringName">
</argument>
<description>
Returns the index of the bus with the name [code]bus_name[/code].
@@ -145,7 +145,7 @@
</description>
</method>
<method name="get_bus_send" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="bus_idx" type="int">
</argument>
@@ -341,7 +341,7 @@
</return>
<argument index="0" name="bus_idx" type="int">
</argument>
- <argument index="1" name="send" type="String">
+ <argument index="1" name="send" type="StringName">
</argument>
<description>
Connects the output of the bus at [code]bus_idx[/code] to the bus named [code]send[/code].
diff --git a/doc/classes/AudioStreamGeneratorPlayback.xml b/doc/classes/AudioStreamGeneratorPlayback.xml
index 2552cd50a4..e3e17b8a93 100644
--- a/doc/classes/AudioStreamGeneratorPlayback.xml
+++ b/doc/classes/AudioStreamGeneratorPlayback.xml
@@ -37,7 +37,7 @@
<method name="push_buffer">
<return type="bool">
</return>
- <argument index="0" name="frames" type="PoolVector2Array">
+ <argument index="0" name="frames" type="PackedVector2Array">
</argument>
<description>
</description>
diff --git a/doc/classes/AudioStreamPlayer.xml b/doc/classes/AudioStreamPlayer.xml
index 2d65defad3..eab6505734 100644
--- a/doc/classes/AudioStreamPlayer.xml
+++ b/doc/classes/AudioStreamPlayer.xml
@@ -54,7 +54,7 @@
<member name="autoplay" type="bool" setter="set_autoplay" getter="is_autoplay_enabled" default="false">
If [code]true[/code], audio plays when added to scene tree.
</member>
- <member name="bus" type="String" setter="set_bus" getter="get_bus" default="&quot;Master&quot;">
+ <member name="bus" type="StringName" setter="set_bus" getter="get_bus" default="@&quot;Master&quot;">
Bus on which this audio is playing.
</member>
<member name="mix_target" type="int" setter="set_mix_target" getter="get_mix_target" enum="AudioStreamPlayer.MixTarget" default="0">
diff --git a/doc/classes/AudioStreamPlayer2D.xml b/doc/classes/AudioStreamPlayer2D.xml
index 66254b504a..fdbef1b89e 100644
--- a/doc/classes/AudioStreamPlayer2D.xml
+++ b/doc/classes/AudioStreamPlayer2D.xml
@@ -60,7 +60,7 @@
<member name="autoplay" type="bool" setter="set_autoplay" getter="is_autoplay_enabled" default="false">
If [code]true[/code], audio plays when added to scene tree.
</member>
- <member name="bus" type="String" setter="set_bus" getter="get_bus" default="&quot;Master&quot;">
+ <member name="bus" type="StringName" setter="set_bus" getter="get_bus" default="@&quot;Master&quot;">
Bus on which this audio is playing.
</member>
<member name="max_distance" type="float" setter="set_max_distance" getter="get_max_distance" default="2000.0">
diff --git a/doc/classes/AudioStreamPlayer3D.xml b/doc/classes/AudioStreamPlayer3D.xml
index f476bec323..4ec8dba2c6 100644
--- a/doc/classes/AudioStreamPlayer3D.xml
+++ b/doc/classes/AudioStreamPlayer3D.xml
@@ -66,7 +66,7 @@
<member name="autoplay" type="bool" setter="set_autoplay" getter="is_autoplay_enabled" default="false">
If [code]true[/code], audio plays when added to scene tree.
</member>
- <member name="bus" type="String" setter="set_bus" getter="get_bus" default="&quot;Master&quot;">
+ <member name="bus" type="StringName" setter="set_bus" getter="get_bus" default="@&quot;Master&quot;">
Bus on which this audio is playing.
</member>
<member name="doppler_tracking" type="int" setter="set_doppler_tracking" getter="get_doppler_tracking" enum="AudioStreamPlayer3D.DopplerTracking" default="0">
diff --git a/doc/classes/AudioStreamSample.xml b/doc/classes/AudioStreamSample.xml
index 898879ae27..6d99433c90 100644
--- a/doc/classes/AudioStreamSample.xml
+++ b/doc/classes/AudioStreamSample.xml
@@ -22,7 +22,7 @@
</method>
</methods>
<members>
- <member name="data" type="PoolByteArray" setter="set_data" getter="get_data" default="PoolByteArray( )">
+ <member name="data" type="PackedByteArray" setter="set_data" getter="get_data" default="PackedByteArray( )">
Contains the audio data in bytes.
[b]Note:[/b] This property expects signed PCM8 data. To convert unsigned PCM8 to signed PCM8, subtract 128 from each byte.
</member>
diff --git a/doc/classes/BaseMaterial3D.xml b/doc/classes/BaseMaterial3D.xml
index 46a96020d0..380e739f46 100644
--- a/doc/classes/BaseMaterial3D.xml
+++ b/doc/classes/BaseMaterial3D.xml
@@ -67,6 +67,7 @@
<argument index="1" name="texture" type="Texture2D">
</argument>
<description>
+ Sets the texture for the slot specified by [code]param[/code]. See [enum TextureParam] for available slots.
</description>
</method>
</methods>
@@ -425,18 +426,21 @@
Represents the size of the [enum TextureParam] enum.
</constant>
<constant name="TEXTURE_FILTER_NEAREST" value="0" enum="TextureFilter">
+ The texture filter reads from the nearest pixel only. The simplest and fastest method of filtering, but the texture will look pixelized.
</constant>
<constant name="TEXTURE_FILTER_LINEAR" value="1" enum="TextureFilter">
+ The texture filter blends between the nearest four pixels. Use this for most cases where you want to avoid a pixelated style.
</constant>
- <constant name="TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS" value="2" enum="TextureFilter">
+ <constant name="TEXTURE_FILTER_NEAREST_WITH_MIPMAPS" value="2" enum="TextureFilter">
</constant>
<constant name="TEXTURE_FILTER_LINEAR_WITH_MIPMAPS" value="3" enum="TextureFilter">
</constant>
- <constant name="TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS_ANISOTROPIC" value="4" enum="TextureFilter">
+ <constant name="TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC" value="4" enum="TextureFilter">
</constant>
<constant name="TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC" value="5" enum="TextureFilter">
</constant>
<constant name="TEXTURE_FILTER_MAX" value="6" enum="TextureFilter">
+ Represents the size of the [enum TextureFilter] enum.
</constant>
<constant name="DETAIL_UV_1" value="0" enum="DetailUV">
Use [code]UV[/code] with the detail texture.
@@ -445,22 +449,29 @@
Use [code]UV2[/code] with the detail texture.
</constant>
<constant name="TRANSPARENCY_DISABLED" value="0" enum="Transparency">
+ The material will not use transparency.
</constant>
<constant name="TRANSPARENCY_ALPHA" value="1" enum="Transparency">
+ The material will use the texture's alpha values for transparency.
</constant>
<constant name="TRANSPARENCY_ALPHA_SCISSOR" value="2" enum="Transparency">
</constant>
<constant name="TRANSPARENCY_ALPHA_DEPTH_PRE_PASS" value="3" enum="Transparency">
</constant>
<constant name="TRANSPARENCY_MAX" value="4" enum="Transparency">
+ Represents the size of the [enum Transparency] enum.
</constant>
<constant name="SHADING_MODE_UNSHADED" value="0" enum="ShadingMode">
+ The object will not receive shadows.
</constant>
<constant name="SHADING_MODE_PER_PIXEL" value="1" enum="ShadingMode">
+ The object will be shaded per pixel. Useful for realistic shading effect.
</constant>
<constant name="SHADING_MODE_PER_VERTEX" value="2" enum="ShadingMode">
+ The object will be shaded per vertex. Useful when you want cheaper shaders and do not care about visual quality.
</constant>
<constant name="SHADING_MODE_MAX" value="3" enum="ShadingMode">
+ Represents the size of the [enum ShadingMode] enum.
</constant>
<constant name="FEATURE_EMISSION" value="0" enum="Feature">
Constant for setting [member emission_enabled].
diff --git a/doc/classes/Basis.xml b/doc/classes/Basis.xml
index e2b5c23c11..3952ea2d27 100644
--- a/doc/classes/Basis.xml
+++ b/doc/classes/Basis.xml
@@ -100,7 +100,7 @@
</return>
<argument index="0" name="b" type="Basis">
</argument>
- <argument index="1" name="epsilon" type="float" default="0.00001">
+ <argument index="1" name="epsilon" type="float" default="1e-05">
</argument>
<description>
Returns [code]true[/code] if this basis and [code]b[/code] are approximately equal, by calling [code]is_equal_approx[/code] on each component.
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/CPUParticles.xml b/doc/classes/CPUParticles.xml
index b9cc655784..6a6525e99a 100644
--- a/doc/classes/CPUParticles.xml
+++ b/doc/classes/CPUParticles.xml
@@ -171,13 +171,13 @@
<member name="emission_box_extents" type="Vector3" setter="set_emission_box_extents" getter="get_emission_box_extents">
The rectangle's extents if [member emission_shape] is set to [constant EMISSION_SHAPE_BOX].
</member>
- <member name="emission_colors" type="PoolColorArray" setter="set_emission_colors" getter="get_emission_colors" default="PoolColorArray( )">
+ <member name="emission_colors" type="PackedColorArray" setter="set_emission_colors" getter="get_emission_colors" default="PackedColorArray( )">
Sets the [Color]s to modulate particles by when using [constant EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS].
</member>
- <member name="emission_normals" type="PoolVector3Array" setter="set_emission_normals" getter="get_emission_normals">
+ <member name="emission_normals" type="PackedVector3Array" setter="set_emission_normals" getter="get_emission_normals">
Sets the direction the particles will be emitted in when using [constant EMISSION_SHAPE_DIRECTED_POINTS].
</member>
- <member name="emission_points" type="PoolVector3Array" setter="set_emission_points" getter="get_emission_points" default="PoolVector3Array( )">
+ <member name="emission_points" type="PackedVector3Array" setter="set_emission_points" getter="get_emission_points" default="PackedVector3Array( )">
Sets the initial positions to spawn particles when using [constant EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS].
</member>
<member name="emission_shape" type="int" setter="set_emission_shape" getter="get_emission_shape" enum="CPUParticles.EmissionShape" default="0">
diff --git a/doc/classes/CPUParticles2D.xml b/doc/classes/CPUParticles2D.xml
index 926b8e461c..799ba32075 100644
--- a/doc/classes/CPUParticles2D.xml
+++ b/doc/classes/CPUParticles2D.xml
@@ -169,13 +169,13 @@
<member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="CPUParticles2D.DrawOrder" default="0">
Particle draw order. Uses [enum DrawOrder] values.
</member>
- <member name="emission_colors" type="PoolColorArray" setter="set_emission_colors" getter="get_emission_colors">
+ <member name="emission_colors" type="PackedColorArray" setter="set_emission_colors" getter="get_emission_colors">
Sets the [Color]s to modulate particles by when using [constant EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS].
</member>
- <member name="emission_normals" type="PoolVector2Array" setter="set_emission_normals" getter="get_emission_normals">
+ <member name="emission_normals" type="PackedVector2Array" setter="set_emission_normals" getter="get_emission_normals">
Sets the direction the particles will be emitted in when using [constant EMISSION_SHAPE_DIRECTED_POINTS].
</member>
- <member name="emission_points" type="PoolVector2Array" setter="set_emission_points" getter="get_emission_points">
+ <member name="emission_points" type="PackedVector2Array" setter="set_emission_points" getter="get_emission_points">
Sets the initial positions to spawn particles when using [constant EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS].
</member>
<member name="emission_rect_extents" type="Vector2" setter="set_emission_rect_extents" getter="get_emission_rect_extents">
diff --git a/doc/classes/Callable.xml b/doc/classes/Callable.xml
new file mode 100644
index 0000000000..3cc74beb58
--- /dev/null
+++ b/doc/classes/Callable.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Callable" version="4.0">
+ <brief_description>
+ An object representing a method in a certain object that can be called.
+ </brief_description>
+ <description>
+ [Callable] is a first class object which can be held in variables and passed to functions. It represents a given method in an [Object], and is typically used for signal callbacks.
+ [b]Example:[/b]
+ [codeblock]
+ var callable = Callable(self, "print_args")
+ func print_args(arg1, arg2, arg3 = ""):
+ prints(arg1, arg2, arg3)
+ func test():
+ callable.call("hello", "world") # Prints "hello world".
+ callable.call(Vector2.UP, 42, callable) # Prints "(0, -1) 42 Node(Node.gd)::print_args".
+ callable.call("invalid") # Invalid call, should have at least 2 arguments.
+ [/codeblock]
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="Callable">
+ <return type="Callable">
+ </return>
+ <argument index="0" name="object" type="Object">
+ </argument>
+ <argument index="1" name="method_name" type="StringName">
+ </argument>
+ <description>
+ Creates a new [Callable] for the method called [code]method_name[/code] in the specified [code]object[/code].
+ </description>
+ </method>
+ <method name="call" qualifiers="vararg">
+ <return type="Variant">
+ </return>
+ <description>
+ Calls the method represented by this [Callable]. Arguments can be passed and should match the method's signature.
+ </description>
+ </method>
+ <method name="call_deferred" qualifiers="vararg">
+ <return type="void">
+ </return>
+ <description>
+ Calls the method represented by this [Callable] in deferred mode, i.e. during the idle frame. Arguments can be passed and should match the method's signature.
+ </description>
+ </method>
+ <method name="get_method">
+ <return type="StringName">
+ </return>
+ <description>
+ Returns the name of the method represented by this [Callable].
+ </description>
+ </method>
+ <method name="get_object">
+ <return type="Object">
+ </return>
+ <description>
+ Returns the object on which this [Callable] is called.
+ </description>
+ </method>
+ <method name="get_object_id">
+ <return type="int">
+ </return>
+ <description>
+ Returns the ID of this [Callable]'s object (see [method Object.get_instance_id]).
+ </description>
+ </method>
+ <method name="hash">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_custom">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_null">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_standard">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml
index 7f50587e66..73ba8b392f 100644
--- a/doc/classes/CanvasItem.xml
+++ b/doc/classes/CanvasItem.xml
@@ -76,11 +76,11 @@
<method name="draw_colored_polygon">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
<argument index="1" name="color" type="Color">
</argument>
- <argument index="2" name="uvs" type="PoolVector2Array" default="PoolVector2Array( )">
+ <argument index="2" name="uvs" type="PackedVector2Array" default="PackedVector2Array( )">
</argument>
<argument index="3" name="texture" type="Texture2D" default="null">
</argument>
@@ -88,7 +88,7 @@
</argument>
<argument index="5" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="6" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="6" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="7" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -118,17 +118,17 @@
</return>
<argument index="0" name="mesh" type="Mesh">
</argument>
- <argument index="1" name="texture" type="Texture2D" default="null">
+ <argument index="1" name="texture" type="Texture2D">
</argument>
<argument index="2" name="normal_map" type="Texture2D" default="null">
</argument>
- <argument index="3" name="specular_map" type="Texture2D" default="Color( 1, 1, 1, 1 )">
+ <argument index="3" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="4" name="transform" type="Color" default="Transform2D( 1, 0, 0, 1, 0, 0 )">
+ <argument index="4" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
- <argument index="5" name="modulate" type="Transform2D" default="Color( 1, 1, 1, 1 )">
+ <argument index="5" name="transform" type="Transform2D" default="Transform2D( 1, 0, 0, 1, 0, 0 )">
</argument>
- <argument index="6" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="6" name="modulate" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="7" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -141,7 +141,7 @@
<method name="draw_multiline">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
<argument index="1" name="color" type="Color">
</argument>
@@ -154,9 +154,9 @@
<method name="draw_multiline_colors">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
- <argument index="1" name="colors" type="PoolColorArray">
+ <argument index="1" name="colors" type="PackedColorArray">
</argument>
<argument index="2" name="width" type="float" default="1.0">
</argument>
@@ -169,13 +169,13 @@
</return>
<argument index="0" name="multimesh" type="MultiMesh">
</argument>
- <argument index="1" name="texture" type="Texture2D" default="null">
+ <argument index="1" name="texture" type="Texture2D">
</argument>
<argument index="2" name="normal_map" type="Texture2D" default="null">
</argument>
<argument index="3" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="4" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="4" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="5" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -188,11 +188,11 @@
<method name="draw_polygon">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
- <argument index="1" name="colors" type="PoolColorArray">
+ <argument index="1" name="colors" type="PackedColorArray">
</argument>
- <argument index="2" name="uvs" type="PoolVector2Array" default="PoolVector2Array( )">
+ <argument index="2" name="uvs" type="PackedVector2Array" default="PackedVector2Array( )">
</argument>
<argument index="3" name="texture" type="Texture2D" default="null">
</argument>
@@ -200,7 +200,7 @@
</argument>
<argument index="5" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="6" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="6" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="7" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -213,7 +213,7 @@
<method name="draw_polyline">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
<argument index="1" name="color" type="Color">
</argument>
@@ -226,9 +226,9 @@
<method name="draw_polyline_colors">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
- <argument index="1" name="colors" type="PoolColorArray">
+ <argument index="1" name="colors" type="PackedColorArray">
</argument>
<argument index="2" name="width" type="float" default="1.0">
</argument>
@@ -239,11 +239,11 @@
<method name="draw_primitive">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
- <argument index="1" name="colors" type="PoolColorArray">
+ <argument index="1" name="colors" type="PackedColorArray">
</argument>
- <argument index="2" name="uvs" type="PoolVector2Array">
+ <argument index="2" name="uvs" type="PackedVector2Array">
</argument>
<argument index="3" name="texture" type="Texture2D" default="null">
</argument>
@@ -253,14 +253,14 @@
</argument>
<argument index="6" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="7" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="7" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="8" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
<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">
@@ -342,7 +342,7 @@
</argument>
<argument index="4" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="5" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="5" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="6" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -369,7 +369,7 @@
</argument>
<argument index="6" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="7" name="specular_shinness" type="Color" default="Color( 1, 1, 1, 1 )">
+ <argument index="7" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<argument index="8" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -396,9 +396,9 @@
</argument>
<argument index="6" name="specular_map" type="Texture2D" default="null">
</argument>
- <argument index="7" name="clip_uv" type="Color" default="true">
+ <argument index="7" name="specular_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
- <argument index="8" name="specular_shinness" type="bool" default="Color( 1, 1, 1, 1 )">
+ <argument index="8" name="clip_uv" type="bool" default="true">
</argument>
<argument index="9" name="texture_filter" type="int" enum="CanvasItem.TextureFilter" default="0">
</argument>
@@ -656,30 +656,39 @@
The [CanvasItem] has exited the canvas.
</constant>
<constant name="TEXTURE_FILTER_PARENT_NODE" value="0" enum="TextureFilter">
+ The [CanvasItem] will inherit the filter from its parent.
</constant>
<constant name="TEXTURE_FILTER_NEAREST" value="1" enum="TextureFilter">
+ The texture filter reads from the nearest pixel only. The simplest and fastest method of filtering. Useful for pixel art.
</constant>
<constant name="TEXTURE_FILTER_LINEAR" value="2" enum="TextureFilter">
+ The texture filter blends between the nearest four pixels. Use this for most cases where you want to avoid a pixelated style.
</constant>
- <constant name="TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS" value="3" enum="TextureFilter">
+ <constant name="TEXTURE_FILTER_NEAREST_WITH_MIPMAPS" value="3" enum="TextureFilter">
</constant>
<constant name="TEXTURE_FILTER_LINEAR_WITH_MIPMAPS" value="4" enum="TextureFilter">
</constant>
- <constant name="TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS_ANISOTROPIC" value="5" enum="TextureFilter">
+ <constant name="TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC" value="5" enum="TextureFilter">
</constant>
<constant name="TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC" value="6" enum="TextureFilter">
</constant>
<constant name="TEXTURE_FILTER_MAX" value="7" enum="TextureFilter">
+ Represents the size of the [enum TextureFilter] enum.
</constant>
<constant name="TEXTURE_REPEAT_PARENT_NODE" value="0" enum="TextureRepeat">
+ The [CanvasItem] will inherit the filter from its parent.
</constant>
<constant name="TEXTURE_REPEAT_DISABLED" value="1" enum="TextureRepeat">
+ Texture will not repeat.
</constant>
<constant name="TEXTURE_REPEAT_ENABLED" value="2" enum="TextureRepeat">
+ Texture will repeat normally.
</constant>
<constant name="TEXTURE_REPEAT_MIRROR" value="3" enum="TextureRepeat">
+ Texture will repeat in a 2x2 tiled mode, where elements at even positions are mirrored.
</constant>
<constant name="TEXTURE_REPEAT_MAX" value="4" enum="TextureRepeat">
+ Represents the size of the [enum TextureRepeat] enum.
</constant>
</constants>
</class>
diff --git a/doc/classes/CheckBox.xml b/doc/classes/CheckBox.xml
index c29f089bce..9c42091eb8 100644
--- a/doc/classes/CheckBox.xml
+++ b/doc/classes/CheckBox.xml
@@ -4,7 +4,7 @@
Binary choice user interface widget. See also [CheckButton].
</brief_description>
<description>
- A checkbox allows the user to make a binary choice (choosing only one of two possible options). It's similar to [CheckButton] in functionality, but it has a different apperance. To follow established UX patterns, it's recommended to use CheckBox when toggling it has [b]no[/b] immediate effect on something. For instance, it should be used when toggling it will only do something once a confirmation button is pressed.
+ A checkbox allows the user to make a binary choice (choosing only one of two possible options). It's similar to [CheckButton] in functionality, but it has a different appearance. To follow established UX patterns, it's recommended to use CheckBox when toggling it has [b]no[/b] immediate effect on something. For instance, it should be used when toggling it will only do something once a confirmation button is pressed.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/CheckButton.xml b/doc/classes/CheckButton.xml
index 616940a494..514ff9a691 100644
--- a/doc/classes/CheckButton.xml
+++ b/doc/classes/CheckButton.xml
@@ -4,7 +4,7 @@
Checkable button. See also [CheckBox].
</brief_description>
<description>
- CheckButton is a toggle button displayed as a check field. It's similar to [CheckBox] in functionality, but it has a different apperance. To follow established UX patterns, it's recommended to use CheckButton when toggling it has an [b]immediate[/b] effect on something. For instance, it should be used if toggling it enables/disables a setting without requiring the user to press a confirmation button.
+ CheckButton is a toggle button displayed as a check field. It's similar to [CheckBox] in functionality, but it has a different appearance. To follow established UX patterns, it's recommended to use CheckButton when toggling it has an [b]immediate[/b] effect on something. For instance, it should be used if toggling it enables/disables a setting without requiring the user to press a confirmation button.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/ClassDB.xml b/doc/classes/ClassDB.xml
index 4d7ccb65e8..2a6a2ddd91 100644
--- a/doc/classes/ClassDB.xml
+++ b/doc/classes/ClassDB.xml
@@ -12,7 +12,7 @@
<method name="can_instance" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Returns [code]true[/code] if you can instance objects from the specified [code]class[/code], [code]false[/code] in other case.
@@ -21,16 +21,16 @@
<method name="class_exists" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Returns whether the specified [code]class[/code] is available or not.
</description>
</method>
<method name="class_get_category" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Returns a category associated with the class for use in documentation and the Asset Library. Debug mode required.
@@ -39,18 +39,18 @@
<method name="class_get_integer_constant" qualifiers="const">
<return type="int">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
- <argument index="1" name="name" type="String">
+ <argument index="1" name="name" type="StringName">
</argument>
<description>
Returns the value of the integer constant [code]name[/code] of [code]class[/code] or its ancestry. Always returns 0 when the constant could not be found.
</description>
</method>
<method name="class_get_integer_constant_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<argument index="1" name="no_inheritance" type="bool" default="false">
</argument>
@@ -61,7 +61,7 @@
<method name="class_get_method_list" qualifiers="const">
<return type="Array">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<argument index="1" name="no_inheritance" type="bool" default="false">
</argument>
@@ -74,7 +74,7 @@
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<description>
Returns the value of [code]property[/code] of [code]class[/code] or its ancestry.
@@ -83,7 +83,7 @@
<method name="class_get_property_list" qualifiers="const">
<return type="Array">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<argument index="1" name="no_inheritance" type="bool" default="false">
</argument>
@@ -94,9 +94,9 @@
<method name="class_get_signal" qualifiers="const">
<return type="Dictionary">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
- <argument index="1" name="signal" type="String">
+ <argument index="1" name="signal" type="StringName">
</argument>
<description>
Returns the [code]signal[/code] data of [code]class[/code] or its ancestry. The returned value is a [Dictionary] with the following keys: [code]args[/code], [code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/code], [code]return: (class_name, hint, hint_string, name, type, usage)[/code].
@@ -105,7 +105,7 @@
<method name="class_get_signal_list" qualifiers="const">
<return type="Array">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<argument index="1" name="no_inheritance" type="bool" default="false">
</argument>
@@ -116,9 +116,9 @@
<method name="class_has_integer_constant" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
- <argument index="1" name="name" type="String">
+ <argument index="1" name="name" type="StringName">
</argument>
<description>
Returns whether [code]class[/code] or its ancestry has an integer constant called [code]name[/code] or not.
@@ -127,9 +127,9 @@
<method name="class_has_method" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<argument index="2" name="no_inheritance" type="bool" default="false">
</argument>
@@ -140,9 +140,9 @@
<method name="class_has_signal" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
- <argument index="1" name="signal" type="String">
+ <argument index="1" name="signal" type="StringName">
</argument>
<description>
Returns whether [code]class[/code] or its ancestry has a signal called [code]signal[/code] or not.
@@ -153,7 +153,7 @@
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -162,25 +162,25 @@
</description>
</method>
<method name="get_class_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the names of all the classes available.
</description>
</method>
<method name="get_inheriters_from_class" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Returns the names of all the classes that directly or indirectly inherit from [code]class[/code].
</description>
</method>
<method name="get_parent_class" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Returns the parent class of [code]class[/code].
@@ -189,7 +189,7 @@
<method name="instance" qualifiers="const">
<return type="Variant">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Creates an instance of [code]class[/code].
@@ -198,7 +198,7 @@
<method name="is_class_enabled" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
<description>
Returns whether this [code]class[/code] is enabled or not.
@@ -207,9 +207,9 @@
<method name="is_parent_class" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class" type="String">
+ <argument index="0" name="class" type="StringName">
</argument>
- <argument index="1" name="inherits" type="String">
+ <argument index="1" name="inherits" type="StringName">
</argument>
<description>
Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] or not.
diff --git a/doc/classes/CollisionPolygon.xml b/doc/classes/CollisionPolygon.xml
index ac519d3817..8aceec17a8 100644
--- a/doc/classes/CollisionPolygon.xml
+++ b/doc/classes/CollisionPolygon.xml
@@ -17,7 +17,7 @@
<member name="disabled" type="bool" setter="set_disabled" getter="is_disabled" default="false">
If [code]true[/code], no collision will be produced.
</member>
- <member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon" default="PoolVector2Array( )">
+ <member name="polygon" type="PackedVector2Array" setter="set_polygon" getter="get_polygon" default="PackedVector2Array( )">
Array of vertices which define the polygon.
[b]Note:[/b] The returned value is a copy of the original. Methods which mutate the size or properties of the return value will not impact the original polygon. To change properties of the polygon, assign it to a temporary variable and make changes before reassigning the [code]polygon[/code] member.
</member>
diff --git a/doc/classes/CollisionPolygon2D.xml b/doc/classes/CollisionPolygon2D.xml
index c4fd417918..242cdb8c80 100644
--- a/doc/classes/CollisionPolygon2D.xml
+++ b/doc/classes/CollisionPolygon2D.xml
@@ -21,9 +21,10 @@
If [code]true[/code], only edges that face up, relative to [CollisionPolygon2D]'s rotation, will collide with other objects.
</member>
<member name="one_way_collision_margin" type="float" setter="set_one_way_collision_margin" getter="get_one_way_collision_margin" default="1.0">
+ The margin used for one-way collision (in pixels). Higher values will make the shape thicker, and work better for colliders that enter the polygon at a high velocity.
</member>
- <member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon" default="PoolVector2Array( )">
- The polygon's list of vertices. The final point will be connected to the first. The returned value is a clone of the [PoolVector2Array], not a reference.
+ <member name="polygon" type="PackedVector2Array" setter="set_polygon" getter="get_polygon" default="PackedVector2Array( )">
+ The polygon's list of vertices. The final point will be connected to the first. The returned value is a clone of the [PackedVector2Array], not a reference.
</member>
</members>
<constants>
diff --git a/doc/classes/CollisionShape2D.xml b/doc/classes/CollisionShape2D.xml
index 4903f0d3a5..e32ce9c9f9 100644
--- a/doc/classes/CollisionShape2D.xml
+++ b/doc/classes/CollisionShape2D.xml
@@ -19,7 +19,7 @@
Sets whether this collision shape should only detect collision on one side (top or bottom).
</member>
<member name="one_way_collision_margin" type="float" setter="set_one_way_collision_margin" getter="get_one_way_collision_margin" default="1.0">
- The margin used for one-way collision (in pixels).
+ The margin used for one-way collision (in pixels). Higher values will make the shape thicker, and work better for colliders that enter the shape at a high velocity.
</member>
<member name="shape" type="Shape2D" setter="set_shape" getter="get_shape">
The actual shape owned by this collision shape.
diff --git a/doc/classes/Color.xml b/doc/classes/Color.xml
index 7335ff5a2e..8587acade3 100644
--- a/doc/classes/Color.xml
+++ b/doc/classes/Color.xml
@@ -119,7 +119,7 @@
</argument>
<argument index="2" name="v" type="float">
</argument>
- <argument index="3" name="a" type="float" default="1">
+ <argument index="3" name="a" type="float" default="1.0">
</argument>
<description>
Constructs a color from an HSV profile. [code]h[/code], [code]s[/code], and [code]v[/code] are values between 0 and 1.
@@ -224,7 +224,7 @@
<method name="to_html">
<return type="String">
</return>
- <argument index="0" name="with_alpha" type="bool" default="True">
+ <argument index="0" name="with_alpha" type="bool" default="true">
</argument>
<description>
Returns the color's HTML hexadecimal color string in ARGB format (ex: [code]ff34f822[/code]).
diff --git a/doc/classes/ColorPicker.xml b/doc/classes/ColorPicker.xml
index d0c8e3f948..d8b4a8f76c 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>
@@ -29,7 +29,7 @@
</description>
</method>
<method name="get_presets" qualifiers="const">
- <return type="PoolColorArray">
+ <return type="PackedColorArray">
</return>
<description>
Returns the list of colors in the presets of the color picker.
@@ -88,26 +88,34 @@
</constants>
<theme_items>
<theme_item name="add_preset" type="Texture2D">
+ The icon for the "Add Preset" button.
</theme_item>
<theme_item name="color_hue" type="Texture2D">
+ Custom texture for the hue selection slider on the right.
</theme_item>
<theme_item name="color_sample" type="Texture2D">
</theme_item>
<theme_item name="h_width" type="int" default="30">
+ The width of the hue selection slider.
</theme_item>
<theme_item name="label_width" type="int" default="10">
</theme_item>
<theme_item name="margin" type="int" default="4">
+ The margin around the [ColorPicker].
</theme_item>
<theme_item name="overbright_indicator" type="Texture2D">
+ The indicator used to signalize that the color value is outside the 0-1 range.
</theme_item>
<theme_item name="preset_bg" type="Texture2D">
</theme_item>
<theme_item name="screen_picker" type="Texture2D">
+ The icon for the screen color picker button.
</theme_item>
<theme_item name="sv_height" type="int" default="256">
+ The height of the saturation-value selection box.
</theme_item>
<theme_item name="sv_width" type="int" default="256">
+ The width of the saturation-value selection box.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/ConcavePolygonShape.xml b/doc/classes/ConcavePolygonShape.xml
index 3ae07ee52f..47f2276c63 100644
--- a/doc/classes/ConcavePolygonShape.xml
+++ b/doc/classes/ConcavePolygonShape.xml
@@ -5,12 +5,13 @@
</brief_description>
<description>
Concave polygon shape resource, which can be set into a [PhysicsBody] or area. This shape is created by feeding a list of triangles.
+ Note: when used for collision, [ConcavePolygonShape] is intended to work with static [PhysicsBody] nodes like [StaticBody] and will not work with [KinematicBody] or [RigidBody] with a mode other than Static.
</description>
<tutorials>
</tutorials>
<methods>
<method name="get_faces" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<description>
Returns the faces (an array of triangles).
@@ -19,7 +20,7 @@
<method name="set_faces">
<return type="void">
</return>
- <argument index="0" name="faces" type="PoolVector3Array">
+ <argument index="0" name="faces" type="PackedVector3Array">
</argument>
<description>
Sets the faces (an array of triangles).
diff --git a/doc/classes/ConcavePolygonShape2D.xml b/doc/classes/ConcavePolygonShape2D.xml
index 6fb32436a8..9999d086da 100644
--- a/doc/classes/ConcavePolygonShape2D.xml
+++ b/doc/classes/ConcavePolygonShape2D.xml
@@ -12,7 +12,7 @@
<methods>
</methods>
<members>
- <member name="segments" type="PoolVector2Array" setter="set_segments" getter="get_segments" default="PoolVector2Array( )">
+ <member name="segments" type="PackedVector2Array" setter="set_segments" getter="get_segments" default="PackedVector2Array( )">
The array of points that make up the [ConcavePolygonShape2D]'s line segments.
</member>
</members>
diff --git a/doc/classes/ConfigFile.xml b/doc/classes/ConfigFile.xml
index ad36f1f1c3..a16326d55a 100644
--- a/doc/classes/ConfigFile.xml
+++ b/doc/classes/ConfigFile.xml
@@ -37,7 +37,7 @@
<argument index="0" name="section" type="String">
</argument>
<description>
- Deletes the specified section along with all the key-value pairs inside.
+ Deletes the specified section along with all the key-value pairs inside. Raises an error if the section does not exist.
</description>
</method>
<method name="erase_section_key">
@@ -48,19 +48,20 @@
<argument index="1" name="key" type="String">
</argument>
<description>
+ Deletes the specified key in a section. Raises an error if either the section or the key do not exist.
</description>
</method>
<method name="get_section_keys" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="section" type="String">
</argument>
<description>
- Returns an array of all defined key identifiers in the specified section.
+ Returns an array of all defined key identifiers in the specified section. Raises an error and returns an empty array if the section does not exist.
</description>
</method>
<method name="get_sections" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns an array of all defined section identifiers.
@@ -76,7 +77,7 @@
<argument index="2" name="default" type="Variant" default="null">
</argument>
<description>
- Returns the current value for the specified section and key. If the section and/or the key do not exist, the method returns the value of the optional [code]default[/code] argument, or [code]null[/code] if it is omitted.
+ Returns the current value for the specified section and key. If either the section or the key do not exist, the method returns the fallback [code]default[/code] value. If [code]default[/code] is not specified or set to [code]null[/code], an error is also raised.
</description>
</method>
<method name="has_section" qualifiers="const">
@@ -105,7 +106,7 @@
<argument index="0" name="path" type="String">
</argument>
<description>
- Loads the config file specified as a parameter. The file's contents are parsed and loaded in the ConfigFile object which the method was called on.
+ Loads the config file specified as a parameter. The file's contents are parsed and loaded in the [ConfigFile] object which the method was called on.
Returns one of the [enum Error] code constants ([code]OK[/code] on success).
</description>
</method>
@@ -114,9 +115,11 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="key" type="PoolByteArray">
+ <argument index="1" name="key" type="PackedByteArray">
</argument>
<description>
+ Loads the encrypted config file specified as a parameter, using the provided [code]key[/code] to decrypt it. The file's contents are parsed and loaded in the [ConfigFile] object which the method was called on.
+ Returns one of the [enum Error] code constants ([code]OK[/code] on success).
</description>
</method>
<method name="load_encrypted_pass">
@@ -124,9 +127,11 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="pass" type="String">
+ <argument index="1" name="password" type="String">
</argument>
<description>
+ Loads the encrypted config file specified as a parameter, using the provided [code]password[/code] to decrypt it. The file's contents are parsed and loaded in the [ConfigFile] object which the method was called on.
+ Returns one of the [enum Error] code constants ([code]OK[/code] on success).
</description>
</method>
<method name="parse">
@@ -145,7 +150,7 @@
<argument index="0" name="path" type="String">
</argument>
<description>
- Saves the contents of the ConfigFile object to the file specified as a parameter. The output file uses an INI-style structure.
+ Saves the contents of the [ConfigFile] object to the file specified as a parameter. The output file uses an INI-style structure.
Returns one of the [enum Error] code constants ([code]OK[/code] on success).
</description>
</method>
@@ -154,9 +159,11 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="key" type="PoolByteArray">
+ <argument index="1" name="key" type="PackedByteArray">
</argument>
<description>
+ Saves the contents of the [ConfigFile] object to the AES-256 encrypted file specified as a parameter, using the provided [code]key[/code] to encrypt it. The output file uses an INI-style structure.
+ Returns one of the [enum Error] code constants ([code]OK[/code] on success).
</description>
</method>
<method name="save_encrypted_pass">
@@ -164,9 +171,11 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="pass" type="String">
+ <argument index="1" name="password" type="String">
</argument>
<description>
+ Saves the contents of the [ConfigFile] object to the AES-256 encrypted file specified as a parameter, using the provided [code]password[/code] to encrypt it. The output file uses an INI-style structure.
+ Returns one of the [enum Error] code constants ([code]OK[/code] on success).
</description>
</method>
<method name="set_value">
@@ -179,7 +188,7 @@
<argument index="2" name="value" type="Variant">
</argument>
<description>
- Assigns a value to the specified key of the specified section. If the section and/or the key do not exist, they are created. Passing a [code]null[/code] value deletes the specified key if it exists, and deletes the section if it ends up empty once the key has been removed.
+ Assigns a value to the specified key of the specified section. If either the section or the key do not exist, they are created. Passing a [code]null[/code] value deletes the specified key if it exists, and deletes the section if it ends up empty once the key has been removed.
</description>
</method>
</methods>
diff --git a/doc/classes/Control.xml b/doc/classes/Control.xml
index 3bf2ede896..89db5baf8a 100644
--- a/doc/classes/Control.xml
+++ b/doc/classes/Control.xml
@@ -90,7 +90,7 @@
<method name="add_color_override">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="color" type="Color">
</argument>
@@ -101,7 +101,7 @@
<method name="add_constant_override">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="constant" type="int">
</argument>
@@ -112,7 +112,7 @@
<method name="add_font_override">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="font" type="Font">
</argument>
@@ -123,7 +123,7 @@
<method name="add_icon_override">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="texture" type="Texture2D">
</argument>
@@ -134,7 +134,7 @@
<method name="add_shader_override">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="shader" type="Shader">
</argument>
@@ -145,7 +145,7 @@
<method name="add_stylebox_override">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="stylebox" type="StyleBox">
</argument>
@@ -220,9 +220,9 @@
<method name="get_color" qualifiers="const">
<return type="Color">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns a color from assigned [Theme] with given [code]name[/code] and associated with [Control] of given [code]type[/code].
@@ -242,9 +242,9 @@
<method name="get_constant" qualifiers="const">
<return type="int">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns a constant from assigned [Theme] with given [code]name[/code] and associated with [Control] of given [code]type[/code].
@@ -301,9 +301,9 @@
<method name="get_font" qualifiers="const">
<return type="Font">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns a font from assigned [Theme] with given [code]name[/code] and associated with [Control] of given [code]type[/code].
@@ -319,9 +319,9 @@
<method name="get_icon" qualifiers="const">
<return type="Texture2D">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns an icon from assigned [Theme] with given [code]name[/code] and associated with [Control] of given [code]type[/code].
@@ -374,9 +374,9 @@
<method name="get_stylebox" qualifiers="const">
<return type="StyleBox">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns a [StyleBox] from assigned [Theme] with given [code]name[/code] and associated with [Control] of given [code]type[/code].
@@ -412,9 +412,9 @@
<method name="has_color" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns [code]true[/code] if [Color] with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
@@ -423,7 +423,7 @@
<method name="has_color_override" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if [Color] with given [code]name[/code] has a valid override in this [Control] node.
@@ -432,9 +432,9 @@
<method name="has_constant" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns [code]true[/code] if constant with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
@@ -443,7 +443,7 @@
<method name="has_constant_override" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if constant with given [code]name[/code] has a valid override in this [Control] node.
@@ -459,9 +459,9 @@
<method name="has_font" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns [code]true[/code] if font with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
@@ -470,7 +470,7 @@
<method name="has_font_override" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if font with given [code]name[/code] has a valid override in this [Control] node.
@@ -479,9 +479,9 @@
<method name="has_icon" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns [code]true[/code] if icon with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
@@ -490,7 +490,7 @@
<method name="has_icon_override" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if icon with given [code]name[/code] has a valid override in this [Control] node.
@@ -510,7 +510,7 @@
<method name="has_shader_override" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if [Shader] with given [code]name[/code] has a valid override in this [Control] node.
@@ -519,9 +519,9 @@
<method name="has_stylebox" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String" default="&quot;&quot;">
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
</argument>
<description>
Returns [code]true[/code] if [StyleBox] with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
@@ -530,7 +530,7 @@
<method name="has_stylebox_override" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if [StyleBox] with given [code]name[/code] has a valid override in this [Control] node.
diff --git a/doc/classes/ConvexPolygonShape.xml b/doc/classes/ConvexPolygonShape.xml
index 544f304051..077bb57a03 100644
--- a/doc/classes/ConvexPolygonShape.xml
+++ b/doc/classes/ConvexPolygonShape.xml
@@ -11,7 +11,7 @@
<methods>
</methods>
<members>
- <member name="points" type="PoolVector3Array" setter="set_points" getter="get_points" default="PoolVector3Array( )">
+ <member name="points" type="PackedVector3Array" setter="set_points" getter="get_points" default="PackedVector3Array( )">
The list of 3D points forming the convex polygon shape.
</member>
</members>
diff --git a/doc/classes/ConvexPolygonShape2D.xml b/doc/classes/ConvexPolygonShape2D.xml
index e17048e061..cba446fff8 100644
--- a/doc/classes/ConvexPolygonShape2D.xml
+++ b/doc/classes/ConvexPolygonShape2D.xml
@@ -13,7 +13,7 @@
<method name="set_point_cloud">
<return type="void">
</return>
- <argument index="0" name="point_cloud" type="PoolVector2Array">
+ <argument index="0" name="point_cloud" type="PackedVector2Array">
</argument>
<description>
Based on the set of points provided, this creates and assigns the [member points] property using the convex hull algorithm. Removing all unneeded points. See [method Geometry.convex_hull_2d] for details.
@@ -21,7 +21,7 @@
</method>
</methods>
<members>
- <member name="points" type="PoolVector2Array" setter="set_points" getter="get_points" default="PoolVector2Array( )">
+ <member name="points" type="PackedVector2Array" setter="set_points" getter="get_points" default="PackedVector2Array( )">
The polygon's list of vertices. Can be in either clockwise or counterclockwise order.
</member>
</members>
diff --git a/doc/classes/Crypto.xml b/doc/classes/Crypto.xml
index fb373145f9..10f1f18f0d 100644
--- a/doc/classes/Crypto.xml
+++ b/doc/classes/Crypto.xml
@@ -28,12 +28,12 @@
</tutorials>
<methods>
<method name="generate_random_bytes">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="size" type="int">
</argument>
<description>
- Generates a [PoolByteArray] of cryptographically secure random bytes with given [code]size[/code].
+ Generates a [PackedByteArray] of cryptographically secure random bytes with given [code]size[/code].
</description>
</method>
<method name="generate_rsa">
diff --git a/doc/classes/Curve2D.xml b/doc/classes/Curve2D.xml
index f6eacfb33b..8ac6258e97 100644
--- a/doc/classes/Curve2D.xml
+++ b/doc/classes/Curve2D.xml
@@ -41,10 +41,10 @@
</description>
</method>
<method name="get_baked_points" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<description>
- Returns the cache of points as a [PoolVector2Array].
+ Returns the cache of points as a [PackedVector2Array].
</description>
</method>
<method name="get_closest_offset" qualifiers="const">
@@ -178,7 +178,7 @@
</description>
</method>
<method name="tessellate" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="max_stages" type="int" default="5">
</argument>
diff --git a/doc/classes/Curve3D.xml b/doc/classes/Curve3D.xml
index 52b0052908..5024cdefbd 100644
--- a/doc/classes/Curve3D.xml
+++ b/doc/classes/Curve3D.xml
@@ -41,24 +41,24 @@
</description>
</method>
<method name="get_baked_points" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<description>
- Returns the cache of points as a [PoolVector3Array].
+ Returns the cache of points as a [PackedVector3Array].
</description>
</method>
<method name="get_baked_tilts" qualifiers="const">
- <return type="PoolRealArray">
+ <return type="PackedFloat32Array">
</return>
<description>
- Returns the cache of tilts as a [PoolRealArray].
+ Returns the cache of tilts as a [PackedFloat32Array].
</description>
</method>
<method name="get_baked_up_vectors" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<description>
- Returns the cache of up vectors as a [PoolVector3Array].
+ Returns the cache of up vectors as a [PackedVector3Array].
If [member up_vector_enabled] is [code]false[/code], the cache will be empty.
</description>
</method>
@@ -227,7 +227,7 @@
</description>
</method>
<method name="tessellate" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="max_stages" type="int" default="5">
</argument>
diff --git a/doc/classes/DTLSServer.xml b/doc/classes/DTLSServer.xml
new file mode 100644
index 0000000000..8c71b61553
--- /dev/null
+++ b/doc/classes/DTLSServer.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="DTLSServer" inherits="Reference" version="4.0">
+ <brief_description>
+ Helper class to implement a DTLS server.
+ </brief_description>
+ <description>
+ This class is used to store the state of a DTLS server. Upon [method setup] it converts connected [PacketPeerUDP] to [PacketPeerDTLS] accepting them via [method take_connection] as DTLS clients. Under the hood, this class is used to store the DTLS state and cookies of the server. The reason of why the state and cookies are needed is outside of the scope of this documentation.
+ Below a small example of how to use it:
+ [codeblock]
+ # server.gd
+ extends Node
+
+ var dtls := DTLSServer.new()
+ var server := UDPServer.new()
+ var peers = []
+
+ func _ready():
+ server.listen(4242)
+ var key = load("key.key") # Your private key.
+ var cert = load("cert.crt") # Your X509 certificate.
+ dtls.setup(key, cert)
+
+ func _process(delta):
+ while server.is_connection_available():
+ var peer : PacketPeerUDP = server.take_connection()
+ var dtls_peer : PacketPeerDTLS = dtls.take_connection(peer)
+ if dtls_peer.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:
+ continue # It is normal that 50% of the connections fails due to cookie exchange.
+ print("Peer connected!")
+ peers.append(dtls_peer)
+ for p in peers:
+ p.poll() # Must poll to update the state.
+ if p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:
+ while p.get_available_packet_count() &gt; 0:
+ print("Received message from client: %s" % p.get_packet().get_string_from_utf8())
+ p.put_packet("Hello DTLS client".to_utf8())
+ [/codeblock]
+ [codeblock]
+ # client.gd
+ extends Node
+
+ var dtls := PacketPeerDTLS.new()
+ var udp := PacketPeerUDP.new()
+ var connected = false
+
+ func _ready():
+ udp.connect_to_host("127.0.0.1", 4242)
+ dtls.connect_to_peer(udp, false) # Use true in production for certificate validation!
+
+ func _process(delta):
+ dtls.poll()
+ if dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:
+ if !connected:
+ # Try to contact server
+ dtls.put_packet("The answer is... 42!".to_utf8())
+ while dtls.get_available_packet_count() &gt; 0:
+ print("Connected: %s" % dtls.get_packet().get_string_from_utf8())
+ connected = true
+ [/codeblock]
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="setup">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="key" type="CryptoKey">
+ </argument>
+ <argument index="1" name="certificate" type="X509Certificate">
+ </argument>
+ <argument index="2" name="chain" type="X509Certificate" default="null">
+ </argument>
+ <description>
+ Setup the DTLS server to use the given [code]private_key[/code] and provide the given [code]certificate[/code] to clients. You can pass the optional [code]chain[/code] parameter to provide additional CA chain information along with the certificate.
+ </description>
+ </method>
+ <method name="take_connection">
+ <return type="PacketPeerDTLS">
+ </return>
+ <argument index="0" name="udp_peer" type="PacketPeerUDP">
+ </argument>
+ <description>
+ Try to initiate the DTLS handshake with the given [code]udp_peer[/code] which must be already connected (see [method PacketPeerUDP.connect_to_host]).
+ [b]Note[/b]: You must check that the state of the return PacketPeerUDP is [constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of the new connections will be invalid due to cookie exchange.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/Dictionary.xml b/doc/classes/Dictionary.xml
index 8432744ea7..062e72388f 100644
--- a/doc/classes/Dictionary.xml
+++ b/doc/classes/Dictionary.xml
@@ -66,6 +66,8 @@
</tutorials>
<methods>
<method name="clear">
+ <return type="void">
+ </return>
<description>
Clear the dictionary, removing all key/value pairs.
</description>
@@ -73,7 +75,7 @@
<method name="duplicate">
<return type="Dictionary">
</return>
- <argument index="0" name="deep" type="bool" default="False">
+ <argument index="0" name="deep" type="bool" default="false">
</argument>
<description>
Creates a copy of the dictionary, and returns it.
@@ -96,11 +98,11 @@
</description>
</method>
<method name="get">
- <return type="Variant">
+ <return type="void">
</return>
<argument index="0" name="key" type="Variant">
</argument>
- <argument index="1" name="default" type="Variant" default="Null">
+ <argument index="1" name="default" type="Variant" default="null">
</argument>
<description>
Returns the current value for the specified key in the [Dictionary]. If the key does not exist, the method returns the value of the optional default argument, or [code]null[/code] if it is omitted.
diff --git a/doc/classes/Directory.xml b/doc/classes/Directory.xml
index ed4257a809..cb59a69876 100644
--- a/doc/classes/Directory.xml
+++ b/doc/classes/Directory.xml
@@ -77,8 +77,11 @@
<method name="get_current_dir">
<return type="String">
</return>
+ <argument index="0" name="include_drive" type="bool" default="true">
+ </argument>
<description>
Returns the absolute path to the currently opened directory (e.g. [code]res://folder[/code] or [code]C:\tmp\folder[/code]).
+ On Windows, if [code]include_drive[/code] is [code]false[/code], the leading drive specificator is omitted from the returned value (e.g. [code]\tmp\folder[/code]).
</description>
</method>
<method name="get_current_drive">
diff --git a/doc/classes/EditorExportPlugin.xml b/doc/classes/EditorExportPlugin.xml
index 5de68cae71..8fac3e950d 100644
--- a/doc/classes/EditorExportPlugin.xml
+++ b/doc/classes/EditorExportPlugin.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorExportPlugin" inherits="Reference" version="4.0">
<brief_description>
+ A script that is executed when exporting projects.
</brief_description>
<description>
</description>
@@ -10,7 +11,7 @@
<method name="_export_begin" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="features" type="PoolStringArray">
+ <argument index="0" name="features" type="PackedStringArray">
</argument>
<argument index="1" name="is_debug" type="bool">
</argument>
@@ -19,12 +20,14 @@
<argument index="3" name="flags" type="int">
</argument>
<description>
+ Virtual method to be overridden by the user. It is called when the export starts and provides all information about the export.
</description>
</method>
<method name="_export_end" qualifiers="virtual">
<return type="void">
</return>
<description>
+ Virtual method to be overridden by the user. Called when the export is finished.
</description>
</method>
<method name="_export_file" qualifiers="virtual">
@@ -34,7 +37,7 @@
</argument>
<argument index="1" name="type" type="String">
</argument>
- <argument index="2" name="features" type="PoolStringArray">
+ <argument index="2" name="features" type="PackedStringArray">
</argument>
<description>
</description>
@@ -44,7 +47,7 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="file" type="PoolByteArray">
+ <argument index="1" name="file" type="PackedByteArray">
</argument>
<argument index="2" name="remap" type="bool">
</argument>
@@ -96,7 +99,7 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="tags" type="PoolStringArray">
+ <argument index="1" name="tags" type="PackedStringArray">
</argument>
<description>
</description>
diff --git a/doc/classes/EditorFeatureProfile.xml b/doc/classes/EditorFeatureProfile.xml
index 5fac4f7822..387962cf6a 100644
--- a/doc/classes/EditorFeatureProfile.xml
+++ b/doc/classes/EditorFeatureProfile.xml
@@ -18,7 +18,7 @@
<method name="is_class_disabled" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class_name" type="String">
+ <argument index="0" name="class_name" type="StringName">
</argument>
<description>
</description>
@@ -26,7 +26,7 @@
<method name="is_class_editor_disabled" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class_name" type="String">
+ <argument index="0" name="class_name" type="StringName">
</argument>
<description>
</description>
@@ -34,9 +34,9 @@
<method name="is_class_property_disabled" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="class_name" type="String">
+ <argument index="0" name="class_name" type="StringName">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<description>
</description>
@@ -68,7 +68,7 @@
<method name="set_disable_class">
<return type="void">
</return>
- <argument index="0" name="class_name" type="String">
+ <argument index="0" name="class_name" type="StringName">
</argument>
<argument index="1" name="disable" type="bool">
</argument>
@@ -78,7 +78,7 @@
<method name="set_disable_class_editor">
<return type="void">
</return>
- <argument index="0" name="class_name" type="String">
+ <argument index="0" name="class_name" type="StringName">
</argument>
<argument index="1" name="disable" type="bool">
</argument>
@@ -88,9 +88,9 @@
<method name="set_disable_class_property">
<return type="void">
</return>
- <argument index="0" name="class_name" type="String">
+ <argument index="0" name="class_name" type="StringName">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<argument index="2" name="disable" type="bool">
</argument>
diff --git a/doc/classes/EditorFileDialog.xml b/doc/classes/EditorFileDialog.xml
index 91adf6f2af..3e6bbd682d 100644
--- a/doc/classes/EditorFileDialog.xml
+++ b/doc/classes/EditorFileDialog.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorFileDialog" inherits="ConfirmationDialog" version="4.0">
<brief_description>
+ A modified version of [FileDialog] used by the editor.
</brief_description>
<description>
</description>
@@ -84,7 +85,7 @@
</description>
</signal>
<signal name="files_selected">
- <argument index="0" name="paths" type="PoolStringArray">
+ <argument index="0" name="paths" type="PackedStringArray">
</argument>
<description>
Emitted when multiple files are selected.
diff --git a/doc/classes/EditorFileSystem.xml b/doc/classes/EditorFileSystem.xml
index a05fbf2be7..30e1de1f5e 100644
--- a/doc/classes/EditorFileSystem.xml
+++ b/doc/classes/EditorFileSystem.xml
@@ -75,6 +75,7 @@
<return type="void">
</return>
<description>
+ Scans the script files and updates the list of custom class names.
</description>
</method>
</methods>
@@ -85,14 +86,14 @@
</description>
</signal>
<signal name="resources_reimported">
- <argument index="0" name="resources" type="PoolStringArray">
+ <argument index="0" name="resources" type="PackedStringArray">
</argument>
<description>
Remitted if a resource is reimported.
</description>
</signal>
<signal name="resources_reload">
- <argument index="0" name="resources" type="PoolStringArray">
+ <argument index="0" name="resources" type="PackedStringArray">
</argument>
<description>
</description>
diff --git a/doc/classes/EditorFileSystemDirectory.xml b/doc/classes/EditorFileSystemDirectory.xml
index bbd3ee9b17..096fe5df8f 100644
--- a/doc/classes/EditorFileSystemDirectory.xml
+++ b/doc/classes/EditorFileSystemDirectory.xml
@@ -78,7 +78,7 @@
</description>
</method>
<method name="get_file_type" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
diff --git a/doc/classes/EditorInspectorPlugin.xml b/doc/classes/EditorInspectorPlugin.xml
index eaddd9917c..3cc624f49b 100644
--- a/doc/classes/EditorInspectorPlugin.xml
+++ b/doc/classes/EditorInspectorPlugin.xml
@@ -40,7 +40,7 @@
</return>
<argument index="0" name="label" type="String">
</argument>
- <argument index="1" name="properties" type="PoolStringArray">
+ <argument index="1" name="properties" type="PackedStringArray">
</argument>
<argument index="2" name="editor" type="Control">
</argument>
diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml
index e441562051..587fd51f1e 100644
--- a/doc/classes/EditorPlugin.xml
+++ b/doc/classes/EditorPlugin.xml
@@ -253,7 +253,7 @@
</description>
</method>
<method name="get_breakpoints" qualifiers="virtual">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
This is for editors that edit script-based objects. You can return a list of breakpoints in the format ([code]script:line[/code]), for example: [code]res://path_to_script.gd:25[/code].
@@ -267,15 +267,27 @@
</description>
</method>
<method name="get_plugin_icon" qualifiers="virtual">
- <return type="Object">
+ <return type="Texture2D">
</return>
<description>
+ Override this method in your plugin to return a [Texture2D] in order to give it an icon.
+ For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", and "AssetLib" buttons.
+ Ideally, the plugin icon should be white with a transparent background and 16x16 pixels in size.
+ [codeblock]
+ func get_plugin_icon():
+ # You can use a custom icon:
+ return preload("res://addons/my_plugin/my_plugin_icon.svg")
+ # Or use a built-in icon:
+ return get_editor_interface().get_base_control().get_icon("Node", "EditorIcons")
+ [/codeblock]
</description>
</method>
<method name="get_plugin_name" qualifiers="virtual">
<return type="String">
</return>
<description>
+ Override this method in your plugin to provide the name of the plugin when displayed in the Godot editor.
+ For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", and "AssetLib" buttons.
</description>
</method>
<method name="get_script_create_dialog">
diff --git a/doc/classes/EditorProperty.xml b/doc/classes/EditorProperty.xml
index b93274491a..3216541b20 100644
--- a/doc/classes/EditorProperty.xml
+++ b/doc/classes/EditorProperty.xml
@@ -21,11 +21,11 @@
<method name="emit_changed">
<return type="void">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
- <argument index="2" name="field" type="String" default="&quot;&quot;">
+ <argument index="2" name="field" type="StringName" default="@&quot;&quot;">
</argument>
<argument index="3" name="changing" type="bool" default="false">
</argument>
@@ -41,7 +41,7 @@
</description>
</method>
<method name="get_edited_property">
- <return type="String">
+ <return type="StringName">
</return>
<description>
Gets the edited property. If your editor is for a single property (added via [method EditorInspectorPlugin.parse_property]), then this will return the property.
@@ -93,7 +93,7 @@
</members>
<signals>
<signal name="multiple_properties_changed">
- <argument index="0" name="properties" type="PoolStringArray">
+ <argument index="0" name="properties" type="PackedStringArray">
</argument>
<argument index="1" name="value" type="Array">
</argument>
@@ -102,7 +102,7 @@
</description>
</signal>
<signal name="object_id_selected">
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="id" type="int">
</argument>
@@ -111,7 +111,7 @@
</description>
</signal>
<signal name="property_changed">
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
@@ -120,7 +120,7 @@
</description>
</signal>
<signal name="property_checked">
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="bool" type="String">
</argument>
@@ -129,14 +129,14 @@
</description>
</signal>
<signal name="property_keyed">
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<description>
Emit it if you want to add this value as an animation key (check for keying being enabled first).
</description>
</signal>
<signal name="property_keyed_with_value">
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
diff --git a/doc/classes/EditorResourcePreview.xml b/doc/classes/EditorResourcePreview.xml
index 8e0f8842e9..aac75c5c8e 100644
--- a/doc/classes/EditorResourcePreview.xml
+++ b/doc/classes/EditorResourcePreview.xml
@@ -34,7 +34,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="receiver_func" type="String">
+ <argument index="2" name="receiver_func" type="StringName">
</argument>
<argument index="3" name="userdata" type="Variant">
</argument>
@@ -49,7 +49,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="receiver_func" type="String">
+ <argument index="2" name="receiver_func" type="StringName">
</argument>
<argument index="3" name="userdata" type="Variant">
</argument>
diff --git a/doc/classes/EditorSettings.xml b/doc/classes/EditorSettings.xml
index 30fc1e0c7b..73ef807c5f 100644
--- a/doc/classes/EditorSettings.xml
+++ b/doc/classes/EditorSettings.xml
@@ -50,7 +50,7 @@
</description>
</method>
<method name="get_favorites" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Gets the list of favorite files and directories for this project.
@@ -76,7 +76,7 @@
</description>
</method>
<method name="get_recent_dirs" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Gets the list of recently visited folders in the file dialog for this project.
@@ -126,7 +126,7 @@
<method name="set_favorites">
<return type="void">
</return>
- <argument index="0" name="dirs" type="PoolStringArray">
+ <argument index="0" name="dirs" type="PackedStringArray">
</argument>
<description>
Sets the list of favorite files and directories for this project.
@@ -135,7 +135,7 @@
<method name="set_initial_value">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
@@ -159,7 +159,7 @@
<method name="set_recent_dirs">
<return type="void">
</return>
- <argument index="0" name="dirs" type="PoolStringArray">
+ <argument index="0" name="dirs" type="PackedStringArray">
</argument>
<description>
Sets the list of recently visited folders in the file dialog for this project.
diff --git a/doc/classes/EditorSpatialGizmo.xml b/doc/classes/EditorSpatialGizmo.xml
index e7c5ca9c0f..b8c4daab07 100644
--- a/doc/classes/EditorSpatialGizmo.xml
+++ b/doc/classes/EditorSpatialGizmo.xml
@@ -12,7 +12,7 @@
<method name="add_collision_segments">
<return type="void">
</return>
- <argument index="0" name="segments" type="PoolVector3Array">
+ <argument index="0" name="segments" type="PackedVector3Array">
</argument>
<description>
</description>
@@ -29,7 +29,7 @@
<method name="add_handles">
<return type="void">
</return>
- <argument index="0" name="handles" type="PoolVector3Array">
+ <argument index="0" name="handles" type="PackedVector3Array">
</argument>
<argument index="1" name="material" type="Material">
</argument>
@@ -45,7 +45,7 @@
<method name="add_lines">
<return type="void">
</return>
- <argument index="0" name="lines" type="PoolVector3Array">
+ <argument index="0" name="lines" type="PackedVector3Array">
</argument>
<argument index="1" name="material" type="Material">
</argument>
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/Environment.xml b/doc/classes/Environment.xml
index 3dad948629..f5c04b3947 100644
--- a/doc/classes/Environment.xml
+++ b/doc/classes/Environment.xml
@@ -191,6 +191,7 @@
<member name="reflected_light_source" type="int" setter="set_reflection_source" getter="get_reflection_source" enum="Environment.ReflectionSource" default="0">
</member>
<member name="sky" type="Sky" setter="set_sky" getter="get_sky">
+ The [Sky] resource used for this [Environment].
</member>
<member name="sky_custom_fov" type="float" setter="set_sky_custom_fov" getter="get_sky_custom_fov" default="0.0">
</member>
diff --git a/doc/classes/Expression.xml b/doc/classes/Expression.xml
index b0a2802e43..fcd1aa43c0 100644
--- a/doc/classes/Expression.xml
+++ b/doc/classes/Expression.xml
@@ -59,7 +59,7 @@
</return>
<argument index="0" name="expression" type="String">
</argument>
- <argument index="1" name="input_names" type="PoolStringArray" default="PoolStringArray( )">
+ <argument index="1" name="input_names" type="PackedStringArray" default="PackedStringArray( )">
</argument>
<description>
Parses the expression and returns an [enum Error] code.
diff --git a/doc/classes/File.xml b/doc/classes/File.xml
index 7fa87c2b60..e9477517cf 100644
--- a/doc/classes/File.xml
+++ b/doc/classes/File.xml
@@ -87,16 +87,16 @@
</description>
</method>
<method name="get_buffer" qualifiers="const">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="len" type="int">
</argument>
<description>
- Returns next [code]len[/code] bytes of the file as a [PoolByteArray].
+ Returns next [code]len[/code] bytes of the file as a [PackedByteArray].
</description>
</method>
<method name="get_csv_line" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="delim" type="String" default="&quot;,&quot;">
</argument>
@@ -252,7 +252,7 @@
</argument>
<argument index="1" name="mode_flags" type="int" enum="File.ModeFlags">
</argument>
- <argument index="2" name="key" type="PoolByteArray">
+ <argument index="2" name="key" type="PackedByteArray">
</argument>
<description>
Opens an encrypted file in write or read mode. You need to pass a binary key to encrypt/decrypt it.
@@ -329,7 +329,7 @@
<method name="store_buffer">
<return type="void">
</return>
- <argument index="0" name="buffer" type="PoolByteArray">
+ <argument index="0" name="buffer" type="PackedByteArray">
</argument>
<description>
Stores the given array of bytes in the file.
@@ -338,12 +338,12 @@
<method name="store_csv_line">
<return type="void">
</return>
- <argument index="0" name="values" type="PoolStringArray">
+ <argument index="0" name="values" type="PackedStringArray">
</argument>
<argument index="1" name="delim" type="String" default="&quot;,&quot;">
</argument>
<description>
- Store the given [PoolStringArray] in the file as a line formatted in the CSV (Comma-Separated Values) format. You can pass a different delimiter [code]delim[/code] to use other than the default [code]","[/code] (comma). This delimiter must be one-character long.
+ Store the given [PackedStringArray] in the file as a line formatted in the CSV (Comma-Separated Values) format. You can pass a different delimiter [code]delim[/code] to use other than the default [code]","[/code] (comma). This delimiter must be one-character long.
Text will be encoded as UTF-8.
</description>
</method>
diff --git a/doc/classes/FileDialog.xml b/doc/classes/FileDialog.xml
index 37b5cec2c9..78fcec33ea 100644
--- a/doc/classes/FileDialog.xml
+++ b/doc/classes/FileDialog.xml
@@ -68,8 +68,8 @@
The currently selected file path of the file dialog.
</member>
<member name="dialog_hide_on_ok" type="bool" setter="set_hide_on_ok" getter="get_hide_on_ok" override="true" default="false" />
- <member name="filters" type="PoolStringArray" setter="set_filters" getter="get_filters" default="PoolStringArray( )">
- The available file type filters. For example, this shows only [code].png[/code] and [code].gd[/code] files: [code]set_filters(PoolStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"]))[/code].
+ <member name="filters" type="PackedStringArray" setter="set_filters" getter="get_filters" default="PackedStringArray( )">
+ The available file type filters. For example, this shows only [code].png[/code] and [code].gd[/code] files: [code]set_filters(PackedStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"]))[/code].
</member>
<member name="mode" type="int" setter="set_mode" getter="get_mode" enum="FileDialog.Mode" default="4">
The dialog's open or save mode, which affects the selection behavior. See enum [code]Mode[/code] constants.
@@ -98,7 +98,7 @@
</description>
</signal>
<signal name="files_selected">
- <argument index="0" name="paths" type="PoolStringArray">
+ <argument index="0" name="paths" type="PackedStringArray">
</argument>
<description>
Emitted when the user selects multiple files.
@@ -133,16 +133,22 @@
</constants>
<theme_items>
<theme_item name="files_disabled" type="Color" default="Color( 0, 0, 0, 0.7 )">
+ The color tint for disabled files (when the [FileDialog] is used in open folder mode).
</theme_item>
<theme_item name="folder" type="Texture2D">
+ Custom icon for folders.
</theme_item>
<theme_item name="folder_icon_modulate" type="Color" default="Color( 1, 1, 1, 1 )">
+ The color modulation applied to the folder icon.
</theme_item>
<theme_item name="parent_folder" type="Texture2D">
+ Custom icon for the parent folder arrow.
</theme_item>
<theme_item name="reload" type="Texture2D">
+ Custom icon for the reload button.
</theme_item>
<theme_item name="toggle_hidden" type="Texture2D">
+ Custom icon for the toggle hidden button.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/Font.xml b/doc/classes/Font.xml
index 6543a3ecf1..882f819e37 100644
--- a/doc/classes/Font.xml
+++ b/doc/classes/Font.xml
@@ -85,6 +85,7 @@
<argument index="1" name="width" type="float">
</argument>
<description>
+ Returns the size that the string would have with word wrapping enabled with a fixed [code]width[/code].
</description>
</method>
<method name="has_outline" qualifiers="const">
diff --git a/doc/classes/FuncRef.xml b/doc/classes/FuncRef.xml
index 37c3597a95..bf0c0b0d34 100644
--- a/doc/classes/FuncRef.xml
+++ b/doc/classes/FuncRef.xml
@@ -36,7 +36,7 @@
<method name="set_function">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
The name of the referenced function to call on the object, without parentheses or any parameters.
diff --git a/doc/classes/GIProbeData.xml b/doc/classes/GIProbeData.xml
index d2918c24f7..228e1afb4c 100644
--- a/doc/classes/GIProbeData.xml
+++ b/doc/classes/GIProbeData.xml
@@ -16,13 +16,13 @@
</argument>
<argument index="2" name="octree_size" type="Vector3">
</argument>
- <argument index="3" name="octree_cells" type="PoolByteArray">
+ <argument index="3" name="octree_cells" type="PackedByteArray">
</argument>
- <argument index="4" name="data_cells" type="PoolByteArray">
+ <argument index="4" name="data_cells" type="PackedByteArray">
</argument>
- <argument index="5" name="distance_field" type="PoolByteArray">
+ <argument index="5" name="distance_field" type="PackedByteArray">
</argument>
- <argument index="6" name="level_counts" type="PoolIntArray">
+ <argument index="6" name="level_counts" type="PackedInt32Array">
</argument>
<description>
</description>
@@ -34,19 +34,19 @@
</description>
</method>
<method name="get_data_cells" qualifiers="const">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
</description>
</method>
<method name="get_level_counts" qualifiers="const">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
</description>
</method>
<method name="get_octree_cells" qualifiers="const">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
</description>
diff --git a/doc/classes/Geometry.xml b/doc/classes/Geometry.xml
index 739c860b28..4d6f7b60a3 100644
--- a/doc/classes/Geometry.xml
+++ b/doc/classes/Geometry.xml
@@ -51,9 +51,9 @@
</description>
</method>
<method name="clip_polygon">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
- <argument index="0" name="points" type="PoolVector3Array">
+ <argument index="0" name="points" type="PackedVector3Array">
</argument>
<argument index="1" name="plane" type="Plane">
</argument>
@@ -64,30 +64,30 @@
<method name="clip_polygons_2d">
<return type="Array">
</return>
- <argument index="0" name="polygon_a" type="PoolVector2Array">
+ <argument index="0" name="polygon_a" type="PackedVector2Array">
</argument>
- <argument index="1" name="polygon_b" type="PoolVector2Array">
+ <argument index="1" name="polygon_b" type="PackedVector2Array">
</argument>
<description>
Clips [code]polygon_a[/code] against [code]polygon_b[/code] and returns an array of clipped polygons. This performs [constant OPERATION_DIFFERENCE] between polygons. Returns an empty array if [code]polygon_b[/code] completely overlaps [code]polygon_a[/code].
- If [code]polygon_b[/code] is enclosed by [code]polygon_a[/code], returns an outer polygon (boundary) and inner polygon (hole) which could be distiguished by calling [method is_polygon_clockwise].
+ If [code]polygon_b[/code] is enclosed by [code]polygon_a[/code], returns an outer polygon (boundary) and inner polygon (hole) which could be distinguished by calling [method is_polygon_clockwise].
</description>
</method>
<method name="clip_polyline_with_polygon_2d">
<return type="Array">
</return>
- <argument index="0" name="polyline" type="PoolVector2Array">
+ <argument index="0" name="polyline" type="PackedVector2Array">
</argument>
- <argument index="1" name="polygon" type="PoolVector2Array">
+ <argument index="1" name="polygon" type="PackedVector2Array">
</argument>
<description>
Clips [code]polyline[/code] against [code]polygon[/code] and returns an array of clipped polylines. This performs [constant OPERATION_DIFFERENCE] between the polyline and the polygon. This operation can be thought of as cutting a line with a closed shape.
</description>
</method>
<method name="convex_hull_2d">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
<description>
Given an array of [Vector2]s, returns the convex hull as a list of points in counterclockwise order. The last point is the same as the first one.
@@ -96,13 +96,13 @@
<method name="exclude_polygons_2d">
<return type="Array">
</return>
- <argument index="0" name="polygon_a" type="PoolVector2Array">
+ <argument index="0" name="polygon_a" type="PackedVector2Array">
</argument>
- <argument index="1" name="polygon_b" type="PoolVector2Array">
+ <argument index="1" name="polygon_b" type="PackedVector2Array">
</argument>
<description>
Mutually excludes common area defined by intersection of [code]polygon_a[/code] and [code]polygon_b[/code] (see [method intersect_polygons_2d]) and returns an array of excluded polygons. This performs [constant OPERATION_XOR] between polygons. In other words, returns all but common area between polygons.
- The operation may result in an outer polygon (boundary) and inner polygon (hole) produced which could be distiguished by calling [method is_polygon_clockwise].
+ The operation may result in an outer polygon (boundary) and inner polygon (hole) produced which could be distinguished by calling [method is_polygon_clockwise].
</description>
</method>
<method name="get_closest_point_to_segment">
@@ -158,7 +158,7 @@
</description>
</method>
<method name="get_closest_points_between_segments">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="p1" type="Vector3">
</argument>
@@ -169,11 +169,11 @@
<argument index="3" name="q2" type="Vector3">
</argument>
<description>
- Given the two 3D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/code], [code]q2[/code]), finds those two points on the two segments that are closest to each other. Returns a [PoolVector3Array] that contains this point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point on ([code]q1[/code], [code]q2[/code]).
+ Given the two 3D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/code], [code]q2[/code]), finds those two points on the two segments that are closest to each other. Returns a [PackedVector3Array] that contains this point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point on ([code]q1[/code], [code]q2[/code]).
</description>
</method>
<method name="get_closest_points_between_segments_2d">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="p1" type="Vector2">
</argument>
@@ -184,7 +184,7 @@
<argument index="3" name="q2" type="Vector2">
</argument>
<description>
- Given the two 2D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/code], [code]q2[/code]), finds those two points on the two segments that are closest to each other. Returns a [PoolVector2Array] that contains this point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point on ([code]q1[/code], [code]q2[/code]).
+ Given the two 2D segments ([code]p1[/code], [code]p2[/code]) and ([code]q1[/code], [code]q2[/code]), finds those two points on the two segments that are closest to each other. Returns a [PackedVector2Array] that contains this point on ([code]p1[/code], [code]p2[/code]) as well the accompanying point on ([code]q1[/code], [code]q2[/code]).
</description>
</method>
<method name="get_uv84_normal_bit">
@@ -199,9 +199,9 @@
<method name="intersect_polygons_2d">
<return type="Array">
</return>
- <argument index="0" name="polygon_a" type="PoolVector2Array">
+ <argument index="0" name="polygon_a" type="PackedVector2Array">
</argument>
- <argument index="1" name="polygon_b" type="PoolVector2Array">
+ <argument index="1" name="polygon_b" type="PackedVector2Array">
</argument>
<description>
Intersects [code]polygon_a[/code] with [code]polygon_b[/code] and returns an array of intersected polygons. This performs [constant OPERATION_INTERSECTION] between polygons. In other words, returns common area shared by polygons. Returns an empty array if no intersection occurs.
@@ -211,9 +211,9 @@
<method name="intersect_polyline_with_polygon_2d">
<return type="Array">
</return>
- <argument index="0" name="polyline" type="PoolVector2Array">
+ <argument index="0" name="polyline" type="PackedVector2Array">
</argument>
- <argument index="1" name="polygon" type="PoolVector2Array">
+ <argument index="1" name="polygon" type="PackedVector2Array">
</argument>
<description>
Intersects [code]polyline[/code] with [code]polygon[/code] and returns an array of intersected polylines. This performs [constant OPERATION_INTERSECTION] between the polyline and the polygon. This operation can be thought of as chopping a line with a closed shape.
@@ -237,7 +237,7 @@
</return>
<argument index="0" name="point" type="Vector2">
</argument>
- <argument index="1" name="polygon" type="PoolVector2Array">
+ <argument index="1" name="polygon" type="PackedVector2Array">
</argument>
<description>
Returns [code]true[/code] if [code]point[/code] is inside [code]polygon[/code] or if it's located exactly [i]on[/i] polygon's boundary, otherwise returns [code]false[/code].
@@ -246,7 +246,7 @@
<method name="is_polygon_clockwise">
<return type="bool">
</return>
- <argument index="0" name="polygon" type="PoolVector2Array">
+ <argument index="0" name="polygon" type="PackedVector2Array">
</argument>
<description>
Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in clockwise order, otherwise returns [code]false[/code].
@@ -271,7 +271,7 @@
<method name="make_atlas">
<return type="Dictionary">
</return>
- <argument index="0" name="sizes" type="PoolVector2Array">
+ <argument index="0" name="sizes" type="PackedVector2Array">
</argument>
<description>
Given an array of [Vector2]s representing tiles, builds an atlas. The returned dictionary has two keys: [code]points[/code] is a vector of [Vector2] that specifies the positions of each tile, [code]size[/code] contains the overall size of the whole atlas as [Vector2].
@@ -280,9 +280,9 @@
<method name="merge_polygons_2d">
<return type="Array">
</return>
- <argument index="0" name="polygon_a" type="PoolVector2Array">
+ <argument index="0" name="polygon_a" type="PackedVector2Array">
</argument>
- <argument index="1" name="polygon_b" type="PoolVector2Array">
+ <argument index="1" name="polygon_b" type="PackedVector2Array">
</argument>
<description>
Merges (combines) [code]polygon_a[/code] and [code]polygon_b[/code] and returns an array of merged polygons. This performs [constant OPERATION_UNION] between polygons.
@@ -292,7 +292,7 @@
<method name="offset_polygon_2d">
<return type="Array">
</return>
- <argument index="0" name="polygon" type="PoolVector2Array">
+ <argument index="0" name="polygon" type="PackedVector2Array">
</argument>
<argument index="1" name="delta" type="float">
</argument>
@@ -307,7 +307,7 @@
<method name="offset_polyline_2d">
<return type="Array">
</return>
- <argument index="0" name="polyline" type="PoolVector2Array">
+ <argument index="0" name="polyline" type="PackedVector2Array">
</argument>
<argument index="1" name="delta" type="float">
</argument>
@@ -370,7 +370,7 @@
</description>
</method>
<method name="segment_intersects_convex">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="from" type="Vector3">
</argument>
@@ -379,11 +379,11 @@
<argument index="2" name="planes" type="Array">
</argument>
<description>
- Given a convex hull defined though the [Plane]s in the array [code]planes[/code], tests if the segment ([code]from[/code], [code]to[/code]) intersects with that hull. If an intersection is found, returns a [PoolVector3Array] containing the point the intersection and the hull's normal. If no intersecion is found, an the returned array is empty.
+ Given a convex hull defined though the [Plane]s in the array [code]planes[/code], tests if the segment ([code]from[/code], [code]to[/code]) intersects with that hull. If an intersection is found, returns a [PackedVector3Array] containing the point the intersection and the hull's normal. If no intersecion is found, an the returned array is empty.
</description>
</method>
<method name="segment_intersects_cylinder">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="from" type="Vector3">
</argument>
@@ -394,7 +394,7 @@
<argument index="3" name="radius" type="float">
</argument>
<description>
- Checks if the segment ([code]from[/code], [code]to[/code]) intersects the cylinder with height [code]height[/code] that is centered at the origin and has radius [code]radius[/code]. If no, returns an empty [PoolVector3Array]. If an intersection takes place, the returned array contains the point of intersection and the cylinder's normal at the point of intersection.
+ Checks if the segment ([code]from[/code], [code]to[/code]) intersects the cylinder with height [code]height[/code] that is centered at the origin and has radius [code]radius[/code]. If no, returns an empty [PackedVector3Array]. If an intersection takes place, the returned array contains the point of intersection and the cylinder's normal at the point of intersection.
</description>
</method>
<method name="segment_intersects_segment_2d">
@@ -413,7 +413,7 @@
</description>
</method>
<method name="segment_intersects_sphere">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="from" type="Vector3">
</argument>
@@ -424,7 +424,7 @@
<argument index="3" name="sphere_radius" type="float">
</argument>
<description>
- Checks if the segment ([code]from[/code], [code]to[/code]) intersects the sphere that is located at [code]sphere_position[/code] and has radius [code]sphere_radius[/code]. If no, returns an empty [PoolVector3Array]. If yes, returns a [PoolVector3Array] containing the point of intersection and the sphere's normal at the point of intersection.
+ Checks if the segment ([code]from[/code], [code]to[/code]) intersects the sphere that is located at [code]sphere_position[/code] and has radius [code]sphere_radius[/code]. If no, returns an empty [PackedVector3Array]. If yes, returns a [PackedVector3Array] containing the point of intersection and the sphere's normal at the point of intersection.
</description>
</method>
<method name="segment_intersects_triangle">
@@ -445,21 +445,21 @@
</description>
</method>
<method name="triangulate_delaunay_2d">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <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 [PoolIntArray] 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 [PoolIntArray] 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="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
- <argument index="0" name="polygon" type="PoolVector2Array">
+ <argument index="0" name="polygon" type="PackedVector2Array">
</argument>
<description>
- Triangulates the polygon specified by the points in [code]polygon[/code]. Returns a [PoolIntArray] 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 [PoolIntArray] 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 3ce70045ef..05aebef9de 100644
--- a/doc/classes/Gradient.xml
+++ b/doc/classes/Gradient.xml
@@ -87,11 +87,11 @@
</method>
</methods>
<members>
- <member name="colors" type="PoolColorArray" setter="set_colors" getter="get_colors" default="PoolColorArray( 0, 0, 0, 1, 1, 1, 1, 1 )">
- Gradient's colors returned as a [PoolColorArray].
+ <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="PoolRealArray" setter="set_offsets" getter="get_offsets" default="PoolRealArray( 0, 1 )">
- Gradient's offsets returned as a [PoolRealArray].
+ <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/GraphEdit.xml b/doc/classes/GraphEdit.xml
index 8733b94ee7..c41ffd4bff 100644
--- a/doc/classes/GraphEdit.xml
+++ b/doc/classes/GraphEdit.xml
@@ -49,11 +49,11 @@
<method name="connect_node">
<return type="int" enum="Error">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_port" type="int">
</argument>
- <argument index="2" name="to" type="String">
+ <argument index="2" name="to" type="StringName">
</argument>
<argument index="3" name="to_port" type="int">
</argument>
@@ -64,11 +64,11 @@
<method name="disconnect_node">
<return type="void">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_port" type="int">
</argument>
- <argument index="2" name="to" type="String">
+ <argument index="2" name="to" type="StringName">
</argument>
<argument index="3" name="to_port" type="int">
</argument>
@@ -94,11 +94,11 @@
<method name="is_node_connected">
<return type="bool">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_port" type="int">
</argument>
- <argument index="2" name="to" type="String">
+ <argument index="2" name="to" type="StringName">
</argument>
<argument index="3" name="to_port" type="int">
</argument>
@@ -149,11 +149,11 @@
<method name="set_connection_activity">
<return type="void">
</return>
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_port" type="int">
</argument>
- <argument index="2" name="to" type="String">
+ <argument index="2" name="to" type="StringName">
</argument>
<argument index="3" name="to_port" type="int">
</argument>
@@ -204,7 +204,7 @@
</description>
</signal>
<signal name="connection_from_empty">
- <argument index="0" name="to" type="String">
+ <argument index="0" name="to" type="StringName">
</argument>
<argument index="1" name="to_slot" type="int">
</argument>
@@ -215,11 +215,11 @@
</description>
</signal>
<signal name="connection_request">
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_slot" type="int">
</argument>
- <argument index="2" name="to" type="String">
+ <argument index="2" name="to" type="StringName">
</argument>
<argument index="3" name="to_slot" type="int">
</argument>
@@ -228,7 +228,7 @@
</description>
</signal>
<signal name="connection_to_empty">
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_slot" type="int">
</argument>
@@ -249,11 +249,11 @@
</description>
</signal>
<signal name="disconnection_request">
- <argument index="0" name="from" type="String">
+ <argument index="0" name="from" type="StringName">
</argument>
<argument index="1" name="from_slot" type="int">
</argument>
- <argument index="2" name="to" type="String">
+ <argument index="2" name="to" type="StringName">
</argument>
<argument index="3" name="to_slot" type="int">
</argument>
@@ -303,26 +303,37 @@
<theme_item name="bezier_len_pos" type="int" default="80">
</theme_item>
<theme_item name="bg" type="StyleBox">
+ The background drawn under the grid.
</theme_item>
<theme_item name="grid_major" type="Color" default="Color( 1, 1, 1, 0.2 )">
+ Color of major grid lines.
</theme_item>
<theme_item name="grid_minor" type="Color" default="Color( 1, 1, 1, 0.05 )">
+ Color of minor grid lines.
</theme_item>
<theme_item name="minus" type="Texture2D">
+ The icon for the zoom out button.
</theme_item>
<theme_item name="more" type="Texture2D">
+ The icon for the zoom in button.
</theme_item>
<theme_item name="port_grab_distance_horizontal" type="int" default="48">
+ The horizontal range within which a port can be grabbed (on both sides).
</theme_item>
<theme_item name="port_grab_distance_vertical" type="int" default="6">
+ The vertical range within which a port can be grabbed (on both sides).
</theme_item>
<theme_item name="reset" type="Texture2D">
+ The icon for the zoom reset button.
</theme_item>
<theme_item name="selection_fill" type="Color" default="Color( 1, 1, 1, 0.3 )">
+ The fill color of the selection rectangle.
</theme_item>
<theme_item name="selection_stroke" type="Color" default="Color( 1, 1, 1, 0.8 )">
+ The outline color of the selection rectangle.
</theme_item>
<theme_item name="snap" type="Texture2D">
+ The icon for the snap toggle button.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/GraphNode.xml b/doc/classes/GraphNode.xml
index a9f1b15443..33074536da 100644
--- a/doc/classes/GraphNode.xml
+++ b/doc/classes/GraphNode.xml
@@ -253,42 +253,59 @@
</constants>
<theme_items>
<theme_item name="breakpoint" type="StyleBox">
+ The background used when [member overlay] is set to [constant OVERLAY_BREAKPOINT].
</theme_item>
<theme_item name="close" type="Texture2D">
+ The icon for the close button, visible when [member show_close] is enabled.
</theme_item>
<theme_item name="close_color" type="Color" default="Color( 0, 0, 0, 1 )">
+ The color modulation applied to the close button icon.
</theme_item>
<theme_item name="close_offset" type="int" default="18">
+ The vertical offset of the close button.
</theme_item>
<theme_item name="comment" type="StyleBox">
+ The [StyleBox] used when [member comment] is enabled.
</theme_item>
<theme_item name="commentfocus" type="StyleBox">
+ The [StyleBox] used when [member comment] is enabled and the [GraphNode] is focused.
</theme_item>
<theme_item name="defaultfocus" type="StyleBox">
</theme_item>
<theme_item name="defaultframe" type="StyleBox">
</theme_item>
<theme_item name="frame" type="StyleBox">
+ The default background for [GraphNode].
</theme_item>
<theme_item name="port" type="Texture2D">
+ The icon used for representing ports.
</theme_item>
<theme_item name="port_offset" type="int" default="3">
+ Horizontal offset for the ports.
</theme_item>
<theme_item name="position" type="StyleBox">
+ The background used when [member overlay] is set to [constant OVERLAY_POSITION].
</theme_item>
<theme_item name="resizer" type="Texture2D">
+ The icon used for resizer, visible when [member resizable] is enabled.
</theme_item>
<theme_item name="resizer_color" type="Color" default="Color( 0, 0, 0, 1 )">
+ The color modulation applied to the resizer icon.
</theme_item>
<theme_item name="selectedframe" type="StyleBox">
+ The background used when the [GraphNode] is selected.
</theme_item>
<theme_item name="separation" type="int" default="1">
+ The vertical distance between ports.
</theme_item>
<theme_item name="title_color" type="Color" default="Color( 0, 0, 0, 1 )">
+ Color of the title text.
</theme_item>
<theme_item name="title_font" type="Font">
+ Font used for the title text.
</theme_item>
<theme_item name="title_offset" type="int" default="20">
+ Vertical offset of the title text.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/GridContainer.xml b/doc/classes/GridContainer.xml
index 4493ee8dc1..e13dc43104 100644
--- a/doc/classes/GridContainer.xml
+++ b/doc/classes/GridContainer.xml
@@ -20,8 +20,10 @@
</constants>
<theme_items>
<theme_item name="hseparation" type="int" default="4">
+ The horizontal separation of children nodes.
</theme_item>
<theme_item name="vseparation" type="int" default="4">
+ The vertical separation of children nodes.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/HSeparator.xml b/doc/classes/HSeparator.xml
index aa83b67934..5b418d6428 100644
--- a/doc/classes/HSeparator.xml
+++ b/doc/classes/HSeparator.xml
@@ -14,8 +14,10 @@
</constants>
<theme_items>
<theme_item name="separation" type="int" default="4">
+ The height of the area covered by the separator. Effectively works like a minimum height.
</theme_item>
<theme_item name="separator" type="StyleBox">
+ The style for the separator line. Works best with [StyleBoxLine].
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/HSlider.xml b/doc/classes/HSlider.xml
index be3c94e495..2738958058 100644
--- a/doc/classes/HSlider.xml
+++ b/doc/classes/HSlider.xml
@@ -14,16 +14,22 @@
</constants>
<theme_items>
<theme_item name="grabber" type="Texture2D">
+ The texture for the grabber (the draggable element).
</theme_item>
<theme_item name="grabber_area" type="StyleBox">
+ The background of the area to the left of the grabber.
</theme_item>
<theme_item name="grabber_disabled" type="Texture2D">
+ The texture for the grabber when it's disabled.
</theme_item>
<theme_item name="grabber_highlight" type="Texture2D">
+ The texture for the grabber when it's focused.
</theme_item>
<theme_item name="slider" type="StyleBox">
+ The background for the whole slider. Determines the height of the [code]grabber_area[/code].
</theme_item>
<theme_item name="tick" type="Texture2D">
+ The texture for the ticks, visible when [member Slider.tick_count] is greater than 0.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/HSplitContainer.xml b/doc/classes/HSplitContainer.xml
index 0dd1f96602..f6e9f33c20 100644
--- a/doc/classes/HSplitContainer.xml
+++ b/doc/classes/HSplitContainer.xml
@@ -14,12 +14,15 @@
</constants>
<theme_items>
<theme_item name="autohide" type="int" default="1">
+ Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically when it isn't under the cursor. If 0 ([code]false[/code]), it's always visible.
</theme_item>
<theme_item name="bg" type="StyleBox">
</theme_item>
<theme_item name="grabber" type="Texture2D">
+ The icon used for the grabber drawn in the middle area.
</theme_item>
<theme_item name="separation" type="int" default="12">
+ The space between sides of the container.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/HTTPClient.xml b/doc/classes/HTTPClient.xml
index bdcbb11ef0..76153ae041 100644
--- a/doc/classes/HTTPClient.xml
+++ b/doc/classes/HTTPClient.xml
@@ -55,7 +55,7 @@
</description>
</method>
<method name="get_response_headers">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the response headers.
@@ -124,7 +124,7 @@
</description>
</method>
<method name="read_response_body_chunk">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Reads one chunk from the response.
@@ -137,7 +137,7 @@
</argument>
<argument index="1" name="url" type="String">
</argument>
- <argument index="2" name="headers" type="PoolStringArray">
+ <argument index="2" name="headers" type="PackedStringArray">
</argument>
<argument index="3" name="body" type="String" default="&quot;&quot;">
</argument>
@@ -160,9 +160,9 @@
</argument>
<argument index="1" name="url" type="String">
</argument>
- <argument index="2" name="headers" type="PoolStringArray">
+ <argument index="2" name="headers" type="PackedStringArray">
</argument>
- <argument index="3" name="body" type="PoolByteArray">
+ <argument index="3" name="body" type="PackedByteArray">
</argument>
<description>
Sends a raw request to the connected host. The URL parameter is just the part after the host, so for [code]http://somehost.com/index.php[/code], it is [code]index.php[/code].
diff --git a/doc/classes/HTTPRequest.xml b/doc/classes/HTTPRequest.xml
index 313f21d8f9..53ca1fc6a9 100644
--- a/doc/classes/HTTPRequest.xml
+++ b/doc/classes/HTTPRequest.xml
@@ -96,7 +96,7 @@
</return>
<argument index="0" name="url" type="String">
</argument>
- <argument index="1" name="custom_headers" type="PoolStringArray" default="PoolStringArray( )">
+ <argument index="1" name="custom_headers" type="PackedStringArray" default="PackedStringArray( )">
</argument>
<argument index="2" name="ssl_validate_domain" type="bool" default="true">
</argument>
@@ -136,9 +136,9 @@
</argument>
<argument index="1" name="response_code" type="int">
</argument>
- <argument index="2" name="headers" type="PoolStringArray">
+ <argument index="2" name="headers" type="PackedStringArray">
</argument>
- <argument index="3" name="body" type="PoolByteArray">
+ <argument index="3" name="body" type="PackedByteArray">
</argument>
<description>
Emitted when a request is completed.
diff --git a/doc/classes/HashingContext.xml b/doc/classes/HashingContext.xml
index bc585df4a0..f8152c813e 100644
--- a/doc/classes/HashingContext.xml
+++ b/doc/classes/HashingContext.xml
@@ -33,7 +33,7 @@
</tutorials>
<methods>
<method name="finish">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Closes the current context, and return the computed hash.
@@ -51,7 +51,7 @@
<method name="update">
<return type="int" enum="Error">
</return>
- <argument index="0" name="chunk" type="PoolByteArray">
+ <argument index="0" name="chunk" type="PackedByteArray">
</argument>
<description>
Updates the computation with the given [code]chunk[/code] of data.
diff --git a/doc/classes/HeightMapShape.xml b/doc/classes/HeightMapShape.xml
index f94089066c..029f3642d2 100644
--- a/doc/classes/HeightMapShape.xml
+++ b/doc/classes/HeightMapShape.xml
@@ -11,7 +11,7 @@
<methods>
</methods>
<members>
- <member name="map_data" type="PoolRealArray" setter="set_map_data" getter="get_map_data" default="PoolRealArray( 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/HingeJoint.xml b/doc/classes/HingeJoint.xml
index 53fa74cace..0d1b6ff0e0 100644
--- a/doc/classes/HingeJoint.xml
+++ b/doc/classes/HingeJoint.xml
@@ -15,6 +15,7 @@
<argument index="0" name="flag" type="int" enum="HingeJoint.Flag">
</argument>
<description>
+ Returns the value of the specified flag.
</description>
</method>
<method name="get_param" qualifiers="const">
@@ -23,6 +24,7 @@
<argument index="0" name="param" type="int" enum="HingeJoint.Param">
</argument>
<description>
+ Returns the value of the specified parameter.
</description>
</method>
<method name="set_flag">
@@ -33,6 +35,7 @@
<argument index="1" name="enabled" type="bool">
</argument>
<description>
+ If [code]true[/code], enables the specified flag.
</description>
</method>
<method name="set_param">
@@ -43,6 +46,7 @@
<argument index="1" name="value" type="float">
</argument>
<description>
+ Sets the value of the specified parameter.
</description>
</method>
</methods>
diff --git a/doc/classes/Image.xml b/doc/classes/Image.xml
index b4a46dd661..8bd2213194 100644
--- a/doc/classes/Image.xml
+++ b/doc/classes/Image.xml
@@ -150,7 +150,7 @@
</argument>
<argument index="3" name="format" type="int" enum="Image.Format">
</argument>
- <argument index="4" name="data" type="PoolByteArray">
+ <argument index="4" name="data" type="PackedByteArray">
</argument>
<description>
Creates a new image of given size and format. See [enum Format] constants. Fills the image with the given raw data. If [code]use_mipmaps[/code] is [code]true[/code] then generate mipmaps for this image. See the [method generate_mipmaps].
@@ -236,7 +236,7 @@
</description>
</method>
<method name="get_data" qualifiers="const">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Returns the image's raw data.
@@ -273,7 +273,7 @@
<argument index="1" name="y" type="int">
</argument>
<description>
- Returns the color of the pixel at [code](x, y)[/code] if the image is locked. If the image is unlocked, it always returns a [Color] with the value [code](0, 0, 0, 1.0)[/code]. This is the same as [method get_pixelv], but two integer arguments instead of a Vector2 argument.
+ Returns the color of the pixel at [code](x, y)[/code]. This is the same as [method get_pixelv], but with two integer arguments instead of a [Vector2] argument.
</description>
</method>
<method name="get_pixelv" qualifiers="const">
@@ -282,7 +282,7 @@
<argument index="0" name="src" type="Vector2">
</argument>
<description>
- Returns the color of the pixel at [code]src[/code] if the image is locked. If the image is unlocked, it always returns a [Color] with the value [code](0, 0, 0, 1.0)[/code]. This is the same as [method get_pixel], but with a Vector2 argument instead of two integer arguments.
+ Returns the color of the pixel at [code]src[/code]. This is the same as [method get_pixel], but with a [Vector2] argument instead of two integer arguments.
</description>
</method>
<method name="get_rect" qualifiers="const">
@@ -355,7 +355,7 @@
<method name="load_jpg_from_buffer">
<return type="int" enum="Error">
</return>
- <argument index="0" name="buffer" type="PoolByteArray">
+ <argument index="0" name="buffer" type="PackedByteArray">
</argument>
<description>
Loads an image from the binary contents of a JPEG file.
@@ -364,7 +364,7 @@
<method name="load_png_from_buffer">
<return type="int" enum="Error">
</return>
- <argument index="0" name="buffer" type="PoolByteArray">
+ <argument index="0" name="buffer" type="PackedByteArray">
</argument>
<description>
Loads an image from the binary contents of a PNG file.
@@ -373,19 +373,12 @@
<method name="load_webp_from_buffer">
<return type="int" enum="Error">
</return>
- <argument index="0" name="buffer" type="PoolByteArray">
+ <argument index="0" name="buffer" type="PackedByteArray">
</argument>
<description>
Loads an image from the binary contents of a WebP file.
</description>
</method>
- <method name="lock">
- <return type="void">
- </return>
- <description>
- Locks the data for reading and writing access. Sends an error to the console if the image is not locked when reading or writing a pixel.
- </description>
- </method>
<method name="normalmap_to_xy">
<return type="void">
</return>
@@ -459,14 +452,11 @@
<argument index="2" name="color" type="Color">
</argument>
<description>
- Sets the [Color] of the pixel at [code](x, y)[/code] if the image is locked. Example:
+ Sets the [Color] of the pixel at [code](x, y)[/code]. Example:
[codeblock]
var img = Image.new()
img.create(img_width, img_height, false, Image.FORMAT_RGBA8)
- img.lock()
- img.set_pixel(x, y, color) # Works
- img.unlock()
- img.set_pixel(x, y, color) # Does not have an effect
+ img.set_pixel(x, y, color)
[/codeblock]
</description>
</method>
@@ -478,14 +468,11 @@
<argument index="1" name="color" type="Color">
</argument>
<description>
- Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code] if the image is locked. Note that the [code]dst[/code] values must be integers. Example:
+ Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code]. Note that the [code]dst[/code] values must be integers. Example:
[codeblock]
var img = Image.new()
img.create(img_width, img_height, false, Image.FORMAT_RGBA8)
- img.lock()
- img.set_pixelv(Vector2(x, y), color) # Works
- img.unlock()
- img.set_pixelv(Vector2(x, y), color) # Does not have an effect
+ img.set_pixelv(Vector2(x, y), color)
[/codeblock]
</description>
</method>
@@ -503,16 +490,9 @@
Converts the raw data from the sRGB colorspace to a linear scale.
</description>
</method>
- <method name="unlock">
- <return type="void">
- </return>
- <description>
- Unlocks the data and prevents changes.
- </description>
- </method>
</methods>
<members>
- <member name="data" type="Dictionary" setter="_set_data" getter="_get_data" default="{&quot;data&quot;: PoolByteArray( ),&quot;format&quot;: &quot;Lum8&quot;,&quot;height&quot;: 0,&quot;mipmaps&quot;: false,&quot;width&quot;: 0}">
+ <member name="data" type="Dictionary" setter="_set_data" getter="_get_data" default="{&quot;data&quot;: PackedByteArray( ),&quot;format&quot;: &quot;Lum8&quot;,&quot;height&quot;: 0,&quot;mipmaps&quot;: false,&quot;width&quot;: 0}">
Holds all of the image's color data in a given format. See [enum Format] constants.
</member>
</members>
diff --git a/doc/classes/ImageTexture.xml b/doc/classes/ImageTexture.xml
index 98eb42831b..1578783b8b 100644
--- a/doc/classes/ImageTexture.xml
+++ b/doc/classes/ImageTexture.xml
@@ -42,6 +42,7 @@
<argument index="1" name="immediate" type="bool" default="false">
</argument>
<description>
+ Replaces the texture's data with a new [code]image[/code]. If [code]immediate[/code] is [code]true[/code], it will take effect immediately after the call.
</description>
</method>
</methods>
diff --git a/doc/classes/Input.xml b/doc/classes/Input.xml
index b7afe57218..0f212e7498 100644
--- a/doc/classes/Input.xml
+++ b/doc/classes/Input.xml
@@ -13,7 +13,7 @@
<method name="action_press">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="strength" type="float" default="1.0">
</argument>
@@ -26,7 +26,7 @@
<method name="action_release">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
If the specified action is already pressed, this will release it.
@@ -54,7 +54,7 @@
<method name="get_action_strength" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns a value between 0 and 1 representing the intensity of the given action. In a joypad, for example, the further away the axis (analog sticks or L2, R2 triggers) is from the dead zone, the closer the value will be to 1. If the action is mapped to a control that has no axis as the keyboard, the value returned will be 0 or 1.
@@ -202,7 +202,7 @@
<method name="is_action_just_pressed" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] when the user starts pressing the action event, meaning it's [code]true[/code] only on the frame that the user pressed down the button.
@@ -212,7 +212,7 @@
<method name="is_action_just_released" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] when the user stops pressing the action event, meaning it's [code]true[/code] only on the frame that the user released the button.
@@ -221,7 +221,7 @@
<method name="is_action_pressed" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] if you are pressing the action event. Note that if an action has multiple buttons assigned and more than one of them is pressed, releasing one button will release the action, even if some other button assigned to this action is still pressed.
@@ -250,10 +250,10 @@
<method name="is_key_pressed" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="scancode" type="int">
+ <argument index="0" name="keycode" type="int">
</argument>
<description>
- Returns [code]true[/code] if you are pressing the key. You can pass a [enum KeyList] constant.
+ Returns [code]true[/code] if you are pressing the key in the current keyboard layout. You can pass a [enum KeyList] constant.
</description>
</method>
<method name="is_mouse_button_pressed" qualifiers="const">
@@ -349,7 +349,8 @@
<argument index="0" name="enable" type="bool">
</argument>
<description>
- Whether to accumulate similar input events sent by the operating system. Enabled by default.
+ Enables or disables the accumulation of similar input events sent by the operating system. When input accumulation is enabled, all input events generated during a frame will be merged and emitted when the frame is done rendering. Therefore, this limits the number of input method calls per second to the rendering FPS.
+ Input accumulation is enabled by default. It can be disabled to get slightly more precise/reactive input at the cost of increased CPU usage. In applications where drawing freehand lines is required, input accumulation should generally be disabled while the user is drawing the line to get results that closely follow the actual input.
</description>
</method>
<method name="start_joy_vibration">
diff --git a/doc/classes/InputEvent.xml b/doc/classes/InputEvent.xml
index 9e3764206b..413e217b45 100644
--- a/doc/classes/InputEvent.xml
+++ b/doc/classes/InputEvent.xml
@@ -31,7 +31,7 @@
<method name="get_action_strength" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns a value between 0.0 and 1.0 depending on the given actions' state. Useful for getting the value of events of type [InputEventJoypadMotion].
@@ -40,7 +40,7 @@
<method name="is_action" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] if this input event matches a pre-defined action of any type.
@@ -49,7 +49,7 @@
<method name="is_action_pressed" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="allow_echo" type="bool" default="false">
</argument>
@@ -60,7 +60,7 @@
<method name="is_action_released" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the given action is released (i.e. not pressed). Not relevant for events of type [InputEventMouseMotion] or [InputEventScreenDrag].
diff --git a/doc/classes/InputEventAction.xml b/doc/classes/InputEventAction.xml
index 2dac693a52..1c38ff8e8f 100644
--- a/doc/classes/InputEventAction.xml
+++ b/doc/classes/InputEventAction.xml
@@ -12,7 +12,7 @@
<methods>
</methods>
<members>
- <member name="action" type="String" setter="set_action" getter="get_action" default="&quot;&quot;">
+ <member name="action" type="StringName" setter="set_action" getter="get_action" default="@&quot;&quot;">
The action's name. Actions are accessed via this [String].
</member>
<member name="pressed" type="bool" setter="set_pressed" getter="is_pressed" default="false">
diff --git a/doc/classes/InputEventGesture.xml b/doc/classes/InputEventGesture.xml
index 9cacd3e6fd..861ec026cd 100644
--- a/doc/classes/InputEventGesture.xml
+++ b/doc/classes/InputEventGesture.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="InputEventGesture" inherits="InputEventWithModifiers" version="4.0">
<brief_description>
+ Base class for touch control gestures.
</brief_description>
<description>
</description>
@@ -10,6 +11,7 @@
</methods>
<members>
<member name="position" type="Vector2" setter="set_position" getter="get_position" default="Vector2( 0, 0 )">
+ The local gesture position relative to the [Viewport]. If used in [method Control._gui_input], the position is relative to the current [Control] that received this gesture.
</member>
</members>
<constants>
diff --git a/doc/classes/InputEventKey.xml b/doc/classes/InputEventKey.xml
index 637f697f01..c8d0769b90 100644
--- a/doc/classes/InputEventKey.xml
+++ b/doc/classes/InputEventKey.xml
@@ -10,12 +10,20 @@
<link>https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html</link>
</tutorials>
<methods>
- <method name="get_scancode_with_modifiers" qualifiers="const">
+ <method name="get_keycode_with_modifiers" qualifiers="const">
<return type="int">
</return>
<description>
- Returns the scancode combined with modifier keys such as [code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].
- To get a human-readable representation of the [InputEventKey] with modifiers, use [code]OS.get_scancode_string(event.get_scancode_with_modifiers())[/code] where [code]event[/code] is the [InputEventKey].
+ Returns the keycode combined with modifier keys such as [code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].
+ To get a human-readable representation of the [InputEventKey] with modifiers, use [code]OS.get_keycode_string(event.get_keycode_with_modifiers())[/code] where [code]event[/code] is the [InputEventKey].
+ </description>
+ </method>
+ <method name="get_physical_keycode_with_modifiers" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ Returns the physical keycode combined with modifier keys such as [code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].
+ To get a human-readable representation of the [InputEventKey] with modifiers, use [code]OS.get_keycode_string(event.get_physical_keycode_with_modifiers())[/code] where [code]event[/code] is the [InputEventKey].
</description>
</method>
</methods>
@@ -23,13 +31,17 @@
<member name="echo" type="bool" setter="set_echo" getter="is_echo" default="false">
If [code]true[/code], the key was already pressed before this event. It means the user is holding the key down.
</member>
+ <member name="keycode" type="int" setter="set_keycode" getter="get_keycode" default="0">
+ The key keycode, which corresponds to one of the [enum KeyList] constants. Represent key in the current keyboard layout.
+ To get a human-readable representation of the [InputEventKey], use [code]OS.get_keycode_string(event.keycode)[/code] where [code]event[/code] is the [InputEventKey].
+ </member>
+ <member name="physical_keycode" type="int" setter="set_physical_keycode" getter="get_physical_keycode" default="0">
+ Key physical keycode, which corresponds to one of the [enum KeyList] constants. Represent the physical location of a key on the 101/102-key US QWERTY keyboard.
+ To get a human-readable representation of the [InputEventKey], use [code]OS.get_keycode_string(event.keycode)[/code] where [code]event[/code] is the [InputEventKey].
+ </member>
<member name="pressed" type="bool" setter="set_pressed" getter="is_pressed" default="false">
If [code]true[/code], the key's state is pressed. If [code]false[/code], the key's state is released.
</member>
- <member name="scancode" type="int" setter="set_scancode" getter="get_scancode" default="0">
- The key scancode, which corresponds to one of the [enum KeyList] constants.
- To get a human-readable representation of the [InputEventKey], use [code]OS.get_scancode_string(event.scancode)[/code] where [code]event[/code] is the [InputEventKey].
- </member>
<member name="unicode" type="int" setter="set_unicode" getter="get_unicode" default="0">
The key Unicode identifier (when relevant). Unicode identifiers for the composite characters and complex scripts may not be available unless IME input mode is active. See [method OS.set_ime_active] for more information.
</member>
diff --git a/doc/classes/InputMap.xml b/doc/classes/InputMap.xml
index aa3400dd97..da93d7fb53 100644
--- a/doc/classes/InputMap.xml
+++ b/doc/classes/InputMap.xml
@@ -13,7 +13,7 @@
<method name="action_add_event">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="event" type="InputEvent">
</argument>
@@ -24,7 +24,7 @@
<method name="action_erase_event">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="event" type="InputEvent">
</argument>
@@ -35,7 +35,7 @@
<method name="action_erase_events">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Removes all events from an action.
@@ -44,7 +44,7 @@
<method name="action_has_event">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="event" type="InputEvent">
</argument>
@@ -55,7 +55,7 @@
<method name="action_set_deadzone">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="deadzone" type="float">
</argument>
@@ -66,7 +66,7 @@
<method name="add_action">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<argument index="1" name="deadzone" type="float" default="0.5">
</argument>
@@ -78,7 +78,7 @@
<method name="erase_action">
<return type="void">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Removes an action from the [InputMap].
@@ -89,7 +89,7 @@
</return>
<argument index="0" name="event" type="InputEvent">
</argument>
- <argument index="1" name="action" type="String">
+ <argument index="1" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the given event is part of an existing action. This method ignores keyboard modifiers if the given [InputEvent] is not pressed (for proper release detection). See [method action_has_event] if you don't want this behavior.
@@ -98,7 +98,7 @@
<method name="get_action_list">
<return type="Array">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns an array of [InputEvent]s associated with a given action.
@@ -114,7 +114,7 @@
<method name="has_action" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="action" type="String">
+ <argument index="0" name="action" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the [InputMap] has a registered action with the given name.
diff --git a/doc/classes/ItemList.xml b/doc/classes/ItemList.xml
index 1bc36abf66..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="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns an array with the indexes of the selected items.
diff --git a/doc/classes/KinematicBody.xml b/doc/classes/KinematicBody.xml
index 2cf49f417c..4ccbc679bf 100644
--- a/doc/classes/KinematicBody.xml
+++ b/doc/classes/KinematicBody.xml
@@ -105,7 +105,8 @@
</argument>
<description>
Moves the body along a vector. If the body collides with another, it will slide along the other body rather than stop immediately. If the other body is a [KinematicBody] or [RigidBody], it will also be affected by the motion of the other body. You can use this to make moving or rotating platforms, or to make nodes push other nodes.
- [code]linear_velocity[/code] is the velocity vector (typically meters per second). Unlike in [method move_and_collide], you should [i]not[/i] multiply it by [code]delta[/code] — the physics engine handles applying the velocity.
+ This method should be used in [method Node._physics_process] (or in a method called by [method Node._physics_process]), as it uses the physics step's [code]delta[/code] value automatically in calculations. Otherwise, the simulation will run at an incorrect speed.
+ [code]linear_velocity[/code] is the velocity vector (typically meters per second). Unlike in [method move_and_collide], you should [i]not[/i] multiply it by [code]delta[/code] — the physics engine handles applying the velocity.
[code]up_direction[/code] is the up direction, used to determine what is a wall and what is a floor or a ceiling. If set to the default value of [code]Vector3(0, 0, 0)[/code], everything is considered a wall.
If [code]stop_on_slope[/code] is [code]true[/code], body will not slide on slopes if you include gravity in [code]linear_velocity[/code].
If the body collides, it will change direction a maximum of [code]max_slides[/code] times before it stops.
diff --git a/doc/classes/KinematicBody2D.xml b/doc/classes/KinematicBody2D.xml
index 58d7b1f831..6b2bbeb895 100644
--- a/doc/classes/KinematicBody2D.xml
+++ b/doc/classes/KinematicBody2D.xml
@@ -103,7 +103,8 @@
</argument>
<description>
Moves the body along a vector. If the body collides with another, it will slide along the other body rather than stop immediately. If the other body is a [KinematicBody2D] or [RigidBody2D], it will also be affected by the motion of the other body. You can use this to make moving or rotating platforms, or to make nodes push other nodes.
- [code]linear_velocity[/code] is the velocity vector in pixels per second. Unlike in [method move_and_collide], you should [i]not[/i] multiply it by [code]delta[/code] — the physics engine handles applying the velocity.
+ This method should be used in [method Node._physics_process] (or in a method called by [method Node._physics_process]), as it uses the physics step's [code]delta[/code] value automatically in calculations. Otherwise, the simulation will run at an incorrect speed.
+ [code]linear_velocity[/code] is the velocity vector in pixels per second. Unlike in [method move_and_collide], you should [i]not[/i] multiply it by [code]delta[/code] — the physics engine handles applying the velocity.
[code]up_direction[/code] is the up direction, used to determine what is a wall and what is a floor or a ceiling. If set to the default value of [code]Vector2(0, 0)[/code], everything is considered a wall. This is useful for topdown games.
If [code]stop_on_slope[/code] is [code]true[/code], body will not slide on slopes when you include gravity in [code]linear_velocity[/code] and the body is standing still.
If the body collides, it will change direction a maximum of [code]max_slides[/code] times before it stops.
diff --git a/doc/classes/Line2D.xml b/doc/classes/Line2D.xml
index bed5bbaea7..68cec3e624 100644
--- a/doc/classes/Line2D.xml
+++ b/doc/classes/Line2D.xml
@@ -84,7 +84,7 @@
<member name="joint_mode" type="int" setter="set_joint_mode" getter="get_joint_mode" enum="Line2D.LineJointMode" default="0">
The style for the points between the start and the end.
</member>
- <member name="points" type="PoolVector2Array" setter="set_points" getter="get_points" default="PoolVector2Array( )">
+ <member name="points" type="PackedVector2Array" setter="set_points" getter="get_points" default="PackedVector2Array( )">
The points that form the lines. The line is drawn between every point set in this array.
</member>
<member name="round_precision" type="int" setter="set_round_precision" getter="get_round_precision" default="8">
diff --git a/doc/classes/MainLoop.xml b/doc/classes/MainLoop.xml
index 2ae7eacdb6..af71c30936 100644
--- a/doc/classes/MainLoop.xml
+++ b/doc/classes/MainLoop.xml
@@ -26,9 +26,9 @@
func _input_event(event):
# Record keys.
if event is InputEventKey and event.pressed and !event.echo:
- keys_typed.append(OS.get_scancode_string(event.scancode))
+ keys_typed.append(OS.get_keycode_string(event.keycode))
# Quit on Escape press.
- if event.scancode == KEY_ESCAPE:
+ if event.keycode == KEY_ESCAPE:
quit = true
# Quit on any mouse click.
if event is InputEventMouseButton:
@@ -46,7 +46,7 @@
<method name="_drop_files" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="files" type="PoolStringArray">
+ <argument index="0" name="files" type="PackedStringArray">
</argument>
<argument index="1" name="from_screen" type="int">
</argument>
diff --git a/doc/classes/Marshalls.xml b/doc/classes/Marshalls.xml
index f9ca391f1c..4250ffd700 100644
--- a/doc/classes/Marshalls.xml
+++ b/doc/classes/Marshalls.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Marshalls" inherits="Reference" version="4.0">
+<class name="Marshalls" inherits="Object" version="4.0">
<brief_description>
Data transformation (marshalling) and encoding helpers.
</brief_description>
@@ -10,12 +10,12 @@
</tutorials>
<methods>
<method name="base64_to_raw">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="base64_str" type="String">
</argument>
<description>
- Returns a decoded [PoolByteArray] corresponding to the Base64-encoded string [code]base64_str[/code].
+ Returns a decoded [PackedByteArray] corresponding to the Base64-encoded string [code]base64_str[/code].
</description>
</method>
<method name="base64_to_utf8">
@@ -42,10 +42,10 @@
<method name="raw_to_base64">
<return type="String">
</return>
- <argument index="0" name="array" type="PoolByteArray">
+ <argument index="0" name="array" type="PackedByteArray">
</argument>
<description>
- Returns a Base64-encoded string of a given [PoolByteArray].
+ Returns a Base64-encoded string of a given [PackedByteArray].
</description>
</method>
<method name="utf8_to_base64">
diff --git a/doc/classes/Mesh.xml b/doc/classes/Mesh.xml
index f2602dfc7f..dc7ffc8934 100644
--- a/doc/classes/Mesh.xml
+++ b/doc/classes/Mesh.xml
@@ -49,7 +49,7 @@
</description>
</method>
<method name="get_faces" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<description>
Returns all the vertices that make up the faces of the mesh. Each three vertices represent one triangle.
diff --git a/doc/classes/MeshDataTool.xml b/doc/classes/MeshDataTool.xml
index 5c6401521a..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="PoolIntArray">
+ <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="PoolIntArray">
+ <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="PoolIntArray">
+ <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="PoolIntArray">
+ <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="PoolRealArray">
+ <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="PoolIntArray">
+ <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="PoolRealArray">
+ <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 3a3dd08caf..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="PoolIntArray">
+ <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/MonoGCHandle.xml b/doc/classes/MonoGCHandle.xml
new file mode 100644
index 0000000000..1e33dd1359
--- /dev/null
+++ b/doc/classes/MonoGCHandle.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="MonoGCHandle" inherits="Reference" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/MultiMesh.xml b/doc/classes/MultiMesh.xml
index 8a4a192ed4..2a1d270990 100644
--- a/doc/classes/MultiMesh.xml
+++ b/doc/classes/MultiMesh.xml
@@ -105,11 +105,11 @@
</method>
</methods>
<members>
- <member name="buffer" type="PoolRealArray" setter="set_buffer" getter="get_buffer" default="PoolRealArray( )">
+ <member name="buffer" type="PackedFloat32Array" setter="set_buffer" getter="get_buffer" default="PackedFloat32Array( )">
</member>
- <member name="color_array" type="PoolColorArray" setter="_set_color_array" getter="_get_color_array">
+ <member name="color_array" type="PackedColorArray" setter="_set_color_array" getter="_get_color_array">
</member>
- <member name="custom_data_array" type="PoolColorArray" setter="_set_custom_data_array" getter="_get_custom_data_array">
+ <member name="custom_data_array" type="PackedColorArray" setter="_set_custom_data_array" getter="_get_custom_data_array">
</member>
<member name="instance_count" type="int" setter="set_instance_count" getter="get_instance_count" default="0">
Number of instances that will get drawn. This clears and (re)sizes the buffers. By default, all instances are drawn but you can limit this with [member visible_instance_count].
@@ -117,16 +117,18 @@
<member name="mesh" type="Mesh" setter="set_mesh" getter="get_mesh">
Mesh to be drawn.
</member>
- <member name="transform_2d_array" type="PoolVector2Array" setter="_set_transform_2d_array" getter="_get_transform_2d_array">
+ <member name="transform_2d_array" type="PackedVector2Array" setter="_set_transform_2d_array" getter="_get_transform_2d_array">
</member>
- <member name="transform_array" type="PoolVector3Array" setter="_set_transform_array" getter="_get_transform_array">
+ <member name="transform_array" type="PackedVector3Array" setter="_set_transform_array" getter="_get_transform_array">
</member>
<member name="transform_format" type="int" setter="set_transform_format" getter="get_transform_format" enum="MultiMesh.TransformFormat" default="0">
Format of transform used to transform mesh, either 2D or 3D.
</member>
<member name="use_colors" type="bool" setter="set_use_colors" getter="is_using_colors" default="false">
+ If [code]true[/code], the [MultiMesh] will use color data (see [member color_array]).
</member>
<member name="use_custom_data" type="bool" setter="set_use_custom_data" getter="is_using_custom_data" default="false">
+ If [code]true[/code], the [MultiMesh] will use custom data (see [member custom_data_array]).
</member>
<member name="visible_instance_count" type="int" setter="set_visible_instance_count" getter="get_visible_instance_count" default="-1">
Limits the number of instances drawn, -1 draws all instances. Changing this does not change the sizes of the buffers.
diff --git a/doc/classes/MultiplayerAPI.xml b/doc/classes/MultiplayerAPI.xml
index b82214b246..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="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns the peer IDs of all connected peers of this MultiplayerAPI's [member network_peer].
@@ -65,7 +65,7 @@
<method name="send_bytes">
<return type="int" enum="Error">
</return>
- <argument index="0" name="bytes" type="PoolByteArray">
+ <argument index="0" name="bytes" type="PackedByteArray">
</argument>
<argument index="1" name="id" type="int" default="0">
</argument>
@@ -126,7 +126,7 @@
<signal name="network_peer_packet">
<argument index="0" name="id" type="int">
</argument>
- <argument index="1" name="packet" type="PoolByteArray">
+ <argument index="1" name="packet" type="PackedByteArray">
</argument>
<description>
Emitted when this MultiplayerAPI's [member network_peer] receive a [code]packet[/code] with custom data (see [method send_bytes]). ID is the peer ID of the peer that sent the packet.
diff --git a/doc/classes/Navigation.xml b/doc/classes/Navigation.xml
index be36be0429..93170bca4a 100644
--- a/doc/classes/Navigation.xml
+++ b/doc/classes/Navigation.xml
@@ -4,19 +4,59 @@
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>
<methods>
+ <method name="get_closest_point" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ Returns the point closest to the provided [code]to_point[/code] on the navigation mesh surface.
+ </description>
+ </method>
+ <method name="get_closest_point_normal" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ Returns the normal for the point returned by [method get_closest_point].
+ </description>
+ </method>
+ <method name="get_closest_point_owner" qualifiers="const">
+ <return type="RID">
+ </return>
+ <argument index="0" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ Returns the owner region RID for the point returned by [method get_closest_point].
+ </description>
+ </method>
+ <method name="get_closest_point_to_segment" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="start" type="Vector3">
+ </argument>
+ <argument index="1" name="end" type="Vector3">
+ </argument>
+ <argument index="2" name="use_collision" type="bool" default="false">
+ </argument>
+ <description>
+ Returns the closest point between the navigation surface and the segment.
+ </description>
+ </method>
<method name="get_rid" qualifiers="const">
<return type="RID">
</return>
<description>
</description>
</method>
- <method name="get_simple_path">
- <return type="PoolVector3Array">
+ <method name="get_simple_path" qualifiers="const">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="start" type="Vector3">
</argument>
diff --git a/doc/classes/Navigation2D.xml b/doc/classes/Navigation2D.xml
index 734469eaa9..dcbfbc2350 100644
--- a/doc/classes/Navigation2D.xml
+++ b/doc/classes/Navigation2D.xml
@@ -4,19 +4,37 @@
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>
<methods>
+ <method name="get_closest_point" qualifiers="const">
+ <return type="Vector2">
+ </return>
+ <argument index="0" name="to_point" type="Vector2">
+ </argument>
+ <description>
+ Returns the point closest to the provided [code]to_point[/code] on the navigation mesh surface.
+ </description>
+ </method>
+ <method name="get_closest_point_owner" qualifiers="const">
+ <return type="RID">
+ </return>
+ <argument index="0" name="to_point" type="Vector2">
+ </argument>
+ <description>
+ Returns the owner region RID for the point returned by [method get_closest_point].
+ </description>
+ </method>
<method name="get_rid" qualifiers="const">
<return type="RID">
</return>
<description>
</description>
</method>
- <method name="get_simple_path">
- <return type="PoolVector2Array">
+ <method name="get_simple_path" qualifiers="const">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="start" type="Vector2">
</argument>
diff --git a/doc/classes/Navigation2DServer.xml b/doc/classes/Navigation2DServer.xml
index 3950e35697..110844c492 100644
--- a/doc/classes/Navigation2DServer.xml
+++ b/doc/classes/Navigation2DServer.xml
@@ -32,7 +32,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<argument index="3" name="userdata" type="Variant" default="null">
</argument>
@@ -164,6 +164,28 @@
Returns the map cell size.
</description>
</method>
+ <method name="map_get_closest_point" qualifiers="const">
+ <return type="Vector2">
+ </return>
+ <argument index="0" name="map" type="RID">
+ </argument>
+ <argument index="1" name="to_point" type="Vector2">
+ </argument>
+ <description>
+ Returns the point closest to the provided [code]to_point[/code] on the navigation mesh surface.
+ </description>
+ </method>
+ <method name="map_get_closest_point_owner" qualifiers="const">
+ <return type="RID">
+ </return>
+ <argument index="0" name="map" type="RID">
+ </argument>
+ <argument index="1" name="to_point" type="Vector2">
+ </argument>
+ <description>
+ Returns the owner region RID for the point returned by [method map_get_closest_point].
+ </description>
+ </method>
<method name="map_get_edge_connection_margin" qualifiers="const">
<return type="float">
</return>
@@ -174,7 +196,7 @@
</description>
</method>
<method name="map_get_path" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="map" type="RID">
</argument>
diff --git a/doc/classes/NavigationAgent.xml b/doc/classes/NavigationAgent.xml
index dc759bc72b..c6c9abec13 100644
--- a/doc/classes/NavigationAgent.xml
+++ b/doc/classes/NavigationAgent.xml
@@ -24,7 +24,7 @@
</description>
</method>
<method name="get_nav_path" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<description>
Returns the path from start to finish in global coordinates.
@@ -34,7 +34,7 @@
<return type="int">
</return>
<description>
- Returns which index the agent is currently on in the navigation path's [PoolVector3Array].
+ Returns which index the agent is currently on in the navigation path's [PackedVector3Array].
</description>
</method>
<method name="get_navigation" qualifiers="const">
@@ -124,7 +124,7 @@
The distance to search for other agents.
</member>
<member name="path_max_distance" type="float" setter="set_path_max_distance" getter="get_path_max_distance" default="3.0">
- The maximum distance the agent is allowed away from the ideal path to the final location. This can happen due to trying to avoid collisions. When the maximum distance is exceded, it recalculates the ideal path.
+ The maximum distance the agent is allowed away from the ideal path to the final location. This can happen due to trying to avoid collisions. When the maximum distance is exceeded, it recalculates the ideal path.
</member>
<member name="radius" type="float" setter="set_radius" getter="get_radius" default="1.0">
The radius of the agent.
diff --git a/doc/classes/NavigationAgent2D.xml b/doc/classes/NavigationAgent2D.xml
index 6f356e7e4c..5a9c31ef67 100644
--- a/doc/classes/NavigationAgent2D.xml
+++ b/doc/classes/NavigationAgent2D.xml
@@ -24,7 +24,7 @@
</description>
</method>
<method name="get_nav_path" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<description>
Returns the path from start to finish in global coordinates.
@@ -34,7 +34,7 @@
<return type="int">
</return>
<description>
- Returns which index the agent is currently on in the navigation path's [PoolVector2Array].
+ Returns which index the agent is currently on in the navigation path's [PackedVector2Array].
</description>
</method>
<method name="get_navigation" qualifiers="const">
@@ -118,7 +118,7 @@
The distance to search for other agents.
</member>
<member name="path_max_distance" type="float" setter="set_path_max_distance" getter="get_path_max_distance" default="3.0">
- The maximum distance the agent is allowed away from the ideal path to the final location. This can happen due to trying to avoid collisions. When the maximum distance is exceded, it recalculates the ideal path.
+ The maximum distance the agent is allowed away from the ideal path to the final location. This can happen due to trying to avoid collisions. When the maximum distance is exceeded, it recalculates the ideal path.
</member>
<member name="radius" type="float" setter="set_radius" getter="get_radius" default="10.0">
The radius of the agent.
diff --git a/doc/classes/NavigationMesh.xml b/doc/classes/NavigationMesh.xml
index fb3babf4aa..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="PoolIntArray">
+ <argument index="0" name="polygon" type="PackedInt32Array">
</argument>
<description>
</description>
@@ -38,7 +38,7 @@
</description>
</method>
<method name="get_polygon">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -52,7 +52,7 @@
</description>
</method>
<method name="get_vertices" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<description>
</description>
@@ -70,7 +70,7 @@
<method name="set_vertices">
<return type="void">
</return>
- <argument index="0" name="vertices" type="PoolVector3Array">
+ <argument index="0" name="vertices" type="PackedVector3Array">
</argument>
<description>
</description>
@@ -109,7 +109,7 @@
</member>
<member name="geometry/source_geometry_mode" type="int" setter="set_source_geometry_mode" getter="get_source_geometry_mode" default="0">
</member>
- <member name="geometry/source_group_name" type="String" setter="set_source_group_name" getter="get_source_group_name">
+ <member name="geometry/source_group_name" type="StringName" setter="set_source_group_name" getter="get_source_group_name">
</member>
<member name="polygon/verts_per_poly" type="float" setter="set_verts_per_poly" getter="get_verts_per_poly" default="6.0">
</member>
diff --git a/doc/classes/NavigationPolygon.xml b/doc/classes/NavigationPolygon.xml
index 0157a6f3f7..b0f77dff83 100644
--- a/doc/classes/NavigationPolygon.xml
+++ b/doc/classes/NavigationPolygon.xml
@@ -8,19 +8,19 @@
Using [method add_outline]:
[codeblock]
var polygon = NavigationPolygon.new()
- var outline = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
+ 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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
+ var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)])
polygon.set_vertices(vertices)
- var indices = PoolIntArray(0, 3, 1)
+ var indices = PackedInt32Array(0, 3, 1)
polygon.add_polygon(indices)
- $NavigationPolygonInstance.navpoly = polygon
+ $NavigationRegion2D.navpoly = polygon
[/codeblock]
</description>
<tutorials>
@@ -29,27 +29,27 @@
<method name="add_outline">
<return type="void">
</return>
- <argument index="0" name="outline" type="PoolVector2Array">
+ <argument index="0" name="outline" type="PackedVector2Array">
</argument>
<description>
- Appends a [PoolVector2Array] that contains the vertices of an outline to the internal array that contains all the outlines. You have to call [method make_polygons_from_outlines] in order for this array to be converted to polygons that the engine will use.
+ Appends a [PackedVector2Array] that contains the vertices of an outline to the internal array that contains all the outlines. You have to call [method make_polygons_from_outlines] in order for this array to be converted to polygons that the engine will use.
</description>
</method>
<method name="add_outline_at_index">
<return type="void">
</return>
- <argument index="0" name="outline" type="PoolVector2Array">
+ <argument index="0" name="outline" type="PackedVector2Array">
</argument>
<argument index="1" name="index" type="int">
</argument>
<description>
- Adds a [PoolVector2Array] that contains the vertices of an outline to the internal array that contains all the outlines at a fixed position. You have to call [method make_polygons_from_outlines] in order for this array to be converted to polygons that the engine will use.
+ Adds a [PackedVector2Array] that contains the vertices of an outline to the internal array that contains all the outlines at a fixed position. You have to call [method make_polygons_from_outlines] in order for this array to be converted to polygons that the engine will use.
</description>
</method>
<method name="add_polygon">
<return type="void">
</return>
- <argument index="0" name="polygon" type="PoolIntArray">
+ <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].
@@ -70,12 +70,12 @@
</description>
</method>
<method name="get_outline" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
- Returns a [PoolVector2Array] containing the vertices of an outline that was created in the editor or by script.
+ Returns a [PackedVector2Array] containing the vertices of an outline that was created in the editor or by script.
</description>
</method>
<method name="get_outline_count" qualifiers="const">
@@ -86,12 +86,12 @@
</description>
</method>
<method name="get_polygon">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
- Returns a [PoolIntArray] 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">
@@ -102,10 +102,10 @@
</description>
</method>
<method name="get_vertices" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<description>
- Returns a [PoolVector2Array] containing all the vertices being used to create the polygons.
+ Returns a [PackedVector2Array] containing all the vertices being used to create the polygons.
</description>
</method>
<method name="make_polygons_from_outlines">
@@ -129,7 +129,7 @@
</return>
<argument index="0" name="idx" type="int">
</argument>
- <argument index="1" name="outline" type="PoolVector2Array">
+ <argument index="1" name="outline" type="PackedVector2Array">
</argument>
<description>
Changes an outline created in the editor or by script. You have to call [method make_polygons_from_outlines] for the polygons to update.
@@ -138,7 +138,7 @@
<method name="set_vertices">
<return type="void">
</return>
- <argument index="0" name="vertices" type="PoolVector2Array">
+ <argument index="0" name="vertices" type="PackedVector2Array">
</argument>
<description>
Sets the vertices that can be then indexed to create polygons with the [method add_polygon] method.
diff --git a/doc/classes/NavigationMeshInstance.xml b/doc/classes/NavigationRegion.xml
index 75bd62e278..a32ded2878 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>
@@ -13,13 +13,13 @@
<return type="void">
</return>
<description>
- Bakes the [NavigationMesh]. The baking is done in a seperate thread because navigation baking is not a cheap operation. This can be done at runtime. When it is completed, it automatically sets the new [NavigationMesh].
+ Bakes the [NavigationMesh]. The baking is done in a separate thread because navigation baking is not a cheap operation. This can be done at runtime. When it is completed, it automatically sets the new [NavigationMesh].
</description>
</method>
</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 7553d700f8..1b534b8458 100644
--- a/doc/classes/NavigationServer.xml
+++ b/doc/classes/NavigationServer.xml
@@ -32,7 +32,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<argument index="3" name="userdata" type="Variant" default="null">
</argument>
@@ -164,6 +164,54 @@
Returns the map cell size.
</description>
</method>
+ <method name="map_get_closest_point" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="map" type="RID">
+ </argument>
+ <argument index="1" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ Returns the point closest to the provided [code]point[/code] on the navigation mesh surface.
+ </description>
+ </method>
+ <method name="map_get_closest_point_normal" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="map" type="RID">
+ </argument>
+ <argument index="1" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ Returns the normal for the point returned by [method map_get_closest_point].
+ </description>
+ </method>
+ <method name="map_get_closest_point_owner" qualifiers="const">
+ <return type="RID">
+ </return>
+ <argument index="0" name="map" type="RID">
+ </argument>
+ <argument index="1" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ Returns the owner region RID for the point returned by [method map_get_closest_point].
+ </description>
+ </method>
+ <method name="map_get_closest_point_to_segment" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="map" type="RID">
+ </argument>
+ <argument index="1" name="start" type="Vector3">
+ </argument>
+ <argument index="2" name="end" type="Vector3">
+ </argument>
+ <argument index="3" name="use_collision" type="bool" default="false">
+ </argument>
+ <description>
+ Returns the closest point between the navigation surface and the segment.
+ </description>
+ </method>
<method name="map_get_edge_connection_margin" qualifiers="const">
<return type="float">
</return>
@@ -174,7 +222,7 @@
</description>
</method>
<method name="map_get_path" qualifiers="const">
- <return type="PoolVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="map" type="RID">
</argument>
@@ -250,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>
@@ -310,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 5fd0da7452..717130728d 100644
--- a/doc/classes/Node.xml
+++ b/doc/classes/Node.xml
@@ -129,27 +129,29 @@
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">
<return type="void">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
<argument index="1" name="persistent" type="bool" default="false">
</argument>
@@ -326,7 +328,7 @@
<return type="float">
</return>
<description>
- Returns the time elapsed since the last physics-bound frame (see [method _physics_process]). This is always a constant value in physics processing unless the frames per second is changed via [member Engine.target_fps].
+ Returns the time elapsed since the last physics-bound frame (see [method _physics_process]). This is always a constant value in physics processing unless the frames per second is changed via [member Engine.iterations_per_second].
</description>
</method>
<method name="get_position_in_parent" qualifiers="const">
@@ -410,7 +412,7 @@
<method name="is_in_group" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
<description>
Returns [code]true[/code] if this node is in the specified group. See notes in the description, and the group methods in [SceneTree].
@@ -532,7 +534,7 @@
<method name="propagate_call">
<return type="void">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<argument index="1" name="args" type="Array" default="[ ]">
</argument>
@@ -584,7 +586,7 @@
<method name="remove_from_group">
<return type="void">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
<description>
Removes a node from a group. See notes in the description, and the group methods in [SceneTree].
@@ -611,7 +613,7 @@
<method name="rpc" qualifiers="vararg">
<return type="Variant">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<description>
Sends a remote procedure call request for the given [code]method[/code] to peers on the network (and locally), optionally sending all additional arguments as arguments to the method called by the RPC. The call request will only be received by nodes with the same [NodePath], including the exact same node name. Behaviour depends on the RPC configuration for the given method, see [method rpc_config]. Methods are not exposed to RPCs by default. See also [method rset] and [method rset_config] for properties. Returns an empty [Variant].
@@ -621,7 +623,7 @@
<method name="rpc_config">
<return type="int">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<argument index="1" name="mode" type="int" enum="MultiplayerAPI.RPCMode">
</argument>
@@ -634,7 +636,7 @@
</return>
<argument index="0" name="peer_id" type="int">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<description>
Sends a [method rpc] to a specific peer identified by [code]peer_id[/code] (see [method NetworkedMultiplayerPeer.set_target_peer]). Returns an empty [Variant].
@@ -643,7 +645,7 @@
<method name="rpc_unreliable" qualifiers="vararg">
<return type="Variant">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<description>
Sends a [method rpc] using an unreliable protocol. Returns an empty [Variant].
@@ -654,7 +656,7 @@
</return>
<argument index="0" name="peer_id" type="int">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<description>
Sends a [method rpc] to a specific peer identified by [code]peer_id[/code] using an unreliable protocol (see [method NetworkedMultiplayerPeer.set_target_peer]). Returns an empty [Variant].
@@ -663,7 +665,7 @@
<method name="rset">
<return type="void">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
@@ -674,7 +676,7 @@
<method name="rset_config">
<return type="int">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="mode" type="int" enum="MultiplayerAPI.RPCMode">
</argument>
@@ -687,7 +689,7 @@
</return>
<argument index="0" name="peer_id" type="int">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -698,7 +700,7 @@
<method name="rset_unreliable">
<return type="void">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
@@ -711,7 +713,7 @@
</return>
<argument index="0" name="peer_id" type="int">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -745,7 +747,7 @@
<argument index="0" name="enable" type="bool">
</argument>
<description>
- Enables or disables physics (i.e. fixed framerate) processing. When a node is being processed, it will receive a [constant NOTIFICATION_PHYSICS_PROCESS] at a fixed (usually 60 FPS, see [member Engine.target_fps] to change) interval (and the [method _physics_process] callback will be called if exists). Enabled automatically if [method _physics_process] is overridden. Any calls to this before [method _ready] will be ignored.
+ Enables or disables physics (i.e. fixed framerate) processing. When a node is being processed, it will receive a [constant NOTIFICATION_PHYSICS_PROCESS] at a fixed (usually 60 FPS, see [member Engine.iterations_per_second] to change) interval (and the [method _physics_process] callback will be called if exists). Enabled automatically if [method _physics_process] is overridden. Any calls to this before [method _ready] will be ignored.
</description>
</method>
<method name="set_physics_process_internal">
@@ -830,7 +832,7 @@
<member name="multiplayer" type="MultiplayerAPI" setter="" getter="get_multiplayer">
The [MultiplayerAPI] instance associated with this node. Either the [member custom_multiplayer], or the default SceneTree one (if inside tree).
</member>
- <member name="name" type="String" setter="set_name" getter="get_name">
+ <member name="name" type="StringName" setter="set_name" getter="get_name">
The name of the node. This name is unique among the siblings (other child nodes from the same parent). When set to an existing name, the node will be automatically renamed.
</member>
<member name="owner" type="Node" setter="set_owner" getter="get_owner">
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index b3b77b0b26..d43c395433 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -93,7 +93,7 @@
</return>
<argument index="0" name="path" type="String">
</argument>
- <argument index="1" name="arguments" type="PoolStringArray">
+ <argument index="1" name="arguments" type="PackedStringArray">
</argument>
<argument index="2" name="blocking" type="bool" default="true">
</argument>
@@ -124,13 +124,13 @@
[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows.
</description>
</method>
- <method name="find_scancode_from_string" qualifiers="const">
+ <method name="find_keycode_from_string" qualifiers="const">
<return type="int">
</return>
<argument index="0" name="string" type="String">
</argument>
<description>
- Returns the scancode of the given string (e.g. "Escape").
+ Returns the keycode of the given string (e.g. "Escape").
</description>
</method>
<method name="get_audio_driver_count" qualifiers="const">
@@ -150,14 +150,14 @@
</description>
</method>
<method name="get_cmdline_args">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the command line arguments passed to the engine.
</description>
</method>
<method name="get_connected_midi_inputs">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns an array of MIDI device names.
@@ -200,13 +200,6 @@
The returned Dictionary's values will be the same as [method get_datetime], with the exception of Daylight Savings Time as it cannot be determined from the epoch.
</description>
</method>
- <method name="get_dynamic_memory_usage" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the total amount of dynamic memory used (only works in debug).
- </description>
- </method>
<method name="get_environment" qualifiers="const">
<return type="String">
</return>
@@ -224,7 +217,7 @@
</description>
</method>
<method name="get_granted_permissions" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
With this function you can get the list of dangerous permissions that have been granted to the Android application.
@@ -249,6 +242,16 @@
[b]Note:[/b] This method is implemented on macOS.
</description>
</method>
+ <method name="get_keycode_string" qualifiers="const">
+ <return type="String">
+ </return>
+ <argument index="0" name="code" type="int">
+ </argument>
+ <description>
+ Returns the given keycode as a string (e.g. Return values: [code]"Escape"[/code], [code]"Shift+Escape"[/code]).
+ See also [member InputEventKey.keycode] and [method InputEventKey.get_keycode_with_modifiers].
+ </description>
+ </method>
<method name="get_latin_keyboard_variant" qualifiers="const">
<return type="String">
</return>
@@ -280,30 +283,6 @@
Returns the name of the host OS. Possible values are: [code]"Android"[/code], [code]"Haiku"[/code], [code]"iOS"[/code], [code]"HTML5"[/code], [code]"OSX"[/code], [code]"Server"[/code], [code]"Windows"[/code], [code]"UWP"[/code], [code]"X11"[/code].
</description>
</method>
- <method name="get_power_percent_left">
- <return type="int">
- </return>
- <description>
- Returns the amount of battery left in the device as a percentage. Returns [code]-1[/code] if power state is unknown.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="get_power_seconds_left">
- <return type="int">
- </return>
- <description>
- Returns an estimate of the time left in seconds before the device runs out of battery. Returns [code]-1[/code] if power state is unknown.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="get_power_state">
- <return type="int" enum="OS.PowerState">
- </return>
- <description>
- Returns the current state of the device regarding battery and power. See [enum PowerState] constants.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
<method name="get_process_id" qualifiers="const">
<return type="int">
</return>
@@ -326,16 +305,6 @@
Returns the window size including decorations like window borders.
</description>
</method>
- <method name="get_scancode_string" qualifiers="const">
- <return type="String">
- </return>
- <argument index="0" name="code" type="int">
- </argument>
- <description>
- Returns the given scancode as a string (e.g. Return values: [code]"Escape"[/code], [code]"Shift+Escape"[/code]).
- See also [member InputEventKey.scancode] and [method InputEventKey.get_scancode_with_modifiers].
- </description>
- </method>
<method name="get_screen_count" qualifiers="const">
<return type="int">
</return>
@@ -619,20 +588,20 @@
To check whether the Godot binary used to run the project is an export template (debug or release), use [code]OS.has_feature("standalone")[/code] instead.
</description>
</method>
- <method name="is_ok_left_and_cancel_right" qualifiers="const">
+ <method name="is_keycode_unicode" qualifiers="const">
<return type="bool">
</return>
+ <argument index="0" name="code" type="int">
+ </argument>
<description>
- Returns [code]true[/code] if the [b]OK[/b] button should appear on the left and [b]Cancel[/b] on the right.
+ Returns [code]true[/code] if the input keycode corresponds to a Unicode character.
</description>
</method>
- <method name="is_scancode_unicode" qualifiers="const">
+ <method name="is_ok_left_and_cancel_right" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="code" type="int">
- </argument>
<description>
- Returns [code]true[/code] if the input scancode corresponds to a Unicode character.
+ Returns [code]true[/code] if the [b]OK[/b] button should appear on the left and [b]Cancel[/b] on the right.
</description>
</method>
<method name="is_stdout_verbose" qualifiers="const">
@@ -758,7 +727,7 @@
<method name="print_resources_by_type">
<return type="void">
</return>
- <argument index="0" name="types" type="PoolStringArray">
+ <argument index="0" name="types" type="PackedStringArray">
</argument>
<description>
Shows the number of resources loaded by the game of the given types.
@@ -1081,20 +1050,5 @@
<constant name="SYSTEM_DIR_RINGTONES" value="7" enum="SystemDir">
Ringtones directory path.
</constant>
- <constant name="POWERSTATE_UNKNOWN" value="0" enum="PowerState">
- Unknown powerstate.
- </constant>
- <constant name="POWERSTATE_ON_BATTERY" value="1" enum="PowerState">
- Unplugged, running on battery.
- </constant>
- <constant name="POWERSTATE_NO_BATTERY" value="2" enum="PowerState">
- Plugged in, no battery available.
- </constant>
- <constant name="POWERSTATE_CHARGING" value="3" enum="PowerState">
- Plugged in, battery charging.
- </constant>
- <constant name="POWERSTATE_CHARGED" value="4" enum="PowerState">
- Plugged in, battery fully charged.
- </constant>
</constants>
</class>
diff --git a/doc/classes/Object.xml b/doc/classes/Object.xml
index 858bf5b635..a3faccae1a 100644
--- a/doc/classes/Object.xml
+++ b/doc/classes/Object.xml
@@ -23,7 +23,7 @@
<method name="_get" qualifiers="virtual">
<return type="Variant">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<description>
Virtual method which can be overridden to customize the return value of [method get].
@@ -58,7 +58,7 @@
<method name="_set" qualifiers="virtual">
<return type="bool">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
@@ -89,7 +89,7 @@
<method name="call" qualifiers="vararg">
<return type="Variant">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<description>
Calls the [code]method[/code] on the object and returns the result. This method supports a variable number of arguments, so parameters are passed as a comma separated list. Example:
@@ -101,7 +101,7 @@
<method name="call_deferred" qualifiers="vararg">
<return type="void">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<description>
Calls the [code]method[/code] on the object during idle time. This method supports a variable number of arguments, so parameters are passed as a comma separated list. Example:
@@ -113,7 +113,7 @@
<method name="callv">
<return type="Variant">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<argument index="1" name="arg_array" type="Array">
</argument>
@@ -134,17 +134,16 @@
<method name="connect">
<return type="int" enum="Error">
</return>
- <argument index="0" name="signal" type="String">
- </argument>
- <argument index="1" name="target" type="Object">
+ <argument index="0" name="signal" type="StringName">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="1" name="callable" type="Callable">
</argument>
- <argument index="3" name="binds" type="Array" default="[ ]">
+ <argument index="2" name="binds" type="Array" default="[ ]">
</argument>
- <argument index="4" name="flags" type="int" default="0">
+ <argument index="3" name="flags" type="int" default="0">
</argument>
<description>
+ [b]FIXME:[/b] The syntax changed with the addition of [Callable], this should be updated.
Connects a [code]signal[/code] to a [code]method[/code] on a [code]target[/code] object. Pass optional [code]binds[/code] to the call as an [Array] of parameters. These parameters will be passed to the method after any parameter used in the call to [method emit_signal]. Use [code]flags[/code] to set deferred or one-shot connections. See [enum ConnectFlags] constants.
A [code]signal[/code] can only be connected once to a [code]method[/code]. It will throw an error if already connected, unless the signal was connected with [constant CONNECT_REFERENCE_COUNTED]. To avoid this, first, use [method is_connected] to check for existing connections.
If the [code]target[/code] is destroyed in the game's lifecycle, the connection will be lost.
@@ -166,13 +165,12 @@
<method name="disconnect">
<return type="void">
</return>
- <argument index="0" name="signal" type="String">
- </argument>
- <argument index="1" name="target" type="Object">
+ <argument index="0" name="signal" type="StringName">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="1" name="callable" type="Callable">
</argument>
<description>
+ [b]FIXME:[/b] The syntax changed with the addition of [Callable], this should be updated.
Disconnects a [code]signal[/code] from a [code]method[/code] on the given [code]target[/code].
If you try to disconnect a connection that does not exist, the method will throw an error. Use [method is_connected] to ensure that the connection exists.
</description>
@@ -180,7 +178,7 @@
<method name="emit_signal" qualifiers="vararg">
<return type="void">
</return>
- <argument index="0" name="signal" type="String">
+ <argument index="0" name="signal" type="StringName">
</argument>
<description>
Emits the given [code]signal[/code]. The signal must exist, so it should be a built-in signal of this class or one of its parent classes, or a user-defined signal. This method supports a variable number of arguments, so parameters are passed as a comma separated list. Example:
@@ -251,10 +249,10 @@
</description>
</method>
<method name="get_meta_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
- Returns the object's metadata as a [PoolStringArray].
+ Returns the object's metadata as a [PackedStringArray].
</description>
</method>
<method name="get_method_list" qualifiers="const">
@@ -273,7 +271,7 @@
</description>
</method>
<method name="get_script" qualifiers="const">
- <return type="Reference">
+ <return type="Variant">
</return>
<description>
Returns the object's [Script] instance, or [code]null[/code] if none is assigned.
@@ -307,7 +305,7 @@
<method name="has_method" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the object contains the given [code]method[/code].
@@ -316,7 +314,7 @@
<method name="has_user_signal" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="signal" type="String">
+ <argument index="0" name="signal" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the given user-defined [code]signal[/code] exists.
@@ -341,13 +339,12 @@
<method name="is_connected" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="signal" type="String">
+ <argument index="0" name="signal" type="StringName">
</argument>
- <argument index="1" name="target" type="Object">
- </argument>
- <argument index="2" name="method" type="String">
+ <argument index="1" name="callable" type="Callable">
</argument>
<description>
+ [b]FIXME:[/b] The syntax changed with the addition of [Callable], this should be updated.
Returns [code]true[/code] if a connection exists for a given [code]signal[/code], [code]target[/code], and [code]method[/code].
</description>
</method>
@@ -409,7 +406,7 @@
<method name="set_deferred">
<return type="void">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
@@ -456,7 +453,7 @@
<method name="set_script">
<return type="void">
</return>
- <argument index="0" name="script" type="Reference">
+ <argument index="0" name="script" type="Variant">
</argument>
<description>
Assigns a script to the object. Each object can have a single script assigned to it, which are used to extend its functionality.
@@ -472,9 +469,9 @@
</description>
</method>
<method name="tr" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
- <argument index="0" name="message" type="String">
+ <argument index="0" name="message" type="StringName">
</argument>
<description>
Translates a message using translation catalogs configured in the Project Settings.
diff --git a/doc/classes/OccluderPolygon2D.xml b/doc/classes/OccluderPolygon2D.xml
index 6cfef42204..8a59ef5cb4 100644
--- a/doc/classes/OccluderPolygon2D.xml
+++ b/doc/classes/OccluderPolygon2D.xml
@@ -17,7 +17,7 @@
<member name="cull_mode" type="int" setter="set_cull_mode" getter="get_cull_mode" enum="OccluderPolygon2D.CullMode" default="0">
The culling mode to use.
</member>
- <member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon" default="PoolVector2Array( )">
+ <member name="polygon" type="PackedVector2Array" setter="set_polygon" getter="get_polygon" default="PackedVector2Array( )">
A [Vector2] array with the index for polygon's vertices positions.
[b]Note:[/b] The returned value is a copy of the underlying array, rather than a reference.
</member>
diff --git a/doc/classes/PoolByteArray.xml b/doc/classes/PackedByteArray.xml
index 63a7037fb1..b08357e278 100644
--- a/doc/classes/PoolByteArray.xml
+++ b/doc/classes/PackedByteArray.xml
@@ -1,25 +1,27 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolByteArray" version="4.0">
+<class name="PackedByteArray" version="4.0">
<brief_description>
- A pooled [Array] of bytes.
+ A packed [Array] of bytes.
</brief_description>
<description>
- An [Array] specifically designed to hold bytes. Optimized for memory usage, does not fragment the memory.
+ An [Array] specifically designed to hold bytes. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PoolByteArray">
- <return type="PoolByteArray">
+ <method name="PackedByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolByteArray]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedByteArray]. 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="byte" type="int">
</argument>
<description>
@@ -27,30 +29,32 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolByteArray">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedByteArray">
</argument>
<description>
- Appends a [PoolByteArray] at the end of this array.
+ Appends a [PackedByteArray] at the end of this array.
</description>
</method>
<method name="compress">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="compression_mode" type="int" default="0">
</argument>
<description>
- Returns a new [PoolByteArray] with the data compressed. Set the compression mode using one of [enum File.CompressionMode]'s constants.
+ Returns a new [PackedByteArray] with the data compressed. Set the compression mode using one of [enum File.CompressionMode]'s constants.
</description>
</method>
<method name="decompress">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="buffer_size" type="int">
</argument>
<argument index="1" name="compression_mode" type="int" default="0">
</argument>
<description>
- Returns a new [PoolByteArray] with the data decompressed. Set [code]buffer_size[/code] to the size of the uncompressed data. Set the compression mode using one of [enum File.CompressionMode]'s constants.
+ Returns a new [PackedByteArray] with the data decompressed. Set [code]buffer_size[/code] to the size of the uncompressed data. Set the compression mode using one of [enum File.CompressionMode]'s constants.
</description>
</method>
<method name="empty">
@@ -80,7 +84,7 @@
<description>
Returns a hexadecimal representation of this array as a [String].
[codeblock]
- var array = PoolByteArray([11, 46, 255])
+ var array = PackedByteArray([11, 46, 255])
print(array.hex_encode()) # Prints: 0b2eff
[/codeblock]
</description>
@@ -97,11 +101,15 @@
</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="byte" type="int">
</argument>
<description>
@@ -109,6 +117,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -116,6 +126,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -123,6 +135,8 @@
</description>
</method>
<method name="set">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<argument index="1" name="byte" type="int">
@@ -139,14 +153,14 @@
</description>
</method>
<method name="subarray">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="from" type="int">
</argument>
<argument index="1" name="to" type="int">
</argument>
<description>
- Returns the slice of the [PoolByteArray] between indices (inclusive) as a new [PoolByteArray]. Any negative index is considered to be from the end of the array.
+ Returns the slice of the [PackedByteArray] between indices (inclusive) as a new [PackedByteArray]. Any negative index is considered to be from the end of the array.
</description>
</method>
</methods>
diff --git a/doc/classes/PoolColorArray.xml b/doc/classes/PackedColorArray.xml
index d5599f821c..06228e4dac 100644
--- a/doc/classes/PoolColorArray.xml
+++ b/doc/classes/PackedColorArray.xml
@@ -1,25 +1,27 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolColorArray" version="4.0">
+<class name="PackedColorArray" version="4.0">
<brief_description>
- A pooled [Array] of [Color].
+ A packed [Array] of [Color]s.
</brief_description>
<description>
- An [Array] specifically designed to hold [Color]. Optimized for memory usage, does not fragment the memory.
+ An [Array] specifically designed to hold [Color]. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PoolColorArray">
- <return type="PoolColorArray">
+ <method name="PackedColorArray">
+ <return type="PackedColorArray">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolColorArray]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedColorArray]. 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="color" type="Color">
</argument>
<description>
@@ -27,10 +29,12 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolColorArray">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedColorArray">
</argument>
<description>
- Appends a [PoolColorArray] at the end of this array.
+ Appends a [PackedColorArray] at the end of this array.
</description>
</method>
<method name="empty">
@@ -52,11 +56,15 @@
</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="color" type="Color">
</argument>
<description>
@@ -64,6 +72,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -71,6 +81,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -78,6 +90,8 @@
</description>
</method>
<method name="set">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<argument index="1" name="color" type="Color">
diff --git a/doc/classes/PackedDataContainer.xml b/doc/classes/PackedDataContainer.xml
index 79c9fa8d9c..296f9d3373 100644
--- a/doc/classes/PackedDataContainer.xml
+++ b/doc/classes/PackedDataContainer.xml
@@ -23,7 +23,7 @@
</method>
</methods>
<members>
- <member name="__data__" type="PoolByteArray" setter="_set_data" getter="_get_data" default="PoolByteArray( )">
+ <member name="__data__" type="PackedByteArray" setter="_set_data" getter="_get_data" default="PackedByteArray( )">
</member>
</members>
<constants>
diff --git a/doc/classes/PackedDataContainerRef.xml b/doc/classes/PackedDataContainerRef.xml
index 9e7ed59054..f0f59675de 100644
--- a/doc/classes/PackedDataContainerRef.xml
+++ b/doc/classes/PackedDataContainerRef.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="PackedDataContainerRef" inherits="Reference" version="4.0">
<brief_description>
+ Reference version of [PackedDataContainer].
</brief_description>
<description>
</description>
diff --git a/doc/classes/PoolRealArray.xml b/doc/classes/PackedFloat32Array.xml
index 6957e7282b..ee82586cdb 100644
--- a/doc/classes/PoolRealArray.xml
+++ b/doc/classes/PackedFloat32Array.xml
@@ -1,25 +1,28 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolRealArray" version="4.0">
+<class name="PackedFloat32Array" version="4.0">
<brief_description>
- A pooled [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]). Optimized for memory usage, does not fragment the memory.
+ 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="PoolRealArray">
- <return type="PoolRealArray">
+ <method name="PackedFloat32Array">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolRealArray]. 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">
+ <return type="void">
+ </return>
<argument index="0" name="value" type="float">
</argument>
<description>
@@ -27,10 +30,12 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolRealArray">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedFloat32Array">
</argument>
<description>
- Appends a [PoolRealArray] at the end of this array.
+ Appends a [PackedFloat32Array] at the end of this array.
</description>
</method>
<method name="empty">
@@ -52,11 +57,15 @@
</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>
@@ -64,6 +73,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -71,6 +82,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -78,6 +91,8 @@
</description>
</method>
<method name="set">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<argument index="1" name="value" type="float">
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/PoolIntArray.xml b/doc/classes/PackedInt64Array.xml
index 54f0f46e11..d8a8071590 100644
--- a/doc/classes/PoolIntArray.xml
+++ b/doc/classes/PackedInt64Array.xml
@@ -1,26 +1,28 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolIntArray" version="4.0">
+<class name="PackedInt64Array" version="4.0">
<brief_description>
- A pooled [Array] of integers ([int]).
+ A packed [Array] of 64-bit integers.
</brief_description>
<description>
- An [Array] specifically designed to hold integer values ([int]). Optimized for memory usage, does not fragment the memory.
+ 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="PoolIntArray">
- <return type="PoolIntArray">
+ <method name="PackedInt64Array">
+ <return type="PackedInt64Array">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolIntArray]. 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">
+ <return type="void">
+ </return>
<argument index="0" name="integer" type="int">
</argument>
<description>
@@ -28,10 +30,12 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolIntArray">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedInt64Array">
</argument>
<description>
- Appends a [PoolIntArray] at the end of this array.
+ Appends a [PackedInt64Array] at the end of this array.
</description>
</method>
<method name="empty">
@@ -49,15 +53,19 @@
<argument index="1" name="integer" type="int">
</argument>
<description>
- Inserts a new int at a given position in the array. The position must be valid, or at the end of the array ([code]idx == size()[/code]).
+ 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>
@@ -65,6 +73,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -72,6 +82,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -79,12 +91,14 @@
</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 int at the given index.
+ Changes the integer at the given index.
</description>
</method>
<method name="size">
diff --git a/doc/classes/PackedScene.xml b/doc/classes/PackedScene.xml
index d13195bd5e..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;: PoolIntArray( ),&quot;editable_instances&quot;: [ ],&quot;names&quot;: PoolStringArray( ),&quot;node_count&quot;: 0,&quot;node_paths&quot;: [ ],&quot;nodes&quot;: PoolIntArray( ),&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/PoolStringArray.xml b/doc/classes/PackedStringArray.xml
index b4fb7b31d4..9526f5899d 100644
--- a/doc/classes/PoolStringArray.xml
+++ b/doc/classes/PackedStringArray.xml
@@ -1,25 +1,27 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolStringArray" version="4.0">
+<class name="PackedStringArray" version="4.0">
<brief_description>
- A pooled [Array] of [String].
+ A packed [Array] of [String]s.
</brief_description>
<description>
- An [Array] specifically designed to hold [String]s. Optimized for memory usage, does not fragment the memory.
+ An [Array] specifically designed to hold [String]s. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PoolStringArray">
- <return type="PoolStringArray">
+ <method name="PackedStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolStringArray]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedStringArray]. 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="string" type="String">
</argument>
<description>
@@ -27,10 +29,12 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolStringArray">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedStringArray">
</argument>
<description>
- Appends a [PoolStringArray] at the end of this array.
+ Appends a [PackedStringArray] at the end of this array.
</description>
</method>
<method name="empty">
@@ -52,20 +56,15 @@
</description>
</method>
<method name="invert">
- <description>
- Reverses the order of the elements in the array.
- </description>
- </method>
- <method name="join">
- <return type="String">
+ <return type="void">
</return>
- <argument index="0" name="delimiter" type="String">
- </argument>
<description>
- Returns a [String] with each element of the array joined with the given [code]delimiter[/code].
+ Reverses the order of the elements in the array.
</description>
</method>
<method name="push_back">
+ <return type="void">
+ </return>
<argument index="0" name="string" type="String">
</argument>
<description>
@@ -73,6 +72,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -80,6 +81,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -87,6 +90,8 @@
</description>
</method>
<method name="set">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<argument index="1" name="string" type="String">
diff --git a/doc/classes/PoolVector2Array.xml b/doc/classes/PackedVector2Array.xml
index cb4536be5b..87f202357c 100644
--- a/doc/classes/PoolVector2Array.xml
+++ b/doc/classes/PackedVector2Array.xml
@@ -1,25 +1,27 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolVector2Array" version="4.0">
+<class name="PackedVector2Array" version="4.0">
<brief_description>
- A pooled [Array] of [Vector2].
+ A packed [Array] of [Vector2]s.
</brief_description>
<description>
- An [Array] specifically designed to hold [Vector2]. Optimized for memory usage, does not fragment the memory.
+ An [Array] specifically designed to hold [Vector2]. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PoolVector2Array">
- <return type="PoolVector2Array">
+ <method name="PackedVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolVector2Array]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedVector2Array]. 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="vector2" type="Vector2">
</argument>
<description>
@@ -27,10 +29,12 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolVector2Array">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedVector2Array">
</argument>
<description>
- Appends a [PoolVector2Array] at the end of this array.
+ Appends a [PackedVector2Array] at the end of this array.
</description>
</method>
<method name="empty">
@@ -52,11 +56,15 @@
</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="vector2" type="Vector2">
</argument>
<description>
@@ -64,6 +72,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -71,6 +81,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -78,6 +90,8 @@
</description>
</method>
<method name="set">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<argument index="1" name="vector2" type="Vector2">
diff --git a/doc/classes/PoolVector3Array.xml b/doc/classes/PackedVector3Array.xml
index 6c40de9bd8..7bfa684ff5 100644
--- a/doc/classes/PoolVector3Array.xml
+++ b/doc/classes/PackedVector3Array.xml
@@ -1,25 +1,27 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PoolVector3Array" version="4.0">
+<class name="PackedVector3Array" version="4.0">
<brief_description>
- A pooled [Array] of [Vector3].
+ A packed [Array] of [Vector3]s.
</brief_description>
<description>
- An [Array] specifically designed to hold [Vector3]. Optimized for memory usage, does not fragment the memory.
+ An [Array] specifically designed to hold [Vector3]. Packs data tightly, so it saves memory for large array sizes.
[b]Note:[/b] This type is passed by value and not by reference.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="PoolVector3Array">
- <return type="PoolVector3Array">
+ <method name="PackedVector3Array">
+ <return type="PackedVector3Array">
</return>
<argument index="0" name="from" type="Array">
</argument>
<description>
- Constructs a new [PoolVector3Array]. Optionally, you can pass in a generic [Array] that will be converted.
+ Constructs a new [PackedVector3Array]. 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="vector3" type="Vector3">
</argument>
<description>
@@ -27,10 +29,12 @@
</description>
</method>
<method name="append_array">
- <argument index="0" name="array" type="PoolVector3Array">
+ <return type="void">
+ </return>
+ <argument index="0" name="array" type="PackedVector3Array">
</argument>
<description>
- Appends a [PoolVector3Array] at the end of this array.
+ Appends a [PackedVector3Array] at the end of this array.
</description>
</method>
<method name="empty">
@@ -52,11 +56,15 @@
</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="vector3" type="Vector3">
</argument>
<description>
@@ -64,6 +72,8 @@
</description>
</method>
<method name="remove">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -71,6 +81,8 @@
</description>
</method>
<method name="resize">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<description>
@@ -78,6 +90,8 @@
</description>
</method>
<method name="set">
+ <return type="void">
+ </return>
<argument index="0" name="idx" type="int">
</argument>
<argument index="1" name="vector3" type="Vector3">
diff --git a/doc/classes/PacketPeer.xml b/doc/classes/PacketPeer.xml
index b721bc9df4..e3e2f63e14 100644
--- a/doc/classes/PacketPeer.xml
+++ b/doc/classes/PacketPeer.xml
@@ -17,7 +17,7 @@
</description>
</method>
<method name="get_packet">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Gets a raw packet.
@@ -43,7 +43,7 @@
<method name="put_packet">
<return type="int" enum="Error">
</return>
- <argument index="0" name="buffer" type="PoolByteArray">
+ <argument index="0" name="buffer" type="PackedByteArray">
</argument>
<description>
Sends a raw packet.
diff --git a/doc/classes/PacketPeerDTLS.xml b/doc/classes/PacketPeerDTLS.xml
new file mode 100644
index 0000000000..19ebb9d81e
--- /dev/null
+++ b/doc/classes/PacketPeerDTLS.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PacketPeerDTLS" inherits="PacketPeer" version="4.0">
+ <brief_description>
+ DTLS packet peer.
+ </brief_description>
+ <description>
+ This class represents a DTLS peer connection. It can be used to connect to a DTLS server, and is returned by [method DTLSServer.take_connection].
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="connect_to_peer">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="packet_peer" type="PacketPeerUDP">
+ </argument>
+ <argument index="1" name="validate_certs" type="bool" default="true">
+ </argument>
+ <argument index="2" name="for_hostname" type="String" default="&quot;&quot;">
+ </argument>
+ <argument index="3" name="valid_certificate" type="X509Certificate" default="null">
+ </argument>
+ <description>
+ Connects a [code]peer[/code] beginning the DTLS handshake using the underlying [PacketPeerUDP] which must be connected (see [method PacketPeerUDP.connect_to_host]). If [code]validate_certs[/code] is [code]true[/code], [PacketPeerDTLS] will validate that the certificate presented by the remote peer and match it with the [code]for_hostname[/code] argument. You can specify a custom [X509Certificate] to use for validation via the [code]valid_certificate[/code] argument.
+ </description>
+ </method>
+ <method name="disconnect_from_peer">
+ <return type="void">
+ </return>
+ <description>
+ Disconnects this peer, terminating the DTLS session.
+ </description>
+ </method>
+ <method name="get_status" qualifiers="const">
+ <return type="int" enum="PacketPeerDTLS.Status">
+ </return>
+ <description>
+ Returns the status of the connection. See [enum Status] for values.
+ </description>
+ </method>
+ <method name="poll">
+ <return type="void">
+ </return>
+ <description>
+ Poll the connection to check for incoming packets. Call this frequently to update the status and keep the connection working.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ <constant name="STATUS_DISCONNECTED" value="0" enum="Status">
+ A status representing a [PacketPeerDTLS] that is disconnected.
+ </constant>
+ <constant name="STATUS_HANDSHAKING" value="1" enum="Status">
+ A status representing a [PacketPeerDTLS] that is currently performing the handshake with a remote peer.
+ </constant>
+ <constant name="STATUS_CONNECTED" value="2" enum="Status">
+ A status representing a [PacketPeerDTLS] that is connected to a remote peer.
+ </constant>
+ <constant name="STATUS_ERROR" value="3" enum="Status">
+ A status representing a [PacketPeerDTLS] in a generic error state.
+ </constant>
+ <constant name="STATUS_ERROR_HOSTNAME_MISMATCH" value="4" enum="Status">
+ An error status that shows a mismatch in the DTLS certificate domain presented by the host and the domain requested for validation.
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/PacketPeerUDP.xml b/doc/classes/PacketPeerUDP.xml
index 81cd341ef7..668655b725 100644
--- a/doc/classes/PacketPeerUDP.xml
+++ b/doc/classes/PacketPeerUDP.xml
@@ -16,6 +16,18 @@
Closes the UDP socket the [PacketPeerUDP] is currently listening on.
</description>
</method>
+ <method name="connect_to_host">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="host" type="String">
+ </argument>
+ <argument index="1" name="port" type="int">
+ </argument>
+ <description>
+ Calling this method connects this UDP peer to the given [code]host[/code]/[code]port[/code] pair. UDP is in reality connectionless, so this option only means that incoming packets from different addresses are automatically discarded, and that outgoing packets are always sent to the connected address (future calls to [method set_dest_address] are not allowed). This method does not send any data to the remote peer, to do that, use [method PacketPeer.put_var] or [method PacketPeer.put_packet] as usual. See also [UDPServer].
+ Note: Connecting to the remote peer does not help to protect from malicious attacks like IP spoofing, etc. Think about using an encryption technique like SSL or DTLS if you feel like your application is transferring sensitive information.
+ </description>
+ </method>
<method name="get_packet_ip" qualifiers="const">
<return type="String">
</return>
@@ -30,6 +42,13 @@
Returns the port of the remote peer that sent the last packet(that was received with [method PacketPeer.get_packet] or [method PacketPeer.get_var]).
</description>
</method>
+ <method name="is_connected_to_host" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ Returns [code]true[/code] if the UDP socket is open and has been connected to a remote address. See [method connect_to_host].
+ </description>
+ </method>
<method name="is_listening" qualifiers="const">
<return type="bool">
</return>
diff --git a/doc/classes/Panel.xml b/doc/classes/Panel.xml
index a96871ba28..a3f6a0be8f 100644
--- a/doc/classes/Panel.xml
+++ b/doc/classes/Panel.xml
@@ -14,6 +14,7 @@
</constants>
<theme_items>
<theme_item name="panel" type="StyleBox">
+ The style of this [Panel].
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/PanelContainer.xml b/doc/classes/PanelContainer.xml
index 9803a8dc51..d39122c395 100644
--- a/doc/classes/PanelContainer.xml
+++ b/doc/classes/PanelContainer.xml
@@ -17,6 +17,7 @@
</constants>
<theme_items>
<theme_item name="panel" type="StyleBox">
+ The style of [PanelContainer]'s background.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/PanoramaSky.xml b/doc/classes/PanoramaSky.xml
index c600a4425b..0ddf1cb054 100644
--- a/doc/classes/PanoramaSky.xml
+++ b/doc/classes/PanoramaSky.xml
@@ -5,6 +5,8 @@
</brief_description>
<description>
A resource referenced in an [Environment] that is used to draw a background. The Panorama sky functions similar to skyboxes in other engines, except it uses an equirectangular sky map instead of a cube map.
+ Using an HDR panorama is strongly recommended for accurate, high-quality reflections. Godot supports the Radiance HDR ([code].hdr[/code]) and OpenEXR ([code].exr[/code]) image formats for this purpose.
+ You can use [url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/cubemap_to_panorama.html]this tool[/url] to convert a cube map to an equirectangular sky map.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Performance.xml b/doc/classes/Performance.xml
index a7bf947011..378b165644 100644
--- a/doc/classes/Performance.xml
+++ b/doc/classes/Performance.xml
@@ -37,82 +37,76 @@
<constant name="MEMORY_STATIC" value="3" enum="Monitor">
Static memory currently used, in bytes. Not available in release builds.
</constant>
- <constant name="MEMORY_DYNAMIC" value="4" enum="Monitor">
- Dynamic memory currently used, in bytes. Not available in release builds.
- </constant>
- <constant name="MEMORY_STATIC_MAX" value="5" enum="Monitor">
+ <constant name="MEMORY_STATIC_MAX" value="4" enum="Monitor">
Available static memory. Not available in release builds.
</constant>
- <constant name="MEMORY_DYNAMIC_MAX" value="6" enum="Monitor">
- Available dynamic memory. Not available in release builds.
- </constant>
- <constant name="MEMORY_MESSAGE_BUFFER_MAX" value="7" enum="Monitor">
+ <constant name="MEMORY_MESSAGE_BUFFER_MAX" value="5" enum="Monitor">
Largest amount of memory the message queue buffer has used, in bytes. The message queue is used for deferred functions calls and notifications.
</constant>
- <constant name="OBJECT_COUNT" value="8" enum="Monitor">
+ <constant name="OBJECT_COUNT" value="6" enum="Monitor">
Number of objects currently instanced (including nodes).
</constant>
- <constant name="OBJECT_RESOURCE_COUNT" value="9" enum="Monitor">
+ <constant name="OBJECT_RESOURCE_COUNT" value="7" enum="Monitor">
Number of resources currently used.
</constant>
- <constant name="OBJECT_NODE_COUNT" value="10" enum="Monitor">
+ <constant name="OBJECT_NODE_COUNT" value="8" enum="Monitor">
Number of nodes currently instanced in the scene tree. This also includes the root node.
</constant>
- <constant name="OBJECT_ORPHAN_NODE_COUNT" value="11" enum="Monitor">
+ <constant name="OBJECT_ORPHAN_NODE_COUNT" value="9" enum="Monitor">
Number of orphan nodes, i.e. nodes which are not parented to a node of the scene tree.
</constant>
- <constant name="RENDER_OBJECTS_IN_FRAME" value="12" enum="Monitor">
+ <constant name="RENDER_OBJECTS_IN_FRAME" value="10" enum="Monitor">
3D objects drawn per frame.
</constant>
- <constant name="RENDER_VERTICES_IN_FRAME" value="13" enum="Monitor">
+ <constant name="RENDER_VERTICES_IN_FRAME" value="11" enum="Monitor">
Vertices drawn per frame. 3D only.
</constant>
- <constant name="RENDER_MATERIAL_CHANGES_IN_FRAME" value="14" enum="Monitor">
+ <constant name="RENDER_MATERIAL_CHANGES_IN_FRAME" value="12" enum="Monitor">
Material changes per frame. 3D only.
</constant>
- <constant name="RENDER_SHADER_CHANGES_IN_FRAME" value="15" enum="Monitor">
+ <constant name="RENDER_SHADER_CHANGES_IN_FRAME" value="13" enum="Monitor">
Shader changes per frame. 3D only.
</constant>
- <constant name="RENDER_SURFACE_CHANGES_IN_FRAME" value="16" enum="Monitor">
+ <constant name="RENDER_SURFACE_CHANGES_IN_FRAME" value="14" enum="Monitor">
Render surface changes per frame. 3D only.
</constant>
- <constant name="RENDER_DRAW_CALLS_IN_FRAME" value="17" enum="Monitor">
+ <constant name="RENDER_DRAW_CALLS_IN_FRAME" value="15" enum="Monitor">
Draw calls per frame. 3D only.
</constant>
- <constant name="RENDER_VIDEO_MEM_USED" value="18" enum="Monitor">
+ <constant name="RENDER_VIDEO_MEM_USED" value="16" enum="Monitor">
The amount of video memory used, i.e. texture and vertex memory combined.
</constant>
- <constant name="RENDER_TEXTURE_MEM_USED" value="19" enum="Monitor">
+ <constant name="RENDER_TEXTURE_MEM_USED" value="17" enum="Monitor">
The amount of texture memory used.
</constant>
- <constant name="RENDER_VERTEX_MEM_USED" value="20" enum="Monitor">
+ <constant name="RENDER_VERTEX_MEM_USED" value="18" enum="Monitor">
The amount of vertex memory used.
</constant>
- <constant name="RENDER_USAGE_VIDEO_MEM_TOTAL" value="21" enum="Monitor">
+ <constant name="RENDER_USAGE_VIDEO_MEM_TOTAL" value="19" enum="Monitor">
Unimplemented in the GLES2 rendering backend, always returns 0.
</constant>
- <constant name="PHYSICS_2D_ACTIVE_OBJECTS" value="22" enum="Monitor">
+ <constant name="PHYSICS_2D_ACTIVE_OBJECTS" value="20" enum="Monitor">
Number of active [RigidBody2D] nodes in the game.
</constant>
- <constant name="PHYSICS_2D_COLLISION_PAIRS" value="23" enum="Monitor">
+ <constant name="PHYSICS_2D_COLLISION_PAIRS" value="21" enum="Monitor">
Number of collision pairs in the 2D physics engine.
</constant>
- <constant name="PHYSICS_2D_ISLAND_COUNT" value="24" enum="Monitor">
+ <constant name="PHYSICS_2D_ISLAND_COUNT" value="22" enum="Monitor">
Number of islands in the 2D physics engine.
</constant>
- <constant name="PHYSICS_3D_ACTIVE_OBJECTS" value="25" enum="Monitor">
+ <constant name="PHYSICS_3D_ACTIVE_OBJECTS" value="23" enum="Monitor">
Number of active [RigidBody] and [VehicleBody] nodes in the game.
</constant>
- <constant name="PHYSICS_3D_COLLISION_PAIRS" value="26" enum="Monitor">
+ <constant name="PHYSICS_3D_COLLISION_PAIRS" value="24" enum="Monitor">
Number of collision pairs in the 3D physics engine.
</constant>
- <constant name="PHYSICS_3D_ISLAND_COUNT" value="27" enum="Monitor">
+ <constant name="PHYSICS_3D_ISLAND_COUNT" value="25" enum="Monitor">
Number of islands in the 3D physics engine.
</constant>
- <constant name="AUDIO_OUTPUT_LATENCY" value="28" enum="Monitor">
+ <constant name="AUDIO_OUTPUT_LATENCY" value="26" enum="Monitor">
Output latency of the [AudioServer].
</constant>
- <constant name="MONITOR_MAX" value="29" enum="Monitor">
+ <constant name="MONITOR_MAX" value="27" enum="Monitor">
Represents the size of the [enum Monitor] enum.
</constant>
</constants>
diff --git a/doc/classes/Physics2DServer.xml b/doc/classes/Physics2DServer.xml
index 4fac27a82b..45215253be 100644
--- a/doc/classes/Physics2DServer.xml
+++ b/doc/classes/Physics2DServer.xml
@@ -165,7 +165,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<description>
</description>
@@ -199,7 +199,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<description>
Sets the function to call when any body/area enters or exits the area. This callback will be called for any object interacting with the area, and takes five parameters:
@@ -661,7 +661,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<argument index="3" name="userdata" type="Variant" default="null">
</argument>
diff --git a/doc/classes/PhysicsServer.xml b/doc/classes/PhysicsServer.xml
index d54a907d3d..1b9ce80a1b 100644
--- a/doc/classes/PhysicsServer.xml
+++ b/doc/classes/PhysicsServer.xml
@@ -156,7 +156,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<description>
</description>
@@ -190,7 +190,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<description>
Sets the function to call when any body/area enters or exits the area. This callback will be called for any object interacting with the area, and takes five parameters:
@@ -678,7 +678,7 @@
</argument>
<argument index="1" name="receiver" type="Object">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<argument index="3" name="userdata" type="Variant" default="null">
</argument>
@@ -1388,7 +1388,7 @@
</constant>
<constant name="CONE_TWIST_JOINT_SWING_SPAN" value="0" enum="ConeTwistJointParam">
Swing is rotation from side to side, around the axis perpendicular to the twist axis.
- The swing span defines, how much rotation will not get corrected allong the swing axis.
+ The swing span defines, how much rotation will not get corrected along the swing axis.
Could be defined as looseness in the [ConeTwistJoint].
If below 0.05, this behavior is locked.
</constant>
@@ -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/PinJoint.xml b/doc/classes/PinJoint.xml
index de4cb9d98a..78cab4805e 100644
--- a/doc/classes/PinJoint.xml
+++ b/doc/classes/PinJoint.xml
@@ -15,6 +15,7 @@
<argument index="0" name="param" type="int" enum="PinJoint.Param">
</argument>
<description>
+ Returns the value of the specified parameter.
</description>
</method>
<method name="set_param">
@@ -25,6 +26,7 @@
<argument index="1" name="value" type="float">
</argument>
<description>
+ Sets the value of the specified parameter.
</description>
</method>
</methods>
diff --git a/doc/classes/Plane.xml b/doc/classes/Plane.xml
index 8f0043fb86..292acd8b5d 100644
--- a/doc/classes/Plane.xml
+++ b/doc/classes/Plane.xml
@@ -77,7 +77,7 @@
</return>
<argument index="0" name="point" type="Vector3">
</argument>
- <argument index="1" name="epsilon" type="float" default="0.00001">
+ <argument index="1" name="epsilon" type="float" default="1e-05">
</argument>
<description>
Returns [code]true[/code] if [code]point[/code] is inside the plane (by a very minimum [code]epsilon[/code] threshold).
diff --git a/doc/classes/Polygon2D.xml b/doc/classes/Polygon2D.xml
index af4e8e1671..13332ca4f0 100644
--- a/doc/classes/Polygon2D.xml
+++ b/doc/classes/Polygon2D.xml
@@ -14,15 +14,17 @@
</return>
<argument index="0" name="path" type="NodePath">
</argument>
- <argument index="1" name="weights" type="PoolRealArray">
+ <argument index="1" name="weights" type="PackedFloat32Array">
</argument>
<description>
+ Adds a bone with the specified [code]path[/code] and [code]weights[/code].
</description>
</method>
<method name="clear_bones">
<return type="void">
</return>
<description>
+ Removes all bones from this [Polygon2D].
</description>
</method>
<method name="erase_bone">
@@ -31,12 +33,14 @@
<argument index="0" name="index" type="int">
</argument>
<description>
+ Removes the specified bone from this [Polygon2D].
</description>
</method>
<method name="get_bone_count" qualifiers="const">
<return type="int">
</return>
<description>
+ Returns the number of bones in this [Polygon2D].
</description>
</method>
<method name="get_bone_path" qualifiers="const">
@@ -45,14 +49,16 @@
<argument index="0" name="index" type="int">
</argument>
<description>
+ Returns the path to the node associated with the specified bone.
</description>
</method>
<method name="get_bone_weights" qualifiers="const">
- <return type="PoolRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="index" type="int">
</argument>
<description>
+ Returns the height values of the specified bone.
</description>
</method>
<method name="set_bone_path">
@@ -63,6 +69,7 @@
<argument index="1" name="path" type="NodePath">
</argument>
<description>
+ Sets the path to the node associated with the specified bone.
</description>
</method>
<method name="set_bone_weights">
@@ -70,9 +77,10 @@
</return>
<argument index="0" name="index" type="int">
</argument>
- <argument index="1" name="weights" type="PoolRealArray">
+ <argument index="1" name="weights" type="PackedFloat32Array">
</argument>
<description>
+ Sets the weight values for the specified bone.
</description>
</method>
</methods>
@@ -98,9 +106,9 @@
<member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2( 0, 0 )">
The offset applied to each vertex.
</member>
- <member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon" default="PoolVector2Array( )">
+ <member name="polygon" type="PackedVector2Array" setter="set_polygon" getter="get_polygon" default="PackedVector2Array( )">
The polygon's list of vertices. The final point will be connected to the first.
- [b]Note:[/b] This returns a copy of the [PoolVector2Array] rather than a reference.
+ [b]Note:[/b] This returns a copy of the [PackedVector2Array] rather than a reference.
</member>
<member name="polygons" type="Array" setter="set_polygons" getter="get_polygons" default="[ ]">
</member>
@@ -127,10 +135,10 @@
<member name="texture_scale" type="Vector2" setter="set_texture_scale" getter="get_texture_scale" default="Vector2( 1, 1 )">
Amount to multiply the [code]uv[/code] coordinates when using a [code]texture[/code]. Larger values make the texture smaller, and vice versa.
</member>
- <member name="uv" type="PoolVector2Array" setter="set_uv" getter="get_uv" default="PoolVector2Array( )">
+ <member name="uv" type="PackedVector2Array" setter="set_uv" getter="get_uv" default="PackedVector2Array( )">
Texture coordinates for each vertex of the polygon. There should be one [code]uv[/code] per polygon vertex. If there are fewer, undefined vertices will use [code](0, 0)[/code].
</member>
- <member name="vertex_colors" type="PoolColorArray" setter="set_vertex_colors" getter="get_vertex_colors" default="PoolColorArray( )">
+ <member name="vertex_colors" type="PackedColorArray" setter="set_vertex_colors" getter="get_vertex_colors" default="PackedColorArray( )">
Color for each vertex. Colors are interpolated between vertices, resulting in smooth gradients. There should be one per polygon vertex. If there are fewer, undefined vertices will use [code]color[/code].
</member>
</members>
diff --git a/doc/classes/PolygonPathFinder.xml b/doc/classes/PolygonPathFinder.xml
index 28a0447f3d..49453d32ac 100644
--- a/doc/classes/PolygonPathFinder.xml
+++ b/doc/classes/PolygonPathFinder.xml
@@ -8,7 +8,7 @@
</tutorials>
<methods>
<method name="find_path">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="from" type="Vector2">
</argument>
@@ -32,7 +32,7 @@
</description>
</method>
<method name="get_intersections" qualifiers="const">
- <return type="PoolVector2Array">
+ <return type="PackedVector2Array">
</return>
<argument index="0" name="from" type="Vector2">
</argument>
@@ -70,9 +70,9 @@
<method name="setup">
<return type="void">
</return>
- <argument index="0" name="points" type="PoolVector2Array">
+ <argument index="0" name="points" type="PackedVector2Array">
</argument>
- <argument index="1" name="connections" type="PoolIntArray">
+ <argument index="1" name="connections" type="PackedInt32Array">
</argument>
<description>
</description>
diff --git a/doc/classes/PopupPanel.xml b/doc/classes/PopupPanel.xml
index a3dd722f81..2e62d09f8f 100644
--- a/doc/classes/PopupPanel.xml
+++ b/doc/classes/PopupPanel.xml
@@ -14,6 +14,7 @@
</constants>
<theme_items>
<theme_item name="panel" type="StyleBox">
+ The background panel style of this [PopupPanel].
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/ProgressBar.xml b/doc/classes/ProgressBar.xml
index e94299a5b8..c957d6f182 100644
--- a/doc/classes/ProgressBar.xml
+++ b/doc/classes/ProgressBar.xml
@@ -21,14 +21,19 @@
</constants>
<theme_items>
<theme_item name="bg" type="StyleBox">
+ The style of the background.
</theme_item>
<theme_item name="fg" type="StyleBox">
+ The style of the progress (i.e. the part that fills the bar).
</theme_item>
<theme_item name="font" type="Font">
+ Font used to draw the fill percentage if [member percent_visible] is [code]true[/code].
</theme_item>
<theme_item name="font_color" type="Color" default="Color( 0.94, 0.94, 0.94, 1 )">
+ The color of the text.
</theme_item>
<theme_item name="font_color_shadow" type="Color" default="Color( 0, 0, 0, 1 )">
+ The color of the text's shadow.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index 0bedb3afe3..76674dcef8 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -179,9 +179,6 @@
</method>
</methods>
<members>
- <member name="android/modules" type="String" setter="" getter="" default="&quot;&quot;">
- Comma-separated list of custom Android modules (which must have been built in the Android export templates) using their Java package path, e.g. [code]org/godotengine/org/GodotPaymentV3,org/godotengine/godot/MyCustomSingleton"[/code].
- </member>
<member name="application/boot_splash/bg_color" type="Color" setter="" getter="" default="Color( 0.14, 0.14, 0.14, 1 )">
Background color for the boot splash.
</member>
@@ -469,7 +466,7 @@
<member name="editor/script_templates_search_path" type="String" setter="" getter="" default="&quot;res://script_templates&quot;">
Search path for project-specific script templates. Script templates will be search both in the editor-specific path and in this project-specific path.
</member>
- <member name="editor/search_in_file_extensions" type="PoolStringArray" setter="" getter="" default="PoolStringArray( &quot;gd&quot;, &quot;shader&quot; )">
+ <member name="editor/search_in_file_extensions" type="PackedStringArray" setter="" getter="" default="PackedStringArray( &quot;gd&quot;, &quot;shader&quot; )">
Text-based file extensions to include in the script editor's "Find in Files" feature. You can add e.g. [code]tscn[/code] if you wish to also parse your scene files, especially if you use built-in scripts which are serialized in the scene files.
</member>
<member name="gui/common/default_scroll_deadzone" type="int" setter="" getter="" default="0">
@@ -815,17 +812,29 @@
<member name="memory/limits/multithreaded_server/rid_pool_prealloc" type="int" setter="" getter="" default="60">
This is used by servers when used in multi-threading mode (servers and visual). RIDs are preallocated to avoid stalling the server requesting them on threads. If servers get stalled too often when loading resources in a thread, increase this number.
</member>
- <member name="network/limits/debugger_stdout/max_chars_per_second" type="int" setter="" getter="" default="2048">
+ <member name="mono/debugger_agent/port" type="int" setter="" getter="" default="23685">
+ </member>
+ <member name="mono/debugger_agent/wait_for_debugger" type="bool" setter="" getter="" default="false">
+ </member>
+ <member name="mono/debugger_agent/wait_timeout" type="int" setter="" getter="" default="3000">
+ </member>
+ <member name="mono/profiler/args" type="String" setter="" getter="" default="&quot;log:calls,alloc,sample,output=output.mlpd&quot;">
+ </member>
+ <member name="mono/profiler/enabled" type="bool" setter="" getter="" default="false">
+ </member>
+ <member name="mono/unhandled_exception_policy" type="int" setter="" getter="" default="0">
+ </member>
+ <member name="network/limits/debugger/max_chars_per_second" type="int" setter="" getter="" default="32768">
Maximum amount of characters allowed to send as output from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
</member>
- <member name="network/limits/debugger_stdout/max_errors_per_second" type="int" setter="" getter="" default="100">
- Maximum number of errors allowed to be sent as output from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
+ <member name="network/limits/debugger/max_errors_per_second" type="int" setter="" getter="" default="400">
+ Maximum number of errors allowed to be sent from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
</member>
- <member name="network/limits/debugger_stdout/max_messages_per_frame" type="int" setter="" getter="" default="10">
- Maximum amount of messages allowed to send as output from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
+ <member name="network/limits/debugger/max_queued_messages" type="int" setter="" getter="" default="2048">
+ Maximum amount of messages in the debugger queue. Over this value, content is dropped. This helps to limit the debugger memory usage.
</member>
- <member name="network/limits/debugger_stdout/max_warnings_per_second" type="int" setter="" getter="" default="100">
- Maximum number of warnings allowed to be sent as output from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
+ <member name="network/limits/debugger/max_warnings_per_second" type="int" setter="" getter="" default="400">
+ Maximum number of warnings allowed to be sent from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
</member>
<member name="network/limits/packet_peer_stream/max_buffer_po2" type="int" setter="" getter="" default="16">
Default size of packet peer stream for deserializing Godot data. Over this size, data is dropped.
@@ -956,10 +965,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].
@@ -1023,26 +1034,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/atlas_size" type="int" setter="" getter="" default="2048">
- Size of the atlas used by reflection probes. A larger size can result in higher visual quality, while a smaller size will be faster and take up less memory.
+ <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/Quat.xml b/doc/classes/Quat.xml
index f11f20f1f9..327fa882e5 100644
--- a/doc/classes/Quat.xml
+++ b/doc/classes/Quat.xml
@@ -132,6 +132,8 @@
</description>
</method>
<method name="set_axis_angle">
+ <return type="void">
+ </return>
<argument index="0" name="axis" type="Vector3">
</argument>
<argument index="1" name="angle" type="float">
@@ -141,6 +143,8 @@
</description>
</method>
<method name="set_euler">
+ <return type="void">
+ </return>
<argument index="0" name="euler" type="Vector3">
</argument>
<description>
diff --git a/doc/classes/Rect2.xml b/doc/classes/Rect2.xml
index e32b19ff00..dbf461cdf1 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>
@@ -133,8 +143,11 @@
</return>
<argument index="0" name="b" type="Rect2">
</argument>
+ <argument index="1" name="include_borders" type="bool" default="false">
+ </argument>
<description>
- Returns [code]true[/code] if the [Rect2] overlaps with another.
+ Returns [code]true[/code] if the [Rect2] overlaps with [code]b[/code] (i.e. they have at least one point in common).
+ If [code]include_borders[/code] is [code]true[/code], they will also be considered overlapping if their borders touch, even without intersection.
</description>
</method>
<method name="is_equal_approx">
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/ResourceFormatLoader.xml b/doc/classes/ResourceFormatLoader.xml
index fc36f922e1..713f2c1726 100644
--- a/doc/classes/ResourceFormatLoader.xml
+++ b/doc/classes/ResourceFormatLoader.xml
@@ -24,7 +24,7 @@
</description>
</method>
<method name="get_recognized_extensions" qualifiers="virtual">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Gets the list of extensions for files this loader is able to read.
@@ -43,7 +43,7 @@
<method name="handles_type" qualifiers="virtual">
<return type="bool">
</return>
- <argument index="0" name="typename" type="String">
+ <argument index="0" name="typename" type="StringName">
</argument>
<description>
Tells which resource class this loader can load.
diff --git a/doc/classes/ResourceFormatSaver.xml b/doc/classes/ResourceFormatSaver.xml
index 369c158ce4..69f8b43898 100644
--- a/doc/classes/ResourceFormatSaver.xml
+++ b/doc/classes/ResourceFormatSaver.xml
@@ -11,7 +11,7 @@
</tutorials>
<methods>
<method name="get_recognized_extensions" qualifiers="virtual">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="resource" type="Resource">
</argument>
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 85c9438d4f..1cf775f389 100644
--- a/doc/classes/ResourceLoader.xml
+++ b/doc/classes/ResourceLoader.xml
@@ -24,7 +24,7 @@
</description>
</method>
<method name="get_dependencies">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="path" type="String">
</argument>
@@ -33,7 +33,7 @@
</description>
</method>
<method name="get_recognized_extensions_for_type">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
@@ -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,39 @@
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>
+ Returns the resource loaded by [method load_threaded_request].
+ If this is called before the loading thread is done (i.e. [method load_threaded_get_status] is not [constant THREAD_LOAD_LOADED]), the calling thread will be blocked until the resource has finished loading.
+ </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>
+ Returns the status of a threaded loading operation started with [method load_threaded_request] for the resource at [code]path[/code]. See [enum ThreadLoadStatus] for possible return values.
+ An array variable can optionally be passed via [code]progress[/code], and will return a one-element array containing the percentage of completion of the threaded loading.
+ </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].
+ Loads the resource using threads. If [code]use_sub_threads[/code] is [code]true[/code], multiple threads will be used to load the resource, which makes loading faster, but may affect the main thread (and thus cause game slowdowns).
</description>
</method>
<method name="set_abort_on_missing_resources">
@@ -91,5 +114,17 @@
</method>
</methods>
<constants>
+ <constant name="THREAD_LOAD_INVALID_RESOURCE" value="0" enum="ThreadLoadStatus">
+ The resource is invalid, or has not been loaded with [method load_threaded_request].
+ </constant>
+ <constant name="THREAD_LOAD_IN_PROGRESS" value="1" enum="ThreadLoadStatus">
+ The resource is still being loaded.
+ </constant>
+ <constant name="THREAD_LOAD_FAILED" value="2" enum="ThreadLoadStatus">
+ Some error occurred during loading and it failed.
+ </constant>
+ <constant name="THREAD_LOAD_LOADED" value="3" enum="ThreadLoadStatus">
+ The resource was loaded successfully and can be accessed via [method load_threaded_get].
+ </constant>
</constants>
</class>
diff --git a/doc/classes/ResourcePreloader.xml b/doc/classes/ResourcePreloader.xml
index 1e0dcaaea8..3159a4c424 100644
--- a/doc/classes/ResourcePreloader.xml
+++ b/doc/classes/ResourcePreloader.xml
@@ -13,7 +13,7 @@
<method name="add_resource">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<argument index="1" name="resource" type="Resource">
</argument>
@@ -24,14 +24,14 @@
<method name="get_resource" qualifiers="const">
<return type="Resource">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns the resource associated to [code]name[/code].
</description>
</method>
<method name="get_resource_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the list of resources inside the preloader.
@@ -40,7 +40,7 @@
<method name="has_resource" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the preloader contains a resource associated to [code]name[/code].
@@ -49,7 +49,7 @@
<method name="remove_resource">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Removes the resource associated to [code]name[/code] from the preloader.
@@ -58,9 +58,9 @@
<method name="rename_resource">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="newname" type="String">
+ <argument index="1" name="newname" type="StringName">
</argument>
<description>
Renames a resource inside the preloader from [code]name[/code] to [code]newname[/code].
diff --git a/doc/classes/ResourceSaver.xml b/doc/classes/ResourceSaver.xml
index 8c27b951f5..ecde5754f9 100644
--- a/doc/classes/ResourceSaver.xml
+++ b/doc/classes/ResourceSaver.xml
@@ -11,7 +11,7 @@
</tutorials>
<methods>
<method name="get_recognized_extensions">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="Resource">
</argument>
diff --git a/doc/classes/RichTextLabel.xml b/doc/classes/RichTextLabel.xml
index 983f768b85..efc0c9d600 100644
--- a/doc/classes/RichTextLabel.xml
+++ b/doc/classes/RichTextLabel.xml
@@ -113,7 +113,7 @@
<method name="parse_expressions_for_values">
<return type="Dictionary">
</return>
- <argument index="0" name="expressions" type="PoolStringArray">
+ <argument index="0" name="expressions" type="PackedStringArray">
</argument>
<description>
Parses BBCode parameter [code]expressions[/code] into a dictionary.
@@ -409,38 +409,55 @@
</constants>
<theme_items>
<theme_item name="bold_font" type="Font">
+ The font used for bold text.
</theme_item>
<theme_item name="bold_italics_font" type="Font">
+ The font used for bold italics text.
</theme_item>
<theme_item name="default_color" type="Color" default="Color( 1, 1, 1, 1 )">
+ The default text color.
</theme_item>
<theme_item name="focus" type="StyleBox">
+ The background The background used when the [RichTextLabel] is focused.
</theme_item>
<theme_item name="font_color_selected" type="Color" default="Color( 0.49, 0.49, 0.49, 1 )">
+ The color of selected text, used when [member selection_enabled] is [code]true[/code].
</theme_item>
<theme_item name="font_color_shadow" type="Color" default="Color( 0, 0, 0, 0 )">
+ The color of the font's shadow.
</theme_item>
<theme_item name="italics_font" type="Font">
+ The font used for italics text.
</theme_item>
<theme_item name="line_separation" type="int" default="1">
+ The vertical space between lines.
</theme_item>
<theme_item name="mono_font" type="Font">
+ The font used for monospace text.
</theme_item>
<theme_item name="normal" type="StyleBox">
+ The normal background for the [RichTextLabel].
</theme_item>
<theme_item name="normal_font" type="Font">
+ The default text font.
</theme_item>
<theme_item name="selection_color" type="Color" default="Color( 0.1, 0.1, 1, 0.8 )">
+ The color of the selection box.
</theme_item>
<theme_item name="shadow_as_outline" type="int" default="0">
+ Boolean value. If 1 ([code]true[/code]), the shadow will be displayed around the whole text as an outline.
</theme_item>
<theme_item name="shadow_offset_x" type="int" default="1">
+ The horizontal offset of the font's shadow.
</theme_item>
<theme_item name="shadow_offset_y" type="int" default="1">
+ The vertical offset of the font's shadow.
</theme_item>
<theme_item name="table_hseparation" type="int" default="3">
+ The horizontal separation of elements in a table.
</theme_item>
<theme_item name="table_vseparation" type="int" default="3">
+ The vertical separation of elements in a table.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/SceneState.xml b/doc/classes/SceneState.xml
index 7304e03bf6..abc429d5fe 100644
--- a/doc/classes/SceneState.xml
+++ b/doc/classes/SceneState.xml
@@ -37,7 +37,7 @@
</description>
</method>
<method name="get_connection_method" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -46,7 +46,7 @@
</description>
</method>
<method name="get_connection_signal" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -81,7 +81,7 @@
</description>
</method>
<method name="get_node_groups" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -117,7 +117,7 @@
</description>
</method>
<method name="get_node_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -157,7 +157,7 @@
</description>
</method>
<method name="get_node_property_name" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -179,7 +179,7 @@
</description>
</method>
<method name="get_node_type" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="idx" type="int">
</argument>
diff --git a/doc/classes/SceneTree.xml b/doc/classes/SceneTree.xml
index 1499173d6b..e6778013cf 100644
--- a/doc/classes/SceneTree.xml
+++ b/doc/classes/SceneTree.xml
@@ -16,9 +16,9 @@
<method name="call_group" qualifiers="vararg">
<return type="Variant">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<description>
Calls [code]method[/code] on each member of the given group.
@@ -29,9 +29,9 @@
</return>
<argument index="0" name="flags" type="int">
</argument>
- <argument index="1" name="group" type="String">
+ <argument index="1" name="group" type="StringName">
</argument>
- <argument index="2" name="method" type="String">
+ <argument index="2" name="method" type="StringName">
</argument>
<description>
Calls [code]method[/code] on each member of the given group, respecting the given [enum GroupCallFlags].
@@ -83,7 +83,7 @@
</description>
</method>
<method name="get_network_connected_peers" qualifiers="const">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<description>
Returns the peer IDs of all connected peers of this [SceneTree]'s [member network_peer].
@@ -106,7 +106,7 @@
<method name="get_nodes_in_group">
<return type="Array">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
<description>
Returns a list of all nodes assigned to the given group.
@@ -122,7 +122,7 @@
<method name="has_group" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the given group exists.
@@ -152,7 +152,7 @@
<method name="notify_group">
<return type="void">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
<argument index="1" name="notification" type="int">
</argument>
@@ -165,7 +165,7 @@
</return>
<argument index="0" name="call_flags" type="int">
</argument>
- <argument index="1" name="group" type="String">
+ <argument index="1" name="group" type="StringName">
</argument>
<argument index="2" name="notification" type="int">
</argument>
@@ -212,7 +212,7 @@
<method name="set_group">
<return type="void">
</return>
- <argument index="0" name="group" type="String">
+ <argument index="0" name="group" type="StringName">
</argument>
<argument index="1" name="property" type="String">
</argument>
@@ -227,7 +227,7 @@
</return>
<argument index="0" name="call_flags" type="int">
</argument>
- <argument index="1" name="group" type="String">
+ <argument index="1" name="group" type="StringName">
</argument>
<argument index="2" name="property" type="String">
</argument>
@@ -320,7 +320,7 @@
</description>
</signal>
<signal name="files_dropped">
- <argument index="0" name="files" type="PoolStringArray">
+ <argument index="0" name="files" type="PackedStringArray">
</argument>
<argument index="1" name="screen" type="int">
</argument>
diff --git a/doc/classes/Script.xml b/doc/classes/Script.xml
index 0f07cb83f3..0d94453e52 100644
--- a/doc/classes/Script.xml
+++ b/doc/classes/Script.xml
@@ -26,7 +26,7 @@
</description>
</method>
<method name="get_instance_base_type" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
<description>
Returns the script's base type.
@@ -35,39 +35,44 @@
<method name="get_property_default_value">
<return type="Variant">
</return>
- <argument index="0" name="property" type="String">
+ <argument index="0" name="property" type="StringName">
</argument>
<description>
+ Returns the default value of the specified property.
</description>
</method>
<method name="get_script_constant_map">
<return type="Dictionary">
</return>
<description>
+ Returns a dictionary containing constant names and their values.
</description>
</method>
<method name="get_script_method_list">
<return type="Array">
</return>
<description>
+ Returns the list of methods in this [Script].
</description>
</method>
<method name="get_script_property_list">
<return type="Array">
</return>
<description>
+ Returns the list of properties in this [Script].
</description>
</method>
<method name="get_script_signal_list">
<return type="Array">
</return>
<description>
+ Returns the list of user signals defined in this [Script].
</description>
</method>
<method name="has_script_signal" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="signal_name" type="String">
+ <argument index="0" name="signal_name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the script, or a base class, defines a signal with the given name.
diff --git a/doc/classes/ScriptEditor.xml b/doc/classes/ScriptEditor.xml
index ed401d6853..10d6e5f578 100644
--- a/doc/classes/ScriptEditor.xml
+++ b/doc/classes/ScriptEditor.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="ScriptEditor" inherits="PanelContainer" version="4.0">
<brief_description>
+ Godot editor's script editor.
</brief_description>
<description>
</description>
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/Semaphore.xml b/doc/classes/Semaphore.xml
index eca98fb10e..c9745acfcd 100644
--- a/doc/classes/Semaphore.xml
+++ b/doc/classes/Semaphore.xml
@@ -11,17 +11,24 @@
</tutorials>
<methods>
<method name="post">
+ <return type="void">
+ </return>
+ <description>
+ Lowers the [Semaphore], allowing one more thread in.
+ </description>
+ </method>
+ <method name="try_wait">
<return type="int" enum="Error">
</return>
<description>
- Lowers the [Semaphore], allowing one more thread in. Returns [constant OK] on success, [constant ERR_BUSY] otherwise.
+ Like [method wait], but won't block, so if the value is zero, fails immediately and returns [constant ERR_BUSY]. If non-zero, it returns [constant OK] to report success.
</description>
</method>
<method name="wait">
- <return type="int" enum="Error">
+ <return type="void">
</return>
<description>
- Tries to wait for the [Semaphore], if its value is zero, blocks until non-zero. Returns [constant OK] on success, [constant ERR_BUSY] otherwise.
+ Waits for the [Semaphore], if its value is zero, blocks until non-zero.
</description>
</method>
</methods>
diff --git a/doc/classes/Shader.xml b/doc/classes/Shader.xml
index a2fbf5a1b1..14c5d7a03c 100644
--- a/doc/classes/Shader.xml
+++ b/doc/classes/Shader.xml
@@ -14,7 +14,7 @@
<method name="get_default_texture_param" qualifiers="const">
<return type="Texture2D">
</return>
- <argument index="0" name="param" type="String">
+ <argument index="0" name="param" type="StringName">
</argument>
<description>
Returns the texture that is set as default for the specified parameter.
@@ -31,7 +31,7 @@
<method name="has_param" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
<description>
Returns [code]true[/code] if the shader has this param defined as a uniform in its code.
@@ -41,7 +41,7 @@
<method name="set_default_texture_param">
<return type="void">
</return>
- <argument index="0" name="param" type="String">
+ <argument index="0" name="param" type="StringName">
</argument>
<argument index="1" name="texture" type="Texture2D">
</argument>
diff --git a/doc/classes/ShaderMaterial.xml b/doc/classes/ShaderMaterial.xml
index adb30c14d1..7e0e1ce831 100644
--- a/doc/classes/ShaderMaterial.xml
+++ b/doc/classes/ShaderMaterial.xml
@@ -13,7 +13,7 @@
<method name="get_shader_param" qualifiers="const">
<return type="Variant">
</return>
- <argument index="0" name="param" type="String">
+ <argument index="0" name="param" type="StringName">
</argument>
<description>
Returns the current value set for this material of a uniform in the shader.
@@ -40,7 +40,7 @@
<method name="set_shader_param">
<return type="void">
</return>
- <argument index="0" name="param" type="String">
+ <argument index="0" name="param" type="StringName">
</argument>
<argument index="1" name="value" type="Variant">
</argument>
diff --git a/doc/classes/Signal.xml b/doc/classes/Signal.xml
new file mode 100644
index 0000000000..51490caf6f
--- /dev/null
+++ b/doc/classes/Signal.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Signal" version="4.0">
+ <brief_description>
+ Class representing a signal defined in an object.
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="Signal">
+ <return type="Signal">
+ </return>
+ <argument index="0" name="object" type="Object">
+ </argument>
+ <argument index="1" name="signal_name" type="StringName">
+ </argument>
+ <description>
+ Creates a new signal named [code]signal_name[/code] in the given object.
+ </description>
+ </method>
+ <method name="connect">
+ <return type="int">
+ </return>
+ <argument index="0" name="callable" type="Callable">
+ </argument>
+ <argument index="1" name="binds" type="Array" default="[ ]">
+ </argument>
+ <argument index="2" name="flags" type="int" default="0">
+ </argument>
+ <description>
+ Connects this signal to the specified [Callable], optionally providing binds and connection flags.
+ </description>
+ </method>
+ <method name="disconnect">
+ <return type="void">
+ </return>
+ <argument index="0" name="callable" type="Callable">
+ </argument>
+ <description>
+ Disconnects this signal from the specified [Callable].
+ </description>
+ </method>
+ <method name="emit" qualifiers="vararg">
+ <return type="void">
+ </return>
+ <description>
+ Emits this signal to all connected objects.
+ </description>
+ </method>
+ <method name="get_connections">
+ <return type="Array">
+ </return>
+ <description>
+ Returns the list of [Callable]s connected to this signal.
+ </description>
+ </method>
+ <method name="get_name">
+ <return type="StringName">
+ </return>
+ <description>
+ Returns the name of this signal.
+ </description>
+ </method>
+ <method name="get_object">
+ <return type="Object">
+ </return>
+ <description>
+ Returns the object emitting this signal.
+ </description>
+ </method>
+ <method name="get_object_id">
+ <return type="int">
+ </return>
+ <description>
+ Returns the ID of the object emitting this signal (see [method Object.get_instance_id]).
+ </description>
+ </method>
+ <method name="is_connected">
+ <return type="bool">
+ </return>
+ <argument index="0" name="callable" type="Callable">
+ </argument>
+ <description>
+ Returns [code]true[/code] if the specified [Callable] is connected to this signal.
+ </description>
+ </method>
+ <method name="is_null">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/SkeletonIK.xml b/doc/classes/SkeletonIK.xml
index 0f07031708..1db78314d2 100644
--- a/doc/classes/SkeletonIK.xml
+++ b/doc/classes/SkeletonIK.xml
@@ -45,13 +45,13 @@
</member>
<member name="override_tip_basis" type="bool" setter="set_override_tip_basis" getter="is_override_tip_basis" default="true">
</member>
- <member name="root_bone" type="String" setter="set_root_bone" getter="get_root_bone" default="&quot;&quot;">
+ <member name="root_bone" type="StringName" setter="set_root_bone" getter="get_root_bone" default="@&quot;&quot;">
</member>
<member name="target" type="Transform" setter="set_target_transform" getter="get_target_transform" default="Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )">
</member>
<member name="target_node" type="NodePath" setter="set_target_node" getter="get_target_node" default="NodePath(&quot;&quot;)">
</member>
- <member name="tip_bone" type="String" setter="set_tip_bone" getter="get_tip_bone" default="&quot;&quot;">
+ <member name="tip_bone" type="StringName" setter="set_tip_bone" getter="get_tip_bone" default="@&quot;&quot;">
</member>
<member name="use_magnet" type="bool" setter="set_use_magnet" getter="is_using_magnet" default="false">
</member>
diff --git a/doc/classes/Skin.xml b/doc/classes/Skin.xml
index b65d9d8f98..e22feb42f0 100644
--- a/doc/classes/Skin.xml
+++ b/doc/classes/Skin.xml
@@ -37,6 +37,14 @@
<description>
</description>
</method>
+ <method name="get_bind_name" qualifiers="const">
+ <return type="StringName">
+ </return>
+ <argument index="0" name="bind_index" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="get_bind_pose" qualifiers="const">
<return type="Transform">
</return>
@@ -63,6 +71,16 @@
<description>
</description>
</method>
+ <method name="set_bind_name">
+ <return type="void">
+ </return>
+ <argument index="0" name="bind_index" type="int">
+ </argument>
+ <argument index="1" name="name" type="StringName">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="set_bind_pose">
<return type="void">
</return>
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/SpringArm.xml b/doc/classes/SpringArm.xml
index f426cfc352..780ed5077d 100644
--- a/doc/classes/SpringArm.xml
+++ b/doc/classes/SpringArm.xml
@@ -18,14 +18,14 @@
<argument index="0" name="RID" type="RID">
</argument>
<description>
- Adds the object with the given [RID] to the list of objects excluded from the collision check.
+ Adds the [PhysicsBody] object with the given [RID] to the list of [PhysicsBody] objects excluded from the collision check.
</description>
</method>
<method name="clear_excluded_objects">
<return type="void">
</return>
<description>
- Clears the list of objects excluded from the collision check.
+ Clears the list of [PhysicsBody] objects excluded from the collision check.
</description>
</method>
<method name="get_hit_length">
@@ -41,7 +41,7 @@
<argument index="0" name="RID" type="RID">
</argument>
<description>
- Removes the given [RID] from the list of objects excluded from the collision check.
+ Removes the given [RID] from the list of [PhysicsBody] objects excluded from the collision check.
</description>
</method>
</methods>
diff --git a/doc/classes/Sprite.xml b/doc/classes/Sprite.xml
index 89cdae1dff..6c21881535 100644
--- a/doc/classes/Sprite.xml
+++ b/doc/classes/Sprite.xml
@@ -68,10 +68,13 @@
The region of the atlas texture to display. [member region_enabled] must be [code]true[/code].
</member>
<member name="shininess" type="float" setter="set_shininess" getter="get_shininess" default="1.0">
+ Strength of the specular light effect of this [Sprite].
</member>
<member name="specular_color" type="Color" setter="set_specular_color" getter="get_specular_color" default="Color( 1, 1, 1, 1 )">
+ The color of the specular light effect.
</member>
<member name="specular_map" type="Texture2D" setter="set_specular_map" getter="get_specular_map">
+ The specular map is used for more control on the shininess effect.
</member>
<member name="texture" type="Texture2D" setter="set_texture" getter="get_texture">
[Texture2D] object to draw.
diff --git a/doc/classes/Sprite3D.xml b/doc/classes/Sprite3D.xml
index 4c12399761..63958eeb7b 100644
--- a/doc/classes/Sprite3D.xml
+++ b/doc/classes/Sprite3D.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
A node that displays a 2D texture in a 3D environment. The texture displayed can be a region from a larger atlas texture, or a frame from a sprite sheet animation.
+ [b]Note:[/b] There are [url=https://github.com/godotengine/godot/issues/20855]known performance issues[/url] when using [Sprite3D]. Consider using a [MeshInstance] with a [QuadMesh] as the mesh instead. You can still have billboarding by enabling billboard properties in the QuadMesh's [StandardMaterial3D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/SpriteBase3D.xml b/doc/classes/SpriteBase3D.xml
index aaea4178fb..563a17e8f6 100644
--- a/doc/classes/SpriteBase3D.xml
+++ b/doc/classes/SpriteBase3D.xml
@@ -21,12 +21,14 @@
<argument index="0" name="flag" type="int" enum="SpriteBase3D.DrawFlags">
</argument>
<description>
+ Returns the value of the specified flag.
</description>
</method>
<method name="get_item_rect" qualifiers="const">
<return type="Rect2">
</return>
<description>
+ Returns the rectangle representing this sprite.
</description>
</method>
<method name="set_draw_flag">
@@ -37,6 +39,7 @@
<argument index="1" name="enabled" type="bool">
</argument>
<description>
+ If [code]true[/code], the specified flag will be enabled.
</description>
</method>
</methods>
diff --git a/doc/classes/SpriteFrames.xml b/doc/classes/SpriteFrames.xml
index fe4b888a3c..9facdde681 100644
--- a/doc/classes/SpriteFrames.xml
+++ b/doc/classes/SpriteFrames.xml
@@ -12,7 +12,7 @@
<method name="add_animation">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
Adds a new animation to the library.
@@ -21,7 +21,7 @@
<method name="add_frame">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<argument index="1" name="frame" type="Texture2D">
</argument>
@@ -34,7 +34,7 @@
<method name="clear">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
Removes all frames from the given animation.
@@ -50,14 +50,14 @@
<method name="get_animation_loop" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
If [code]true[/code], the given animation will loop.
</description>
</method>
<method name="get_animation_names" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns an array containing the names associated to each animation. Values are placed in alphabetical order.
@@ -66,7 +66,7 @@
<method name="get_animation_speed" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
The animation's speed in frames per second.
@@ -75,7 +75,7 @@
<method name="get_frame" qualifiers="const">
<return type="Texture2D">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<argument index="1" name="idx" type="int">
</argument>
@@ -86,7 +86,7 @@
<method name="get_frame_count" qualifiers="const">
<return type="int">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
Returns the number of frames in the animation.
@@ -95,7 +95,7 @@
<method name="has_animation" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
If [code]true[/code], the named animation exists.
@@ -104,7 +104,7 @@
<method name="remove_animation">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<description>
Removes the given animation.
@@ -113,7 +113,7 @@
<method name="remove_frame">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<argument index="1" name="idx" type="int">
</argument>
@@ -124,9 +124,9 @@
<method name="rename_animation">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
- <argument index="1" name="newname" type="String">
+ <argument index="1" name="newname" type="StringName">
</argument>
<description>
Changes the animation's name to [code]newname[/code].
@@ -135,7 +135,7 @@
<method name="set_animation_loop">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<argument index="1" name="loop" type="bool">
</argument>
@@ -146,7 +146,7 @@
<method name="set_animation_speed">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<argument index="1" name="speed" type="float">
</argument>
@@ -157,7 +157,7 @@
<method name="set_frame">
<return type="void">
</return>
- <argument index="0" name="anim" type="String">
+ <argument index="0" name="anim" type="StringName">
</argument>
<argument index="1" name="idx" type="int">
</argument>
diff --git a/doc/classes/StreamPeer.xml b/doc/classes/StreamPeer.xml
index 31742199dd..a73d3c8212 100644
--- a/doc/classes/StreamPeer.xml
+++ b/doc/classes/StreamPeer.xml
@@ -171,7 +171,7 @@
<method name="put_data">
<return type="int" enum="Error">
</return>
- <argument index="0" name="data" type="PoolByteArray">
+ <argument index="0" name="data" type="PackedByteArray">
</argument>
<description>
Sends a chunk of data through the connection, blocking if necessary until the data is done sending. This function returns an [enum @GlobalScope.Error] code.
@@ -198,7 +198,7 @@
<method name="put_partial_data">
<return type="Array">
</return>
- <argument index="0" name="data" type="PoolByteArray">
+ <argument index="0" name="data" type="PackedByteArray">
</argument>
<description>
Sends a chunk of data through the connection. If all the data could not be sent at once, only part of it will. This function returns two values, an [enum @GlobalScope.Error] code and an integer, describing how much data was actually sent.
diff --git a/doc/classes/StreamPeerBuffer.xml b/doc/classes/StreamPeerBuffer.xml
index 23e3890fdb..41cef9fb55 100644
--- a/doc/classes/StreamPeerBuffer.xml
+++ b/doc/classes/StreamPeerBuffer.xml
@@ -49,7 +49,7 @@
</method>
</methods>
<members>
- <member name="data_array" type="PoolByteArray" setter="set_data_array" getter="get_data_array" default="PoolByteArray( )">
+ <member name="data_array" type="PackedByteArray" setter="set_data_array" getter="get_data_array" default="PackedByteArray( )">
</member>
</members>
<constants>
diff --git a/doc/classes/StreamPeerSSL.xml b/doc/classes/StreamPeerSSL.xml
index 738d623d02..69e8f67a5e 100644
--- a/doc/classes/StreamPeerSSL.xml
+++ b/doc/classes/StreamPeerSSL.xml
@@ -72,11 +72,13 @@
A status representing a [StreamPeerSSL] that is disconnected.
</constant>
<constant name="STATUS_HANDSHAKING" value="1" enum="Status">
+ A status representing a [StreamPeerSSL] during handshaking.
</constant>
<constant name="STATUS_CONNECTED" value="2" enum="Status">
A status representing a [StreamPeerSSL] that is connected to a host.
</constant>
<constant name="STATUS_ERROR" value="3" enum="Status">
+ A status representing a [StreamPeerSSL] in error state.
</constant>
<constant name="STATUS_ERROR_HOSTNAME_MISMATCH" value="4" enum="Status">
An error status that shows a mismatch in the SSL certificate domain presented by the host and the domain requested for validation.
diff --git a/doc/classes/StreamTexture.xml b/doc/classes/StreamTexture.xml
index a2d26d3d14..03afcb5b0d 100644
--- a/doc/classes/StreamTexture.xml
+++ b/doc/classes/StreamTexture.xml
@@ -15,6 +15,7 @@
<argument index="0" name="path" type="String">
</argument>
<description>
+ Loads the texture from the given path.
</description>
</method>
</methods>
diff --git a/doc/classes/String.xml b/doc/classes/String.xml
index cb80d04f24..a72b8f05d8 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>
@@ -130,6 +157,15 @@
<method name="String">
<return type="String">
</return>
+ <argument index="0" name="from" type="StringName">
+ </argument>
+ <description>
+ Constructs a new String from the given [StringName].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
<argument index="0" name="from" type="NodePath">
</argument>
<description>
@@ -148,6 +184,24 @@
<method name="String">
<return type="String">
</return>
+ <argument index="0" name="from" type="Callable">
+ </argument>
+ <description>
+ Constructs a new String from the given [Callable].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
+ <argument index="0" name="from" type="Signal">
+ </argument>
+ <description>
+ Constructs a new String from the given [Signal].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
<argument index="0" name="from" type="Dictionary">
</argument>
<description>
@@ -166,64 +220,82 @@
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolByteArray">
+ <argument index="0" name="from" type="PackedByteArray">
+ </argument>
+ <description>
+ Constructs a new String from the given [PackedByteArray].
+ </description>
+ </method>
+ <method name="String">
+ <return type="String">
+ </return>
+ <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 [PoolByteArray].
+ Constructs a new String from the given [PackedInt64Array].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolIntArray">
+ <argument index="0" name="from" type="PackedFloat32Array">
</argument>
<description>
- Constructs a new String from the given [PoolIntArray].
+ Constructs a new String from the given [PackedFloat32Array].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolRealArray">
+ <argument index="0" name="from" type="PackedFloat64Array">
</argument>
<description>
- Constructs a new String from the given [PoolRealArray].
+ Constructs a new String from the given [PackedFloat64Array].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolStringArray">
+ <argument index="0" name="from" type="PackedStringArray">
</argument>
<description>
- Constructs a new String from the given [PoolStringArray].
+ Constructs a new String from the given [PackedStringArray].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolVector2Array">
+ <argument index="0" name="from" type="PackedVector2Array">
</argument>
<description>
- Constructs a new String from the given [PoolVector2Array].
+ Constructs a new String from the given [PackedVector2Array].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolVector3Array">
+ <argument index="0" name="from" type="PackedVector3Array">
</argument>
<description>
- Constructs a new String from the given [PoolVector3Array].
+ Constructs a new String from the given [PackedVector3Array].
</description>
</method>
<method name="String">
<return type="String">
</return>
- <argument index="0" name="from" type="PoolColorArray">
+ <argument index="0" name="from" type="PackedColorArray">
</argument>
<description>
- Constructs a new String from the given [PoolColorArray].
+ Constructs a new String from the given [PackedColorArray].
</description>
</method>
<method name="begins_with">
@@ -236,7 +308,7 @@
</description>
</method>
<method name="bigrams">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns the bigrams (pairs of consecutive letters) of this string.
@@ -322,6 +394,8 @@
</description>
</method>
<method name="erase">
+ <return type="void">
+ </return>
<argument index="0" name="position" type="int">
</argument>
<argument index="1" name="chars" type="int">
@@ -366,7 +440,7 @@
</return>
<argument index="0" name="values" type="Variant">
</argument>
- <argument index="1" name="placeholder" type="String" default="{_}">
+ <argument index="1" name="placeholder" type="String" default="&quot;{_}&quot;">
</argument>
<description>
Formats the string by replacing all occurrences of [code]placeholder[/code] with [code]values[/code].
@@ -512,7 +586,7 @@
<method name="is_valid_hex_number">
<return type="bool">
</return>
- <argument index="0" name="with_prefix" type="bool" default="False">
+ <argument index="0" name="with_prefix" type="bool" default="false">
</argument>
<description>
Returns [code]true[/code] if this string contains a valid hexadecimal number. If [code]with_prefix[/code] is [code]true[/code], then a validity of the hexadecimal number is determined by [code]0x[/code] prefix, for instance: [code]0xDEADC0DE[/code].
@@ -597,7 +671,7 @@
</description>
</method>
<method name="md5_buffer">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Returns the MD5 hash of the string as an array of bytes.
@@ -732,11 +806,11 @@
</description>
</method>
<method name="rsplit">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="delimiter" type="String">
</argument>
- <argument index="1" name="allow_empty" type="bool" default="True">
+ <argument index="1" name="allow_empty" type="bool" default="true">
</argument>
<argument index="2" name="maxsplit" type="int" default="0">
</argument>
@@ -764,7 +838,7 @@
</description>
</method>
<method name="sha1_buffer">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Returns the SHA-1 hash of the string as an array of bytes.
@@ -778,7 +852,7 @@
</description>
</method>
<method name="sha256_buffer">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
Returns the SHA-256 hash of the string as an array of bytes.
@@ -801,11 +875,11 @@
</description>
</method>
<method name="split">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="delimiter" type="String">
</argument>
- <argument index="1" name="allow_empty" type="bool" default="True">
+ <argument index="1" name="allow_empty" type="bool" default="true">
</argument>
<argument index="2" name="maxsplit" type="int" default="0">
</argument>
@@ -823,11 +897,11 @@
</description>
</method>
<method name="split_floats">
- <return type="PoolRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="delimiter" type="String">
</argument>
- <argument index="1" name="allow_empty" type="bool" default="True">
+ <argument index="1" name="allow_empty" type="bool" default="true">
</argument>
<description>
Splits the string in floats by using a delimiter string and returns an array of the substrings.
@@ -837,9 +911,9 @@
<method name="strip_edges">
<return type="String">
</return>
- <argument index="0" name="left" type="bool" default="True">
+ <argument index="0" name="left" type="bool" default="true">
</argument>
- <argument index="1" name="right" type="bool" default="True">
+ <argument index="1" name="right" type="bool" default="true">
</argument>
<description>
Returns a copy of the string stripped of any non-printable character (including tabulations, spaces and line breaks) at the beginning and the end. The optional arguments are used to toggle stripping on the left and right edges respectively.
@@ -864,10 +938,10 @@
</description>
</method>
<method name="to_ascii">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
- Converts the String (which is a character array) to [PoolByteArray] (which is an array of bytes). The conversion is faster compared to [method to_utf8], as this method assumes that all the characters in the String are ASCII characters.
+ Converts the String (which is a character array) to [PackedByteArray] (which is an array of bytes). The conversion is faster compared to [method to_utf8], as this method assumes that all the characters in the String are ASCII characters.
</description>
</method>
<method name="to_float">
@@ -899,10 +973,10 @@
</description>
</method>
<method name="to_utf8">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<description>
- Converts the String (which is an array of characters) to [PoolByteArray] (which is an array of bytes). The conversion is a bit slower than [method to_ascii], but supports all UTF-8 characters. Therefore, you should prefer this function over [method to_ascii].
+ Converts the String (which is an array of characters) to [PackedByteArray] (which is an array of bytes). The conversion is a bit slower than [method to_ascii], but supports all UTF-8 characters. Therefore, you should prefer this function over [method to_ascii].
</description>
</method>
<method name="trim_prefix">
diff --git a/doc/classes/StringName.xml b/doc/classes/StringName.xml
new file mode 100644
index 0000000000..5d8ac6fdcc
--- /dev/null
+++ b/doc/classes/StringName.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="StringName" version="4.0">
+ <brief_description>
+ An optimized string type for unique names.
+ </brief_description>
+ <description>
+ [StringName]s are immutable strings designed for general-purpose represention of unique names. [StringName] ensures that only one instance of a given name exists (so two [StringName]s with the same value are the same object). Comparing them is much faster than with regular [String]s, because only the pointers are compared, not the whole strings.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="StringName">
+ <return type="StringName">
+ </return>
+ <argument index="0" name="from" type="String">
+ </argument>
+ <description>
+ Creates a new [StringName] from the given [String].
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/SurfaceTool.xml b/doc/classes/SurfaceTool.xml
index 23363fcad5..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="PoolIntArray">
+ <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.
@@ -76,15 +76,15 @@
<method name="add_triangle_fan">
<return type="void">
</return>
- <argument index="0" name="vertices" type="PoolVector3Array">
+ <argument index="0" name="vertices" type="PackedVector3Array">
</argument>
- <argument index="1" name="uvs" type="PoolVector2Array" default="PoolVector2Array( )">
+ <argument index="1" name="uvs" type="PackedVector2Array" default="PackedVector2Array( )">
</argument>
- <argument index="2" name="colors" type="PoolColorArray" default="PoolColorArray( )">
+ <argument index="2" name="colors" type="PackedColorArray" default="PackedColorArray( )">
</argument>
- <argument index="3" name="uv2s" type="PoolVector2Array" default="PoolVector2Array( )">
+ <argument index="3" name="uv2s" type="PackedVector2Array" default="PackedVector2Array( )">
</argument>
- <argument index="4" name="normals" type="PoolVector3Array" default="PoolVector3Array( )">
+ <argument index="4" name="normals" type="PackedVector3Array" default="PackedVector3Array( )">
</argument>
<argument index="5" name="tangents" type="Array" default="[ ]">
</argument>
@@ -123,7 +123,7 @@
<method name="add_weights">
<return type="void">
</return>
- <argument index="0" name="weights" type="PoolRealArray">
+ <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/TabContainer.xml b/doc/classes/TabContainer.xml
index 73b5afe6a7..f7e94ad236 100644
--- a/doc/classes/TabContainer.xml
+++ b/doc/classes/TabContainer.xml
@@ -187,42 +187,52 @@
</constants>
<theme_items>
<theme_item name="decrement" type="Texture2D">
+ Icon for the left arrow button that appears when there are too many tabs to fit in the container width. When the button is disabled (i.e. the first tab is visible), it appears semi-transparent.
</theme_item>
<theme_item name="decrement_highlight" type="Texture2D">
+ Icon for the left arrow button that appears when there are too many tabs to fit in the container width. Used when the button is being hovered with the cursor.
</theme_item>
<theme_item name="font" type="Font">
+ The font used to draw tab names.
</theme_item>
<theme_item name="font_color_bg" type="Color" default="Color( 0.69, 0.69, 0.69, 1 )">
+ Font color of inactive tabs.
</theme_item>
<theme_item name="font_color_disabled" type="Color" default="Color( 0.9, 0.9, 0.9, 0.2 )">
+ Font color of disabled tabs.
</theme_item>
<theme_item name="font_color_fg" type="Color" default="Color( 0.94, 0.94, 0.94, 1 )">
+ Font color of the currently selected tab.
</theme_item>
<theme_item name="hseparation" type="int" default="4">
+ Horizontal separation between tabs.
</theme_item>
<theme_item name="increment" type="Texture2D">
+ Icon for the right arrow button that appears when there are too many tabs to fit in the container width. When the button is disabled (i.e. the last tab is visible) it appears semi-transparent.
</theme_item>
<theme_item name="increment_highlight" type="Texture2D">
- </theme_item>
- <theme_item name="label_valign_bg" type="int" default="2">
- </theme_item>
- <theme_item name="label_valign_fg" type="int" default="0">
+ Icon for the right arrow button that appears when there are too many tabs to fit in the container width. Used when the button is being hovered with the cursor.
</theme_item>
<theme_item name="menu" type="Texture2D">
+ The icon for the menu button (see [method set_popup]).
</theme_item>
<theme_item name="menu_highlight" type="Texture2D">
+ The icon for the menu button (see [method set_popup]) when it's being hovered with the cursor.
</theme_item>
<theme_item name="panel" type="StyleBox">
+ The style for the background fill.
</theme_item>
<theme_item name="side_margin" type="int" default="8">
+ The space at the left and right edges of the tab bar.
</theme_item>
<theme_item name="tab_bg" type="StyleBox">
+ The style of inactive tabs.
</theme_item>
<theme_item name="tab_disabled" type="StyleBox">
+ The style of disabled tabs.
</theme_item>
<theme_item name="tab_fg" type="StyleBox">
- </theme_item>
- <theme_item name="top_margin" type="int" default="24">
+ The style of the currently selected tab.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/Tabs.xml b/doc/classes/Tabs.xml
index 266a733f8f..3fc1db9dc6 100644
--- a/doc/classes/Tabs.xml
+++ b/doc/classes/Tabs.xml
@@ -262,42 +262,51 @@
</constants>
<theme_items>
<theme_item name="button" type="StyleBox">
+ Background of the close button when it's being hovered with the cursor.
</theme_item>
<theme_item name="button_pressed" type="StyleBox">
+ Background of the close button when it's being pressed.
</theme_item>
<theme_item name="close" type="Texture2D">
+ The icon for the close button (see [member tab_close_display_policy]).
</theme_item>
<theme_item name="decrement" type="Texture2D">
+ Icon for the left arrow button that appears when there are too many tabs to fit in the container width. When the button is disabled (i.e. the first tab is visible), it appears semi-transparent.
</theme_item>
<theme_item name="decrement_highlight" type="Texture2D">
+ Icon for the left arrow button that appears when there are too many tabs to fit in the container width. Used when the button is being hovered with the cursor.
</theme_item>
<theme_item name="font" type="Font">
+ The font used to draw tab names.
</theme_item>
<theme_item name="font_color_bg" type="Color" default="Color( 0.69, 0.69, 0.69, 1 )">
+ Font color of inactive tabs.
</theme_item>
<theme_item name="font_color_disabled" type="Color" default="Color( 0.9, 0.9, 0.9, 0.2 )">
+ Font color of disabled tabs.
</theme_item>
<theme_item name="font_color_fg" type="Color" default="Color( 0.94, 0.94, 0.94, 1 )">
+ Font color of the currently selected tab.
</theme_item>
<theme_item name="hseparation" type="int" default="4">
+ The horizontal separation between the tabs.
</theme_item>
<theme_item name="increment" type="Texture2D">
+ Icon for the right arrow button that appears when there are too many tabs to fit in the container width. When the button is disabled (i.e. the last tab is visible) it appears semi-transparent.
</theme_item>
<theme_item name="increment_highlight" type="Texture2D">
- </theme_item>
- <theme_item name="label_valign_bg" type="int" default="2">
- </theme_item>
- <theme_item name="label_valign_fg" type="int" default="0">
+ Icon for the right arrow button that appears when there are too many tabs to fit in the container width. Used when the button is being hovered with the cursor.
</theme_item>
<theme_item name="panel" type="StyleBox">
</theme_item>
<theme_item name="tab_bg" type="StyleBox">
+ The style of an inactive tab.
</theme_item>
<theme_item name="tab_disabled" type="StyleBox">
+ The style of a disabled tab
</theme_item>
<theme_item name="tab_fg" type="StyleBox">
- </theme_item>
- <theme_item name="top_margin" type="int" default="24">
+ The style of the currently selected tab.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/TextEdit.xml b/doc/classes/TextEdit.xml
index c4a05db3a7..b515b27b31 100644
--- a/doc/classes/TextEdit.xml
+++ b/doc/classes/TextEdit.xml
@@ -299,7 +299,7 @@
</description>
</method>
<method name="search" qualifiers="const">
- <return type="PoolIntArray">
+ <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]PoolIntArray[/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:
@@ -502,6 +502,12 @@
<description>
</description>
</signal>
+ <signal name="symbol_validate">
+ <argument index="0" name="symbol" type="String">
+ </argument>
+ <description>
+ </description>
+ </signal>
<signal name="text_changed">
<description>
Emitted when the text changes.
diff --git a/doc/classes/Texture2D.xml b/doc/classes/Texture2D.xml
index 2ccb469eb1..63cdb0d90a 100644
--- a/doc/classes/Texture2D.xml
+++ b/doc/classes/Texture2D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Texture2D" inherits="Resource" version="4.0">
+<class name="Texture2D" inherits="Texture" version="4.0">
<brief_description>
Texture for 2D and 3D.
</brief_description>
diff --git a/doc/classes/TextureLayered.xml b/doc/classes/TextureLayered.xml
index f9ecdb02f0..66e5b69ab4 100644
--- a/doc/classes/TextureLayered.xml
+++ b/doc/classes/TextureLayered.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="TextureLayered" inherits="Resource" version="4.0">
+<class name="TextureLayered" inherits="Texture" version="4.0">
<brief_description>
Base class for 3D texture types.
</brief_description>
diff --git a/doc/classes/Theme.xml b/doc/classes/Theme.xml
index d11cfc7aa2..70a4eda867 100644
--- a/doc/classes/Theme.xml
+++ b/doc/classes/Theme.xml
@@ -21,9 +21,9 @@
<method name="clear_color">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Clears the [Color] at [code]name[/code] if the theme has [code]type[/code].
@@ -32,9 +32,9 @@
<method name="clear_constant">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Clears the constant at [code]name[/code] if the theme has [code]type[/code].
@@ -43,9 +43,9 @@
<method name="clear_font">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Clears the [Font] at [code]name[/code] if the theme has [code]type[/code].
@@ -54,9 +54,9 @@
<method name="clear_icon">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Clears the icon at [code]name[/code] if the theme has [code]type[/code].
@@ -65,9 +65,9 @@
<method name="clear_stylebox">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Clears [StyleBox] at [code]name[/code] if the theme has [code]type[/code].
@@ -92,125 +92,125 @@
<method name="get_color" qualifiers="const">
<return type="Color">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns the [Color] at [code]name[/code] if the theme has [code]type[/code].
</description>
</method>
<method name="get_color_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
<description>
- Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s name, for use in [method get_color], if the theme has [code]type[/code].
+ Returns all the [Color]s as a [PackedStringArray] filled with each [Color]'s name, for use in [method get_color], if the theme has [code]type[/code].
</description>
</method>
<method name="get_constant" qualifiers="const">
<return type="int">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns the constant at [code]name[/code] if the theme has [code]type[/code].
</description>
</method>
<method name="get_constant_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
<description>
- Returns all the constants as a [PoolStringArray] filled with each constant's name, for use in [method get_constant], if the theme has [code]type[/code].
+ Returns all the constants as a [PackedStringArray] filled with each constant's name, for use in [method get_constant], if the theme has [code]type[/code].
</description>
</method>
<method name="get_font" qualifiers="const">
<return type="Font">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns the [Font] at [code]name[/code] if the theme has [code]type[/code].
</description>
</method>
<method name="get_font_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
<description>
- Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s name, for use in [method get_font], if the theme has [code]type[/code].
+ Returns all the [Font]s as a [PackedStringArray] filled with each [Font]'s name, for use in [method get_font], if the theme has [code]type[/code].
</description>
</method>
<method name="get_icon" qualifiers="const">
<return type="Texture2D">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns the icon [Texture2D] at [code]name[/code] if the theme has [code]type[/code].
</description>
</method>
<method name="get_icon_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
<description>
- Returns all the icons as a [PoolStringArray] filled with each [Texture2D]'s name, for use in [method get_icon], if the theme has [code]type[/code].
+ Returns all the icons as a [PackedStringArray] filled with each [Texture2D]'s name, for use in [method get_icon], if the theme has [code]type[/code].
</description>
</method>
<method name="get_stylebox" qualifiers="const">
<return type="StyleBox">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns the icon [StyleBox] at [code]name[/code] if the theme has [code]type[/code].
</description>
</method>
<method name="get_stylebox_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
<description>
- Returns all the [StyleBox]s as a [PoolStringArray] filled with each [StyleBox]'s name, for use in [method get_stylebox], if the theme has [code]type[/code].
+ Returns all the [StyleBox]s as a [PackedStringArray] filled with each [StyleBox]'s name, for use in [method get_stylebox], if the theme has [code]type[/code].
</description>
</method>
<method name="get_stylebox_types" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
- Returns all the [StyleBox] types as a [PoolStringArray] filled with each [StyleBox]'s type, for use in [method get_stylebox] and/or [method get_stylebox_list], if the theme has [code]type[/code].
+ Returns all the [StyleBox] types as a [PackedStringArray] filled with each [StyleBox]'s type, for use in [method get_stylebox] and/or [method get_stylebox_list], if the theme has [code]type[/code].
</description>
</method>
<method name="get_type_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<argument index="0" name="type" type="String">
</argument>
<description>
- Returns all the types in [code]type[/code] as a [PoolStringArray] for use in any of the [code]get_*[/code] functions, if the theme has [code]type[/code].
+ Returns all the types in [code]type[/code] as a [PackedStringArray] for use in any of the [code]get_*[/code] functions, if the theme has [code]type[/code].
</description>
</method>
<method name="has_color" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns [code]true[/code] if [Color] with [code]name[/code] is in [code]type[/code].
@@ -220,9 +220,9 @@
<method name="has_constant" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns [code]true[/code] if constant with [code]name[/code] is in [code]type[/code].
@@ -232,9 +232,9 @@
<method name="has_font" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns [code]true[/code] if [Font] with [code]name[/code] is in [code]type[/code].
@@ -244,9 +244,9 @@
<method name="has_icon" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns [code]true[/code] if icon [Texture2D] with [code]name[/code] is in [code]type[/code].
@@ -256,9 +256,9 @@
<method name="has_stylebox" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<description>
Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in [code]type[/code].
@@ -268,9 +268,9 @@
<method name="set_color">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<argument index="2" name="color" type="Color">
</argument>
@@ -282,9 +282,9 @@
<method name="set_constant">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<argument index="2" name="constant" type="int">
</argument>
@@ -296,9 +296,9 @@
<method name="set_font">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<argument index="2" name="font" type="Font">
</argument>
@@ -310,9 +310,9 @@
<method name="set_icon">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<argument index="2" name="texture" type="Texture2D">
</argument>
@@ -324,9 +324,9 @@
<method name="set_stylebox">
<return type="void">
</return>
- <argument index="0" name="name" type="String">
+ <argument index="0" name="name" type="StringName">
</argument>
- <argument index="1" name="type" type="String">
+ <argument index="1" name="type" type="StringName">
</argument>
<argument index="2" name="texture" type="StyleBox">
</argument>
diff --git a/doc/classes/Thread.xml b/doc/classes/Thread.xml
index f616a9d9b1..3bb5797df5 100644
--- a/doc/classes/Thread.xml
+++ b/doc/classes/Thread.xml
@@ -29,7 +29,7 @@
</return>
<argument index="0" name="instance" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<argument index="2" name="userdata" type="Variant" default="null">
</argument>
diff --git a/doc/classes/Transform.xml b/doc/classes/Transform.xml
index e9d7208f66..72f9c5493a 100644
--- a/doc/classes/Transform.xml
+++ b/doc/classes/Transform.xml
@@ -149,21 +149,21 @@
</description>
</method>
<method name="xform">
- <return type="Variant">
+ <return type="void">
</return>
<argument index="0" name="v" type="Variant">
</argument>
<description>
- Transforms the given [Vector3], [Plane], [AABB], or [PoolVector3Array] by this transform.
+ Transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by this transform.
</description>
</method>
<method name="xform_inv">
- <return type="Variant">
+ <return type="void">
</return>
<argument index="0" name="v" type="Variant">
</argument>
<description>
- Inverse-transforms the given [Vector3], [Plane], [AABB], or [PoolVector3Array] by this transform.
+ Inverse-transforms the given [Vector3], [Plane], [AABB], or [PackedVector3Array] by this transform.
</description>
</method>
</methods>
diff --git a/doc/classes/Transform2D.xml b/doc/classes/Transform2D.xml
index 9719326f59..164efd4e5e 100644
--- a/doc/classes/Transform2D.xml
+++ b/doc/classes/Transform2D.xml
@@ -151,21 +151,21 @@
</description>
</method>
<method name="xform">
- <return type="Variant">
+ <return type="void">
</return>
<argument index="0" name="v" type="Variant">
</argument>
<description>
- Transforms the given [Vector2], [Rect2], or [PoolVector2Array] by this transform.
+ Transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this transform.
</description>
</method>
<method name="xform_inv">
- <return type="Variant">
+ <return type="void">
</return>
<argument index="0" name="v" type="Variant">
</argument>
<description>
- Inverse-transforms the given [Vector2], [Rect2], or [PoolVector2Array] by this transform.
+ Inverse-transforms the given [Vector2], [Rect2], or [PackedVector2Array] by this transform.
</description>
</method>
</methods>
diff --git a/doc/classes/Translation.xml b/doc/classes/Translation.xml
index f80e59f6f9..11245195bf 100644
--- a/doc/classes/Translation.xml
+++ b/doc/classes/Translation.xml
@@ -14,9 +14,9 @@
<method name="add_message">
<return type="void">
</return>
- <argument index="0" name="src_message" type="String">
+ <argument index="0" name="src_message" type="StringName">
</argument>
- <argument index="1" name="xlated_message" type="String">
+ <argument index="1" name="xlated_message" type="StringName">
</argument>
<description>
Adds a message if nonexistent, followed by its translation.
@@ -25,16 +25,16 @@
<method name="erase_message">
<return type="void">
</return>
- <argument index="0" name="src_message" type="String">
+ <argument index="0" name="src_message" type="StringName">
</argument>
<description>
Erases a message.
</description>
</method>
<method name="get_message" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
- <argument index="0" name="src_message" type="String">
+ <argument index="0" name="src_message" type="StringName">
</argument>
<description>
Returns a message's translation.
@@ -48,7 +48,7 @@
</description>
</method>
<method name="get_message_list" qualifiers="const">
- <return type="PoolStringArray">
+ <return type="PackedStringArray">
</return>
<description>
Returns all the messages (keys).
diff --git a/doc/classes/TranslationServer.xml b/doc/classes/TranslationServer.xml
index 8a2a8b9768..aaf7a4d160 100644
--- a/doc/classes/TranslationServer.xml
+++ b/doc/classes/TranslationServer.xml
@@ -69,9 +69,9 @@
</description>
</method>
<method name="translate" qualifiers="const">
- <return type="String">
+ <return type="StringName">
</return>
- <argument index="0" name="message" type="String">
+ <argument index="0" name="message" type="StringName">
</argument>
<description>
Returns the current locale's translation for the given message (key).
diff --git a/doc/classes/Tree.xml b/doc/classes/Tree.xml
index 5fa24100ae..b01ba3850f 100644
--- a/doc/classes/Tree.xml
+++ b/doc/classes/Tree.xml
@@ -313,6 +313,7 @@
</signal>
<signal name="item_custom_button_pressed">
<description>
+ Emitted when a custom button is pressed (i.e. in a [constant TreeItem.CELL_MODE_CUSTOM] mode cell).
</description>
</signal>
<signal name="item_double_clicked">
diff --git a/doc/classes/TreeItem.xml b/doc/classes/TreeItem.xml
index e4d2af0c6e..f498919f9e 100644
--- a/doc/classes/TreeItem.xml
+++ b/doc/classes/TreeItem.xml
@@ -30,7 +30,7 @@
<method name="call_recursive" qualifiers="vararg">
<return type="Variant">
</return>
- <argument index="0" name="method" type="String">
+ <argument index="0" name="method" type="StringName">
</argument>
<description>
Calls the [code]method[/code] on the actual TreeItem and its children recursively. Pass parameters as a comma separated list.
@@ -452,7 +452,7 @@
</argument>
<argument index="1" name="object" type="Object">
</argument>
- <argument index="2" name="callback" type="String">
+ <argument index="2" name="callback" type="StringName">
</argument>
<description>
Sets the given column's custom draw callback to [code]callback[/code] method on [code]object[/code].
diff --git a/doc/classes/Tween.xml b/doc/classes/Tween.xml
index e60dc07e99..371b027534 100644
--- a/doc/classes/Tween.xml
+++ b/doc/classes/Tween.xml
@@ -21,17 +21,17 @@
</tutorials>
<methods>
<method name="follow_method">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<argument index="2" name="initial_val" type="Variant">
</argument>
<argument index="3" name="target" type="Object">
</argument>
- <argument index="4" name="target_method" type="String">
+ <argument index="4" name="target_method" type="StringName">
</argument>
<argument index="5" name="duration" type="float">
</argument>
@@ -47,7 +47,7 @@
</description>
</method>
<method name="follow_property">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
@@ -80,7 +80,7 @@
</description>
</method>
<method name="interpolate_callback">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
@@ -103,7 +103,7 @@
</description>
</method>
<method name="interpolate_deferred_callback">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
@@ -126,11 +126,11 @@
</description>
</method>
<method name="interpolate_method">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<argument index="2" name="initial_val" type="Variant">
</argument>
@@ -150,7 +150,7 @@
</description>
</method>
<method name="interpolate_property">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
@@ -182,61 +182,61 @@
</description>
</method>
<method name="remove">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="key" type="String" default="&quot;&quot;">
+ <argument index="1" name="key" type="StringName" default="&quot;&quot;">
</argument>
<description>
Stops animation and removes a tween, given its object and property/method pair. By default, all tweens are removed, unless [code]key[/code] is specified.
</description>
</method>
<method name="remove_all">
- <return type="bool">
+ <return type="void">
</return>
<description>
Stops animation and removes all tweens.
</description>
</method>
<method name="reset">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="key" type="String" default="&quot;&quot;">
+ <argument index="1" name="key" type="StringName" default="&quot;&quot;">
</argument>
<description>
Resets a tween to its initial value (the one given, not the one before the tween), given its object and property/method pair. By default, all tweens are removed, unless [code]key[/code] is specified.
</description>
</method>
<method name="reset_all">
- <return type="bool">
+ <return type="void">
</return>
<description>
Resets all tweens to their initial values (the ones given, not those before the tween).
</description>
</method>
<method name="resume">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="key" type="String" default="&quot;&quot;">
+ <argument index="1" name="key" type="StringName" default="&quot;&quot;">
</argument>
<description>
Continues animating a stopped tween, given its object and property/method pair. By default, all tweens are resumed, unless [code]key[/code] is specified.
</description>
</method>
<method name="resume_all">
- <return type="bool">
+ <return type="void">
</return>
<description>
Continues animating all stopped tweens.
</description>
</method>
<method name="seek">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="time" type="float">
</argument>
@@ -254,40 +254,40 @@
</description>
</method>
<method name="start">
- <return type="bool">
+ <return type="void">
</return>
<description>
Starts the tween. You can define animations both before and after this.
</description>
</method>
<method name="stop">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="key" type="String" default="&quot;&quot;">
+ <argument index="1" name="key" type="StringName" default="&quot;&quot;">
</argument>
<description>
Stops a tween, given its object and property/method pair. By default, all tweens are stopped, unless [code]key[/code] is specified.
</description>
</method>
<method name="stop_all">
- <return type="bool">
+ <return type="void">
</return>
<description>
Stops animating all tweens.
</description>
</method>
<method name="targeting_method">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<argument index="2" name="initial" type="Object">
</argument>
- <argument index="3" name="initial_method" type="String">
+ <argument index="3" name="initial_method" type="StringName">
</argument>
<argument index="4" name="final_val" type="Variant">
</argument>
@@ -305,7 +305,7 @@
</description>
</method>
<method name="targeting_property">
- <return type="bool">
+ <return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
diff --git a/doc/classes/UDPServer.xml b/doc/classes/UDPServer.xml
new file mode 100644
index 0000000000..f3c865c392
--- /dev/null
+++ b/doc/classes/UDPServer.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="UDPServer" inherits="Reference" version="4.0">
+ <brief_description>
+ Helper class to implement a UDP server.
+ </brief_description>
+ <description>
+ A simple server that opens a UDP socket and returns connected [PacketPeerUDP] upon receiving new packets. See also [method PacketPeerUDP.connect_to_host].
+ Below a small example of how it can be used:
+ [codeblock]
+ # server.gd
+ extends Node
+
+ var server := UDPServer.new()
+ var peers = []
+
+ func _ready():
+ server.listen(4242)
+
+ func _process(delta):
+ if server.is_connection_available():
+ var peer : PacketPeerUDP = server.take_connection()
+ var pkt = peer.get_packet()
+ print("Accepted peer: %s:%s" % [peer.get_packet_ip(), peer.get_packet_port()])
+ print("Received data: %s" % [pkt.get_string_from_utf8()])
+ # Reply so it knows we received the message.
+ peer.put_packet(pkt)
+ # Keep a reference so we can keep contacting the remote peer.
+ peers.append(peer)
+
+ for i in range(0, peers.size()):
+ pass # Do something with the connected peers.
+
+ [/codeblock]
+ [codeblock]
+ # client.gd
+ extends Node
+
+ var udp := PacketPeerUDP.new()
+ var connected = false
+
+ func _ready():
+ udp.connect_to_host("127.0.0.1", 4242)
+
+ func _process(delta):
+ if !connected:
+ # Try to contact server
+ udp.put_packet("The answer is... 42!".to_utf8())
+ if udp.get_available_packet_count() &gt; 0:
+ print("Connected: %s" % udp.get_packet().get_string_from_utf8())
+ connected = true
+ [/codeblock]
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="is_connection_available" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ Returns [code]true[/code] if a packet with a new address/port combination is received on the socket.
+ </description>
+ </method>
+ <method name="is_listening" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ Returns [code]true[/code] if the socket is open and listening on a port.
+ </description>
+ </method>
+ <method name="listen">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="port" type="int">
+ </argument>
+ <argument index="1" name="bind_address" type="String" default="&quot;*&quot;">
+ </argument>
+ <description>
+ Starts the server by opening a UDP socket listening on the given port. You can optionally specify a [code]bind_address[/code] to only listen for packets sent to that address. See also [method PacketPeerUDP.listen].
+ </description>
+ </method>
+ <method name="stop">
+ <return type="void">
+ </return>
+ <description>
+ Stops the server, closing the UDP socket if open. Will not disconnect any connected [PacketPeerUDP].
+ </description>
+ </method>
+ <method name="take_connection">
+ <return type="PacketPeerUDP">
+ </return>
+ <description>
+ Returns a [PacketPeerUDP] connected to the address/port combination of the first packet in queue. Will return [code]null[/code] if no packet is in queue. See also [method PacketPeerUDP.connect_to_host].
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/UndoRedo.xml b/doc/classes/UndoRedo.xml
index 06fcb1ca03..766ebf7e32 100644
--- a/doc/classes/UndoRedo.xml
+++ b/doc/classes/UndoRedo.xml
@@ -36,7 +36,7 @@
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<description>
Register a method that will be called when the action is committed.
@@ -47,7 +47,7 @@
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -69,7 +69,7 @@
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<description>
Register a method that will be called when the action is undone.
@@ -80,7 +80,7 @@
</return>
<argument index="0" name="object" type="Object">
</argument>
- <argument index="1" name="property" type="String">
+ <argument index="1" name="property" type="StringName">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
diff --git a/doc/classes/VSeparator.xml b/doc/classes/VSeparator.xml
index 19e995b9bc..52f31b1da7 100644
--- a/doc/classes/VSeparator.xml
+++ b/doc/classes/VSeparator.xml
@@ -14,8 +14,10 @@
</constants>
<theme_items>
<theme_item name="separation" type="int" default="4">
+ The width of the area covered by the separator. Effectively works like a minimum width.
</theme_item>
<theme_item name="separator" type="StyleBox">
+ The style for the separator line. Works best with [StyleBoxLine] (remember to enable [member StyleBoxLine.vertical]).
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/VSlider.xml b/doc/classes/VSlider.xml
index cbc4ac1a13..3faafdfe80 100644
--- a/doc/classes/VSlider.xml
+++ b/doc/classes/VSlider.xml
@@ -18,16 +18,22 @@
</constants>
<theme_items>
<theme_item name="grabber" type="Texture2D">
+ The texture for the grabber (the draggable element).
</theme_item>
<theme_item name="grabber_area" type="StyleBox">
+ The background of the area below the grabber.
</theme_item>
<theme_item name="grabber_disabled" type="Texture2D">
+ The texture for the grabber when it's disabled.
</theme_item>
<theme_item name="grabber_highlight" type="Texture2D">
+ The texture for the grabber when it's focused.
</theme_item>
<theme_item name="slider" type="StyleBox">
+ The background for the whole slider. Determines the width of the [code]grabber_area[/code].
</theme_item>
<theme_item name="tick" type="Texture2D">
+ The texture for the ticks, visible when [member Slider.tick_count] is greater than 0.
</theme_item>
</theme_items>
</class>
diff --git a/doc/classes/VSplitContainer.xml b/doc/classes/VSplitContainer.xml
index 0e659408d7..18b515e7ce 100644
--- a/doc/classes/VSplitContainer.xml
+++ b/doc/classes/VSplitContainer.xml
@@ -14,12 +14,15 @@
</constants>
<theme_items>
<theme_item name="autohide" type="int" default="1">
+ Boolean value. If 1 ([code]true[/code]), the grabber will hide automatically when it isn't under the cursor. If 0 ([code]false[/code]), it's always visible.
</theme_item>
<theme_item name="bg" type="StyleBox">
</theme_item>
<theme_item name="grabber" type="Texture2D">
+ The icon used for the grabber drawn in the middle area.
</theme_item>
<theme_item name="separation" type="int" default="12">
+ The space between sides of the container.
</theme_item>
</theme_items>
</class>
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/VideoPlayer.xml b/doc/classes/VideoPlayer.xml
index d2b9af4580..91c8ad0a77 100644
--- a/doc/classes/VideoPlayer.xml
+++ b/doc/classes/VideoPlayer.xml
@@ -58,7 +58,7 @@
<member name="buffering_msec" type="int" setter="set_buffering_msec" getter="get_buffering_msec" default="500">
Amount of time in milliseconds to store in buffer while playing.
</member>
- <member name="bus" type="String" setter="set_bus" getter="get_bus" default="&quot;Master&quot;">
+ <member name="bus" type="StringName" setter="set_bus" getter="get_bus" default="@&quot;Master&quot;">
Audio bus to use for sound playback.
</member>
<member name="expand" type="bool" setter="set_expand" getter="has_expand" default="true">
diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml
index 076977c364..0632be28e1 100644
--- a/doc/classes/Viewport.xml
+++ b/doc/classes/Viewport.xml
@@ -425,7 +425,7 @@
</constant>
<constant name="DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS" value="2" enum="DefaultCanvasItemTextureFilter">
</constant>
- <constant name="DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS" value="3" enum="DefaultCanvasItemTextureFilter">
+ <constant name="DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS" value="3" enum="DefaultCanvasItemTextureFilter">
</constant>
<constant name="DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_MAX" value="4" enum="DefaultCanvasItemTextureFilter">
</constant>
diff --git a/doc/classes/VisualServer.xml b/doc/classes/VisualServer.xml
index 1634db2484..ca2058ddbb 100644
--- a/doc/classes/VisualServer.xml
+++ b/doc/classes/VisualServer.xml
@@ -540,7 +540,7 @@
</return>
<argument index="0" name="occluder_polygon" type="RID">
</argument>
- <argument index="1" name="shape" type="PoolVector2Array">
+ <argument index="1" name="shape" type="PackedVector2Array">
</argument>
<argument index="2" name="closed" type="bool">
</argument>
@@ -553,7 +553,7 @@
</return>
<argument index="0" name="occluder_polygon" type="RID">
</argument>
- <argument index="1" name="shape" type="PoolVector2Array">
+ <argument index="1" name="shape" type="PackedVector2Array">
</argument>
<description>
Sets the shape of the occluder polygon as lines.
@@ -801,6 +801,30 @@
Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent to [member Environment.sky_rotation], where the rotation vector is used to construct the [Basis].
</description>
</method>
+ <method name="environment_set_ssao">
+ <return type="void">
+ </return>
+ <argument index="0" name="env" type="RID">
+ </argument>
+ <argument index="1" name="enable" type="bool">
+ </argument>
+ <argument index="2" name="radius" type="float">
+ </argument>
+ <argument index="3" name="intensity" type="float">
+ </argument>
+ <argument index="4" name="bias" type="float">
+ </argument>
+ <argument index="5" name="light_affect" type="float">
+ </argument>
+ <argument index="6" name="ao_channel_affect" type="float">
+ </argument>
+ <argument index="7" name="blur" type="int" enum="VisualServer.EnvironmentSSAOBlur">
+ </argument>
+ <argument index="8" name="bilateral_sharpness" type="float">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="environment_set_ssr">
<return type="void">
</return>
@@ -1540,7 +1564,7 @@
</description>
</method>
<method name="lightmap_capture_get_octree" qualifiers="const">
- <return type="PoolByteArray">
+ <return type="PackedByteArray">
</return>
<argument index="0" name="capture" type="RID">
</argument>
@@ -1593,7 +1617,7 @@
</return>
<argument index="0" name="capture" type="RID">
</argument>
- <argument index="1" name="octree" type="PoolByteArray">
+ <argument index="1" name="octree" type="PackedByteArray">
</argument>
<description>
Sets the octree to be used by this lightmap capture.
@@ -1647,7 +1671,7 @@
</return>
<argument index="0" name="material" type="RID">
</argument>
- <argument index="1" name="parameter" type="String">
+ <argument index="1" name="parameter" type="StringName">
</argument>
<description>
Returns the value of a certain material's parameter.
@@ -1669,7 +1693,7 @@
</return>
<argument index="0" name="material" type="RID">
</argument>
- <argument index="1" name="parameter" type="String">
+ <argument index="1" name="parameter" type="StringName">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -1878,7 +1902,7 @@
</argument>
<argument index="2" name="offset" type="int">
</argument>
- <argument index="3" name="data" type="PoolByteArray">
+ <argument index="3" name="data" type="PackedByteArray">
</argument>
<description>
Updates a specific region of a vertex buffer for the specified surface. Warning: this function alters the vertex buffer directly with no safety mechanisms, you can easily corrupt your mesh.
@@ -1919,7 +1943,7 @@
</description>
</method>
<method name="multimesh_get_buffer" qualifiers="const">
- <return type="PoolRealArray">
+ <return type="PackedFloat32Array">
</return>
<argument index="0" name="multimesh" type="RID">
</argument>
@@ -2054,7 +2078,7 @@
</return>
<argument index="0" name="multimesh" type="RID">
</argument>
- <argument index="1" name="buffer" type="PoolRealArray">
+ <argument index="1" name="buffer" type="PackedFloat32Array">
</argument>
<description>
</description>
@@ -2479,7 +2503,7 @@
</return>
<argument index="0" name="where" type="Object">
</argument>
- <argument index="1" name="method" type="String">
+ <argument index="1" name="method" type="StringName">
</argument>
<argument index="2" name="userdata" type="Variant">
</argument>
@@ -2585,7 +2609,7 @@
</return>
<argument index="0" name="shader" type="RID">
</argument>
- <argument index="1" name="name" type="String">
+ <argument index="1" name="name" type="StringName">
</argument>
<description>
Returns a default texture from a shader searched by name.
@@ -2596,7 +2620,7 @@
</return>
<argument index="0" name="material" type="RID">
</argument>
- <argument index="1" name="parameter" type="String">
+ <argument index="1" name="parameter" type="StringName">
</argument>
<description>
</description>
@@ -2626,7 +2650,7 @@
</return>
<argument index="0" name="shader" type="RID">
</argument>
- <argument index="1" name="name" type="String">
+ <argument index="1" name="name" type="StringName">
</argument>
<argument index="2" name="texture" type="RID">
</argument>
@@ -3497,15 +3521,6 @@
<constant name="ENV_TONE_MAPPER_ACES" value="3" enum="EnvironmentToneMapper">
Use the ACES tonemapper.
</constant>
- <constant name="ENV_SSAO_QUALITY_LOW" value="0" enum="EnvironmentSSAOQuality">
- Lowest quality of screen space ambient occlusion.
- </constant>
- <constant name="ENV_SSAO_QUALITY_MEDIUM" value="1" enum="EnvironmentSSAOQuality">
- Medium quality screen space ambient occlusion.
- </constant>
- <constant name="ENV_SSAO_QUALITY_HIGH" value="2" enum="EnvironmentSSAOQuality">
- Highest quality screen space ambient occlusion.
- </constant>
<constant name="ENV_SSAO_BLUR_DISABLED" value="0" enum="EnvironmentSSAOBlur">
Disables the blur set for SSAO. Will make SSAO look noisier.
</constant>
@@ -3518,6 +3533,15 @@
<constant name="ENV_SSAO_BLUR_3x3" value="3" enum="EnvironmentSSAOBlur">
Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO.
</constant>
+ <constant name="ENV_SSAO_QUALITY_LOW" value="0" enum="EnvironmentSSAOQuality">
+ Lowest quality of screen space ambient occlusion.
+ </constant>
+ <constant name="ENV_SSAO_QUALITY_MEDIUM" value="1" enum="EnvironmentSSAOQuality">
+ Medium quality screen space ambient occlusion.
+ </constant>
+ <constant name="ENV_SSAO_QUALITY_HIGH" value="2" enum="EnvironmentSSAOQuality">
+ Highest quality screen space ambient occlusion.
+ </constant>
<constant name="ENV_SSAO_QUALITY_ULTRA" value="3" enum="EnvironmentSSAOQuality">
</constant>
<constant name="DOF_BLUR_QUALITY_VERY_LOW" value="0" enum="DOFBlurQuality">
@@ -3617,11 +3641,11 @@
</constant>
<constant name="CANVAS_ITEM_TEXTURE_FILTER_LINEAR" value="2" enum="CanvasItemTextureFilter">
</constant>
- <constant name="CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS" value="3" enum="CanvasItemTextureFilter">
+ <constant name="CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS" value="3" enum="CanvasItemTextureFilter">
</constant>
<constant name="CANVAS_ITEM_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS" value="4" enum="CanvasItemTextureFilter">
</constant>
- <constant name="CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIMPAMPS_ANISOTROPIC" value="5" enum="CanvasItemTextureFilter">
+ <constant name="CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC" value="5" enum="CanvasItemTextureFilter">
</constant>
<constant name="CANVAS_ITEM_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC" value="6" enum="CanvasItemTextureFilter">
</constant>
diff --git a/doc/classes/VisualShader.xml b/doc/classes/VisualShader.xml
index 44e843f8a5..40b0f52469 100644
--- a/doc/classes/VisualShader.xml
+++ b/doc/classes/VisualShader.xml
@@ -22,6 +22,7 @@
<argument index="3" name="id" type="int">
</argument>
<description>
+ Adds the specified node to the shader.
</description>
</method>
<method name="can_connect_nodes" qualifiers="const">
@@ -38,6 +39,7 @@
<argument index="4" name="to_port" type="int">
</argument>
<description>
+ Returns [code]true[/code] if the specified nodes and ports can be connected together.
</description>
</method>
<method name="connect_nodes">
@@ -54,6 +56,7 @@
<argument index="4" name="to_port" type="int">
</argument>
<description>
+ Connects the specified nodes and ports.
</description>
</method>
<method name="connect_nodes_forced">
@@ -70,6 +73,7 @@
<argument index="4" name="to_port" type="int">
</argument>
<description>
+ Connects the specified nodes and ports, even if they can't be connected. Such connection is invalid and will not function properly.
</description>
</method>
<method name="disconnect_nodes">
@@ -86,6 +90,7 @@
<argument index="4" name="to_port" type="int">
</argument>
<description>
+ Connects the specified nodes and ports.
</description>
</method>
<method name="get_node" qualifiers="const">
@@ -96,6 +101,7 @@
<argument index="1" name="id" type="int">
</argument>
<description>
+ Returns the shader node instance with specified [code]type[/code] and [code]id[/code].
</description>
</method>
<method name="get_node_connections" qualifiers="const">
@@ -104,14 +110,16 @@
<argument index="0" name="type" type="int" enum="VisualShader.Type">
</argument>
<description>
+ Returns the list of connected nodes with the specified type.
</description>
</method>
<method name="get_node_list" qualifiers="const">
- <return type="PoolIntArray">
+ <return type="PackedInt32Array">
</return>
<argument index="0" name="type" type="int" enum="VisualShader.Type">
</argument>
<description>
+ Returns the list of all nodes in the shader with the specified type.
</description>
</method>
<method name="get_node_position" qualifiers="const">
@@ -122,6 +130,7 @@
<argument index="1" name="id" type="int">
</argument>
<description>
+ Returns the position of the specified node within the shader graph.
</description>
</method>
<method name="get_valid_node_id" qualifiers="const">
@@ -146,6 +155,7 @@
<argument index="4" name="to_port" type="int">
</argument>
<description>
+ Returns [code]true[/code] if the specified node and port connection exist.
</description>
</method>
<method name="remove_node">
@@ -156,6 +166,7 @@
<argument index="1" name="id" type="int">
</argument>
<description>
+ Removes the specified node from the shader.
</description>
</method>
<method name="set_mode">
@@ -164,6 +175,7 @@
<argument index="0" name="mode" type="int" enum="Shader.Mode">
</argument>
<description>
+ Sets the mode of this shader.
</description>
</method>
<method name="set_node_position">
@@ -176,20 +188,27 @@
<argument index="2" name="position" type="Vector2">
</argument>
<description>
+ Sets the position of the specified node.
</description>
</method>
</methods>
<members>
<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 )">
+ The offset vector of the whole graph.
+ </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">
+ A vertex shader, operating on vertices.
</constant>
<constant name="TYPE_FRAGMENT" value="1" enum="Type">
+ A fragment shader, operating on fragments (pixels).
</constant>
<constant name="TYPE_LIGHT" value="2" enum="Type">
+ A shader for light calculations.
</constant>
<constant name="TYPE_MAX" value="3" enum="Type">
Represents the size of the [enum Type] enum.
diff --git a/doc/classes/VisualShaderNode.xml b/doc/classes/VisualShaderNode.xml
index d3227f421e..28d13a7d32 100644
--- a/doc/classes/VisualShaderNode.xml
+++ b/doc/classes/VisualShaderNode.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisualShaderNode" inherits="Resource" version="4.0">
<brief_description>
+ Base class for nodes in a visual shader graph.
</brief_description>
<description>
</description>
@@ -61,19 +62,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/VisualShaderNodeCustom.xml b/doc/classes/VisualShaderNodeCustom.xml
index 0d1bcc754f..5bd8ec38ed 100644
--- a/doc/classes/VisualShaderNodeCustom.xml
+++ b/doc/classes/VisualShaderNodeCustom.xml
@@ -20,8 +20,8 @@
<return type="String">
</return>
<description>
- Override this method to define the category of the associated custom node in the Visual Shader Editor's members dialog.
- Defining this method is [b]optional[/b]. If not overridden, the node will be filed under the "Custom" category.
+ Override this method to define the path to the associated custom node in the Visual Shader Editor's members dialog. The path may looks like [code]"MyGame/MyFunctions/Noise"[/code].
+ Defining this method is [b]optional[/b]. If not overridden, the node will be filed under the "Addons" category.
</description>
</method>
<method name="_get_code" qualifiers="virtual">
@@ -72,7 +72,7 @@
</description>
</method>
<method name="_get_input_port_name" qualifiers="virtual">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="port" type="int">
</argument>
@@ -108,7 +108,7 @@
</description>
</method>
<method name="_get_output_port_name" qualifiers="virtual">
- <return type="String">
+ <return type="StringName">
</return>
<argument index="0" name="port" type="int">
</argument>
@@ -135,14 +135,6 @@
Defining this method is [b]optional[/b]. If not overridden, no return icon is shown.
</description>
</method>
- <method name="_get_subcategory" qualifiers="virtual">
- <return type="String">
- </return>
- <description>
- Override this method to define the subcategory of the associated custom node in the Visual Shader Editor's members dialog.
- Defining this method is [b]optional[/b]. If not overridden, the node will be filed under the root of the main category (see [method _get_category]).
- </description>
- </method>
<method name="_is_highend" qualifiers="virtual">
<return type="bool">
</return>
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..ad0b21a370 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 comparison 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] respectively.
</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/WindowDialog.xml b/doc/classes/WindowDialog.xml
index 16b8085df3..8b6bf00508 100644
--- a/doc/classes/WindowDialog.xml
+++ b/doc/classes/WindowDialog.xml
@@ -29,22 +29,31 @@
</constants>
<theme_items>
<theme_item name="close" type="Texture2D">
+ The icon for the close button.
</theme_item>
<theme_item name="close_h_ofs" type="int" default="18">
+ The horizontal offset of the close button.
</theme_item>
<theme_item name="close_highlight" type="Texture2D">
+ The icon used for the close button when it's hovered with the mouse cursor.
</theme_item>
<theme_item name="close_v_ofs" type="int" default="18">
+ The vertical offset of the close button.
</theme_item>
<theme_item name="panel" type="StyleBox">
+ The style for both the content background of the [WindowDialog] and the title bar.
</theme_item>
<theme_item name="scaleborder_size" type="int" default="4">
+ The thickness of the border that can be dragged when scaling the window (if [member resizable] is enabled).
</theme_item>
<theme_item name="title_color" type="Color" default="Color( 0, 0, 0, 1 )">
+ The color of the title text.
</theme_item>
<theme_item name="title_font" type="Font">
+ The font used to draw the title.
</theme_item>
<theme_item name="title_height" type="int" default="20">
+ The vertical offset of the title text.
</theme_item>
</theme_items>
</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>
diff --git a/doc/classes/XMLParser.xml b/doc/classes/XMLParser.xml
index 8140fde62d..2849ea62ab 100644
--- a/doc/classes/XMLParser.xml
+++ b/doc/classes/XMLParser.xml
@@ -115,7 +115,7 @@
<method name="open_buffer">
<return type="int" enum="Error">
</return>
- <argument index="0" name="buffer" type="PoolByteArray">
+ <argument index="0" name="buffer" type="PackedByteArray">
</argument>
<description>
Opens an XML raw buffer for parsing. This returns an error code.