summaryrefslogtreecommitdiff
path: root/doc/classes
diff options
context:
space:
mode:
Diffstat (limited to 'doc/classes')
-rw-r--r--doc/classes/@GlobalScope.xml32
-rw-r--r--doc/classes/AStar2D.xml24
-rw-r--r--doc/classes/AcceptDialog.xml11
-rw-r--r--doc/classes/AnimatedSprite2D.xml (renamed from doc/classes/AnimatedSprite.xml)4
-rw-r--r--doc/classes/AnimatedTexture.xml4
-rw-r--r--doc/classes/AnimationNodeStateMachine.xml10
-rw-r--r--doc/classes/Area3D.xml (renamed from doc/classes/Area.xml)36
-rw-r--r--doc/classes/Array.xml12
-rw-r--r--doc/classes/ArrayMesh.xml4
-rw-r--r--doc/classes/AudioStreamPlayer3D.xml2
-rw-r--r--doc/classes/AudioStreamSample.xml12
-rw-r--r--doc/classes/BaseButton.xml1
-rw-r--r--doc/classes/BaseMaterial3D.xml10
-rw-r--r--doc/classes/BoneAttachment3D.xml (renamed from doc/classes/BoneAttachment.xml)4
-rw-r--r--doc/classes/BoxShape3D.xml (renamed from doc/classes/BoxShape.xml)4
-rw-r--r--doc/classes/CPUParticles2D.xml4
-rw-r--r--doc/classes/CPUParticles3D.xml (renamed from doc/classes/CPUParticles.xml)26
-rw-r--r--doc/classes/Camera2D.xml3
-rw-r--r--doc/classes/Camera3D.xml (renamed from doc/classes/Camera.xml)14
-rw-r--r--doc/classes/CameraFeed.xml2
-rw-r--r--doc/classes/CameraServer.xml13
-rw-r--r--doc/classes/CanvasItem.xml2
-rw-r--r--doc/classes/CanvasItemMaterial.xml6
-rw-r--r--doc/classes/CapsuleShape3D.xml (renamed from doc/classes/CapsuleShape.xml)2
-rw-r--r--doc/classes/ClippedCamera3D.xml (renamed from doc/classes/ClippedCamera.xml)12
-rw-r--r--doc/classes/CollisionObject3D.xml (renamed from doc/classes/CollisionObject.xml)20
-rw-r--r--doc/classes/CollisionPolygon3D.xml (renamed from doc/classes/CollisionPolygon.xml)4
-rw-r--r--doc/classes/CollisionShape3D.xml (renamed from doc/classes/CollisionShape.xml)8
-rw-r--r--doc/classes/Color.xml3
-rw-r--r--doc/classes/ConcavePolygonShape3D.xml (renamed from doc/classes/ConcavePolygonShape.xml)6
-rw-r--r--doc/classes/ConeTwistJoint3D.xml (renamed from doc/classes/ConeTwistJoint.xml)16
-rw-r--r--doc/classes/ConfigFile.xml2
-rw-r--r--doc/classes/ConfirmationDialog.xml5
-rw-r--r--doc/classes/Control.xml200
-rw-r--r--doc/classes/ConvexPolygonShape3D.xml (renamed from doc/classes/ConvexPolygonShape.xml)4
-rw-r--r--doc/classes/Curve3D.xml6
-rw-r--r--doc/classes/CylinderShape3D.xml (renamed from doc/classes/CylinderShape.xml)2
-rw-r--r--doc/classes/Dictionary.xml26
-rw-r--r--doc/classes/DirectionalLight3D.xml (renamed from doc/classes/DirectionalLight.xml)8
-rw-r--r--doc/classes/Directory.xml3
-rw-r--r--doc/classes/DisplayServer.xml1049
-rw-r--r--doc/classes/EditorExportPlugin.xml8
-rw-r--r--doc/classes/EditorFeatureProfile.xml21
-rw-r--r--doc/classes/EditorFileDialog.xml17
-rw-r--r--doc/classes/EditorInterface.xml6
-rw-r--r--doc/classes/EditorNode3DGizmo.xml (renamed from doc/classes/EditorSpatialGizmo.xml)20
-rw-r--r--doc/classes/EditorNode3DGizmoPlugin.xml (renamed from doc/classes/EditorSpatialGizmoPlugin.xml)42
-rw-r--r--doc/classes/EditorPlugin.xml8
-rw-r--r--doc/classes/Environment.xml11
-rw-r--r--doc/classes/File.xml4
-rw-r--r--doc/classes/FileDialog.xml20
-rw-r--r--doc/classes/FileSystemDock.xml101
-rw-r--r--doc/classes/GIProbe.xml4
-rw-r--r--doc/classes/GPUParticles2D.xml (renamed from doc/classes/Particles2D.xml)6
-rw-r--r--doc/classes/GPUParticles3D.xml (renamed from doc/classes/Particles.xml)6
-rw-r--r--doc/classes/Generic6DOFJoint3D.xml (renamed from doc/classes/Generic6DOFJoint.xml)26
-rw-r--r--doc/classes/GeometryInstance3D.xml (renamed from doc/classes/GeometryInstance.xml)32
-rw-r--r--doc/classes/HeightMapShape3D.xml (renamed from doc/classes/HeightMapShape.xml)4
-rw-r--r--doc/classes/HingeJoint3D.xml (renamed from doc/classes/HingeJoint.xml)12
-rw-r--r--doc/classes/Image.xml2
-rw-r--r--doc/classes/ImmediateGeometry3D.xml (renamed from doc/classes/ImmediateGeometry.xml)2
-rw-r--r--doc/classes/InputDefault.xml15
-rw-r--r--doc/classes/InputEventFromWindow.xml17
-rw-r--r--doc/classes/InputEventKey.xml2
-rw-r--r--doc/classes/InputEventMouseMotion.xml3
-rw-r--r--doc/classes/InputEventScreenDrag.xml2
-rw-r--r--doc/classes/InputEventScreenTouch.xml2
-rw-r--r--doc/classes/InputEventWithModifiers.xml2
-rw-r--r--doc/classes/InputFilter.xml (renamed from doc/classes/Input.xml)16
-rw-r--r--doc/classes/InterpolatedCamera.xml36
-rw-r--r--doc/classes/Joint3D.xml (renamed from doc/classes/Joint.xml)2
-rw-r--r--doc/classes/KinematicBody3D.xml (renamed from doc/classes/KinematicBody.xml)20
-rw-r--r--doc/classes/KinematicCollision3D.xml (renamed from doc/classes/KinematicCollision.xml)8
-rw-r--r--doc/classes/Light3D.xml (renamed from doc/classes/Light.xml)45
-rw-r--r--doc/classes/Listener3D.xml (renamed from doc/classes/Listener.xml)6
-rw-r--r--doc/classes/MainLoop.xml101
-rw-r--r--doc/classes/Material.xml2
-rw-r--r--doc/classes/MenuButton.xml4
-rw-r--r--doc/classes/Mesh.xml8
-rw-r--r--doc/classes/MeshInstance.xml74
-rw-r--r--doc/classes/MeshInstance2D.xml2
-rw-r--r--doc/classes/MeshInstance3D.xml83
-rw-r--r--doc/classes/MeshLibrary.xml4
-rw-r--r--doc/classes/MultiMesh.xml2
-rw-r--r--doc/classes/MultiMeshInstance2D.xml2
-rw-r--r--doc/classes/MultiMeshInstance3D.xml (renamed from doc/classes/MultiMeshInstance.xml)6
-rw-r--r--doc/classes/Navigation3D.xml (renamed from doc/classes/Navigation.xml)4
-rw-r--r--doc/classes/NavigationAgent3D.xml (renamed from doc/classes/NavigationAgent.xml)8
-rw-r--r--doc/classes/NavigationObstacle2D.xml2
-rw-r--r--doc/classes/NavigationObstacle3D.xml (renamed from doc/classes/NavigationObstacle.xml)8
-rw-r--r--doc/classes/NavigationRegion3D.xml (renamed from doc/classes/NavigationRegion.xml)6
-rw-r--r--doc/classes/NavigationServer2D.xml (renamed from doc/classes/Navigation2DServer.xml)4
-rw-r--r--doc/classes/NavigationServer3D.xml (renamed from doc/classes/NavigationServer.xml)4
-rw-r--r--doc/classes/Node.xml37
-rw-r--r--doc/classes/Node3D.xml (renamed from doc/classes/Spatial.xml)38
-rw-r--r--doc/classes/Node3DGizmo.xml (renamed from doc/classes/SpatialGizmo.xml)2
-rw-r--r--doc/classes/NodePath.xml34
-rw-r--r--doc/classes/OS.xml462
-rw-r--r--doc/classes/Object.xml11
-rw-r--r--doc/classes/OmniLight3D.xml (renamed from doc/classes/OmniLight.xml)6
-rw-r--r--doc/classes/OptionButton.xml4
-rw-r--r--doc/classes/Panel.xml10
-rw-r--r--doc/classes/PanoramaSkyMaterial.xml (renamed from doc/classes/PanoramaSky.xml)8
-rw-r--r--doc/classes/ParticlesMaterial.xml6
-rw-r--r--doc/classes/Path3D.xml (renamed from doc/classes/Path.xml)8
-rw-r--r--doc/classes/PathFollow3D.xml (renamed from doc/classes/PathFollow.xml)20
-rw-r--r--doc/classes/Performance.xml2
-rw-r--r--doc/classes/PhysicalBone.xml79
-rw-r--r--doc/classes/PhysicalBone3D.xml120
-rw-r--r--doc/classes/PhysicalSkyMaterial.xml49
-rw-r--r--doc/classes/Physics2DDirectBodyStateSW.xml15
-rw-r--r--doc/classes/PhysicsBody3D.xml (renamed from doc/classes/PhysicsBody.xml)4
-rw-r--r--doc/classes/PhysicsDirectBodyState2D.xml (renamed from doc/classes/Physics2DDirectBodyState.xml)10
-rw-r--r--doc/classes/PhysicsDirectBodyState2DSW.xml15
-rw-r--r--doc/classes/PhysicsDirectBodyState3D.xml (renamed from doc/classes/PhysicsDirectBodyState.xml)10
-rw-r--r--doc/classes/PhysicsDirectSpaceState2D.xml (renamed from doc/classes/Physics2DDirectSpaceState.xml)34
-rw-r--r--doc/classes/PhysicsDirectSpaceState3D.xml (renamed from doc/classes/PhysicsDirectSpaceState.xml)26
-rw-r--r--doc/classes/PhysicsMaterial.xml2
-rw-r--r--doc/classes/PhysicsServer2D.xml (renamed from doc/classes/Physics2DServer.xml)60
-rw-r--r--doc/classes/PhysicsServer2DSW.xml (renamed from doc/classes/Physics2DServerSW.xml)6
-rw-r--r--doc/classes/PhysicsServer3D.xml (renamed from doc/classes/PhysicsServer.xml)132
-rw-r--r--doc/classes/PhysicsShapeQueryParameters2D.xml (renamed from doc/classes/Physics2DShapeQueryParameters.xml)4
-rw-r--r--doc/classes/PhysicsShapeQueryParameters3D.xml (renamed from doc/classes/PhysicsShapeQueryParameters.xml)10
-rw-r--r--doc/classes/PhysicsShapeQueryResult2D.xml (renamed from doc/classes/Physics2DShapeQueryResult.xml)8
-rw-r--r--doc/classes/PhysicsShapeQueryResult3D.xml (renamed from doc/classes/PhysicsShapeQueryResult.xml)8
-rw-r--r--doc/classes/PhysicsTestMotionResult2D.xml (renamed from doc/classes/Physics2DTestMotionResult.xml)2
-rw-r--r--doc/classes/PinJoint2D.xml4
-rw-r--r--doc/classes/PinJoint3D.xml (renamed from doc/classes/PinJoint.xml)10
-rw-r--r--doc/classes/Popup.xml76
-rw-r--r--doc/classes/PopupDialog.xml20
-rw-r--r--doc/classes/PopupMenu.xml17
-rw-r--r--doc/classes/PopupPanel.xml2
-rw-r--r--doc/classes/Position3D.xml4
-rw-r--r--doc/classes/ProceduralSky.xml84
-rw-r--r--doc/classes/ProceduralSkyMaterial.xml52
-rw-r--r--doc/classes/ProjectSettings.xml66
-rw-r--r--doc/classes/ProximityGroup3D.xml (renamed from doc/classes/ProximityGroup.xml)4
-rw-r--r--doc/classes/RID.xml2
-rw-r--r--doc/classes/RayCast3D.xml (renamed from doc/classes/RayCast.xml)14
-rw-r--r--doc/classes/RayShape3D.xml (renamed from doc/classes/RayShape.xml)4
-rw-r--r--doc/classes/ReflectionProbe.xml4
-rw-r--r--doc/classes/RemoteTransform3D.xml (renamed from doc/classes/RemoteTransform.xml)10
-rw-r--r--doc/classes/RenderingServer.xml (renamed from doc/classes/VisualServer.xml)323
-rw-r--r--doc/classes/RigidBody2D.xml6
-rw-r--r--doc/classes/RigidBody3D.xml (renamed from doc/classes/RigidBody.xml)35
-rw-r--r--doc/classes/RootMotionView.xml2
-rw-r--r--doc/classes/SceneTree.xml76
-rw-r--r--doc/classes/ScriptCreateDialog.xml7
-rw-r--r--doc/classes/Shader.xml3
-rw-r--r--doc/classes/Shape3D.xml (renamed from doc/classes/Shape.xml)4
-rw-r--r--doc/classes/Signal.xml2
-rw-r--r--doc/classes/Skeleton3D.xml (renamed from doc/classes/Skeleton.xml)10
-rw-r--r--doc/classes/SkeletonIK3D.xml (renamed from doc/classes/SkeletonIK.xml)4
-rw-r--r--doc/classes/Sky.xml11
-rw-r--r--doc/classes/SliderJoint3D.xml (renamed from doc/classes/SliderJoint.xml)6
-rw-r--r--doc/classes/SoftBody3D.xml (renamed from doc/classes/SoftBody.xml)12
-rw-r--r--doc/classes/SphereShape3D.xml (renamed from doc/classes/SphereShape.xml)4
-rw-r--r--doc/classes/SpotLight3D.xml (renamed from doc/classes/SpotLight.xml)4
-rw-r--r--doc/classes/SpringArm3D.xml (renamed from doc/classes/SpringArm.xml)30
-rw-r--r--doc/classes/Sprite2D.xml (renamed from doc/classes/Sprite.xml)8
-rw-r--r--doc/classes/Sprite3D.xml2
-rw-r--r--doc/classes/SpriteBase3D.xml4
-rw-r--r--doc/classes/SpriteFrames.xml4
-rw-r--r--doc/classes/StaticBody3D.xml (renamed from doc/classes/StaticBody.xml)4
-rw-r--r--doc/classes/SubViewport.xml57
-rw-r--r--doc/classes/SubViewportContainer.xml25
-rw-r--r--doc/classes/Texture2D.xml20
-rw-r--r--doc/classes/Thread.xml2
-rw-r--r--doc/classes/TileMap.xml4
-rw-r--r--doc/classes/Transform.xml4
-rw-r--r--doc/classes/Transform2D.xml4
-rw-r--r--doc/classes/UndoRedo.xml2
-rw-r--r--doc/classes/VehicleBody3D.xml (renamed from doc/classes/VehicleBody.xml)12
-rw-r--r--doc/classes/VehicleWheel3D.xml (renamed from doc/classes/VehicleWheel.xml)14
-rw-r--r--doc/classes/VelocityTracker3D.xml (renamed from doc/classes/SpatialVelocityTracker.xml)2
-rw-r--r--doc/classes/Viewport.xml117
-rw-r--r--doc/classes/ViewportContainer.xml25
-rw-r--r--doc/classes/VisibilityEnabler2D.xml9
-rw-r--r--doc/classes/VisibilityEnabler3D.xml (renamed from doc/classes/VisibilityEnabler.xml)13
-rw-r--r--doc/classes/VisibilityNotifier3D.xml (renamed from doc/classes/VisibilityNotifier.xml)18
-rw-r--r--doc/classes/VisualInstance3D.xml (renamed from doc/classes/VisualInstance.xml)20
-rw-r--r--doc/classes/Window.xml419
-rw-r--r--doc/classes/WindowDialog.xml59
-rw-r--r--doc/classes/World2D.xml6
-rw-r--r--doc/classes/World3D.xml (renamed from doc/classes/World.xml)16
-rw-r--r--doc/classes/WorldEnvironment.xml2
-rw-r--r--doc/classes/WorldMarginShape3D.xml (renamed from doc/classes/WorldMarginShape.xml)6
-rw-r--r--doc/classes/XRAnchor3D.xml (renamed from doc/classes/ARVRAnchor.xml)6
-rw-r--r--doc/classes/XRCamera3D.xml (renamed from doc/classes/ARVRCamera.xml)4
-rw-r--r--doc/classes/XRController3D.xml (renamed from doc/classes/ARVRController.xml)20
-rw-r--r--doc/classes/XRInterface.xml (renamed from doc/classes/ARVRInterface.xml)30
-rw-r--r--doc/classes/XROrigin3D.xml (renamed from doc/classes/ARVROrigin.xml)8
-rw-r--r--doc/classes/XRPositionalTracker.xml (renamed from doc/classes/ARVRPositionalTracker.xml)12
-rw-r--r--doc/classes/XRServer.xml (renamed from doc/classes/ARVRServer.xml)22
194 files changed, 3265 insertions, 2337 deletions
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml
index 74c364bad5..f462aa989d 100644
--- a/doc/classes/@GlobalScope.xml
+++ b/doc/classes/@GlobalScope.xml
@@ -12,8 +12,8 @@
<methods>
</methods>
<members>
- <member name="ARVRServer" type="ARVRServer" setter="" getter="">
- The [ARVRServer] singleton.
+ <member name="XRServer" type="XRServer" setter="" getter="">
+ The [XRServer] singleton.
</member>
<member name="AudioServer" type="AudioServer" setter="" getter="">
The [AudioServer] singleton.
@@ -36,8 +36,8 @@
<member name="IP" type="IP" setter="" getter="">
The [IP] singleton.
</member>
- <member name="Input" type="Input" setter="" getter="">
- The [Input] singleton.
+ <member name="Input" type="InputFilter" setter="" getter="">
+ The [InputFilter] singleton.
</member>
<member name="InputMap" type="InputMap" setter="" getter="">
The [InputMap] singleton.
@@ -56,14 +56,14 @@
<member name="Marshalls" type="Marshalls" setter="" getter="">
The [Marshalls] singleton.
</member>
- <member name="Navigation2DServer" type="Navigation2DServer" setter="" getter="">
- The [Navigation2DServer] singleton.
- </member>
<member name="NavigationMeshGenerator" type="NavigationMeshGenerator" setter="" getter="">
The [NavigationMeshGenerator] singleton.
</member>
- <member name="NavigationServer" type="NavigationServer" setter="" getter="">
- The [NavigationServer] singleton.
+ <member name="NavigationServer2D" type="NavigationServer2D" setter="" getter="">
+ The [NavigationServer2D] singleton.
+ </member>
+ <member name="NavigationServer3D" type="NavigationServer3D" setter="" getter="">
+ The [NavigationServer2D] singleton.
</member>
<member name="OS" type="OS" setter="" getter="">
The [OS] singleton.
@@ -71,15 +71,18 @@
<member name="Performance" type="Performance" setter="" getter="">
The [Performance] singleton.
</member>
- <member name="Physics2DServer" type="Physics2DServer" setter="" getter="">
- The [Physics2DServer] singleton.
+ <member name="PhysicsServer2D" type="PhysicsServer2D" setter="" getter="">
+ The [PhysicsServer2D] singleton.
</member>
- <member name="PhysicsServer" type="PhysicsServer" setter="" getter="">
- The [PhysicsServer] singleton.
+ <member name="PhysicsServer3D" type="PhysicsServer3D" setter="" getter="">
+ The [PhysicsServer3D] singleton.
</member>
<member name="ProjectSettings" type="ProjectSettings" setter="" getter="">
The [ProjectSettings] singleton.
</member>
+ <member name="RenderingServer" type="RenderingServer" setter="" getter="">
+ The [RenderingServer] singleton.
+ </member>
<member name="ResourceLoader" type="ResourceLoader" setter="" getter="">
The [ResourceLoader] singleton.
</member>
@@ -92,9 +95,6 @@
<member name="VisualScriptEditor" type="VisualScriptEditor" setter="" getter="">
The [VisualScriptEditor] singleton.
</member>
- <member name="VisualServer" type="VisualServer" setter="" getter="">
- The [VisualServer] singleton.
- </member>
</members>
<constants>
<constant name="MARGIN_LEFT" value="0" enum="Margin">
diff --git a/doc/classes/AStar2D.xml b/doc/classes/AStar2D.xml
index 2639f62552..16fa05041e 100644
--- a/doc/classes/AStar2D.xml
+++ b/doc/classes/AStar2D.xml
@@ -9,6 +9,30 @@
<tutorials>
</tutorials>
<methods>
+ <method name="_compute_cost" qualifiers="virtual">
+ <return type="float">
+ </return>
+ <argument index="0" name="from_id" type="int">
+ </argument>
+ <argument index="1" name="to_id" type="int">
+ </argument>
+ <description>
+ Called when computing the cost between two connected points.
+ Note that this function is hidden in the default [code]AStar2D[/code] class.
+ </description>
+ </method>
+ <method name="_estimate_cost" qualifiers="virtual">
+ <return type="float">
+ </return>
+ <argument index="0" name="from_id" type="int">
+ </argument>
+ <argument index="1" name="to_id" type="int">
+ </argument>
+ <description>
+ Called when estimating the cost between a point and the path's ending point.
+ Note that this function is hidden in the default [code]AStar2D[/code] class.
+ </description>
+ </method>
<method name="add_point">
<return type="void">
</return>
diff --git a/doc/classes/AcceptDialog.xml b/doc/classes/AcceptDialog.xml
index 01540383dc..99b566e74f 100644
--- a/doc/classes/AcceptDialog.xml
+++ b/doc/classes/AcceptDialog.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="AcceptDialog" inherits="WindowDialog" version="4.0">
+<class name="AcceptDialog" inherits="Window" version="4.0">
<brief_description>
Base dialog for user notification.
</brief_description>
@@ -67,9 +67,16 @@
<member name="dialog_text" type="String" setter="set_text" getter="get_text" default="&quot;&quot;">
The text displayed by the dialog.
</member>
- <member name="window_title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Alert!&quot;" />
+ <member name="title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Alert!&quot;" />
+ <member name="transient" type="bool" setter="set_transient" getter="is_transient" override="true" default="true" />
+ <member name="visible" type="bool" setter="set_visible" getter="is_visible" override="true" default="false" />
+ <member name="wrap_controls" type="bool" setter="set_wrap_controls" getter="is_wrapping_controls" override="true" default="true" />
</members>
<signals>
+ <signal name="cancelled">
+ <description>
+ </description>
+ </signal>
<signal name="confirmed">
<description>
Emitted when the dialog is accepted, i.e. the OK button is pressed.
diff --git a/doc/classes/AnimatedSprite.xml b/doc/classes/AnimatedSprite2D.xml
index b5c1d38ff9..8d0534ccd2 100644
--- a/doc/classes/AnimatedSprite.xml
+++ b/doc/classes/AnimatedSprite2D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="AnimatedSprite" inherits="Node2D" version="4.0">
+<class name="AnimatedSprite2D" inherits="Node2D" version="4.0">
<brief_description>
Sprite node that can use multiple textures for animation.
</brief_description>
@@ -61,7 +61,7 @@
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].
+ Strength of the specular light effect of this [AnimatedSprite2D].
</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.
diff --git a/doc/classes/AnimatedTexture.xml b/doc/classes/AnimatedTexture.xml
index b851c76e59..80b910aaa7 100644
--- a/doc/classes/AnimatedTexture.xml
+++ b/doc/classes/AnimatedTexture.xml
@@ -4,7 +4,7 @@
Proxy texture for simple frame-based animations.
</brief_description>
<description>
- [AnimatedTexture] is a resource format for frame-based animations, where multiple textures can be chained automatically with a predefined delay for each frame. Unlike [AnimationPlayer] or [AnimatedSprite], it isn't a [Node], but has the advantage of being usable anywhere a [Texture2D] resource can be used, e.g. in a [TileSet].
+ [AnimatedTexture] is a resource format for frame-based animations, where multiple textures can be chained automatically with a predefined delay for each frame. Unlike [AnimationPlayer] or [AnimatedSprite2D], it isn't a [Node], but has the advantage of being usable anywhere a [Texture2D] resource can be used, e.g. in a [TileSet].
The playback of the animation is controlled by the [member fps] property as well as each frame's optional delay (see [method set_frame_delay]). The animation loops, i.e. it will restart at frame 0 automatically after playing the last frame.
[AnimatedTexture] currently requires all frame textures to have the same size, otherwise the bigger ones will be cropped to match the smallest one. Also, it doesn't support [AtlasTexture]. Each frame needs to be separate image.
</description>
@@ -71,7 +71,7 @@
</members>
<constants>
<constant name="MAX_FRAMES" value="256">
- The maximum number of frames supported by [AnimatedTexture]. If you need more frames in your animation, use [AnimationPlayer] or [AnimatedSprite].
+ The maximum number of frames supported by [AnimatedTexture]. If you need more frames in your animation, use [AnimationPlayer] or [AnimatedSprite2D].
</constant>
</constants>
</class>
diff --git a/doc/classes/AnimationNodeStateMachine.xml b/doc/classes/AnimationNodeStateMachine.xml
index b647ff70b8..3b351a3345 100644
--- a/doc/classes/AnimationNodeStateMachine.xml
+++ b/doc/classes/AnimationNodeStateMachine.xml
@@ -183,6 +183,16 @@
Renames the given node.
</description>
</method>
+ <method name="replace_node">
+ <return type="void">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="node" type="AnimationNode">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="set_end_node">
<return type="void">
</return>
diff --git a/doc/classes/Area.xml b/doc/classes/Area3D.xml
index b273a7a9d9..1adfc878e2 100644
--- a/doc/classes/Area.xml
+++ b/doc/classes/Area3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Area" inherits="CollisionObject" version="4.0">
+<class name="Area3D" inherits="CollisionObject3D" version="4.0">
<brief_description>
General-purpose area node for detection and 3D physics influence.
</brief_description>
<description>
- 3D area that detects [CollisionObject] nodes overlapping, entering, or exiting. Can also alter or override local physics parameters (gravity, damping).
+ 3D area that detects [CollisionObject3D] nodes overlapping, entering, or exiting. Can also alter or override local physics parameters (gravity, damping).
</description>
<tutorials>
</tutorials>
@@ -31,14 +31,14 @@
<return type="Array">
</return>
<description>
- Returns a list of intersecting [Area]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+ Returns a list of intersecting [Area3D]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
</description>
</method>
<method name="get_overlapping_bodies" qualifiers="const">
<return type="Array">
</return>
<description>
- Returns a list of intersecting [PhysicsBody]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+ Returns a list of intersecting [PhysicsBody3D]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
</description>
</method>
<method name="overlaps_area" qualifiers="const">
@@ -47,7 +47,7 @@
<argument index="0" name="area" type="Node">
</argument>
<description>
- If [code]true[/code], the given area overlaps the Area.
+ If [code]true[/code], the given area overlaps the Area3D.
[b]Note:[/b] The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead.
</description>
</method>
@@ -57,9 +57,9 @@
<argument index="0" name="body" type="Node">
</argument>
<description>
- If [code]true[/code], the given physics body overlaps the Area.
+ If [code]true[/code], the given physics body overlaps the Area3D.
[b]Note:[/b] The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead.
- The [code]body[/code] argument can either be a [PhysicsBody] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+ The [code]body[/code] argument can either be a [PhysicsBody3D] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
</description>
</method>
<method name="set_collision_layer_bit">
@@ -70,7 +70,7 @@
<argument index="1" name="value" type="bool">
</argument>
<description>
- Set/clear individual bits on the layer mask. This simplifies editing this [Area]'s layers.
+ Set/clear individual bits on the layer mask. This simplifies editing this [Area3D]'s layers.
</description>
</method>
<method name="set_collision_mask_bit">
@@ -81,7 +81,7 @@
<argument index="1" name="value" type="bool">
</argument>
<description>
- Set/clear individual bits on the collision mask. This simplifies editing which [Area] layers this [Area] scans.
+ Set/clear individual bits on the collision mask. This simplifies editing which [Area3D] layers this [Area3D] scans.
</description>
</method>
</methods>
@@ -137,20 +137,20 @@
<member name="reverb_bus_uniformity" type="float" setter="set_reverb_uniformity" getter="get_reverb_uniformity" default="0.0">
The degree to which this area's reverb is a uniform effect. Ranges from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision.
</member>
- <member name="space_override" type="int" setter="set_space_override_mode" getter="get_space_override_mode" enum="Area.SpaceOverride" default="0">
+ <member name="space_override" type="int" setter="set_space_override_mode" getter="get_space_override_mode" enum="Area3D.SpaceOverride" default="0">
Override mode for gravity and damping calculations within this area. See [enum SpaceOverride] for possible values.
</member>
</members>
<signals>
<signal name="area_entered">
- <argument index="0" name="area" type="Area">
+ <argument index="0" name="area" type="Area3D">
</argument>
<description>
Emitted when another area enters.
</description>
</signal>
<signal name="area_exited">
- <argument index="0" name="area" type="Area">
+ <argument index="0" name="area" type="Area3D">
</argument>
<description>
Emitted when another area exits.
@@ -159,7 +159,7 @@
<signal name="area_shape_entered">
<argument index="0" name="area_id" type="int">
</argument>
- <argument index="1" name="area" type="Area">
+ <argument index="1" name="area" type="Area3D">
</argument>
<argument index="2" name="area_shape" type="int">
</argument>
@@ -172,7 +172,7 @@
<signal name="area_shape_exited">
<argument index="0" name="area_id" type="int">
</argument>
- <argument index="1" name="area" type="Area">
+ <argument index="1" name="area" type="Area3D">
</argument>
<argument index="2" name="area_shape" type="int">
</argument>
@@ -187,7 +187,7 @@
</argument>
<description>
Emitted when a physics body enters.
- The [code]body[/code] argument can either be a [PhysicsBody] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+ The [code]body[/code] argument can either be a [PhysicsBody3D] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
</description>
</signal>
<signal name="body_exited">
@@ -195,7 +195,7 @@
</argument>
<description>
Emitted when a physics body exits.
- The [code]body[/code] argument can either be a [PhysicsBody] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+ The [code]body[/code] argument can either be a [PhysicsBody3D] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
</description>
</signal>
<signal name="body_shape_entered">
@@ -209,7 +209,7 @@
</argument>
<description>
Emitted when a physics body enters, reporting which shapes overlapped.
- The [code]body[/code] argument can either be a [PhysicsBody] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+ The [code]body[/code] argument can either be a [PhysicsBody3D] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
</description>
</signal>
<signal name="body_shape_exited">
@@ -223,7 +223,7 @@
</argument>
<description>
Emitted when a physics body exits, reporting which shapes were overlapping.
- The [code]body[/code] argument can either be a [PhysicsBody] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+ The [code]body[/code] argument can either be a [PhysicsBody3D] or a [GridMap] instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
</description>
</signal>
</signals>
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml
index 6401feb95c..20296bbf45 100644
--- a/doc/classes/Array.xml
+++ b/doc/classes/Array.xml
@@ -116,7 +116,7 @@
</description>
</method>
<method name="back">
- <return type="void">
+ <return type="Variant">
</return>
<description>
Returns the last element of the array, or [code]null[/code] if the array is empty.
@@ -213,7 +213,7 @@
</description>
</method>
<method name="front">
- <return type="void">
+ <return type="Variant">
</return>
<description>
Returns the first element of the array, or [code]null[/code] if the array is empty.
@@ -260,28 +260,28 @@
</description>
</method>
<method name="max">
- <return type="void">
+ <return type="Variant">
</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="void">
+ <return type="Variant">
</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="void">
+ <return type="Variant">
</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="void">
+ <return type="Variant">
</return>
<description>
Removes and returns the first element of the array. Returns [code]null[/code] if the array is empty.
diff --git a/doc/classes/ArrayMesh.xml b/doc/classes/ArrayMesh.xml
index 47abd2e996..9e742ea581 100644
--- a/doc/classes/ArrayMesh.xml
+++ b/doc/classes/ArrayMesh.xml
@@ -18,10 +18,10 @@
arrays[ArrayMesh.ARRAY_VERTEX] = vertices
# Create the Mesh.
arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)
- var m = MeshInstance.new()
+ var m = MeshInstance3D.new()
m.mesh = arr_mesh
[/codeblock]
- The [MeshInstance] is ready to be added to the [SceneTree] to be shown.
+ The [MeshInstance3D] is ready to be added to the [SceneTree] to be shown.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/arraymesh.html</link>
diff --git a/doc/classes/AudioStreamPlayer3D.xml b/doc/classes/AudioStreamPlayer3D.xml
index 4ec8dba2c6..3eeb524e9c 100644
--- a/doc/classes/AudioStreamPlayer3D.xml
+++ b/doc/classes/AudioStreamPlayer3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="AudioStreamPlayer3D" inherits="Spatial" version="4.0">
+<class name="AudioStreamPlayer3D" inherits="Node3D" version="4.0">
<brief_description>
Plays 3D sound in 3D space.
</brief_description>
diff --git a/doc/classes/AudioStreamSample.xml b/doc/classes/AudioStreamSample.xml
index 6d99433c90..c12e1bd05c 100644
--- a/doc/classes/AudioStreamSample.xml
+++ b/doc/classes/AudioStreamSample.xml
@@ -30,13 +30,13 @@
Audio format. See [enum Format] constants for values.
</member>
<member name="loop_begin" type="int" setter="set_loop_begin" getter="get_loop_begin" default="0">
- Loop start in bytes.
+ The loop start point (in number of samples, relative to the beginning of the sample). This information will be imported automatically from the WAV file if present.
</member>
<member name="loop_end" type="int" setter="set_loop_end" getter="get_loop_end" default="0">
- Loop end in bytes.
+ The loop end point (in number of samples, relative to the beginning of the sample). This information will be imported automatically from the WAV file if present.
</member>
<member name="loop_mode" type="int" setter="set_loop_mode" getter="get_loop_mode" enum="AudioStreamSample.LoopMode" default="0">
- Loop mode. See [enum LoopMode] constants for values.
+ The loop mode. This information will be imported automatically from the WAV file if present. See [enum LoopMode] constants for values.
</member>
<member name="mix_rate" type="int" setter="set_mix_rate" getter="get_mix_rate" default="44100">
The sample rate for mixing this audio.
@@ -59,13 +59,13 @@
Audio does not loop.
</constant>
<constant name="LOOP_FORWARD" value="1" enum="LoopMode">
- Audio loops the data between [member loop_begin] and [member loop_end] playing forward only.
+ Audio loops the data between [member loop_begin] and [member loop_end], playing forward only.
</constant>
<constant name="LOOP_PING_PONG" value="2" enum="LoopMode">
- Audio loops the data between [member loop_begin] and [member loop_end] playing back and forth.
+ Audio loops the data between [member loop_begin] and [member loop_end], playing back and forth.
</constant>
<constant name="LOOP_BACKWARD" value="3" enum="LoopMode">
- Audio loops the data between [member loop_begin] and [member loop_end] playing backward only.
+ Audio loops the data between [member loop_begin] and [member loop_end], playing backward only.
</constant>
</constants>
</class>
diff --git a/doc/classes/BaseButton.xml b/doc/classes/BaseButton.xml
index 2147b2b4b0..5e908b0e53 100644
--- a/doc/classes/BaseButton.xml
+++ b/doc/classes/BaseButton.xml
@@ -60,6 +60,7 @@
</member>
<member name="keep_pressed_outside" type="bool" setter="set_keep_pressed_outside" getter="is_keep_pressed_outside" default="false">
If [code]true[/code], the button stays pressed when moving the cursor outside the button while pressing it.
+ [b]Note:[/b] This property only affects the button's visual appearance. Signals will be emitted at the same moment regardless of this property's value.
</member>
<member name="pressed" type="bool" setter="set_pressed" getter="is_pressed" default="false">
If [code]true[/code], the button's state is pressed. Means the button is pressed down or toggled (if [member toggle_mode] is active).
diff --git a/doc/classes/BaseMaterial3D.xml b/doc/classes/BaseMaterial3D.xml
index 380e739f46..5bb94d2858 100644
--- a/doc/classes/BaseMaterial3D.xml
+++ b/doc/classes/BaseMaterial3D.xml
@@ -306,6 +306,8 @@
<member name="subsurf_scatter_enabled" type="bool" setter="set_feature" getter="get_feature" default="false">
If [code]true[/code], subsurface scattering is enabled. Emulates light that penetrates an object's surface, is scattered, and then emerges.
</member>
+ <member name="subsurf_scatter_skin_mode" type="bool" setter="set_flag" getter="get_flag">
+ </member>
<member name="subsurf_scatter_strength" type="float" setter="set_subsurface_scattering_strength" getter="get_subsurface_scattering_strength">
The strength of the subsurface scattering effect.
</member>
@@ -591,7 +593,9 @@
<constant name="FLAG_INVERT_HEIGHTMAP" value="17" enum="Flags">
Invert values read from a depth texture to convert them to height values (heightmap).
</constant>
- <constant name="FLAG_MAX" value="18" enum="Flags">
+ <constant name="FLAG_SUBSURFACE_MODE_SKIN" value="18" enum="Flags">
+ </constant>
+ <constant name="FLAG_MAX" value="19" enum="Flags">
Represents the size of the [enum Flags] enum.
</constant>
<constant name="DIFFUSE_BURLEY" value="0" enum="DiffuseMode">
@@ -634,8 +638,8 @@
The object's X axis will always face the camera.
</constant>
<constant name="BILLBOARD_PARTICLES" value="3" enum="BillboardMode">
- Used for particle systems when assigned to [Particles] and [CPUParticles] nodes. Enables [code]particles_anim_*[/code] properties.
- The [member ParticlesMaterial.anim_speed] or [member CPUParticles.anim_speed] should also be set to a positive value for the animation to play.
+ Used for particle systems when assigned to [GPUParticles3D] and [CPUParticles3D] nodes. Enables [code]particles_anim_*[/code] properties.
+ The [member ParticlesMaterial.anim_speed] or [member CPUParticles3D.anim_speed] should also be set to a positive value for the animation to play.
</constant>
<constant name="TEXTURE_CHANNEL_RED" value="0" enum="TextureChannel">
Used to read from the red channel of a texture.
diff --git a/doc/classes/BoneAttachment.xml b/doc/classes/BoneAttachment3D.xml
index d15322254b..ab1e5b17d9 100644
--- a/doc/classes/BoneAttachment.xml
+++ b/doc/classes/BoneAttachment3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="BoneAttachment" inherits="Spatial" version="4.0">
+<class name="BoneAttachment3D" inherits="Node3D" version="4.0">
<brief_description>
A node that will attach to a bone.
</brief_description>
<description>
- This node must be the child of a [Skeleton] node. You can then select a bone for this node to attach to. The BoneAttachment node will copy the transform of the selected bone.
+ This node must be the child of a [Skeleton3D] node. You can then select a bone for this node to attach to. The BoneAttachment3D node will copy the transform of the selected bone.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/BoxShape.xml b/doc/classes/BoxShape3D.xml
index 3a5f05ef79..fd08da148d 100644
--- a/doc/classes/BoxShape.xml
+++ b/doc/classes/BoxShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="BoxShape" inherits="Shape" version="4.0">
+<class name="BoxShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Box shape resource.
</brief_description>
<description>
- 3D box shape that can be a child of a [PhysicsBody] or [Area].
+ 3D box shape that can be a child of a [PhysicsBody3D] or [Area3D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/CPUParticles2D.xml b/doc/classes/CPUParticles2D.xml
index 799ba32075..c2b821699d 100644
--- a/doc/classes/CPUParticles2D.xml
+++ b/doc/classes/CPUParticles2D.xml
@@ -5,7 +5,7 @@
</brief_description>
<description>
CPU-based 2D particle node used to create a variety of particle systems and effects.
- See also [Particles2D], which provides the same functionality with hardware acceleration, but may not run on older devices.
+ See also [GPUParticles2D], which provides the same functionality with hardware acceleration, but may not run on older devices.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/2d/particle_systems_2d.html</link>
@@ -17,7 +17,7 @@
<argument index="0" name="particles" type="Node">
</argument>
<description>
- Sets this node's properties to match a given [Particles2D] node with an assigned [ParticlesMaterial].
+ Sets this node's properties to match a given [GPUParticles2D] node with an assigned [ParticlesMaterial].
</description>
</method>
<method name="get_param" qualifiers="const">
diff --git a/doc/classes/CPUParticles.xml b/doc/classes/CPUParticles3D.xml
index 6a6525e99a..07da066bd9 100644
--- a/doc/classes/CPUParticles.xml
+++ b/doc/classes/CPUParticles3D.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="CPUParticles" inherits="GeometryInstance" version="4.0">
+<class name="CPUParticles3D" inherits="GeometryInstance3D" version="4.0">
<brief_description>
CPU-based 3D particle emitter.
</brief_description>
<description>
CPU-based 3D particle node used to create a variety of particle systems and effects.
- See also [Particles], which provides the same functionality with hardware acceleration, but may not run on older devices.
+ See also [GPUParticles3D], which provides the same functionality with hardware acceleration, but may not run on older devices.
</description>
<tutorials>
</tutorials>
@@ -16,13 +16,13 @@
<argument index="0" name="particles" type="Node">
</argument>
<description>
- Sets this node's properties to match a given [Particles] node with an assigned [ParticlesMaterial].
+ Sets this node's properties to match a given [GPUParticles3D] node with an assigned [ParticlesMaterial].
</description>
</method>
<method name="get_param" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="CPUParticles.Parameter">
+ <argument index="0" name="param" type="int" enum="CPUParticles3D.Parameter">
</argument>
<description>
Returns the base value of the parameter specified by [enum Parameter].
@@ -31,7 +31,7 @@
<method name="get_param_curve" qualifiers="const">
<return type="Curve">
</return>
- <argument index="0" name="param" type="int" enum="CPUParticles.Parameter">
+ <argument index="0" name="param" type="int" enum="CPUParticles3D.Parameter">
</argument>
<description>
Returns the [Curve] of the parameter specified by [enum Parameter].
@@ -40,7 +40,7 @@
<method name="get_param_randomness" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="CPUParticles.Parameter">
+ <argument index="0" name="param" type="int" enum="CPUParticles3D.Parameter">
</argument>
<description>
Returns the randomness factor of the parameter specified by [enum Parameter].
@@ -49,7 +49,7 @@
<method name="get_particle_flag" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="flag" type="int" enum="CPUParticles.Flags">
+ <argument index="0" name="flag" type="int" enum="CPUParticles3D.Flags">
</argument>
<description>
Returns the enabled state of the given flag (see [enum Flags] for options).
@@ -65,7 +65,7 @@
<method name="set_param">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="CPUParticles.Parameter">
+ <argument index="0" name="param" type="int" enum="CPUParticles3D.Parameter">
</argument>
<argument index="1" name="value" type="float">
</argument>
@@ -76,7 +76,7 @@
<method name="set_param_curve">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="CPUParticles.Parameter">
+ <argument index="0" name="param" type="int" enum="CPUParticles3D.Parameter">
</argument>
<argument index="1" name="curve" type="Curve">
</argument>
@@ -87,7 +87,7 @@
<method name="set_param_randomness">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="CPUParticles.Parameter">
+ <argument index="0" name="param" type="int" enum="CPUParticles3D.Parameter">
</argument>
<argument index="1" name="randomness" type="float">
</argument>
@@ -98,7 +98,7 @@
<method name="set_particle_flag">
<return type="void">
</return>
- <argument index="0" name="flag" type="int" enum="CPUParticles.Flags">
+ <argument index="0" name="flag" type="int" enum="CPUParticles3D.Flags">
</argument>
<argument index="1" name="enable" type="bool">
</argument>
@@ -165,7 +165,7 @@
<member name="direction" type="Vector3" setter="set_direction" getter="get_direction" default="Vector3( 1, 0, 0 )">
Unit vector specifying the particles' emission direction.
</member>
- <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="CPUParticles.DrawOrder" default="0">
+ <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="CPUParticles3D.DrawOrder" default="0">
Particle draw order. Uses [enum DrawOrder] values.
</member>
<member name="emission_box_extents" type="Vector3" setter="set_emission_box_extents" getter="get_emission_box_extents">
@@ -180,7 +180,7 @@
<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">
+ <member name="emission_shape" type="int" setter="set_emission_shape" getter="get_emission_shape" enum="CPUParticles3D.EmissionShape" default="0">
Particles will be emitted inside this region. See [enum EmissionShape] for possible values.
</member>
<member name="emission_sphere_radius" type="float" setter="set_emission_sphere_radius" getter="get_emission_sphere_radius">
diff --git a/doc/classes/Camera2D.xml b/doc/classes/Camera2D.xml
index 73892481e6..ad49216b34 100644
--- a/doc/classes/Camera2D.xml
+++ b/doc/classes/Camera2D.xml
@@ -5,7 +5,8 @@
</brief_description>
<description>
Camera node for 2D scenes. It forces the screen (current layer) to scroll following this node. This makes it easier (and faster) to program scrollable scenes than manually changing the position of [CanvasItem]-based nodes.
- This node is intended to be a simple helper to get things going quickly and it may happen that more functionality is desired to change how the camera works. To make your own custom camera node, simply inherit from [Node2D] and change the transform of the canvas by calling get_viewport().set_canvas_transform(m) in [Viewport].
+ This node is intended to be a simple helper to get things going quickly and it may happen that more functionality is desired to change how the camera works. To make your own custom camera node, inherit from [Node2D] and change the transform of the canvas by setting [member Viewport.canvas_transform] in [Viewport] (you can obtain the current [Viewport] by using [method Node.get_viewport]).
+ Note that the [Camera2D] node's [code]position[/code] doesn't represent the actual position of the screen, which may differ due to applied smoothing or limits. You can use [method get_camera_screen_center] to get the real position.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Camera.xml b/doc/classes/Camera3D.xml
index 6097721cbd..bfba23c7ee 100644
--- a/doc/classes/Camera.xml
+++ b/doc/classes/Camera3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Camera" inherits="Spatial" version="4.0">
+<class name="Camera3D" inherits="Node3D" version="4.0">
<brief_description>
Camera node, displays from a point of view.
</brief_description>
<description>
- Camera is a special node that displays what is visible from its current location. Cameras register themselves in the nearest [Viewport] node (when ascending the tree). Only one camera can be active per viewport. If no viewport is available ascending the tree, the camera will register in the global viewport. In other words, a camera just provides 3D display capabilities to a [Viewport], and, without one, a scene registered in that [Viewport] (or higher viewports) can't be displayed.
+ [Camera3D] is a special node that displays what is visible from its current location. Cameras register themselves in the nearest [Viewport] node (when ascending the tree). Only one camera can be active per viewport. If no viewport is available ascending the tree, the camera will register in the global viewport. In other words, a camera just provides 3D display capabilities to a [Viewport], and, without one, a scene registered in that [Viewport] (or higher viewports) can't be displayed.
</description>
<tutorials>
</tutorials>
@@ -22,14 +22,14 @@
<return type="RID">
</return>
<description>
- Returns the camera's RID from the [VisualServer].
+ Returns the camera's RID from the [RenderingServer].
</description>
</method>
<method name="get_camera_transform" qualifiers="const">
<return type="Transform">
</return>
<description>
- Gets the camera transform. Subclassed cameras such as [InterpolatedCamera] may provide different transforms than the [Node] transform.
+ Gets the camera transform. Subclassed cameras such as [ClippedCamera3D] may provide different transforms than the [Node] transform.
</description>
</method>
<method name="get_cull_mask_bit" qualifiers="const">
@@ -172,7 +172,7 @@
<member name="current" type="bool" setter="set_current" getter="is_current" default="false">
If [code]true[/code], the ancestor [Viewport] is currently using this camera.
</member>
- <member name="doppler_tracking" type="int" setter="set_doppler_tracking" getter="get_doppler_tracking" enum="Camera.DopplerTracking" default="0">
+ <member name="doppler_tracking" type="int" setter="set_doppler_tracking" getter="get_doppler_tracking" enum="Camera3D.DopplerTracking" default="0">
If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for objects changed in particular [code]_process[/code] methods. See [enum DopplerTracking] for possible values.
</member>
<member name="effects" type="CameraEffects" setter="set_effects" getter="get_effects">
@@ -192,13 +192,13 @@
<member name="h_offset" type="float" setter="set_h_offset" getter="get_h_offset" default="0.0">
The horizontal (X) offset of the camera viewport.
</member>
- <member name="keep_aspect" type="int" setter="set_keep_aspect_mode" getter="get_keep_aspect_mode" enum="Camera.KeepAspect" default="1">
+ <member name="keep_aspect" type="int" setter="set_keep_aspect_mode" getter="get_keep_aspect_mode" enum="Camera3D.KeepAspect" default="1">
The axis to lock during [member fov]/[member size] adjustments. Can be either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT].
</member>
<member name="near" type="float" setter="set_znear" getter="get_znear" default="0.05">
The distance to the near culling boundary for this camera relative to its local Z axis.
</member>
- <member name="projection" type="int" setter="set_projection" getter="get_projection" enum="Camera.Projection" default="0">
+ <member name="projection" type="int" setter="set_projection" getter="get_projection" enum="Camera3D.Projection" default="0">
The camera's projection mode. In [constant PROJECTION_PERSPECTIVE] mode, objects' Z distance from the camera's local space scales their perceived size.
</member>
<member name="size" type="float" setter="set_size" getter="get_size" default="1.0">
diff --git a/doc/classes/CameraFeed.xml b/doc/classes/CameraFeed.xml
index 3232f5970c..4fc124592f 100644
--- a/doc/classes/CameraFeed.xml
+++ b/doc/classes/CameraFeed.xml
@@ -4,7 +4,7 @@
A camera feed gives you access to a single physical camera attached to your device.
</brief_description>
<description>
- A camera feed gives you access to a single physical camera attached to your device. When enabled, Godot will start capturing frames from the camera which can then be used.
+ A camera feed gives you access to a single physical camera attached to your device. When enabled, Godot will start capturing frames from the camera which can then be used. See also [CameraServer].
[b]Note:[/b] Many cameras will return YCbCr images which are split into two textures and need to be combined in a shader. Godot does this automatically for you if you set the environment to show the camera image in the background.
</description>
<tutorials>
diff --git a/doc/classes/CameraServer.xml b/doc/classes/CameraServer.xml
index 82d1faf716..e00dc031dc 100644
--- a/doc/classes/CameraServer.xml
+++ b/doc/classes/CameraServer.xml
@@ -6,6 +6,7 @@
<description>
The [CameraServer] keeps track of different cameras accessible in Godot. These are external cameras such as webcams or the cameras on your phone.
It is notably used to provide AR modules with a video feed from the camera.
+ [b]Note:[/b] This class is currently only implemented on macOS and iOS. On other platforms, no [CameraFeed]s will be available.
</description>
<tutorials>
</tutorials>
@@ -16,7 +17,7 @@
<argument index="0" name="feed" type="CameraFeed">
</argument>
<description>
- Adds a camera feed to the camera server.
+ Adds the camera [code]feed[/code] to the camera server.
</description>
</method>
<method name="feeds">
@@ -32,7 +33,7 @@
<argument index="0" name="index" type="int">
</argument>
<description>
- Returns the [CameraFeed] with this id.
+ Returns the [CameraFeed] corresponding to the camera with the given [code]index[/code].
</description>
</method>
<method name="get_feed_count">
@@ -48,7 +49,7 @@
<argument index="0" name="feed" type="CameraFeed">
</argument>
<description>
- Removes a [CameraFeed].
+ Removes the specified camera [code]feed[/code].
</description>
</method>
</methods>
@@ -57,14 +58,14 @@
<argument index="0" name="id" type="int">
</argument>
<description>
- Emitted when a [CameraFeed] is added (e.g. webcam is plugged in).
+ Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in).
</description>
</signal>
<signal name="camera_feed_removed">
<argument index="0" name="id" type="int">
</argument>
<description>
- Emitted when a [CameraFeed] is removed (e.g. webcam is unplugged).
+ Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged).
</description>
</signal>
</signals>
@@ -73,7 +74,7 @@
The RGBA camera image.
</constant>
<constant name="FEED_YCBCR_IMAGE" value="0" enum="FeedImage">
- The YCbCr camera image.
+ The [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url] camera image.
</constant>
<constant name="FEED_Y_IMAGE" value="0" enum="FeedImage">
The Y component camera image.
diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml
index 73ba8b392f..f2ce2a6fb9 100644
--- a/doc/classes/CanvasItem.xml
+++ b/doc/classes/CanvasItem.xml
@@ -426,7 +426,7 @@
<return type="RID">
</return>
<description>
- Returns the canvas item RID used by [VisualServer] for this item.
+ Returns the canvas item RID used by [RenderingServer] for this item.
</description>
</method>
<method name="get_canvas_transform" qualifiers="const">
diff --git a/doc/classes/CanvasItemMaterial.xml b/doc/classes/CanvasItemMaterial.xml
index ffe2272260..c2d44c1d17 100644
--- a/doc/classes/CanvasItemMaterial.xml
+++ b/doc/classes/CanvasItemMaterial.xml
@@ -18,7 +18,7 @@
The manner in which material reacts to lighting.
</member>
<member name="particles_anim_h_frames" type="int" setter="set_particles_anim_h_frames" getter="get_particles_anim_h_frames">
- The number of columns in the spritesheet assigned as [Texture2D] for a [Particles2D] or [CPUParticles2D].
+ The number of columns in the spritesheet assigned as [Texture2D] for a [GPUParticles2D] or [CPUParticles2D].
[b]Note:[/b] This property is only used and visible in the editor if [member particles_animation] is [code]true[/code].
</member>
<member name="particles_anim_loop" type="bool" setter="set_particles_anim_loop" getter="get_particles_anim_loop">
@@ -26,11 +26,11 @@
[b]Note:[/b] This property is only used and visible in the editor if [member particles_animation] is [code]true[/code].
</member>
<member name="particles_anim_v_frames" type="int" setter="set_particles_anim_v_frames" getter="get_particles_anim_v_frames">
- The number of rows in the spritesheet assigned as [Texture2D] for a [Particles2D] or [CPUParticles2D].
+ The number of rows in the spritesheet assigned as [Texture2D] for a [GPUParticles2D] or [CPUParticles2D].
[b]Note:[/b] This property is only used and visible in the editor if [member particles_animation] is [code]true[/code].
</member>
<member name="particles_animation" type="bool" setter="set_particles_animation" getter="get_particles_animation" default="false">
- If [code]true[/code], enable spritesheet-based animation features when assigned to [Particles2D] and [CPUParticles2D] nodes. The [member ParticlesMaterial.anim_speed] or [member CPUParticles2D.anim_speed] should also be set to a positive value for the animation to play.
+ If [code]true[/code], enable spritesheet-based animation features when assigned to [GPUParticles2D] and [CPUParticles2D] nodes. The [member ParticlesMaterial.anim_speed] or [member CPUParticles2D.anim_speed] should also be set to a positive value for the animation to play.
This property (and other [code]particles_anim_*[/code] properties that depend on it) has no effect on other types of nodes.
</member>
</members>
diff --git a/doc/classes/CapsuleShape.xml b/doc/classes/CapsuleShape3D.xml
index c83e832281..f56d94dc63 100644
--- a/doc/classes/CapsuleShape.xml
+++ b/doc/classes/CapsuleShape3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="CapsuleShape" inherits="Shape" version="4.0">
+<class name="CapsuleShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Capsule shape for collisions.
</brief_description>
diff --git a/doc/classes/ClippedCamera.xml b/doc/classes/ClippedCamera3D.xml
index 4cdc098c2f..58ecec828d 100644
--- a/doc/classes/ClippedCamera.xml
+++ b/doc/classes/ClippedCamera3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ClippedCamera" inherits="Camera" version="4.0">
+<class name="ClippedCamera3D" inherits="Camera3D" version="4.0">
<brief_description>
- A [Camera] that includes collision.
+ A [Camera3D] that includes collision.
</brief_description>
<description>
- This node extends [Camera] to add collisions with [Area] and/or [PhysicsBody] nodes. The camera cannot move through colliding objects.
+ This node extends [Camera3D] to add collisions with [Area3D] and/or [PhysicsBody3D] nodes. The camera cannot move through colliding objects.
</description>
<tutorials>
</tutorials>
@@ -84,10 +84,10 @@
</methods>
<members>
<member name="clip_to_areas" type="bool" setter="set_clip_to_areas" getter="is_clip_to_areas_enabled" default="false">
- If [code]true[/code], the camera stops on contact with [Area]s.
+ If [code]true[/code], the camera stops on contact with [Area3D]s.
</member>
<member name="clip_to_bodies" type="bool" setter="set_clip_to_bodies" getter="is_clip_to_bodies_enabled" default="true">
- If [code]true[/code], the camera stops on contact with [PhysicsBody]s.
+ If [code]true[/code], the camera stops on contact with [PhysicsBody3D]s.
</member>
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="1">
The camera's collision mask. Only objects in at least one collision layer matching the mask will be detected.
@@ -95,7 +95,7 @@
<member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0">
The camera's collision margin. The camera can't get closer than this distance to a colliding object.
</member>
- <member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="ClippedCamera.ProcessMode" default="0">
+ <member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="ClippedCamera3D.ProcessMode" default="0">
The camera's process callback. See [enum ProcessMode].
</member>
</members>
diff --git a/doc/classes/CollisionObject.xml b/doc/classes/CollisionObject3D.xml
index 34758d71b2..f8e897653d 100644
--- a/doc/classes/CollisionObject.xml
+++ b/doc/classes/CollisionObject3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="CollisionObject" inherits="Spatial" version="4.0">
+<class name="CollisionObject3D" inherits="Node3D" version="4.0">
<brief_description>
Base node for collision objects.
</brief_description>
<description>
- CollisionObject is the base class for physics objects. It can hold any number of collision [Shape]s. Each shape must be assigned to a [i]shape owner[/i]. The CollisionObject can have any number of shape owners. Shape owners are not nodes and do not appear in the editor, but are accessible through code using the [code]shape_owner_*[/code] methods.
+ CollisionObject3D is the base class for physics objects. It can hold any number of collision [Shape3D]s. Each shape must be assigned to a [i]shape owner[/i]. The CollisionObject3D can have any number of shape owners. Shape owners are not nodes and do not appear in the editor, but are accessible through code using the [code]shape_owner_*[/code] methods.
</description>
<tutorials>
</tutorials>
@@ -23,7 +23,7 @@
<argument index="4" name="shape_idx" type="int">
</argument>
<description>
- Accepts unhandled [InputEvent]s. [code]click_position[/code] is the clicked location in world space and [code]click_normal[/code] is the normal vector extending from the clicked surface of the [Shape] at [code]shape_idx[/code]. Connect to the [code]input_event[/code] signal to easily pick up these events.
+ Accepts unhandled [InputEvent]s. [code]click_position[/code] is the clicked location in world space and [code]click_normal[/code] is the normal vector extending from the clicked surface of the [Shape3D] at [code]shape_idx[/code]. Connect to the [code]input_event[/code] signal to easily pick up these events.
</description>
</method>
<method name="create_shape_owner">
@@ -81,10 +81,10 @@
</return>
<argument index="0" name="owner_id" type="int">
</argument>
- <argument index="1" name="shape" type="Shape">
+ <argument index="1" name="shape" type="Shape3D">
</argument>
<description>
- Adds a [Shape] to the shape owner.
+ Adds a [Shape3D] to the shape owner.
</description>
</method>
<method name="shape_owner_clear_shapes">
@@ -106,14 +106,14 @@
</description>
</method>
<method name="shape_owner_get_shape" qualifiers="const">
- <return type="Shape">
+ <return type="Shape3D">
</return>
<argument index="0" name="owner_id" type="int">
</argument>
<argument index="1" name="shape_id" type="int">
</argument>
<description>
- Returns the [Shape] with the given id from the given shape owner.
+ Returns the [Shape3D] with the given id from the given shape owner.
</description>
</method>
<method name="shape_owner_get_shape_count" qualifiers="const">
@@ -133,7 +133,7 @@
<argument index="1" name="shape_id" type="int">
</argument>
<description>
- Returns the child index of the [Shape] with the given id from the given shape owner.
+ Returns the child index of the [Shape3D] with the given id from the given shape owner.
</description>
</method>
<method name="shape_owner_get_transform" qualifiers="const">
@@ -181,10 +181,10 @@
</methods>
<members>
<member name="input_capture_on_drag" type="bool" setter="set_capture_input_on_drag" getter="get_capture_input_on_drag" default="false">
- If [code]true[/code], the [CollisionObject] will continue to receive input events as the mouse is dragged across its shapes.
+ If [code]true[/code], the [CollisionObject3D] will continue to receive input events as the mouse is dragged across its shapes.
</member>
<member name="input_ray_pickable" type="bool" setter="set_ray_pickable" getter="is_ray_pickable" default="true">
- If [code]true[/code], the [CollisionObject]'s shapes will respond to [RayCast]s.
+ If [code]true[/code], the [CollisionObject3D]'s shapes will respond to [RayCast3D]s.
</member>
</members>
<signals>
diff --git a/doc/classes/CollisionPolygon.xml b/doc/classes/CollisionPolygon3D.xml
index 8aceec17a8..dd3c57d1d0 100644
--- a/doc/classes/CollisionPolygon.xml
+++ b/doc/classes/CollisionPolygon3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="CollisionPolygon" inherits="Spatial" version="4.0">
+<class name="CollisionPolygon3D" inherits="Node3D" version="4.0">
<brief_description>
Editor-only class for defining a collision polygon in 3D space.
</brief_description>
<description>
- Allows editing a collision polygon's vertices on a selected plane. Can also set a depth perpendicular to that plane. This class is only available in the editor. It will not appear in the scene tree at run-time. Creates a [Shape] for gameplay. Properties modified during gameplay will have no effect.
+ Allows editing a collision polygon's vertices on a selected plane. Can also set a depth perpendicular to that plane. This class is only available in the editor. It will not appear in the scene tree at run-time. Creates a [Shape3D] for gameplay. Properties modified during gameplay will have no effect.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/CollisionShape.xml b/doc/classes/CollisionShape3D.xml
index 7787bf957d..76515a65a7 100644
--- a/doc/classes/CollisionShape.xml
+++ b/doc/classes/CollisionShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="CollisionShape" inherits="Spatial" version="4.0">
+<class name="CollisionShape3D" inherits="Node3D" version="4.0">
<brief_description>
Node that represents collision shape data in 3D space.
</brief_description>
<description>
- Editor facility for creating and editing collision shapes in 3D space. You can use this node to represent all sorts of collision shapes, for example, add this to an [Area] to give it a detection shape, or add it to a [PhysicsBody] to create a solid object. [b]IMPORTANT[/b]: this is an Editor-only helper to create shapes, use [method CollisionObject.shape_owner_get_shape] to get the actual shape.
+ Editor facility for creating and editing collision shapes in 3D space. You can use this node to represent all sorts of collision shapes, for example, add this to an [Area3D] to give it a detection shape, or add it to a [PhysicsBody3D] to create a solid object. [b]IMPORTANT[/b]: this is an Editor-only helper to create shapes, use [method CollisionObject3D.shape_owner_get_shape] to get the actual shape.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html</link>
@@ -14,7 +14,7 @@
<return type="void">
</return>
<description>
- Sets the collision shape's shape to the addition of all its convexed [MeshInstance] siblings geometry.
+ Sets the collision shape's shape to the addition of all its convexed [MeshInstance3D] siblings geometry.
</description>
</method>
<method name="resource_changed">
@@ -31,7 +31,7 @@
<member name="disabled" type="bool" setter="set_disabled" getter="is_disabled" default="false">
A disabled collision shape has no effect in the world.
</member>
- <member name="shape" type="Shape" setter="set_shape" getter="get_shape">
+ <member name="shape" type="Shape3D" setter="set_shape" getter="get_shape">
The actual shape owned by this collision shape.
</member>
</members>
diff --git a/doc/classes/Color.xml b/doc/classes/Color.xml
index 8587acade3..d495be2ffd 100644
--- a/doc/classes/Color.xml
+++ b/doc/classes/Color.xml
@@ -5,7 +5,8 @@
</brief_description>
<description>
A color is represented by red, green, and blue [code](r, g, b)[/code] components. Additionally, [code]a[/code] represents the alpha component, often used for transparency. Values are in floating-point and usually range from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may accept values greater than 1.
- You can also create a color from standardized color names by using [method @GDScript.ColorN] or directly using the color constants defined here. The standardized color set is based on the [url=https://en.wikipedia.org/wiki/X11_color_names]X11 color names[/url].
+ You can also create a color from standardized color names by using [method @GDScript.ColorN] or directly using the color constants defined here. The standardized color set is based on the [url=https://en.wikipedia.org/wiki/X11_color_names]X11 color names[/url].
+ If you want to supply values in a range of 0 to 255, you should use [method @GDScript.Color8].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/ConcavePolygonShape.xml b/doc/classes/ConcavePolygonShape3D.xml
index 47f2276c63..20402d350a 100644
--- a/doc/classes/ConcavePolygonShape.xml
+++ b/doc/classes/ConcavePolygonShape3D.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ConcavePolygonShape" inherits="Shape" version="4.0">
+<class name="ConcavePolygonShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Concave polygon shape.
</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.
+ Concave polygon shape resource, which can be set into a [PhysicsBody3D] or area. This shape is created by feeding a list of triangles.
+ Note: when used for collision, [ConcavePolygonShape3D] is intended to work with static [PhysicsBody3D] nodes like [StaticBody3D] and will not work with [KinematicBody3D] or [RigidBody3D] with a mode other than Static.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/ConeTwistJoint.xml b/doc/classes/ConeTwistJoint3D.xml
index 8682391a73..e86e95bec3 100644
--- a/doc/classes/ConeTwistJoint.xml
+++ b/doc/classes/ConeTwistJoint3D.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ConeTwistJoint" inherits="Joint" version="4.0">
+<class name="ConeTwistJoint3D" inherits="Joint3D" version="4.0">
<brief_description>
A twist joint between two 3D bodies.
</brief_description>
<description>
- The joint can rotate the bodies across an axis defined by the local x-axes of the [Joint].
- The twist axis is initiated as the X axis of the [Joint].
- Once the Bodies swing, the twist axis is calculated as the middle of the x-axes of the Joint in the local space of the two Bodies.
+ The joint can rotate the bodies across an axis defined by the local x-axes of the [Joint3D].
+ The twist axis is initiated as the X axis of the [Joint3D].
+ Once the Bodies swing, the twist axis is calculated as the middle of the x-axes of the Joint3D in the local space of the two Bodies.
</description>
<tutorials>
</tutorials>
@@ -14,7 +14,7 @@
<method name="get_param" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="ConeTwistJoint.Param">
+ <argument index="0" name="param" type="int" enum="ConeTwistJoint3D.Param">
</argument>
<description>
</description>
@@ -22,7 +22,7 @@
<method name="set_param">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="ConeTwistJoint.Param">
+ <argument index="0" name="param" type="int" enum="ConeTwistJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
@@ -44,7 +44,7 @@
<member name="swing_span" type="float" setter="_set_swing_span" getter="_get_swing_span" default="45.0">
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 along the swing axis.
- Could be defined as looseness in the [ConeTwistJoint].
+ Could be defined as looseness in the [ConeTwistJoint3D].
If below 0.05, this behavior is locked.
</member>
<member name="twist_span" type="float" setter="_set_twist_span" getter="_get_twist_span" default="180.0">
@@ -56,7 +56,7 @@
<constant name="PARAM_SWING_SPAN" value="0" enum="Param">
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 along the swing axis.
- Could be defined as looseness in the [ConeTwistJoint].
+ Could be defined as looseness in the [ConeTwistJoint3D].
If below 0.05, this behavior is locked.
</constant>
<constant name="PARAM_TWIST_SPAN" value="1" enum="Param">
diff --git a/doc/classes/ConfigFile.xml b/doc/classes/ConfigFile.xml
index a16326d55a..522d484131 100644
--- a/doc/classes/ConfigFile.xml
+++ b/doc/classes/ConfigFile.xml
@@ -8,7 +8,7 @@
[codeblock]
[section]
some_key=42
- string_example="Hello World!"
+ string_example="Hello World3D!"
a_vector=Vector3( 1, 0, 2 )
[/codeblock]
The stored data can be saved to or parsed from a file, though ConfigFile objects can also be used directly without accessing the filesystem.
diff --git a/doc/classes/ConfirmationDialog.xml b/doc/classes/ConfirmationDialog.xml
index 801d9508dd..6d5871508b 100644
--- a/doc/classes/ConfirmationDialog.xml
+++ b/doc/classes/ConfirmationDialog.xml
@@ -22,8 +22,9 @@
</method>
</methods>
<members>
- <member name="rect_min_size" type="Vector2" setter="set_custom_minimum_size" getter="get_custom_minimum_size" override="true" default="Vector2( 200, 70 )" />
- <member name="window_title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Please Confirm...&quot;" />
+ <member name="min_size" type="Vector2i" setter="set_min_size" getter="get_min_size" override="true" default="Vector2i( 200, 70 )" />
+ <member name="size" type="Vector2i" setter="set_size" getter="get_size" override="true" default="Vector2i( 200, 100 )" />
+ <member name="title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Please Confirm...&quot;" />
</members>
<constants>
</constants>
diff --git a/doc/classes/Control.xml b/doc/classes/Control.xml
index 89db5baf8a..0c8d42021a 100644
--- a/doc/classes/Control.xml
+++ b/doc/classes/Control.xml
@@ -7,10 +7,12 @@
Base class for all UI-related nodes. [Control] features a bounding rectangle that defines its extents, an anchor position relative to its parent control or the current viewport, and margins that represent an offset to the anchor. The margins update automatically when the node, any of its parents, or the screen size change.
For more information on Godot's UI system, anchors, margins, and containers, see the related tutorials in the manual. To build flexible UIs, you'll need a mix of UI elements that inherit from [Control] and [Container] nodes.
[b]User Interface nodes and input[/b]
- Godot sends input events to the scene's root node first, by calling [method Node._input]. [method Node._input] forwards the event down the node tree to the nodes under the mouse cursor, or on keyboard focus. To do so, it calls [method MainLoop._input_event]. Call [method accept_event] so no other node receives the event. Once you accepted an input, it becomes handled so [method Node._unhandled_input] will not process it.
+ Godot sends input events to the scene's root node first, by calling [method Node._input]. [method Node._input] forwards the event down the node tree to the nodes under the mouse cursor, or on keyboard focus. To do so, it calls [code]MainLoop._input_event[/code].
+ [b]FIXME:[/b] No longer valid after DisplayServer split and Input refactoring.
+ Call [method accept_event] so no other node receives the event. Once you accepted an input, it becomes handled so [method Node._unhandled_input] will not process it.
Only one [Control] node can be in keyboard focus. Only the node in focus will receive keyboard events. To get the focus, call [method grab_focus]. [Control] nodes lose focus when another node grabs it, or if you hide the node in focus.
Sets [member mouse_filter] to [constant MOUSE_FILTER_IGNORE] to tell a [Control] node to ignore mouse or touch events. You'll need it if you place an icon on top of a button.
- [Theme] resources change the Control's appearance. If you change the [Theme] on a [Control] node, it affects all of its children. To override some of the theme's parameters, call one of the [code]add_*_override[/code] methods, like [method add_font_override]. You can override the theme with the inspector.
+ [Theme] resources change the Control's appearance. If you change the [Theme] on a [Control] node, it affects all of its children. To override some of the theme's parameters, call one of the [code]add_theme_*_override[/code] methods, like [method add_theme_font_override]. You can override the theme with the inspector.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/gui/index.html</link>
@@ -87,7 +89,7 @@
Marks an input event as handled. Once you accept an input event, it stops propagating, even to nodes listening to [method Node._unhandled_input] or [method Node._unhandled_key_input].
</description>
</method>
- <method name="add_color_override">
+ <method name="add_theme_color_override">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
@@ -98,7 +100,7 @@
Overrides the [Color] with given [code]name[/code] in the [member theme] resource the control uses. If the [code]color[/code] is empty or invalid, the override is cleared and the color from assigned [Theme] is used.
</description>
</method>
- <method name="add_constant_override">
+ <method name="add_theme_constant_override">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
@@ -109,7 +111,7 @@
Overrides an integer constant with given [code]name[/code] in the [member theme] resource the control uses. If the [code]constant[/code] is empty or invalid, the override is cleared and the constant from assigned [Theme] is used.
</description>
</method>
- <method name="add_font_override">
+ <method name="add_theme_font_override">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
@@ -120,7 +122,7 @@
Overrides the font with given [code]name[/code] in the [member theme] resource the control uses. If [code]font[/code] is empty or invalid, the override is cleared and the font from assigned [Theme] is used.
</description>
</method>
- <method name="add_icon_override">
+ <method name="add_theme_icon_override">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
@@ -131,7 +133,7 @@
Overrides the icon with given [code]name[/code] in the [member theme] resource the control uses. If [code]icon[/code] is empty or invalid, the override is cleared and the icon from assigned [Theme] is used.
</description>
</method>
- <method name="add_shader_override">
+ <method name="add_theme_shader_override">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
@@ -142,7 +144,7 @@
Overrides the [Shader] with given [code]name[/code] in the [member theme] resource the control uses. If [code]shader[/code] is empty or invalid, the override is cleared and the shader from assigned [Theme] is used.
</description>
</method>
- <method name="add_stylebox_override">
+ <method name="add_theme_stylebox_override">
<return type="void">
</return>
<argument index="0" name="name" type="StringName">
@@ -217,21 +219,6 @@
Returns [member margin_left] and [member margin_top]. See also [member rect_position].
</description>
</method>
- <method name="get_color" qualifiers="const">
- <return type="Color">
- </return>
- <argument index="0" name="name" type="StringName">
- </argument>
- <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].
- [codeblock]
- func _ready():
- modulate = get_color("font_color", "Button") #get the color defined for button fonts
- [/codeblock]
- </description>
- </method>
<method name="get_combined_minimum_size" qualifiers="const">
<return type="Vector2">
</return>
@@ -239,17 +226,6 @@
Returns combined minimum size from [member rect_min_size] and [method get_minimum_size].
</description>
</method>
- <method name="get_constant" qualifiers="const">
- <return type="int">
- </return>
- <argument index="0" name="name" type="StringName">
- </argument>
- <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].
- </description>
- </method>
<method name="get_cursor_shape" qualifiers="const">
<return type="int" enum="Control.CursorShape">
</return>
@@ -298,17 +274,6 @@
Returns the control that has the keyboard focus or [code]null[/code] if none.
</description>
</method>
- <method name="get_font" qualifiers="const">
- <return type="Font">
- </return>
- <argument index="0" name="name" type="StringName">
- </argument>
- <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].
- </description>
- </method>
<method name="get_global_rect" qualifiers="const">
<return type="Rect2">
</return>
@@ -316,17 +281,6 @@
Returns the position and size of the control relative to the top-left corner of the screen. See [member rect_position] and [member rect_size].
</description>
</method>
- <method name="get_icon" qualifiers="const">
- <return type="Texture2D">
- </return>
- <argument index="0" name="name" type="StringName">
- </argument>
- <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].
- </description>
- </method>
<method name="get_margin" qualifiers="const">
<return type="float">
</return>
@@ -371,7 +325,55 @@
Returns the rotation (in radians).
</description>
</method>
- <method name="get_stylebox" qualifiers="const">
+ <method name="get_theme_color" qualifiers="const">
+ <return type="Color">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <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].
+ [codeblock]
+ func _ready():
+ modulate = get_theme_color("font_color", "Button") #get the color defined for button fonts
+ [/codeblock]
+ </description>
+ </method>
+ <method name="get_theme_constant" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <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].
+ </description>
+ </method>
+ <method name="get_theme_font" qualifiers="const">
+ <return type="Font">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <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].
+ </description>
+ </method>
+ <method name="get_theme_icon" qualifiers="const">
+ <return type="Texture2D">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <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].
+ </description>
+ </method>
+ <method name="get_theme_stylebox" qualifiers="const">
<return type="StyleBox">
</return>
<argument index="0" name="name" type="StringName">
@@ -409,7 +411,25 @@
Steal the focus from another control and become the focused control (see [member focus_mode]).
</description>
</method>
- <method name="has_color" qualifiers="const">
+ <method name="has_focus" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ Returns [code]true[/code] if this is the current focused control. See [member focus_mode].
+ </description>
+ </method>
+ <method name="has_point" qualifiers="virtual">
+ <return type="bool">
+ </return>
+ <argument index="0" name="point" type="Vector2">
+ </argument>
+ <description>
+ Virtual method to be implemented by the user. Returns whether the given [code]point[/code] is inside this control.
+ If not overridden, default behavior is checking if the point is within control's Rect.
+ [b]Note:[/b] If you want to check if a point is inside the control, you can use [code]get_rect().has_point(point)[/code].
+ </description>
+ </method>
+ <method name="has_theme_color" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -420,7 +440,7 @@
Returns [code]true[/code] if [Color] with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
</description>
</method>
- <method name="has_color_override" qualifiers="const">
+ <method name="has_theme_color_override" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -429,7 +449,7 @@
Returns [code]true[/code] if [Color] with given [code]name[/code] has a valid override in this [Control] node.
</description>
</method>
- <method name="has_constant" qualifiers="const">
+ <method name="has_theme_constant" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -440,7 +460,7 @@
Returns [code]true[/code] if constant with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
</description>
</method>
- <method name="has_constant_override" qualifiers="const">
+ <method name="has_theme_constant_override" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -449,14 +469,7 @@
Returns [code]true[/code] if constant with given [code]name[/code] has a valid override in this [Control] node.
</description>
</method>
- <method name="has_focus" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if this is the current focused control. See [member focus_mode].
- </description>
- </method>
- <method name="has_font" qualifiers="const">
+ <method name="has_theme_font" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -467,7 +480,7 @@
Returns [code]true[/code] if font with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
</description>
</method>
- <method name="has_font_override" qualifiers="const">
+ <method name="has_theme_font_override" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -476,7 +489,7 @@
Returns [code]true[/code] if font with given [code]name[/code] has a valid override in this [Control] node.
</description>
</method>
- <method name="has_icon" qualifiers="const">
+ <method name="has_theme_icon" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -487,7 +500,7 @@
Returns [code]true[/code] if icon with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
</description>
</method>
- <method name="has_icon_override" qualifiers="const">
+ <method name="has_theme_icon_override" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -496,18 +509,7 @@
Returns [code]true[/code] if icon with given [code]name[/code] has a valid override in this [Control] node.
</description>
</method>
- <method name="has_point" qualifiers="virtual">
- <return type="bool">
- </return>
- <argument index="0" name="point" type="Vector2">
- </argument>
- <description>
- Virtual method to be implemented by the user. Returns whether the given [code]point[/code] is inside this control.
- If not overridden, default behavior is checking if the point is within control's Rect.
- [b]Note:[/b] If you want to check if a point is inside the control, you can use [code]get_rect().has_point(point)[/code].
- </description>
- </method>
- <method name="has_shader_override" qualifiers="const">
+ <method name="has_theme_shader_override" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -516,7 +518,7 @@
Returns [code]true[/code] if [Shader] with given [code]name[/code] has a valid override in this [Control] node.
</description>
</method>
- <method name="has_stylebox" qualifiers="const">
+ <method name="has_theme_stylebox" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -527,7 +529,7 @@
Returns [code]true[/code] if [StyleBox] with given [code]name[/code] and associated with [Control] of given [code]type[/code] exists in assigned [Theme].
</description>
</method>
- <method name="has_stylebox_override" qualifiers="const">
+ <method name="has_theme_stylebox_override" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="name" type="StringName">
@@ -757,16 +759,6 @@
If [code]keep_margins[/code] is [code]true[/code], control's anchors will be updated instead of margins.
</description>
</method>
- <method name="show_modal">
- <return type="void">
- </return>
- <argument index="0" name="exclusive" type="bool" default="false">
- </argument>
- <description>
- Displays a control as modal. Control must be a subwindow. Modal controls capture the input signals until closed or the area outside them is accessed. When a modal control loses focus, or the ESC key is pressed, they automatically hide. Modal controls are used extensively for popup dialogs and menus.
- If [code]exclusive[/code] is [code]true[/code], other controls will not receive input and clicking outside this control will not close it.
- </description>
- </method>
<method name="warp_mouse">
<return type="void">
</return>
@@ -846,7 +838,7 @@
Controls whether the control will be able to receive mouse button input events through [method _gui_input] and how these events should be handled. Also controls whether the control can receive the [signal mouse_entered], and [signal mouse_exited] signals. See the constants to learn what each does.
</member>
<member name="rect_clip_content" type="bool" setter="set_clip_contents" getter="is_clipping_contents" default="false">
- Enables whether rendering of children should be clipped to this control's rectangle. If [code]true[/code], parts of a child which would be visibly outside of this control's rectangle will not be rendered.
+ Enables whether rendering of [CanvasItem] based children should be clipped to this control's rectangle. If [code]true[/code], parts of a child which would be visibly outside of this control's rectangle will not be rendered.
</member>
<member name="rect_global_position" type="Vector2" setter="_set_global_position" getter="get_global_position">
The node's global position, relative to the world (usually to the top-left corner of the window).
@@ -905,11 +897,6 @@
Emitted when the node's minimum size changes.
</description>
</signal>
- <signal name="modal_closed">
- <description>
- Emitted when a modal [Control] is closed. See [method show_modal].
- </description>
- </signal>
<signal name="mouse_entered">
<description>
Emitted when the mouse enters the control's [code]Rect[/code] area, provided its [member mouse_filter] lets the event reach it.
@@ -930,6 +917,10 @@
Emitted when one of the size flags changes. See [member size_flags_horizontal] and [member size_flags_vertical].
</description>
</signal>
+ <signal name="theme_changed">
+ <description>
+ </description>
+ </signal>
</signals>
<constants>
<constant name="FOCUS_NONE" value="0" enum="FocusMode">
@@ -957,10 +948,7 @@
Sent when the node loses focus.
</constant>
<constant name="NOTIFICATION_THEME_CHANGED" value="45">
- Sent when the node's [member theme] changes, right before Godot redraws the control. Happens when you call one of the [code]add_*_override[/code] methods.
- </constant>
- <constant name="NOTIFICATION_MODAL_CLOSE" value="46">
- Sent when an open modal dialog closes. See [method show_modal].
+ Sent when the node's [member theme] changes, right before Godot redraws the control. Happens when you call one of the [code]add_theme_*_override[/code] methods.
</constant>
<constant name="NOTIFICATION_SCROLL_BEGIN" value="47">
Sent when this node is inside a [ScrollContainer] which has begun being scrolled.
diff --git a/doc/classes/ConvexPolygonShape.xml b/doc/classes/ConvexPolygonShape3D.xml
index 077bb57a03..c036f80e2d 100644
--- a/doc/classes/ConvexPolygonShape.xml
+++ b/doc/classes/ConvexPolygonShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ConvexPolygonShape" inherits="Shape" version="4.0">
+<class name="ConvexPolygonShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Convex polygon shape for 3D physics.
</brief_description>
<description>
- Convex polygon shape resource, which can be added to a [PhysicsBody] or area.
+ Convex polygon shape resource, which can be added to a [PhysicsBody3D] or area.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Curve3D.xml b/doc/classes/Curve3D.xml
index 5024cdefbd..fe454d90cc 100644
--- a/doc/classes/Curve3D.xml
+++ b/doc/classes/Curve3D.xml
@@ -4,7 +4,7 @@
Describes a Bézier curve in 3D space.
</brief_description>
<description>
- This class describes a Bézier curve in 3D space. It is mainly used to give a shape to a [Path], but can be manually sampled for other purposes.
+ This class describes a Bézier curve in 3D space. It is mainly used to give a shape to a [Path3D], but can be manually sampled for other purposes.
It keeps a cache of precalculated points along the curve, to speed up further calculations.
</description>
<tutorials>
@@ -223,7 +223,7 @@
</argument>
<description>
Sets the tilt angle in radians for the point [code]idx[/code]. If the index is out of bounds, the function sends an error to the console.
- The tilt controls the rotation along the look-at axis an object traveling the path would have. In the case of a curve controlling a [PathFollow], this tilt is an offset over the natural tilt the [PathFollow] calculates.
+ The tilt controls the rotation along the look-at axis an object traveling the path would have. In the case of a curve controlling a [PathFollow3D], this tilt is an offset over the natural tilt the [PathFollow3D] calculates.
</description>
</method>
<method name="tessellate" qualifiers="const">
@@ -246,7 +246,7 @@
The distance in meters between two adjacent cached points. Changing it forces the cache to be recomputed the next time the [method get_baked_points] or [method get_baked_length] function is called. The smaller the distance, the more points in the cache and the more memory it will consume, so use with care.
</member>
<member name="up_vector_enabled" type="bool" setter="set_up_vector_enabled" getter="is_up_vector_enabled" default="true">
- If [code]true[/code], the curve will bake up vectors used for orientation. This is used when [member PathFollow.rotation_mode] is set to [constant PathFollow.ROTATION_ORIENTED]. Changing it forces the cache to be recomputed.
+ If [code]true[/code], the curve will bake up vectors used for orientation. This is used when [member PathFollow3D.rotation_mode] is set to [constant PathFollow3D.ROTATION_ORIENTED]. Changing it forces the cache to be recomputed.
</member>
</members>
<constants>
diff --git a/doc/classes/CylinderShape.xml b/doc/classes/CylinderShape3D.xml
index 54adbd3b04..eb12568e71 100644
--- a/doc/classes/CylinderShape.xml
+++ b/doc/classes/CylinderShape3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="CylinderShape" inherits="Shape" version="4.0">
+<class name="CylinderShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Cylinder shape for collisions.
</brief_description>
diff --git a/doc/classes/Dictionary.xml b/doc/classes/Dictionary.xml
index 062e72388f..7bd01d6781 100644
--- a/doc/classes/Dictionary.xml
+++ b/doc/classes/Dictionary.xml
@@ -4,8 +4,9 @@
Dictionary type.
</brief_description>
<description>
- Dictionary type. Associative container which contains values referenced by unique keys. Dictionary are composed of pairs of keys (which must be unique) and values. You can define a dictionary by placing a comma separated list of [code]key: value[/code] pairs in curly braces [code]{}[/code].
- Erasing elements while iterating over them [b]is not supported[/b].
+ Dictionary type. Associative container which contains values referenced by unique keys. Dictionaries are composed of pairs of keys (which must be unique) and values. Dictionaries will preserve the insertion order when adding elements, even though this may not be reflected when printing the dictionary. In other programming languages, this data structure is sometimes referred to as an hash map or associative array.
+ You can define a dictionary by placing a comma-separated list of [code]key: value[/code] pairs in curly braces [code]{}[/code].
+ Erasing elements while iterating over them [b]is not supported[/b] and will result in undefined behavior.
Creating a dictionary:
[codeblock]
var my_dir = {} # Creates an empty dictionary.
@@ -16,15 +17,16 @@
key3: value3,
}
[/codeblock]
- You can access values of a dictionary by referencing appropriate key in above example [code]points_dir["White"][/code] would return value of 50.
+ You can access a dictionary's values by referencing the appropriate key. In the above example, [code]points_dir["White"][/code] will return [code]50[/code]. You can also write [code]points_dir.White[/code], which is equivalent. However, you'll have to use the bracket syntax if the key you're accessing the dictionary with isn't a fixed string (such as a number or variable).
[codeblock]
export(String, "White", "Yellow", "Orange") var my_color
var points_dir = {"White": 50, "Yellow": 75, "Orange": 100}
func _ready():
+ # We can't use dot syntax here as `my_color` is a variable.
var points = points_dir[my_color]
[/codeblock]
- In the above code [code]points[/code] will be assigned the value that is paired with the appropriate color selected in [code]my_color[/code].
+ In the above code, [code]points[/code] will be assigned the value that is paired with the appropriate color selected in [code]my_color[/code].
Dictionaries can contain more complex data:
[codeblock]
my_dir = {"First Array": [1, 2, 3, 4]} # Assigns an Array to a String key.
@@ -36,9 +38,17 @@
[/codeblock]
Finally, dictionaries can contain different types of keys and values in the same dictionary:
[codeblock]
- var my_dir = {"String Key": 5, 4: [1, 2, 3], 7: "Hello"} # This is a valid dictionary.
+ # This is a valid dictionary.
+ # To access the string "Nested value" below, use `my_dir.sub_dir.sub_key` or `my_dir["sub_dir"]["sub_key"]`.
+ # Indexing styles can be mixed and matched depending on your needs.
+ var my_dir = {
+ "String Key": 5,
+ 4: [1, 2, 3],
+ 7: "Hello",
+ "sub_dir": {"sub_key": "Nested value"},
+ }
[/codeblock]
- [b]Note:[/b] Unlike [Array]s you can't compare dictionaries directly:
+ [b]Note:[/b] Unlike [Array]s, you can't compare dictionaries directly:
[codeblock]
array1 = [1, 2, 3]
array2 = [1, 2, 3]
@@ -78,7 +88,7 @@
<argument index="0" name="deep" type="bool" default="false">
</argument>
<description>
- Creates a copy of the dictionary, and returns it.
+ Creates a copy of the dictionary, and returns it. The [code]deep[/code] parameter causes inner dictionaries and arrays to be copied recursively, but does not apply to objects.
</description>
</method>
<method name="empty">
@@ -98,7 +108,7 @@
</description>
</method>
<method name="get">
- <return type="void">
+ <return type="Variant">
</return>
<argument index="0" name="key" type="Variant">
</argument>
diff --git a/doc/classes/DirectionalLight.xml b/doc/classes/DirectionalLight3D.xml
index a3ef830d5d..a5d476f5c8 100644
--- a/doc/classes/DirectionalLight.xml
+++ b/doc/classes/DirectionalLight3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="DirectionalLight" inherits="Light" version="4.0">
+<class name="DirectionalLight3D" inherits="Light3D" version="4.0">
<brief_description>
Directional light from a distance, as from the Sun.
</brief_description>
<description>
- A directional light is a type of [Light] node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene to model sunlight or moonlight. The worldspace location of the DirectionalLight transform (origin) is ignored. Only the basis is used to determine light direction.
+ A directional light is a type of [Light3D] node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene to model sunlight or moonlight. The worldspace location of the DirectionalLight3D transform (origin) is ignored. Only the basis is used to determine light direction.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html</link>
@@ -18,7 +18,7 @@
<member name="directional_shadow_blend_splits" type="bool" setter="set_blend_splits" getter="is_blend_splits_enabled" default="false">
If [code]true[/code], shadow detail is sacrificed in exchange for smoother transitions between splits.
</member>
- <member name="directional_shadow_depth_range" type="int" setter="set_shadow_depth_range" getter="get_shadow_depth_range" enum="DirectionalLight.ShadowDepthRange" default="0">
+ <member name="directional_shadow_depth_range" type="int" setter="set_shadow_depth_range" getter="get_shadow_depth_range" enum="DirectionalLight3D.ShadowDepthRange" default="0">
Optimizes shadow rendering for detail versus movement. See [enum ShadowDepthRange].
</member>
<member name="directional_shadow_fade_start" type="float" setter="set_param" getter="get_param" default="0.8">
@@ -26,7 +26,7 @@
<member name="directional_shadow_max_distance" type="float" setter="set_param" getter="get_param" default="100.0">
The maximum distance for shadow splits.
</member>
- <member name="directional_shadow_mode" type="int" setter="set_shadow_mode" getter="get_shadow_mode" enum="DirectionalLight.ShadowMode" default="2">
+ <member name="directional_shadow_mode" type="int" setter="set_shadow_mode" getter="get_shadow_mode" enum="DirectionalLight3D.ShadowMode" default="2">
The light's shadow rendering algorithm. See [enum ShadowMode].
</member>
<member name="directional_shadow_normal_bias" type="float" setter="set_param" getter="get_param" default="0.8">
diff --git a/doc/classes/Directory.xml b/doc/classes/Directory.xml
index cb59a69876..ed4257a809 100644
--- a/doc/classes/Directory.xml
+++ b/doc/classes/Directory.xml
@@ -77,11 +77,8 @@
<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/DisplayServer.xml b/doc/classes/DisplayServer.xml
new file mode 100644
index 0000000000..90828089f9
--- /dev/null
+++ b/doc/classes/DisplayServer.xml
@@ -0,0 +1,1049 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="DisplayServer" inherits="Object" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="alert">
+ <return type="void">
+ </return>
+ <argument index="0" name="text" type="String">
+ </argument>
+ <argument index="1" name="title" type="String" default="&quot;Alert!&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="clipboard_get" qualifiers="const">
+ <return type="String">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="clipboard_set">
+ <return type="void">
+ </return>
+ <argument index="0" name="clipboard" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="console_set_visible">
+ <return type="void">
+ </return>
+ <argument index="0" name="console_visible" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="create_sub_window">
+ <return type="int">
+ </return>
+ <argument index="0" name="mode" type="int" enum="DisplayServer.WindowMode">
+ </argument>
+ <argument index="1" name="rect" type="int">
+ </argument>
+ <argument index="2" name="arg2" type="Rect2i" default="Rect2i( 0, 0, 0, 0 )">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="cursor_get_shape" qualifiers="const">
+ <return type="int" enum="DisplayServer.CursorShape">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="cursor_set_custom_image">
+ <return type="void">
+ </return>
+ <argument index="0" name="cursor" type="Resource">
+ </argument>
+ <argument index="1" name="shape" type="int" enum="DisplayServer.CursorShape" default="0">
+ </argument>
+ <argument index="2" name="hotspot" type="Vector2" default="Vector2( 0, 0 )">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="cursor_set_shape">
+ <return type="void">
+ </return>
+ <argument index="0" name="shape" type="int" enum="DisplayServer.CursorShape">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="delete_sub_window">
+ <return type="void">
+ </return>
+ <argument index="0" name="window_id" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="dialog_input_text">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="title" type="String">
+ </argument>
+ <argument index="1" name="description" type="String">
+ </argument>
+ <argument index="2" name="existing_text" type="String">
+ </argument>
+ <argument index="3" name="callback" type="Callable">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="dialog_show">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="title" type="String">
+ </argument>
+ <argument index="1" name="description" type="String">
+ </argument>
+ <argument index="2" name="buttons" type="PackedStringArray">
+ </argument>
+ <argument index="3" name="callback" type="Callable">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="enable_for_stealing_focus">
+ <return type="void">
+ </return>
+ <argument index="0" name="process_id" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="force_process_and_drop_events">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_latin_keyboard_variant" qualifiers="const">
+ <return type="int" enum="DisplayServer.LatinKeyboardVariant">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_name" qualifiers="const">
+ <return type="String">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_screen_count" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_swap_ok_cancel">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_window_at_screen_position" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="position" type="Vector2i">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_window_list" qualifiers="const">
+ <return type="PackedInt32Array">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_add_check_item">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="label" type="String">
+ </argument>
+ <argument index="2" name="callback" type="Callable">
+ </argument>
+ <argument index="3" name="tag" type="Variant" default="null">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_add_item">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="label" type="String">
+ </argument>
+ <argument index="2" name="callback" type="Callable">
+ </argument>
+ <argument index="3" name="tag" type="Variant" default="null">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_add_separator">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_add_submenu_item">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="label" type="String">
+ </argument>
+ <argument index="2" name="submenu" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_clear">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_get_item_callback">
+ <return type="Callable">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_get_item_submenu">
+ <return type="String">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_get_item_tag">
+ <return type="Variant">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_get_item_text">
+ <return type="String">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_is_item_checkable" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_is_item_checked" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_remove_item">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_set_item_callback">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <argument index="2" name="callback" type="Callable">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_set_item_checkable">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <argument index="2" name="checkable" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_set_item_checked">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <argument index="2" name="checked" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_set_item_submenu">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <argument index="2" name="submenu" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_set_item_tag">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <argument index="2" name="tag" type="Variant">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="global_menu_set_item_text">
+ <return type="void">
+ </return>
+ <argument index="0" name="menu_root" type="String">
+ </argument>
+ <argument index="1" name="idx" type="int">
+ </argument>
+ <argument index="2" name="text" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="has_feature" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="feature" type="int" enum="DisplayServer.Feature">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="ime_get_selection" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="ime_get_text" qualifiers="const">
+ <return type="String">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_console_visible" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="mouse_get_absolute_position" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="mouse_get_button_state" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="mouse_get_mode" qualifiers="const">
+ <return type="int" enum="DisplayServer.MouseMode">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="mouse_get_position" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="mouse_set_mode">
+ <return type="void">
+ </return>
+ <argument index="0" name="mouse_mode" type="int" enum="DisplayServer.MouseMode">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="mouse_warp_to_position">
+ <return type="void">
+ </return>
+ <argument index="0" name="position" type="Vector2i">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="native_video_is_playing" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="native_video_pause">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="native_video_play">
+ <return type="int" enum="Error">
+ </return>
+ <argument index="0" name="path" type="String">
+ </argument>
+ <argument index="1" name="volume" type="float">
+ </argument>
+ <argument index="2" name="audio_track" type="String">
+ </argument>
+ <argument index="3" name="subtitle_track" type="String">
+ </argument>
+ <argument index="4" name="arg4" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="native_video_stop">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="native_video_unpause">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="process_events">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="screen_get_dpi" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_get_orientation" qualifiers="const">
+ <return type="int" enum="DisplayServer.ScreenOrientation">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_get_position" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_get_scale" qualifiers="const">
+ <return type="float">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_get_size" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_get_usable_rect" qualifiers="const">
+ <return type="Rect2i">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_is_kept_on" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="screen_is_touchscreen" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_set_keep_on">
+ <return type="void">
+ </return>
+ <argument index="0" name="enable" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="screen_set_orientation">
+ <return type="void">
+ </return>
+ <argument index="0" name="orientation" type="int" enum="DisplayServer.ScreenOrientation">
+ </argument>
+ <argument index="1" name="screen" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_icon">
+ <return type="void">
+ </return>
+ <argument index="0" name="image" type="Image">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_native_icon">
+ <return type="void">
+ </return>
+ <argument index="0" name="filename" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="virtual_keyboard_get_height" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="virtual_keyboard_hide">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="virtual_keyboard_show">
+ <return type="void">
+ </return>
+ <argument index="0" name="existing_text" type="String">
+ </argument>
+ <argument index="1" name="position" type="Rect2" default="Rect2i( 0, 0, 0, 0 )">
+ </argument>
+ <argument index="2" name="max_length" type="int" default="-1">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="vsync_is_enabled" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="vsync_is_using_via_compositor" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="vsync_set_enabled">
+ <return type="void">
+ </return>
+ <argument index="0" name="enabled" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="vsync_set_use_via_compositor">
+ <return type="void">
+ </return>
+ <argument index="0" name="enabled" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_attach_instance_id">
+ <return type="void">
+ </return>
+ <argument index="0" name="instance_id" type="int">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_can_draw" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_attached_instance_id" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_current_screen" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_flag" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="flag" type="int" enum="DisplayServer.WindowFlags">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_max_size" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_min_size" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_mode" qualifiers="const">
+ <return type="int" enum="DisplayServer.WindowMode">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_position" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_real_size" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_get_size" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_move_to_foreground">
+ <return type="void">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_request_attention">
+ <return type="void">
+ </return>
+ <argument index="0" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_current_screen">
+ <return type="void">
+ </return>
+ <argument index="0" name="screen" type="int">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_drop_files_callback">
+ <return type="void">
+ </return>
+ <argument index="0" name="callback" type="Callable">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_flag">
+ <return type="void">
+ </return>
+ <argument index="0" name="flag" type="int" enum="DisplayServer.WindowFlags">
+ </argument>
+ <argument index="1" name="enabled" type="bool">
+ </argument>
+ <argument index="2" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_ime_active">
+ <return type="void">
+ </return>
+ <argument index="0" name="active" type="bool">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_ime_position">
+ <return type="void">
+ </return>
+ <argument index="0" name="position" type="Vector2i">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_input_event_callback">
+ <return type="void">
+ </return>
+ <argument index="0" name="callback" type="Callable">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_input_text_callback">
+ <return type="void">
+ </return>
+ <argument index="0" name="callback" type="Callable">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_max_size">
+ <return type="void">
+ </return>
+ <argument index="0" name="max_size" type="Vector2i">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_min_size">
+ <return type="void">
+ </return>
+ <argument index="0" name="min_size" type="Vector2i">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_mode">
+ <return type="void">
+ </return>
+ <argument index="0" name="mode" type="int" enum="DisplayServer.WindowMode">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_position">
+ <return type="void">
+ </return>
+ <argument index="0" name="position" type="Vector2i">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_rect_changed_callback">
+ <return type="void">
+ </return>
+ <argument index="0" name="callback" type="Callable">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_size">
+ <return type="void">
+ </return>
+ <argument index="0" name="size" type="Vector2i">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_title">
+ <return type="void">
+ </return>
+ <argument index="0" name="title" type="String">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_transient">
+ <return type="void">
+ </return>
+ <argument index="0" name="window_id" type="int">
+ </argument>
+ <argument index="1" name="parent_window_id" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="window_set_window_event_callback">
+ <return type="void">
+ </return>
+ <argument index="0" name="callback" type="Callable">
+ </argument>
+ <argument index="1" name="window_id" type="int" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <constants>
+ <constant name="FEATURE_GLOBAL_MENU" value="0" enum="Feature">
+ </constant>
+ <constant name="FEATURE_SUBWINDOWS" value="1" enum="Feature">
+ </constant>
+ <constant name="FEATURE_TOUCHSCREEN" value="2" enum="Feature">
+ </constant>
+ <constant name="FEATURE_MOUSE" value="3" enum="Feature">
+ </constant>
+ <constant name="FEATURE_MOUSE_WARP" value="4" enum="Feature">
+ </constant>
+ <constant name="FEATURE_CLIPBOARD" value="5" enum="Feature">
+ </constant>
+ <constant name="FEATURE_VIRTUAL_KEYBOARD" value="6" enum="Feature">
+ </constant>
+ <constant name="FEATURE_CURSOR_SHAPE" value="7" enum="Feature">
+ </constant>
+ <constant name="FEATURE_CUSTOM_CURSOR_SHAPE" value="8" enum="Feature">
+ </constant>
+ <constant name="FEATURE_NATIVE_VIDEO" value="9" enum="Feature">
+ </constant>
+ <constant name="FEATURE_NATIVE_DIALOG" value="10" enum="Feature">
+ </constant>
+ <constant name="FEATURE_CONSOLE_WINDOW" value="11" enum="Feature">
+ </constant>
+ <constant name="FEATURE_IME" value="12" enum="Feature">
+ </constant>
+ <constant name="FEATURE_WINDOW_TRANSPARENCY" value="13" enum="Feature">
+ </constant>
+ <constant name="FEATURE_HIDPI" value="14" enum="Feature">
+ </constant>
+ <constant name="FEATURE_ICON" value="15" enum="Feature">
+ </constant>
+ <constant name="FEATURE_NATIVE_ICON" value="16" enum="Feature">
+ </constant>
+ <constant name="FEATURE_ORIENTATION" value="17" enum="Feature">
+ </constant>
+ <constant name="FEATURE_SWAP_BUFFERS" value="18" enum="Feature">
+ </constant>
+ <constant name="MOUSE_MODE_VISIBLE" value="0" enum="MouseMode">
+ </constant>
+ <constant name="MOUSE_MODE_HIDDEN" value="1" enum="MouseMode">
+ </constant>
+ <constant name="MOUSE_MODE_CAPTURED" value="2" enum="MouseMode">
+ </constant>
+ <constant name="MOUSE_MODE_CONFINED" value="3" enum="MouseMode">
+ </constant>
+ <constant name="SCREEN_OF_MAIN_WINDOW" value="-1">
+ </constant>
+ <constant name="MAIN_WINDOW_ID" value="0">
+ </constant>
+ <constant name="INVALID_WINDOW_ID" value="-1">
+ </constant>
+ <constant name="SCREEN_LANDSCAPE" value="0" enum="ScreenOrientation">
+ </constant>
+ <constant name="SCREEN_PORTRAIT" value="1" enum="ScreenOrientation">
+ </constant>
+ <constant name="SCREEN_REVERSE_LANDSCAPE" value="2" enum="ScreenOrientation">
+ </constant>
+ <constant name="SCREEN_REVERSE_PORTRAIT" value="3" enum="ScreenOrientation">
+ </constant>
+ <constant name="SCREEN_SENSOR_LANDSCAPE" value="4" enum="ScreenOrientation">
+ </constant>
+ <constant name="SCREEN_SENSOR_PORTRAIT" value="5" enum="ScreenOrientation">
+ </constant>
+ <constant name="SCREEN_SENSOR" value="6" enum="ScreenOrientation">
+ </constant>
+ <constant name="CURSOR_ARROW" value="0" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_IBEAM" value="1" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_POINTING_HAND" value="2" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_CROSS" value="3" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_WAIT" value="4" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_BUSY" value="5" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_DRAG" value="6" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_CAN_DROP" value="7" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_FORBIDDEN" value="8" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_VSIZE" value="9" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_HSIZE" value="10" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_BDIAGSIZE" value="11" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_FDIAGSIZE" value="12" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_MOVE" value="13" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_VSPLIT" value="14" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_HSPLIT" value="15" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_HELP" value="16" enum="CursorShape">
+ </constant>
+ <constant name="CURSOR_MAX" value="17" enum="CursorShape">
+ </constant>
+ <constant name="WINDOW_MODE_WINDOWED" value="0" enum="WindowMode">
+ </constant>
+ <constant name="WINDOW_MODE_MINIMIZED" value="1" enum="WindowMode">
+ </constant>
+ <constant name="WINDOW_MODE_MAXIMIZED" value="2" enum="WindowMode">
+ </constant>
+ <constant name="WINDOW_MODE_FULLSCREEN" value="3" enum="WindowMode">
+ </constant>
+ <constant name="WINDOW_FLAG_RESIZE_DISABLED" value="0" enum="WindowFlags">
+ </constant>
+ <constant name="WINDOW_FLAG_BORDERLESS" value="1" enum="WindowFlags">
+ </constant>
+ <constant name="WINDOW_FLAG_ALWAYS_ON_TOP" value="2" enum="WindowFlags">
+ </constant>
+ <constant name="WINDOW_FLAG_TRANSPARENT" value="3" enum="WindowFlags">
+ </constant>
+ <constant name="WINDOW_FLAG_NO_FOCUS" value="4" enum="WindowFlags">
+ </constant>
+ <constant name="WINDOW_FLAG_MAX" value="5" enum="WindowFlags">
+ </constant>
+ <constant name="LATIN_KEYBOARD_QWERTY" value="0" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="LATIN_KEYBOARD_QWERTZ" value="1" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="LATIN_KEYBOARD_AZERTY" value="2" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="LATIN_KEYBOARD_QZERTY" value="3" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="LATIN_KEYBOARD_DVORAK" value="4" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="LATIN_KEYBOARD_NEO" value="5" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="LATIN_KEYBOARD_COLEMAK" value="6" enum="LatinKeyboardVariant">
+ </constant>
+ <constant name="WINDOW_EVENT_MOUSE_ENTER" value="0" enum="WindowEvent">
+ </constant>
+ <constant name="WINDOW_EVENT_MOUSE_EXIT" value="1" enum="WindowEvent">
+ </constant>
+ <constant name="WINDOW_EVENT_FOCUS_IN" value="2" enum="WindowEvent">
+ </constant>
+ <constant name="WINDOW_EVENT_FOCUS_OUT" value="3" enum="WindowEvent">
+ </constant>
+ <constant name="WINDOW_EVENT_CLOSE_REQUEST" value="4" enum="WindowEvent">
+ </constant>
+ <constant name="WINDOW_EVENT_GO_BACK_REQUEST" value="5" enum="WindowEvent">
+ </constant>
+ <constant name="WINDOW_EVENT_DPI_CHANGE" value="6" enum="WindowEvent">
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/EditorExportPlugin.xml b/doc/classes/EditorExportPlugin.xml
index 8fac3e950d..8cfd3b63d6 100644
--- a/doc/classes/EditorExportPlugin.xml
+++ b/doc/classes/EditorExportPlugin.xml
@@ -94,6 +94,14 @@
<description>
</description>
</method>
+ <method name="add_ios_project_static_lib">
+ <return type="void">
+ </return>
+ <argument index="0" name="path" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="add_shared_object">
<return type="void">
</return>
diff --git a/doc/classes/EditorFeatureProfile.xml b/doc/classes/EditorFeatureProfile.xml
index 387962cf6a..53db8dd293 100644
--- a/doc/classes/EditorFeatureProfile.xml
+++ b/doc/classes/EditorFeatureProfile.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorFeatureProfile" inherits="Reference" version="4.0">
<brief_description>
+ An editor feature profile which can be used to disable specific features.
</brief_description>
<description>
+ An editor feature profile can be used to disable specific features of the Godot editor. When disabled, the features won't appear in the editor, which makes the editor less cluttered. This is useful in education settings to reduce confusion or when working in a team. For example, artists and level designers could use a feature profile that disables the script editor to avoid accidentally making changes to files they aren't supposed to edit.
+ To manage editor feature profiles visually, use [b]Editor &gt; Manage Feature Profiles...[/b] at the top of the editor window.
</description>
<tutorials>
</tutorials>
@@ -13,6 +16,7 @@
<argument index="0" name="feature" type="int" enum="EditorFeatureProfile.Feature">
</argument>
<description>
+ Returns the specified [code]feature[/code]'s human-readable name.
</description>
</method>
<method name="is_class_disabled" qualifiers="const">
@@ -21,6 +25,7 @@
<argument index="0" name="class_name" type="StringName">
</argument>
<description>
+ Returns [code]true[/code] if the class specified by [code]class_name[/code] is disabled. When disabled, the class won't appear in the Create New Node dialog.
</description>
</method>
<method name="is_class_editor_disabled" qualifiers="const">
@@ -29,6 +34,7 @@
<argument index="0" name="class_name" type="StringName">
</argument>
<description>
+ Returns [code]true[/code] if editing for the class specified by [code]class_name[/code] is disabled. When disabled, the class will still appear in the Create New Node dialog but the inspector will be read-only when selecting a node that extends the class.
</description>
</method>
<method name="is_class_property_disabled" qualifiers="const">
@@ -39,6 +45,7 @@
<argument index="1" name="property" type="StringName">
</argument>
<description>
+ Returns [code]true[/code] if [code]property[/code] is disabled in the class specified by [code]class_name[/code]. When a property is disabled, it won't appear in the inspector when selecting a node that extends the class specified by [code]class_name[/code].
</description>
</method>
<method name="is_feature_disabled" qualifiers="const">
@@ -47,6 +54,7 @@
<argument index="0" name="feature" type="int" enum="EditorFeatureProfile.Feature">
</argument>
<description>
+ Returns [code]true[/code] if the [code]feature[/code] is disabled. When a feature is disabled, it will disappear from the editor entirely.
</description>
</method>
<method name="load_from_file">
@@ -55,6 +63,7 @@
<argument index="0" name="path" type="String">
</argument>
<description>
+ Loads an editor feature profile from a file. The file must follow the JSON format obtained by using the feature profile manager's [b]Export[/b] button or the [method save_to_file] method.
</description>
</method>
<method name="save_to_file">
@@ -63,6 +72,7 @@
<argument index="0" name="path" type="String">
</argument>
<description>
+ Saves the editor feature profile to a file in JSON format. It can then be imported using the feature profile manager's [b]Import[/b] button or the [method load_from_file] button.
</description>
</method>
<method name="set_disable_class">
@@ -73,6 +83,7 @@
<argument index="1" name="disable" type="bool">
</argument>
<description>
+ If [code]disable[/code] is [code]true[/code], disables the class specified by [code]class_name[/code]. When disabled, the class won't appear in the Create New Node dialog.
</description>
</method>
<method name="set_disable_class_editor">
@@ -83,6 +94,7 @@
<argument index="1" name="disable" type="bool">
</argument>
<description>
+ If [code]disable[/code] is [code]true[/code], disables editing for the class specified by [code]class_name[/code]. When disabled, the class will still appear in the Create New Node dialog but the inspector will be read-only when selecting a node that extends the class.
</description>
</method>
<method name="set_disable_class_property">
@@ -95,6 +107,7 @@
<argument index="2" name="disable" type="bool">
</argument>
<description>
+ If [code]disable[/code] is [code]true[/code], disables editing for [code]property[/code] in the class specified by [code]class_name[/code]. When a property is disabled, it won't appear in the inspector when selecting a node that extends the class specified by [code]class_name[/code].
</description>
</method>
<method name="set_disable_feature">
@@ -105,23 +118,31 @@
<argument index="1" name="disable" type="bool">
</argument>
<description>
+ If [code]disable[/code] is [code]true[/code], disables the editor feature specified in [code]feature[/code]. When a feature is disabled, it will disappear from the editor entirely.
</description>
</method>
</methods>
<constants>
<constant name="FEATURE_3D" value="0" enum="Feature">
+ The 3D editor. If this feature is disabled, the 3D editor won't display but 3D nodes will still display in the Create New Node dialog.
</constant>
<constant name="FEATURE_SCRIPT" value="1" enum="Feature">
+ The Script tab, which contains the script editor and class reference browser. If this feature is disabled, the Script tab won't display.
</constant>
<constant name="FEATURE_ASSET_LIB" value="2" enum="Feature">
+ The AssetLib tab. If this feature is disabled, the AssetLib tab won't display.
</constant>
<constant name="FEATURE_SCENE_TREE" value="3" enum="Feature">
+ Scene tree editing. If this feature is disabled, the Scene tree dock will still be visible but will be read-only.
</constant>
<constant name="FEATURE_IMPORT_DOCK" value="4" enum="Feature">
+ The Import dock. If this feature is disabled, the Import dock won't be visible.
</constant>
<constant name="FEATURE_NODE_DOCK" value="5" enum="Feature">
+ The Node dock. If this feature is disabled, signals and groups won't be visible and modifiable from the editor.
</constant>
<constant name="FEATURE_FILESYSTEM_DOCK" value="6" enum="Feature">
+ The FileSystem dock. If this feature is disabled, the FileSystem dock won't be visible.
</constant>
<constant name="FEATURE_MAX" value="7" enum="Feature">
Represents the size of the [enum Feature] enum.
diff --git a/doc/classes/EditorFileDialog.xml b/doc/classes/EditorFileDialog.xml
index 3e6bbd682d..084459e518 100644
--- a/doc/classes/EditorFileDialog.xml
+++ b/doc/classes/EditorFileDialog.xml
@@ -60,14 +60,13 @@
<member name="display_mode" type="int" setter="set_display_mode" getter="get_display_mode" enum="EditorFileDialog.DisplayMode" default="0">
The view format in which the [EditorFileDialog] displays resources to the user.
</member>
- <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="EditorFileDialog.Mode" default="4">
- The purpose of the [EditorFileDialog], which defines the allowed behaviors.
+ <member name="file_mode" type="int" setter="set_file_mode" getter="get_file_mode" enum="EditorFileDialog.FileMode" default="4">
+ The dialog's open or save mode, which affects the selection behavior. See [enum FileMode]
</member>
- <member name="resizable" type="bool" setter="set_resizable" getter="get_resizable" override="true" default="true" />
<member name="show_hidden_files" type="bool" setter="set_show_hidden_files" getter="is_showing_hidden_files" default="false">
If [code]true[/code], hidden files and directories will be visible in the [EditorFileDialog].
</member>
- <member name="window_title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Save a File&quot;" />
+ <member name="title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Save a File&quot;" />
</members>
<signals>
<signal name="dir_selected">
@@ -93,19 +92,19 @@
</signal>
</signals>
<constants>
- <constant name="MODE_OPEN_FILE" value="0" enum="Mode">
+ <constant name="FILE_MODE_OPEN_FILE" value="0" enum="FileMode">
The [EditorFileDialog] can select only one file. Accepting the window will open the file.
</constant>
- <constant name="MODE_OPEN_FILES" value="1" enum="Mode">
+ <constant name="FILE_MODE_OPEN_FILES" value="1" enum="FileMode">
The [EditorFileDialog] can select multiple files. Accepting the window will open all files.
</constant>
- <constant name="MODE_OPEN_DIR" value="2" enum="Mode">
+ <constant name="FILE_MODE_OPEN_DIR" value="2" enum="FileMode">
The [EditorFileDialog] can select only one directory. Accepting the window will open the directory.
</constant>
- <constant name="MODE_OPEN_ANY" value="3" enum="Mode">
+ <constant name="FILE_MODE_OPEN_ANY" value="3" enum="FileMode">
The [EditorFileDialog] can select a file or directory. Accepting the window will open it.
</constant>
- <constant name="MODE_SAVE_FILE" value="4" enum="Mode">
+ <constant name="FILE_MODE_SAVE_FILE" value="4" enum="FileMode">
The [EditorFileDialog] can select only one file. Accepting the window will save the file.
</constant>
<constant name="ACCESS_RESOURCES" value="0" enum="Access">
diff --git a/doc/classes/EditorInterface.xml b/doc/classes/EditorInterface.xml
index 771b7d59d4..5e76f90fc4 100644
--- a/doc/classes/EditorInterface.xml
+++ b/doc/classes/EditorInterface.xml
@@ -52,6 +52,12 @@
Returns the editor [Viewport].
</description>
</method>
+ <method name="get_file_system_dock">
+ <return type="FileSystemDock">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="get_inspector" qualifiers="const">
<return type="EditorInspector">
</return>
diff --git a/doc/classes/EditorSpatialGizmo.xml b/doc/classes/EditorNode3DGizmo.xml
index b8c4daab07..6d695ddeea 100644
--- a/doc/classes/EditorSpatialGizmo.xml
+++ b/doc/classes/EditorNode3DGizmo.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="EditorSpatialGizmo" inherits="SpatialGizmo" version="4.0">
+<class name="EditorNode3DGizmo" inherits="Node3DGizmo" version="4.0">
<brief_description>
- Custom gizmo for editing Spatial objects.
+ Custom gizmo for editing Node3D objects.
</brief_description>
<description>
- Custom gizmo that is used for providing custom visualization and editing (handles) for 3D Spatial objects. See [EditorSpatialGizmoPlugin] for more information.
+ Custom gizmo that is used for providing custom visualization and editing (handles) for Node3D objects. See [EditorNode3DGizmoPlugin] for more information.
</description>
<tutorials>
</tutorials>
@@ -124,17 +124,17 @@
</description>
</method>
<method name="get_plugin" qualifiers="const">
- <return type="EditorSpatialGizmoPlugin">
+ <return type="EditorNode3DGizmoPlugin">
</return>
<description>
- Returns the [EditorSpatialGizmoPlugin] that owns this gizmo. It's useful to retrieve materials using [method EditorSpatialGizmoPlugin.get_material].
+ Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to retrieve materials using [method EditorNode3DGizmoPlugin.get_material].
</description>
</method>
<method name="get_spatial_node" qualifiers="const">
- <return type="Spatial">
+ <return type="Node3D">
</return>
<description>
- Returns the Spatial node associated with this gizmo.
+ Returns the Node3D node associated with this gizmo.
</description>
</method>
<method name="is_handle_highlighted" qualifiers="virtual">
@@ -150,7 +150,7 @@
<return type="void">
</return>
<description>
- This function is called when the Spatial this gizmo refers to changes (the [method Spatial.update_gizmo] is called).
+ This function is called when the Node3D this gizmo refers to changes (the [method Node3D.update_gizmo] is called).
</description>
</method>
<method name="set_handle" qualifiers="virtual">
@@ -158,13 +158,13 @@
</return>
<argument index="0" name="index" type="int">
</argument>
- <argument index="1" name="camera" type="Camera">
+ <argument index="1" name="camera" type="Camera3D">
</argument>
<argument index="2" name="point" type="Vector2">
</argument>
<description>
This function is used when the user drags a gizmo handle (previously added with [method add_handles]) in screen coordinates.
- The [Camera] is also provided so screen coordinates can be converted to raycasts.
+ The [Camera3D] is also provided so screen coordinates can be converted to raycasts.
</description>
</method>
<method name="set_hidden">
diff --git a/doc/classes/EditorSpatialGizmoPlugin.xml b/doc/classes/EditorNode3DGizmoPlugin.xml
index b1a4a25a5f..ca75b47fbf 100644
--- a/doc/classes/EditorSpatialGizmoPlugin.xml
+++ b/doc/classes/EditorNode3DGizmoPlugin.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="EditorSpatialGizmoPlugin" inherits="Resource" version="4.0">
+<class name="EditorNode3DGizmoPlugin" inherits="Resource" version="4.0">
<brief_description>
- Used by the editor to define Spatial gizmo types.
+ Used by the editor to define Node3D gizmo types.
</brief_description>
<description>
- EditorSpatialGizmoPlugin allows you to define a new type of Gizmo. There are two main ways to do so: extending [EditorSpatialGizmoPlugin] for the simpler gizmos, or creating a new [EditorSpatialGizmo] type. See the tutorial in the documentation for more info.
+ EditorNode3DGizmoPlugin allows you to define a new type of Gizmo. There are two main ways to do so: extending [EditorNode3DGizmoPlugin] for the simpler gizmos, or creating a new [EditorNode3DGizmo] type. See the tutorial in the documentation for more info.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/plugins/editor/spatial_gizmos.html</link>
@@ -31,7 +31,7 @@
<method name="commit_handle" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
</argument>
<argument index="1" name="index" type="int">
</argument>
@@ -44,12 +44,12 @@
</description>
</method>
<method name="create_gizmo" qualifiers="virtual">
- <return type="EditorSpatialGizmo">
+ <return type="EditorNode3DGizmo">
</return>
- <argument index="0" name="spatial" type="Spatial">
+ <argument index="0" name="spatial" type="Node3D">
</argument>
<description>
- Override this method to return a custom [EditorSpatialGizmo] for the spatial nodes of your choice, return [code]null[/code] for the rest of nodes. See also [method has_gizmo].
+ Override this method to return a custom [EditorNode3DGizmo] for the spatial nodes of your choice, return [code]null[/code] for the rest of nodes. See also [method has_gizmo].
</description>
</method>
<method name="create_handle_material">
@@ -60,7 +60,7 @@
<argument index="1" name="billboard" type="bool" default="false">
</argument>
<description>
- Creates a handle material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorSpatialGizmo.add_handles]. Should not be overridden.
+ Creates a handle material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorNode3DGizmo.add_handles]. Should not be overridden.
</description>
</method>
<method name="create_icon_material">
@@ -75,7 +75,7 @@
<argument index="3" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
<description>
- Creates an icon material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorSpatialGizmo.add_unscaled_billboard]. Should not be overridden.
+ Creates an icon material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorNode3DGizmo.add_unscaled_billboard]. Should not be overridden.
</description>
</method>
<method name="create_material">
@@ -92,13 +92,13 @@
<argument index="4" name="use_vertex_color" type="bool" default="false">
</argument>
<description>
- Creates an unshaded material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorSpatialGizmo.add_mesh] and [method EditorSpatialGizmo.add_lines]. Should not be overridden.
+ Creates an unshaded material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorNode3DGizmo.add_mesh] and [method EditorNode3DGizmo.add_lines]. Should not be overridden.
</description>
</method>
<method name="get_handle_name" qualifiers="virtual">
<return type="String">
</return>
- <argument index="0" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
</argument>
<argument index="1" name="index" type="int">
</argument>
@@ -109,7 +109,7 @@
<method name="get_handle_value" qualifiers="virtual">
<return type="Variant">
</return>
- <argument index="0" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
</argument>
<argument index="1" name="index" type="int">
</argument>
@@ -122,10 +122,10 @@
</return>
<argument index="0" name="name" type="String">
</argument>
- <argument index="1" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="1" name="gizmo" type="EditorNode3DGizmo">
</argument>
<description>
- Gets material from the internal list of materials. If an [EditorSpatialGizmo] is provided, it will try to get the corresponding variant (selected and/or editable).
+ Gets material from the internal list of materials. If an [EditorNode3DGizmo] is provided, it will try to get the corresponding variant (selected and/or editable).
</description>
</method>
<method name="get_name" qualifiers="virtual">
@@ -144,16 +144,16 @@
<method name="has_gizmo" qualifiers="virtual">
<return type="bool">
</return>
- <argument index="0" name="spatial" type="Spatial">
+ <argument index="0" name="spatial" type="Node3D">
</argument>
<description>
- Override this method to define which Spatial nodes have a gizmo from this plugin. Whenever a [Spatial] node is added to a scene this method is called, if it returns [code]true[/code] the node gets a generic [EditorSpatialGizmo] assigned and is added to this plugin's list of active gizmos.
+ Override this method to define which Node3D nodes have a gizmo from this plugin. Whenever a [Node3D] node is added to a scene this method is called, if it returns [code]true[/code] the node gets a generic [EditorNode3DGizmo] assigned and is added to this plugin's list of active gizmos.
</description>
</method>
<method name="is_handle_highlighted" qualifiers="virtual">
<return type="bool">
</return>
- <argument index="0" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
</argument>
<argument index="1" name="index" type="int">
</argument>
@@ -165,13 +165,13 @@
<return type="bool">
</return>
<description>
- Override this method to define whether Spatial with this gizmo should be selecteble even when the gizmo is hidden.
+ Override this method to define whether Node3D with this gizmo should be selecteble even when the gizmo is hidden.
</description>
</method>
<method name="redraw" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
</argument>
<description>
Callback to redraw the provided gizmo. Called for this plugin's active gizmos.
@@ -180,11 +180,11 @@
<method name="set_handle" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="gizmo" type="EditorSpatialGizmo">
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
</argument>
<argument index="1" name="index" type="int">
</argument>
- <argument index="2" name="camera" type="Camera">
+ <argument index="2" name="camera" type="Camera3D">
</argument>
<argument index="3" name="point" type="Vector2">
</argument>
diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml
index 587fd51f1e..19583fca28 100644
--- a/doc/classes/EditorPlugin.xml
+++ b/doc/classes/EditorPlugin.xml
@@ -71,7 +71,7 @@
</argument>
<description>
Adds a custom type, which will appear in the list of nodes or resources. An icon can be optionally passed.
- When given node or resource is selected, the base type will be instanced (e.g. "Spatial", "Control", "Resource"), then the script will be loaded and set to this object.
+ When given node or resource is selected, the base type will be instanced (e.g. "Node3D", "Control", "Resource"), then the script will be loaded and set to this object.
You can use the virtual method [method handles] to check if your custom object is being edited by checking the script or using the [code]is[/code] keyword.
During run-time, this will be a simple object with a script so this function does not need to be called then.
</description>
@@ -111,7 +111,7 @@
<method name="add_spatial_gizmo_plugin">
<return type="void">
</return>
- <argument index="0" name="plugin" type="EditorSpatialGizmoPlugin">
+ <argument index="0" name="plugin" type="EditorNode3DGizmoPlugin">
</argument>
<description>
</description>
@@ -229,7 +229,7 @@
<method name="forward_spatial_gui_input" qualifiers="virtual">
<return type="bool">
</return>
- <argument index="0" name="camera" type="Camera">
+ <argument index="0" name="camera" type="Camera3D">
</argument>
<argument index="1" name="event" type="InputEvent">
</argument>
@@ -450,7 +450,7 @@
<method name="remove_spatial_gizmo_plugin">
<return type="void">
</return>
- <argument index="0" name="plugin" type="EditorSpatialGizmoPlugin">
+ <argument index="0" name="plugin" type="EditorNode3DGizmoPlugin">
</argument>
<description>
</description>
diff --git a/doc/classes/Environment.xml b/doc/classes/Environment.xml
index f5c04b3947..6f55bfc229 100644
--- a/doc/classes/Environment.xml
+++ b/doc/classes/Environment.xml
@@ -108,7 +108,7 @@
If [code]true[/code], the depth fog effect is enabled. When enabled, fog will appear in the distance (relative to the camera).
</member>
<member name="fog_depth_end" type="float" setter="set_fog_depth_end" getter="get_fog_depth_end" default="100.0">
- The fog's depth end distance from the camera. If this value is set to 0, it will be equal to the current camera's [member Camera.far] value.
+ The fog's depth end distance from the camera. If this value is set to 0, it will be equal to the current camera's [member Camera3D.far] value.
</member>
<member name="fog_enabled" type="bool" setter="set_fog_enabled" getter="is_fog_enabled" default="false">
If [code]true[/code], fog effects are enabled. [member fog_height_enabled] and/or [member fog_depth_enabled] must be set to [code]true[/code] to actually display fog.
@@ -126,7 +126,7 @@
The Y coordinate where the height fog will be the least intense. If this value is greater than [member fog_height_max], fog will be displayed from top to bottom. Otherwise, it will be displayed from bottom to top.
</member>
<member name="fog_sun_amount" type="float" setter="set_fog_sun_amount" getter="get_fog_sun_amount" default="0.0">
- The intensity of the depth fog color transition when looking towards the sun. The sun's direction is determined automatically using the DirectionalLight node in the scene.
+ The intensity of the depth fog color transition when looking towards the sun. The sun's direction is determined automatically using the DirectionalLight3D node in the scene.
</member>
<member name="fog_sun_color" type="Color" setter="set_fog_sun_color" getter="get_fog_sun_color" default="Color( 1, 0.9, 0.7, 1 )">
The depth fog's [Color] when looking towards the sun.
@@ -137,10 +137,6 @@
<member name="fog_transmit_enabled" type="bool" setter="set_fog_transmit_enabled" getter="is_fog_transmit_enabled" default="false">
Enables fog's light transmission effect. If [code]true[/code], light will be more visible in the fog to simulate light scattering as in real life.
</member>
- <member name="glow_bicubic_upscale" type="bool" setter="set_glow_bicubic_upscale" getter="is_glow_bicubic_upscale_enabled" default="false">
- Smooths out the blockiness created by sampling higher levels, at the cost of performance.
- [b]Note:[/b] When using the GLES2 renderer, this is only available if the GPU supports the [code]GL_EXT_gpu_shader4[/code] extension.
- </member>
<member name="glow_blend_mode" type="int" setter="set_glow_blend_mode" getter="get_glow_blend_mode" enum="Environment.GlowBlendMode" default="2">
The glow blending mode.
</member>
@@ -212,9 +208,6 @@
<member name="ss_reflections_max_steps" type="int" setter="set_ssr_max_steps" getter="get_ssr_max_steps" default="64">
The maximum number of steps for screen-space reflections. Higher values are slower.
</member>
- <member name="ss_reflections_roughness" type="bool" setter="set_ssr_rough" getter="is_ssr_rough" default="true">
- If [code]true[/code], screen-space reflections will take the material roughness into account.
- </member>
<member name="ssao_ao_channel_affect" type="float" setter="set_ssao_ao_channel_affect" getter="get_ssao_ao_channel_affect" default="0.0">
The screen-space ambient occlusion intensity on materials that have an AO texture defined. Values higher than [code]0[/code] will make the SSAO effect visible in areas darkened by AO textures.
</member>
diff --git a/doc/classes/File.xml b/doc/classes/File.xml
index e9477517cf..17c65731ff 100644
--- a/doc/classes/File.xml
+++ b/doc/classes/File.xml
@@ -297,6 +297,7 @@
</argument>
<description>
Stores an integer as 16 bits in the file.
+ [b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 2^16 - 1][/code].
</description>
</method>
<method name="store_32">
@@ -306,6 +307,7 @@
</argument>
<description>
Stores an integer as 32 bits in the file.
+ [b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 2^32 - 1][/code].
</description>
</method>
<method name="store_64">
@@ -315,6 +317,7 @@
</argument>
<description>
Stores an integer as 64 bits in the file.
+ [b]Note:[/b] The [code]value[/code] must lie in the interval [code][-2^63, 2^63 - 1][/code] (i.e. be a valid [int] value).
</description>
</method>
<method name="store_8">
@@ -324,6 +327,7 @@
</argument>
<description>
Stores an integer as 8 bits in the file.
+ [b]Note:[/b] The [code]value[/code] should lie in the interval [code][0, 255][/code].
</description>
</method>
<method name="store_buffer">
diff --git a/doc/classes/FileDialog.xml b/doc/classes/FileDialog.xml
index 78fcec33ea..99563ee367 100644
--- a/doc/classes/FileDialog.xml
+++ b/doc/classes/FileDialog.xml
@@ -68,19 +68,19 @@
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="file_mode" type="int" setter="set_file_mode" getter="get_file_mode" enum="FileDialog.FileMode" default="4">
+ The dialog's open or save mode, which affects the selection behavior. See [enum FileMode].
+ </member>
<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.
- </member>
<member name="mode_overrides_title" type="bool" setter="set_mode_overrides_title" getter="is_mode_overriding_title" default="true">
- If [code]true[/code], changing the [code]Mode[/code] property will set the window title accordingly (e.g. setting mode to [constant MODE_OPEN_FILE] will change the window title to "Open a File").
+ If [code]true[/code], changing the [code]Mode[/code] property will set the window title accordingly (e.g. setting mode to [constant FILE_MODE_OPEN_FILE] will change the window title to "Open a File").
</member>
<member name="show_hidden_files" type="bool" setter="set_show_hidden_files" getter="is_showing_hidden_files" default="false">
If [code]true[/code], the dialog will show hidden files.
</member>
- <member name="window_title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Save a File&quot;" />
+ <member name="title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Save a File&quot;" />
</members>
<signals>
<signal name="dir_selected">
@@ -106,19 +106,19 @@
</signal>
</signals>
<constants>
- <constant name="MODE_OPEN_FILE" value="0" enum="Mode">
+ <constant name="FILE_MODE_OPEN_FILE" value="0" enum="FileMode">
The dialog allows selecting one, and only one file.
</constant>
- <constant name="MODE_OPEN_FILES" value="1" enum="Mode">
+ <constant name="FILE_MODE_OPEN_FILES" value="1" enum="FileMode">
The dialog allows selecting multiple files.
</constant>
- <constant name="MODE_OPEN_DIR" value="2" enum="Mode">
+ <constant name="FILE_MODE_OPEN_DIR" value="2" enum="FileMode">
The dialog only allows selecting a directory, disallowing the selection of any file.
</constant>
- <constant name="MODE_OPEN_ANY" value="3" enum="Mode">
+ <constant name="FILE_MODE_OPEN_ANY" value="3" enum="FileMode">
The dialog allows selecting one file or directory.
</constant>
- <constant name="MODE_SAVE_FILE" value="4" enum="Mode">
+ <constant name="FILE_MODE_SAVE_FILE" value="4" enum="FileMode">
The dialog will warn when a file exists.
</constant>
<constant name="ACCESS_RESOURCES" value="0" enum="Access">
diff --git a/doc/classes/FileSystemDock.xml b/doc/classes/FileSystemDock.xml
new file mode 100644
index 0000000000..fdf29f89b2
--- /dev/null
+++ b/doc/classes/FileSystemDock.xml
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="FileSystemDock" inherits="VBoxContainer" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="can_drop_data_fw" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="arg0" type="Vector2">
+ </argument>
+ <argument index="1" name="arg1" type="Variant">
+ </argument>
+ <argument index="2" name="arg2" type="Control">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="drop_data_fw">
+ <return type="void">
+ </return>
+ <argument index="0" name="arg0" type="Vector2">
+ </argument>
+ <argument index="1" name="arg1" type="Variant">
+ </argument>
+ <argument index="2" name="arg2" type="Control">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_drag_data_fw">
+ <return type="Variant">
+ </return>
+ <argument index="0" name="arg0" type="Vector2">
+ </argument>
+ <argument index="1" name="arg1" type="Control">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="navigate_to_path">
+ <return type="void">
+ </return>
+ <argument index="0" name="arg0" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <signals>
+ <signal name="display_mode_changed">
+ <description>
+ </description>
+ </signal>
+ <signal name="file_removed">
+ <argument index="0" name="file" type="String">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ <signal name="files_moved">
+ <argument index="0" name="old_file" type="String">
+ </argument>
+ <argument index="1" name="new_file" type="String">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ <signal name="folder_moved">
+ <argument index="0" name="old_folder" type="String">
+ </argument>
+ <argument index="1" name="new_file" type="String">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ <signal name="folder_removed">
+ <argument index="0" name="folder" type="String">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ <signal name="inherit">
+ <argument index="0" name="file" type="String">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ <signal name="instance">
+ <argument index="0" name="files" type="PackedStringArray">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ </signals>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/GIProbe.xml b/doc/classes/GIProbe.xml
index 322143ea9e..df50244c77 100644
--- a/doc/classes/GIProbe.xml
+++ b/doc/classes/GIProbe.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="GIProbe" inherits="VisualInstance" version="4.0">
+<class name="GIProbe" inherits="VisualInstance3D" version="4.0">
<brief_description>
Real-time global illumination (GI) probe.
</brief_description>
@@ -19,7 +19,7 @@
<argument index="1" name="create_visual_debug" type="bool" default="false">
</argument>
<description>
- Bakes the effect from all [GeometryInstance]s marked with [member GeometryInstance.use_in_baked_light] and [Light]s marked with either [constant Light.BAKE_INDIRECT] or [constant Light.BAKE_ALL]. If [code]create_visual_debug[/code] is [code]true[/code], after baking the light, this will generate a [MultiMesh] that has a cube representing each solid cell with each cube colored to the cell's albedo color. This can be used to visualize the [GIProbe]'s data and debug any issues that may be occurring.
+ Bakes the effect from all [GeometryInstance3D]s marked with [member GeometryInstance3D.use_in_baked_light] and [Light3D]s marked with either [constant Light3D.BAKE_INDIRECT] or [constant Light3D.BAKE_ALL]. If [code]create_visual_debug[/code] is [code]true[/code], after baking the light, this will generate a [MultiMesh] that has a cube representing each solid cell with each cube colored to the cell's albedo color. This can be used to visualize the [GIProbe]'s data and debug any issues that may be occurring.
</description>
</method>
<method name="debug_bake">
diff --git a/doc/classes/Particles2D.xml b/doc/classes/GPUParticles2D.xml
index 50fc3680bc..64a2522f2f 100644
--- a/doc/classes/Particles2D.xml
+++ b/doc/classes/GPUParticles2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Particles2D" inherits="Node2D" version="4.0">
+<class name="GPUParticles2D" inherits="Node2D" version="4.0">
<brief_description>
2D particle emitter.
</brief_description>
<description>
- 2D particle node used to create a variety of particle systems and effects. [Particles2D] features an emitter that generates some number of particles at a given rate.
+ 2D particle node used to create a variety of particle systems and effects. [GPUParticles2D] features an emitter that generates some number of particles at a given rate.
Use the [code]process_material[/code] property to add a [ParticlesMaterial] to configure particle appearance and behavior. Alternatively, you can add a [ShaderMaterial] which will be applied to all particles.
</description>
<tutorials>
@@ -30,7 +30,7 @@
<member name="amount" type="int" setter="set_amount" getter="get_amount" default="8">
Number of particles emitted in one emission cycle.
</member>
- <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="Particles2D.DrawOrder" default="0">
+ <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="GPUParticles2D.DrawOrder" default="0">
Particle draw order. Uses [enum DrawOrder] values.
</member>
<member name="emitting" type="bool" setter="set_emitting" getter="is_emitting" default="false">
diff --git a/doc/classes/Particles.xml b/doc/classes/GPUParticles3D.xml
index 74651ddd2f..add8f28bf8 100644
--- a/doc/classes/Particles.xml
+++ b/doc/classes/GPUParticles3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Particles" inherits="GeometryInstance" version="4.0">
+<class name="GPUParticles3D" inherits="GeometryInstance3D" version="4.0">
<brief_description>
3D particle emitter.
</brief_description>
<description>
- 3D particle node used to create a variety of particle systems and effects. [Particles] features an emitter that generates some number of particles at a given rate.
+ 3D particle node used to create a variety of particle systems and effects. [GPUParticles3D] features an emitter that generates some number of particles at a given rate.
Use the [code]process_material[/code] property to add a [ParticlesMaterial] to configure particle appearance and behavior. Alternatively, you can add a [ShaderMaterial] which will be applied to all particles.
</description>
<tutorials>
@@ -50,7 +50,7 @@
<member name="amount" type="int" setter="set_amount" getter="get_amount" default="8">
Number of particles to emit.
</member>
- <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="Particles.DrawOrder" default="0">
+ <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="GPUParticles3D.DrawOrder" default="0">
Particle draw order. Uses [enum DrawOrder] values.
</member>
<member name="draw_pass_1" type="Mesh" setter="set_draw_pass_mesh" getter="get_draw_pass_mesh">
diff --git a/doc/classes/Generic6DOFJoint.xml b/doc/classes/Generic6DOFJoint3D.xml
index 29ebf9f5d6..fae567dc58 100644
--- a/doc/classes/Generic6DOFJoint.xml
+++ b/doc/classes/Generic6DOFJoint3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Generic6DOFJoint" inherits="Joint" version="4.0">
+<class name="Generic6DOFJoint3D" inherits="Joint3D" version="4.0">
<brief_description>
The generic 6-degrees-of-freedom joint can implement a variety of joint types by locking certain axes' rotation or translation.
</brief_description>
@@ -12,7 +12,7 @@
<method name="get_flag_x" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="flag" type="int" enum="Generic6DOFJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="Generic6DOFJoint3D.Flag">
</argument>
<description>
</description>
@@ -20,7 +20,7 @@
<method name="get_flag_y" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="flag" type="int" enum="Generic6DOFJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="Generic6DOFJoint3D.Flag">
</argument>
<description>
</description>
@@ -28,7 +28,7 @@
<method name="get_flag_z" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="flag" type="int" enum="Generic6DOFJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="Generic6DOFJoint3D.Flag">
</argument>
<description>
</description>
@@ -36,7 +36,7 @@
<method name="get_param_x" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="Generic6DOFJoint.Param">
+ <argument index="0" name="param" type="int" enum="Generic6DOFJoint3D.Param">
</argument>
<description>
</description>
@@ -44,7 +44,7 @@
<method name="get_param_y" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="Generic6DOFJoint.Param">
+ <argument index="0" name="param" type="int" enum="Generic6DOFJoint3D.Param">
</argument>
<description>
</description>
@@ -52,7 +52,7 @@
<method name="get_param_z" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="Generic6DOFJoint.Param">
+ <argument index="0" name="param" type="int" enum="Generic6DOFJoint3D.Param">
</argument>
<description>
</description>
@@ -60,7 +60,7 @@
<method name="set_flag_x">
<return type="void">
</return>
- <argument index="0" name="flag" type="int" enum="Generic6DOFJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="Generic6DOFJoint3D.Flag">
</argument>
<argument index="1" name="value" type="bool">
</argument>
@@ -70,7 +70,7 @@
<method name="set_flag_y">
<return type="void">
</return>
- <argument index="0" name="flag" type="int" enum="Generic6DOFJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="Generic6DOFJoint3D.Flag">
</argument>
<argument index="1" name="value" type="bool">
</argument>
@@ -80,7 +80,7 @@
<method name="set_flag_z">
<return type="void">
</return>
- <argument index="0" name="flag" type="int" enum="Generic6DOFJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="Generic6DOFJoint3D.Flag">
</argument>
<argument index="1" name="value" type="bool">
</argument>
@@ -90,7 +90,7 @@
<method name="set_param_x">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="Generic6DOFJoint.Param">
+ <argument index="0" name="param" type="int" enum="Generic6DOFJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
@@ -100,7 +100,7 @@
<method name="set_param_y">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="Generic6DOFJoint.Param">
+ <argument index="0" name="param" type="int" enum="Generic6DOFJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
@@ -110,7 +110,7 @@
<method name="set_param_z">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="Generic6DOFJoint.Param">
+ <argument index="0" name="param" type="int" enum="Generic6DOFJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
diff --git a/doc/classes/GeometryInstance.xml b/doc/classes/GeometryInstance3D.xml
index 8259462531..7df5f0ea50 100644
--- a/doc/classes/GeometryInstance.xml
+++ b/doc/classes/GeometryInstance3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="GeometryInstance" inherits="VisualInstance" version="4.0">
+<class name="GeometryInstance3D" inherits="VisualInstance3D" version="4.0">
<brief_description>
Base node for geometry-based visual instances.
</brief_description>
@@ -12,10 +12,10 @@
<method name="get_flag" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="flag" type="int" enum="GeometryInstance.Flags">
+ <argument index="0" name="flag" type="int" enum="GeometryInstance3D.Flags">
</argument>
<description>
- Returns the [enum GeometryInstance.Flags] that have been set for this object.
+ Returns the [enum GeometryInstance3D.Flags] that have been set for this object.
</description>
</method>
<method name="set_custom_aabb">
@@ -30,36 +30,36 @@
<method name="set_flag">
<return type="void">
</return>
- <argument index="0" name="flag" type="int" enum="GeometryInstance.Flags">
+ <argument index="0" name="flag" type="int" enum="GeometryInstance3D.Flags">
</argument>
<argument index="1" name="value" type="bool">
</argument>
<description>
- Sets the [enum GeometryInstance.Flags] specified. See [enum GeometryInstance.Flags] for options.
+ Sets the [enum GeometryInstance3D.Flags] specified. See [enum GeometryInstance3D.Flags] for options.
</description>
</method>
</methods>
<members>
- <member name="cast_shadow" type="int" setter="set_cast_shadows_setting" getter="get_cast_shadows_setting" enum="GeometryInstance.ShadowCastingSetting" default="1">
+ <member name="cast_shadow" type="int" setter="set_cast_shadows_setting" getter="get_cast_shadows_setting" enum="GeometryInstance3D.ShadowCastingSetting" default="1">
The selected shadow casting flag. See [enum ShadowCastingSetting] for possible values.
</member>
<member name="extra_cull_margin" type="float" setter="set_extra_cull_margin" getter="get_extra_cull_margin" default="0.0">
- The extra distance added to the GeometryInstance's bounding box ([AABB]) to increase its cull box.
+ The extra distance added to the GeometryInstance3D's bounding box ([AABB]) to increase its cull box.
</member>
<member name="lod_max_distance" type="float" setter="set_lod_max_distance" getter="get_lod_max_distance" default="0.0">
- The GeometryInstance's max LOD distance.
+ The GeometryInstance3D's max LOD distance.
[b]Note:[/b] This property currently has no effect.
</member>
<member name="lod_max_hysteresis" type="float" setter="set_lod_max_hysteresis" getter="get_lod_max_hysteresis" default="0.0">
- The GeometryInstance's max LOD margin.
+ The GeometryInstance3D's max LOD margin.
[b]Note:[/b] This property currently has no effect.
</member>
<member name="lod_min_distance" type="float" setter="set_lod_min_distance" getter="get_lod_min_distance" default="0.0">
- The GeometryInstance's min LOD distance.
+ The GeometryInstance3D's min LOD distance.
[b]Note:[/b] This property currently has no effect.
</member>
<member name="lod_min_hysteresis" type="float" setter="set_lod_min_hysteresis" getter="get_lod_min_hysteresis" default="0.0">
- The GeometryInstance's min LOD margin.
+ The GeometryInstance3D's min LOD margin.
[b]Note:[/b] This property currently has no effect.
</member>
<member name="material_override" type="Material" setter="set_material_override" getter="get_material_override">
@@ -69,7 +69,7 @@
<member name="use_dynamic_gi" type="bool" setter="set_flag" getter="get_flag" default="false">
</member>
<member name="use_in_baked_light" type="bool" setter="set_flag" getter="get_flag" default="false">
- If [code]true[/code], this GeometryInstance will be used when baking lights using a [GIProbe].
+ If [code]true[/code], this GeometryInstance3D will be used when baking lights using a [GIProbe].
</member>
</members>
<constants>
@@ -77,11 +77,11 @@
Will not cast any shadows.
</constant>
<constant name="SHADOW_CASTING_SETTING_ON" value="1" enum="ShadowCastingSetting">
- Will cast shadows from all visible faces in the GeometryInstance.
+ Will cast shadows from all visible faces in the GeometryInstance3D.
Will take culling into account, so faces not being rendered will not be taken into account when shadow casting.
</constant>
<constant name="SHADOW_CASTING_SETTING_DOUBLE_SIDED" value="2" enum="ShadowCastingSetting">
- Will cast shadows from all visible faces in the GeometryInstance.
+ Will cast shadows from all visible faces in the GeometryInstance3D.
Will not take culling into account, so all faces will be taken into account when shadow casting.
</constant>
<constant name="SHADOW_CASTING_SETTING_SHADOWS_ONLY" value="3" enum="ShadowCastingSetting">
@@ -89,12 +89,12 @@
In other words, the actual mesh will not be visible, only the shadows casted from the mesh will be.
</constant>
<constant name="FLAG_USE_BAKED_LIGHT" value="0" enum="Flags">
- Will allow the GeometryInstance to be used when baking lights using a [GIProbe].
+ Will allow the GeometryInstance3D to be used when baking lights using a [GIProbe].
</constant>
<constant name="FLAG_USE_DYNAMIC_GI" value="1" enum="Flags">
</constant>
<constant name="FLAG_DRAW_NEXT_FRAME_IF_VISIBLE" value="2" enum="Flags">
- Unused in this class, exposed for consistency with [enum VisualServer.InstanceFlags].
+ Unused in this class, exposed for consistency with [enum RenderingServer.InstanceFlags].
</constant>
<constant name="FLAG_MAX" value="3" enum="Flags">
Represents the size of the [enum Flags] enum.
diff --git a/doc/classes/HeightMapShape.xml b/doc/classes/HeightMapShape3D.xml
index 029f3642d2..6d230bdab8 100644
--- a/doc/classes/HeightMapShape.xml
+++ b/doc/classes/HeightMapShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="HeightMapShape" inherits="Shape" version="4.0">
+<class name="HeightMapShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Height map shape for 3D physics (Bullet only).
</brief_description>
<description>
- Height map shape resource, which can be added to a [PhysicsBody] or [Area].
+ Height map shape resource, which can be added to a [PhysicsBody3D] or [Area3D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/HingeJoint.xml b/doc/classes/HingeJoint3D.xml
index 0d1b6ff0e0..2d4480cb20 100644
--- a/doc/classes/HingeJoint.xml
+++ b/doc/classes/HingeJoint3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="HingeJoint" inherits="Joint" version="4.0">
+<class name="HingeJoint3D" inherits="Joint3D" version="4.0">
<brief_description>
A hinge between two 3D bodies.
</brief_description>
<description>
- A HingeJoint normally uses the Z axis of body A as the hinge axis, another axis can be specified when adding it manually though.
+ A HingeJoint3D normally uses the Z axis of body A as the hinge axis, another axis can be specified when adding it manually though.
</description>
<tutorials>
</tutorials>
@@ -12,7 +12,7 @@
<method name="get_flag" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="flag" type="int" enum="HingeJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="HingeJoint3D.Flag">
</argument>
<description>
Returns the value of the specified flag.
@@ -21,7 +21,7 @@
<method name="get_param" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="HingeJoint.Param">
+ <argument index="0" name="param" type="int" enum="HingeJoint3D.Param">
</argument>
<description>
Returns the value of the specified parameter.
@@ -30,7 +30,7 @@
<method name="set_flag">
<return type="void">
</return>
- <argument index="0" name="flag" type="int" enum="HingeJoint.Flag">
+ <argument index="0" name="flag" type="int" enum="HingeJoint3D.Flag">
</argument>
<argument index="1" name="enabled" type="bool">
</argument>
@@ -41,7 +41,7 @@
<method name="set_param">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="HingeJoint.Param">
+ <argument index="0" name="param" type="int" enum="HingeJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
diff --git a/doc/classes/Image.xml b/doc/classes/Image.xml
index 8bd2213194..f541b0ae66 100644
--- a/doc/classes/Image.xml
+++ b/doc/classes/Image.xml
@@ -99,7 +99,7 @@
</return>
<argument index="0" name="mode" type="int" enum="Image.CompressMode">
</argument>
- <argument index="1" name="channels" type="int" enum="Image.CompressSource">
+ <argument index="1" name="channels" type="int" enum="Image.UsedChannels">
</argument>
<argument index="2" name="lossy_quality" type="float" default="0.7">
</argument>
diff --git a/doc/classes/ImmediateGeometry.xml b/doc/classes/ImmediateGeometry3D.xml
index 710e929d1a..1c0831c922 100644
--- a/doc/classes/ImmediateGeometry.xml
+++ b/doc/classes/ImmediateGeometry3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ImmediateGeometry" inherits="GeometryInstance" version="4.0">
+<class name="ImmediateGeometry3D" inherits="GeometryInstance3D" version="4.0">
<brief_description>
Draws simple geometry from code.
</brief_description>
diff --git a/doc/classes/InputDefault.xml b/doc/classes/InputDefault.xml
deleted file mode 100644
index ea4d08c628..0000000000
--- a/doc/classes/InputDefault.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="InputDefault" inherits="Input" version="4.0">
- <brief_description>
- Default implementation of the [Input] class.
- </brief_description>
- <description>
- Default implementation of the [Input] class, used internally by the editor and games for default input management.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <constants>
- </constants>
-</class>
diff --git a/doc/classes/InputEventFromWindow.xml b/doc/classes/InputEventFromWindow.xml
new file mode 100644
index 0000000000..7cd5b7d179
--- /dev/null
+++ b/doc/classes/InputEventFromWindow.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="InputEventFromWindow" inherits="InputEvent" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <members>
+ <member name="window_id" type="int" setter="set_window_id" getter="get_window_id" default="0">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/InputEventKey.xml b/doc/classes/InputEventKey.xml
index c8d0769b90..34afa90553 100644
--- a/doc/classes/InputEventKey.xml
+++ b/doc/classes/InputEventKey.xml
@@ -43,7 +43,7 @@
If [code]true[/code], the key's state is pressed. If [code]false[/code], the key's state is released.
</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.
+ 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 Window.set_ime_active] for more information.
</member>
</members>
<constants>
diff --git a/doc/classes/InputEventMouseMotion.xml b/doc/classes/InputEventMouseMotion.xml
index 1549353d45..97b9d5247a 100644
--- a/doc/classes/InputEventMouseMotion.xml
+++ b/doc/classes/InputEventMouseMotion.xml
@@ -16,7 +16,8 @@
Represents the pressure the user puts on the pen. Ranges from [code]0.0[/code] to [code]1.0[/code].
</member>
<member name="relative" type="Vector2" setter="set_relative" getter="get_relative" default="Vector2( 0, 0 )">
- The mouse position relative to the previous position (position at the last frame).
+ The mouse position relative to the previous position (position at the last frame).
+ [b]Note:[/b] Since [InputEventMouseMotion] is only emitted when the mouse moves, the last event won't have a relative position of [code]Vector2(0, 0)[/code] when the user stops moving the mouse.
</member>
<member name="speed" type="Vector2" setter="set_speed" getter="get_speed" default="Vector2( 0, 0 )">
The mouse speed in pixels per second.
diff --git a/doc/classes/InputEventScreenDrag.xml b/doc/classes/InputEventScreenDrag.xml
index d7e0c2454c..a315e4ddfb 100644
--- a/doc/classes/InputEventScreenDrag.xml
+++ b/doc/classes/InputEventScreenDrag.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="InputEventScreenDrag" inherits="InputEvent" version="4.0">
+<class name="InputEventScreenDrag" inherits="InputEventFromWindow" version="4.0">
<brief_description>
Input event type for screen drag events. Only available on mobile devices.
</brief_description>
diff --git a/doc/classes/InputEventScreenTouch.xml b/doc/classes/InputEventScreenTouch.xml
index 4a5cd36423..16a3cf8353 100644
--- a/doc/classes/InputEventScreenTouch.xml
+++ b/doc/classes/InputEventScreenTouch.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="InputEventScreenTouch" inherits="InputEvent" version="4.0">
+<class name="InputEventScreenTouch" inherits="InputEventFromWindow" version="4.0">
<brief_description>
Input event type for screen touch events.
(only available on mobile devices)
diff --git a/doc/classes/InputEventWithModifiers.xml b/doc/classes/InputEventWithModifiers.xml
index 63465ad28c..34faf18e24 100644
--- a/doc/classes/InputEventWithModifiers.xml
+++ b/doc/classes/InputEventWithModifiers.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="InputEventWithModifiers" inherits="InputEvent" version="4.0">
+<class name="InputEventWithModifiers" inherits="InputEventFromWindow" version="4.0">
<brief_description>
Base class for keys events with modifiers.
</brief_description>
diff --git a/doc/classes/Input.xml b/doc/classes/InputFilter.xml
index 0f212e7498..54184ae8a3 100644
--- a/doc/classes/Input.xml
+++ b/doc/classes/InputFilter.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Input" inherits="Object" version="4.0">
+<class name="InputFilter" inherits="Object" version="4.0">
<brief_description>
A singleton that deals with inputs.
</brief_description>
@@ -68,7 +68,7 @@
</description>
</method>
<method name="get_current_cursor_shape" qualifiers="const">
- <return type="int" enum="Input.CursorShape">
+ <return type="int" enum="InputFilter.CursorShape">
</return>
<description>
Returns the currently assigned cursor shape (see [enum CursorShape]).
@@ -193,7 +193,7 @@
</description>
</method>
<method name="get_mouse_mode" qualifiers="const">
- <return type="int" enum="Input.MouseMode">
+ <return type="int" enum="InputFilter.MouseMode">
</return>
<description>
Returns the mouse mode. See the constants for more information.
@@ -277,7 +277,7 @@
<argument index="3" name="guid" type="String">
</argument>
<description>
- Notifies the [Input] singleton that a connection has changed, to update the state for the [code]device[/code] index.
+ Notifies the [InputFilter] singleton that a connection has changed, to update the state for the [code]device[/code] index.
This is used internally and should not have to be called from user scripts. See [signal joy_connection_changed] for the signal emitted when this is triggered internally.
</description>
</method>
@@ -293,7 +293,7 @@
var a = InputEventAction.new()
a.action = "ui_cancel"
a.pressed = true
- Input.parse_input_event(a)
+ InputFilter.parse_input_event(a)
[/codeblock]
</description>
</method>
@@ -311,7 +311,7 @@
</return>
<argument index="0" name="image" type="Resource">
</argument>
- <argument index="1" name="shape" type="int" enum="Input.CursorShape" default="0">
+ <argument index="1" name="shape" type="int" enum="InputFilter.CursorShape" default="0">
</argument>
<argument index="2" name="hotspot" type="Vector2" default="Vector2( 0, 0 )">
</argument>
@@ -326,7 +326,7 @@
<method name="set_default_cursor_shape">
<return type="void">
</return>
- <argument index="0" name="shape" type="int" enum="Input.CursorShape" default="0">
+ <argument index="0" name="shape" type="int" enum="InputFilter.CursorShape" default="0">
</argument>
<description>
Sets the default cursor shape to be used in the viewport instead of [constant CURSOR_ARROW].
@@ -337,7 +337,7 @@
<method name="set_mouse_mode">
<return type="void">
</return>
- <argument index="0" name="mode" type="int" enum="Input.MouseMode">
+ <argument index="0" name="mode" type="int" enum="InputFilter.MouseMode">
</argument>
<description>
Sets the mouse mode. See the constants for more information.
diff --git a/doc/classes/InterpolatedCamera.xml b/doc/classes/InterpolatedCamera.xml
deleted file mode 100644
index 66df7e9531..0000000000
--- a/doc/classes/InterpolatedCamera.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="InterpolatedCamera" inherits="Camera" version="4.0">
- <brief_description>
- Camera which moves toward another node.
- </brief_description>
- <description>
- InterpolatedCamera is a [Camera] which smoothly moves to match a target node's position and rotation.
- If it is not [member enabled] or does not have a valid target set, InterpolatedCamera acts like a normal Camera.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- <method name="set_target">
- <return type="void">
- </return>
- <argument index="0" name="target" type="Object">
- </argument>
- <description>
- Sets the node to move toward and orient with.
- </description>
- </method>
- </methods>
- <members>
- <member name="enabled" type="bool" setter="set_interpolation_enabled" getter="is_interpolation_enabled" default="false">
- If [code]true[/code], and a target is set, the camera will move automatically.
- </member>
- <member name="speed" type="float" setter="set_speed" getter="get_speed" default="1.0">
- How quickly the camera moves toward its target. Higher values will result in tighter camera motion.
- </member>
- <member name="target" type="NodePath" setter="set_target_path" getter="get_target_path" default="NodePath(&quot;&quot;)">
- The target's [NodePath].
- </member>
- </members>
- <constants>
- </constants>
-</class>
diff --git a/doc/classes/Joint.xml b/doc/classes/Joint3D.xml
index 34da997292..15bef960f6 100644
--- a/doc/classes/Joint.xml
+++ b/doc/classes/Joint3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Joint" inherits="Spatial" version="4.0">
+<class name="Joint3D" inherits="Node3D" version="4.0">
<brief_description>
Base class for all 3D joints.
</brief_description>
diff --git a/doc/classes/KinematicBody.xml b/doc/classes/KinematicBody3D.xml
index 4ccbc679bf..5f9b36f97d 100644
--- a/doc/classes/KinematicBody.xml
+++ b/doc/classes/KinematicBody3D.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="KinematicBody" inherits="PhysicsBody" version="4.0">
+<class name="KinematicBody3D" inherits="PhysicsBody3D" version="4.0">
<brief_description>
Kinematic body 3D node.
</brief_description>
<description>
Kinematic bodies are special types of bodies that are meant to be user-controlled. They are not affected by physics at all; to other types of bodies, such as a character or a rigid body, these are the same as a static body. However, they have two main uses:
[b]Simulated motion:[/b] When these bodies are moved manually, either from code or from an [AnimationPlayer] (with [member AnimationPlayer.playback_process_mode] set to "physics"), the physics will automatically compute an estimate of their linear and angular velocity. This makes them very useful for moving platforms or other AnimationPlayer-controlled objects (like a door, a bridge that opens, etc).
- [b]Kinematic characters:[/b] KinematicBody also has an API for moving objects (the [method move_and_collide] and [method move_and_slide] methods) while performing collision tests. This makes them really useful to implement characters that collide against a world, but that don't require advanced physics.
+ [b]Kinematic characters:[/b] KinematicBody3D also has an API for moving objects (the [method move_and_collide] and [method move_and_slide] methods) while performing collision tests. This makes them really useful to implement characters that collide against a world, but that don't require advanced physics.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/kinematic_character_2d.html</link>
@@ -15,7 +15,7 @@
<method name="get_axis_lock" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="axis" type="int" enum="PhysicsServer.BodyAxis">
+ <argument index="0" name="axis" type="int" enum="PhysicsServer3D.BodyAxis">
</argument>
<description>
Returns [code]true[/code] if the specified [code]axis[/code] is locked. See also [member move_lock_x], [member move_lock_y] and [member move_lock_z].
@@ -36,12 +36,12 @@
</description>
</method>
<method name="get_slide_collision">
- <return type="KinematicCollision">
+ <return type="KinematicCollision3D">
</return>
<argument index="0" name="slide_idx" type="int">
</argument>
<description>
- Returns a [KinematicCollision], which contains information about a collision that occurred during the last [method move_and_slide] call. Since the body can collide several times in a single call to [method move_and_slide], you must specify the index of the collision in the range 0 to ([method get_slide_count] - 1).
+ Returns a [KinematicCollision3D], which contains information about a collision that occurred during the last [method move_and_slide] call. Since the body can collide several times in a single call to [method move_and_slide], you must specify the index of the collision in the range 0 to ([method get_slide_count] - 1).
</description>
</method>
<method name="get_slide_count" qualifiers="const">
@@ -73,7 +73,7 @@
</description>
</method>
<method name="move_and_collide">
- <return type="KinematicCollision">
+ <return type="KinematicCollision3D">
</return>
<argument index="0" name="rel_vec" type="Vector3">
</argument>
@@ -84,7 +84,7 @@
<argument index="3" name="test_only" type="bool" default="false">
</argument>
<description>
- Moves the body along the vector [code]rel_vec[/code]. The body will stop if it collides. Returns a [KinematicCollision], which contains information about the collision.
+ Moves the body along the vector [code]rel_vec[/code]. The body will stop if it collides. Returns a [KinematicCollision3D], which contains information about the collision.
If [code]test_only[/code] is [code]true[/code], the body does not move but the would-be collision information is given.
</description>
</method>
@@ -104,14 +104,14 @@
<argument index="5" name="infinite_inertia" type="bool" default="true">
</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.
+ 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 [KinematicBody3D] or [RigidBody3D], 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.
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.
[code]floor_max_angle[/code] is the maximum angle (in radians) where a slope is still considered a floor (or a ceiling), rather than a wall. The default value equals 45 degrees.
- If [code]infinite_inertia[/code] is [code]true[/code], body will be able to push [RigidBody] nodes, but it won't also detect any collisions with them. If [code]false[/code], it will interact with [RigidBody] nodes like with [StaticBody].
+ If [code]infinite_inertia[/code] is [code]true[/code], body will be able to push [RigidBody3D] nodes, but it won't also detect any collisions with them. If [code]false[/code], it will interact with [RigidBody3D] nodes like with [StaticBody3D].
Returns the [code]linear_velocity[/code] vector, rotated and/or scaled if a slide collision occurred. To get detailed information about collisions that occurred, use [method get_slide_collision].
</description>
</method>
@@ -140,7 +140,7 @@
<method name="set_axis_lock">
<return type="void">
</return>
- <argument index="0" name="axis" type="int" enum="PhysicsServer.BodyAxis">
+ <argument index="0" name="axis" type="int" enum="PhysicsServer3D.BodyAxis">
</argument>
<argument index="1" name="lock" type="bool">
</argument>
diff --git a/doc/classes/KinematicCollision.xml b/doc/classes/KinematicCollision3D.xml
index 858a1e69c0..f3248a9ca1 100644
--- a/doc/classes/KinematicCollision.xml
+++ b/doc/classes/KinematicCollision3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="KinematicCollision" inherits="Reference" version="4.0">
+<class name="KinematicCollision3D" inherits="Reference" version="4.0">
<brief_description>
- Collision data for [KinematicBody] collisions.
+ Collision data for [KinematicBody3D] collisions.
</brief_description>
<description>
- Contains collision data for [KinematicBody] collisions. When a [KinematicBody] is moved using [method KinematicBody.move_and_collide], it stops if it detects a collision with another body. If a collision is detected, a KinematicCollision object is returned.
+ Contains collision data for [KinematicBody3D] collisions. When a [KinematicBody3D] is moved using [method KinematicBody3D.move_and_collide], it stops if it detects a collision with another body. If a collision is detected, a KinematicCollision3D object is returned.
This object contains information about the collision, including the colliding object, the remaining motion, and the collision position. This information can be used to calculate a collision response.
</description>
<tutorials>
@@ -25,7 +25,7 @@
The colliding body's shape.
</member>
<member name="collider_shape_index" type="int" setter="" getter="get_collider_shape_index" default="0">
- The colliding shape's index. See [CollisionObject].
+ The colliding shape's index. See [CollisionObject3D].
</member>
<member name="collider_velocity" type="Vector3" setter="" getter="get_collider_velocity" default="Vector3( 0, 0, 0 )">
The colliding object's velocity.
diff --git a/doc/classes/Light.xml b/doc/classes/Light3D.xml
index a2867a50d2..623b2a2bb0 100644
--- a/doc/classes/Light.xml
+++ b/doc/classes/Light3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Light" inherits="VisualInstance" version="4.0">
+<class name="Light3D" inherits="VisualInstance3D" version="4.0">
<brief_description>
Provides a base class for different kinds of light nodes.
</brief_description>
<description>
- Light is the abstract base class for light nodes, so it shouldn't be used directly (it can't be instanced). Other types of light nodes inherit from it. Light contains the common variables and parameters used for lighting.
+ Light3D is the abstract base class for light nodes, so it shouldn't be used directly (it can't be instanced). Other types of light nodes inherit from it. Light3D contains the common variables and parameters used for lighting.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html</link>
@@ -13,21 +13,21 @@
<method name="get_param" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="Light.Param">
+ <argument index="0" name="param" type="int" enum="Light3D.Param">
</argument>
<description>
- Returns the value of the specified [enum Light.Param] parameter.
+ Returns the value of the specified [enum Light3D.Param] parameter.
</description>
</method>
<method name="set_param">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="Light.Param">
+ <argument index="0" name="param" type="int" enum="Light3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
<description>
- Sets the value of the specified [enum Light.Param] parameter.
+ Sets the value of the specified [enum Light3D.Param] parameter.
</description>
</method>
</methods>
@@ -35,7 +35,10 @@
<member name="editor_only" type="bool" setter="set_editor_only" getter="is_editor_only" default="false">
If [code]true[/code], the light only appears in the editor and will not be visible at runtime.
</member>
- <member name="light_bake_mode" type="int" setter="set_bake_mode" getter="get_bake_mode" enum="Light.BakeMode" default="1">
+ <member name="light_angular_distance" type="float" setter="set_param" getter="get_param" default="0.0">
+ Angular size of the light in degrees. Only available for [DirectionalLight3D]s. For reference, the sun from earth is approximately [code]0.5[/code].
+ </member>
+ <member name="light_bake_mode" type="int" setter="set_bake_mode" getter="get_bake_mode" enum="Light3D.BakeMode" default="1">
The light's bake mode. See [enum BakeMode].
</member>
<member name="light_color" type="Color" setter="set_color" getter="get_color" default="Color( 1, 1, 1, 1 )">
@@ -53,12 +56,18 @@
<member name="light_negative" type="bool" setter="set_negative" getter="is_negative" default="false">
If [code]true[/code], the light's effect is reversed, darkening areas and casting bright shadows.
</member>
+ <member name="light_size" type="float" setter="set_param" getter="get_param" default="0.0">
+ The size of the light in Godot units. Only available for [OmniLight3D]s and [SpotLight3D]s.
+ </member>
<member name="light_specular" type="float" setter="set_param" getter="get_param" default="0.5">
The intensity of the specular blob in objects affected by the light. At [code]0[/code] the light becomes a pure diffuse light.
</member>
<member name="shadow_bias" type="float" setter="set_param" getter="get_param" default="0.15">
Used to adjust shadow appearance. Too small a value results in self-shadowing, while too large a value causes shadows to separate from casters. Adjust as needed.
</member>
+ <member name="shadow_blur" type="float" setter="set_param" getter="get_param" default="1.0">
+ Blurs the edges of the shadow. Can be used to hide pixel artifacts in low resolution shadow maps. A high value can make shadows appear grainy and can cause other unwanted artifacts. Try to keep as near default as possible.
+ </member>
<member name="shadow_color" type="Color" setter="set_shadow_color" getter="get_shadow_color" default="Color( 0, 0, 0, 1 )">
The color of shadows cast by this light.
</member>
@@ -69,7 +78,7 @@
If [code]true[/code], the light will cast shadows.
</member>
<member name="shadow_reverse_cull_face" type="bool" setter="set_shadow_reverse_cull_face" getter="get_shadow_reverse_cull_face" default="false">
- If [code]true[/code], reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double-sided shadows with [constant GeometryInstance.SHADOW_CASTING_SETTING_DOUBLE_SIDED].
+ If [code]true[/code], reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double-sided shadows with [constant GeometryInstance3D.SHADOW_CASTING_SETTING_DOUBLE_SIDED].
</member>
</members>
<constants>
@@ -83,42 +92,42 @@
Constant for accessing [member light_specular].
</constant>
<constant name="PARAM_RANGE" value="3" enum="Param">
- Constant for accessing [member OmniLight.omni_range] or [member SpotLight.spot_range].
+ Constant for accessing [member OmniLight3D.omni_range] or [member SpotLight3D.spot_range].
</constant>
<constant name="PARAM_ATTENUATION" value="4" enum="Param">
- Constant for accessing [member OmniLight.omni_attenuation] or [member SpotLight.spot_attenuation].
+ Constant for accessing [member OmniLight3D.omni_attenuation] or [member SpotLight3D.spot_attenuation].
</constant>
<constant name="PARAM_SPOT_ANGLE" value="5" enum="Param">
- Constant for accessing [member SpotLight.spot_angle].
+ Constant for accessing [member SpotLight3D.spot_angle].
</constant>
<constant name="PARAM_SPOT_ATTENUATION" value="6" enum="Param">
- Constant for accessing [member SpotLight.spot_angle_attenuation].
+ Constant for accessing [member SpotLight3D.spot_angle_attenuation].
</constant>
<constant name="PARAM_CONTACT_SHADOW_SIZE" value="7" enum="Param">
Constant for accessing [member shadow_contact].
</constant>
<constant name="PARAM_SHADOW_MAX_DISTANCE" value="8" enum="Param">
- Constant for accessing [member DirectionalLight.directional_shadow_max_distance].
+ Constant for accessing [member DirectionalLight3D.directional_shadow_max_distance].
</constant>
<constant name="PARAM_SHADOW_SPLIT_1_OFFSET" value="9" enum="Param">
- Constant for accessing [member DirectionalLight.directional_shadow_split_1].
+ Constant for accessing [member DirectionalLight3D.directional_shadow_split_1].
</constant>
<constant name="PARAM_SHADOW_SPLIT_2_OFFSET" value="10" enum="Param">
- Constant for accessing [member DirectionalLight.directional_shadow_split_2].
+ Constant for accessing [member DirectionalLight3D.directional_shadow_split_2].
</constant>
<constant name="PARAM_SHADOW_SPLIT_3_OFFSET" value="11" enum="Param">
- Constant for accessing [member DirectionalLight.directional_shadow_split_3].
+ Constant for accessing [member DirectionalLight3D.directional_shadow_split_3].
</constant>
<constant name="PARAM_SHADOW_FADE_START" value="12" enum="Param">
</constant>
<constant name="PARAM_SHADOW_NORMAL_BIAS" value="13" enum="Param">
- Constant for accessing [member DirectionalLight.directional_shadow_normal_bias].
+ Constant for accessing [member DirectionalLight3D.directional_shadow_normal_bias].
</constant>
<constant name="PARAM_SHADOW_BIAS" value="14" enum="Param">
Constant for accessing [member shadow_bias].
</constant>
<constant name="PARAM_SHADOW_BIAS_SPLIT_SCALE" value="15" enum="Param">
- Constant for accessing [member DirectionalLight.directional_shadow_bias_split_scale].
+ Constant for accessing [member DirectionalLight3D.directional_shadow_bias_split_scale].
</constant>
<constant name="PARAM_MAX" value="16" enum="Param">
Represents the size of the [enum Param] enum.
diff --git a/doc/classes/Listener.xml b/doc/classes/Listener3D.xml
index 72bbfa29d4..998ea757ff 100644
--- a/doc/classes/Listener.xml
+++ b/doc/classes/Listener3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Listener" inherits="Spatial" version="4.0">
+<class name="Listener3D" inherits="Node3D" version="4.0">
<brief_description>
Overrides the location sounds are heard from.
</brief_description>
<description>
- Once added to the scene tree and enabled using [method make_current], this node will override the location sounds are heard from. This can be used to listen from a location different from the [Camera].
+ Once added to the scene tree and enabled using [method make_current], this node will override the location sounds are heard from. This can be used to listen from a location different from the [Camera3D].
[b]Note:[/b] There is no 2D equivalent for this node yet.
</description>
<tutorials>
@@ -29,7 +29,7 @@
</return>
<description>
Returns [code]true[/code] if the listener was made current using [method make_current], [code]false[/code] otherwise.
- [b]Note:[/b] There may be more than one Listener marked as "current" in the scene tree, but only the one that was made current last will be used.
+ [b]Note:[/b] There may be more than one Listener3D marked as "current" in the scene tree, but only the one that was made current last will be used.
</description>
</method>
<method name="make_current">
diff --git a/doc/classes/MainLoop.xml b/doc/classes/MainLoop.xml
index af71c30936..7bb478fce2 100644
--- a/doc/classes/MainLoop.xml
+++ b/doc/classes/MainLoop.xml
@@ -7,6 +7,7 @@
[MainLoop] is the abstract base class for a Godot project's game loop. It is inherited by [SceneTree], which is the default game loop implementation used in Godot projects, though it is also possible to write and use one's own [MainLoop] subclass instead of the scene tree.
Upon the application start, a [MainLoop] implementation must be provided to the OS; otherwise, the application will exit. This happens automatically (and a [SceneTree] is created) unless a main [Script] is provided from the command line (with e.g. [code]godot -s my_loop.gd[/code], which should then be a [MainLoop] implementation.
Here is an example script implementing a simple [MainLoop]:
+ [b]FIXME:[/b] No longer valid after DisplayServer split and Input refactoring.
[codeblock]
extends MainLoop
@@ -43,17 +44,6 @@
<tutorials>
</tutorials>
<methods>
- <method name="_drop_files" qualifiers="virtual">
- <return type="void">
- </return>
- <argument index="0" name="files" type="PackedStringArray">
- </argument>
- <argument index="1" name="from_screen" type="int">
- </argument>
- <description>
- Called when files are dragged from the OS file manager and dropped in the game window. The arguments are a list of file paths and the identifier of the screen where the drag originated.
- </description>
- </method>
<method name="_finalize" qualifiers="virtual">
<return type="void">
</return>
@@ -61,17 +51,6 @@
Called before the program exits.
</description>
</method>
- <method name="_global_menu_action" qualifiers="virtual">
- <return type="void">
- </return>
- <argument index="0" name="id" type="Variant">
- </argument>
- <argument index="1" name="meta" type="Variant">
- </argument>
- <description>
- Called when the user performs an action in the system global menu (e.g. the Mac OS menu bar).
- </description>
- </method>
<method name="_idle" qualifiers="virtual">
<return type="bool">
</return>
@@ -89,24 +68,6 @@
Called once during initialization.
</description>
</method>
- <method name="_input_event" qualifiers="virtual">
- <return type="void">
- </return>
- <argument index="0" name="event" type="InputEvent">
- </argument>
- <description>
- Called whenever an [InputEvent] is received by the main loop.
- </description>
- </method>
- <method name="_input_text" qualifiers="virtual">
- <return type="void">
- </return>
- <argument index="0" name="text" type="String">
- </argument>
- <description>
- Deprecated callback, does not do anything. Use [method _input_event] to parse text input. Will be removed in Godot 4.0.
- </description>
- </method>
<method name="_iteration" qualifiers="virtual">
<return type="bool">
</return>
@@ -140,24 +101,6 @@
Should not be called manually, override [method _initialize] instead. Will be removed in Godot 4.0.
</description>
</method>
- <method name="input_event">
- <return type="void">
- </return>
- <argument index="0" name="event" type="InputEvent">
- </argument>
- <description>
- Should not be called manually, override [method _input_event] instead. Will be removed in Godot 4.0.
- </description>
- </method>
- <method name="input_text">
- <return type="void">
- </return>
- <argument index="0" name="text" type="String">
- </argument>
- <description>
- Should not be called manually, override [method _input_text] instead. Will be removed in Godot 4.0.
- </description>
- </method>
<method name="iteration">
<return type="bool">
</return>
@@ -180,58 +123,30 @@
</signal>
</signals>
<constants>
- <constant name="NOTIFICATION_WM_MOUSE_ENTER" value="1002">
- Notification received from the OS when the mouse enters the game window.
- Implemented on desktop and web platforms.
- </constant>
- <constant name="NOTIFICATION_WM_MOUSE_EXIT" value="1003">
- Notification received from the OS when the mouse leaves the game window.
- Implemented on desktop and web platforms.
- </constant>
- <constant name="NOTIFICATION_WM_FOCUS_IN" value="1004">
- Notification received from the OS when the game window is focused.
- Implemented on all platforms.
- </constant>
- <constant name="NOTIFICATION_WM_FOCUS_OUT" value="1005">
- Notification received from the OS when the game window is unfocused.
- Implemented on all platforms.
- </constant>
- <constant name="NOTIFICATION_WM_QUIT_REQUEST" value="1006">
- Notification received from the OS when a quit request is sent (e.g. closing the window with a "Close" button or Alt+F4).
- Implemented on desktop platforms.
- </constant>
- <constant name="NOTIFICATION_WM_GO_BACK_REQUEST" value="1007">
- Notification received from the OS when a go back request is sent (e.g. pressing the "Back" button on Android).
- Specific to the Android platform.
- </constant>
- <constant name="NOTIFICATION_WM_UNFOCUS_REQUEST" value="1008">
- Notification received from the OS when an unfocus request is sent (e.g. another OS window wants to take the focus).
- No supported platforms currently send this notification.
- </constant>
- <constant name="NOTIFICATION_OS_MEMORY_WARNING" value="1009">
+ <constant name="NOTIFICATION_OS_MEMORY_WARNING" value="2009">
Notification received from the OS when the application is exceeding its allocated memory.
Specific to the iOS platform.
</constant>
- <constant name="NOTIFICATION_TRANSLATION_CHANGED" value="1010">
+ <constant name="NOTIFICATION_TRANSLATION_CHANGED" value="2010">
Notification received when translations may have changed. Can be triggered by the user changing the locale. Can be used to respond to language changes, for example to change the UI strings on the fly. Useful when working with the built-in translation support, like [method Object.tr].
</constant>
- <constant name="NOTIFICATION_WM_ABOUT" value="1011">
+ <constant name="NOTIFICATION_WM_ABOUT" value="2011">
Notification received from the OS when a request for "About" information is sent.
Specific to the macOS platform.
</constant>
- <constant name="NOTIFICATION_CRASH" value="1012">
+ <constant name="NOTIFICATION_CRASH" value="2012">
Notification received from Godot's crash handler when the engine is about to crash.
Implemented on desktop platforms if the crash handler is enabled.
</constant>
- <constant name="NOTIFICATION_OS_IME_UPDATE" value="1013">
+ <constant name="NOTIFICATION_OS_IME_UPDATE" value="2013">
Notification received from the OS when an update of the Input Method Engine occurs (e.g. change of IME cursor position or composition string).
Specific to the macOS platform.
</constant>
- <constant name="NOTIFICATION_APP_RESUMED" value="1014">
+ <constant name="NOTIFICATION_APP_RESUMED" value="2014">
Notification received from the OS when the app is resumed.
Specific to the Android platform.
</constant>
- <constant name="NOTIFICATION_APP_PAUSED" value="1015">
+ <constant name="NOTIFICATION_APP_PAUSED" value="2015">
Notification received from the OS when the app is paused.
Specific to the Android platform.
</constant>
diff --git a/doc/classes/Material.xml b/doc/classes/Material.xml
index a0c1979646..a37c8127f0 100644
--- a/doc/classes/Material.xml
+++ b/doc/classes/Material.xml
@@ -4,7 +4,7 @@
Abstract base [Resource] for coloring and shading geometry.
</brief_description>
<description>
- Material is a base [Resource] used for coloring and shading geometry. All materials inherit from it and almost all [VisualInstance] derived nodes carry a Material. A few flags and parameters are shared between all material types and are configured here.
+ Material is a base [Resource] used for coloring and shading geometry. All materials inherit from it and almost all [VisualInstance3D] derived nodes carry a Material. A few flags and parameters are shared between all material types and are configured here.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/MenuButton.xml b/doc/classes/MenuButton.xml
index 6ec9d60df4..316315f777 100644
--- a/doc/classes/MenuButton.xml
+++ b/doc/classes/MenuButton.xml
@@ -38,9 +38,9 @@
<member name="toggle_mode" type="bool" setter="set_toggle_mode" getter="is_toggle_mode" override="true" default="true" />
</members>
<signals>
- <signal name="about_to_show">
+ <signal name="about_to_popup">
<description>
- Emitted when [PopupMenu] of this MenuButton is about to show.
+ Emitted when the [PopupMenu] of this MenuButton is about to show.
</description>
</signal>
</signals>
diff --git a/doc/classes/Mesh.xml b/doc/classes/Mesh.xml
index dc7ffc8934..6958c815a6 100644
--- a/doc/classes/Mesh.xml
+++ b/doc/classes/Mesh.xml
@@ -10,10 +10,10 @@
</tutorials>
<methods>
<method name="create_convex_shape" qualifiers="const">
- <return type="Shape">
+ <return type="Shape3D">
</return>
<description>
- Calculate a [ConvexPolygonShape] from the mesh.
+ Calculate a [ConvexPolygonShape3D] from the mesh.
</description>
</method>
<method name="create_outline" qualifiers="const">
@@ -27,10 +27,10 @@
</description>
</method>
<method name="create_trimesh_shape" qualifiers="const">
- <return type="Shape">
+ <return type="Shape3D">
</return>
<description>
- Calculate a [ConcavePolygonShape] from the mesh.
+ Calculate a [ConcavePolygonShape3D] from the mesh.
</description>
</method>
<method name="generate_triangle_mesh" qualifiers="const">
diff --git a/doc/classes/MeshInstance.xml b/doc/classes/MeshInstance.xml
deleted file mode 100644
index 6123dfa37a..0000000000
--- a/doc/classes/MeshInstance.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="MeshInstance" inherits="GeometryInstance" version="4.0">
- <brief_description>
- Node that instances meshes into a scenario.
- </brief_description>
- <description>
- MeshInstance is a node that takes a [Mesh] resource and adds it to the current scenario by creating an instance of it. This is the class most often used to get 3D geometry rendered and can be used to instance a single [Mesh] in many places. This allows to reuse geometry and save on resources. When a [Mesh] has to be instanced more than thousands of times at close proximity, consider using a [MultiMesh] in a [MultiMeshInstance] instead.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- <method name="create_convex_collision">
- <return type="void">
- </return>
- <description>
- This helper creates a [StaticBody] child node with a [ConvexPolygonShape] collision shape calculated from the mesh geometry. It's mainly used for testing.
- </description>
- </method>
- <method name="create_debug_tangents">
- <return type="void">
- </return>
- <description>
- This helper creates a [MeshInstance] child node with gizmos at every vertex calculated from the mesh geometry. It's mainly used for testing.
- </description>
- </method>
- <method name="create_trimesh_collision">
- <return type="void">
- </return>
- <description>
- This helper creates a [StaticBody] child node with a [ConcavePolygonShape] collision shape calculated from the mesh geometry. It's mainly used for testing.
- </description>
- </method>
- <method name="get_surface_material" qualifiers="const">
- <return type="Material">
- </return>
- <argument index="0" name="surface" type="int">
- </argument>
- <description>
- Returns the [Material] for a surface of the [Mesh] resource.
- </description>
- </method>
- <method name="get_surface_material_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the number of surface materials.
- </description>
- </method>
- <method name="set_surface_material">
- <return type="void">
- </return>
- <argument index="0" name="surface" type="int">
- </argument>
- <argument index="1" name="material" type="Material">
- </argument>
- <description>
- Sets the [Material] for a surface of the [Mesh] resource.
- </description>
- </method>
- </methods>
- <members>
- <member name="mesh" type="Mesh" setter="set_mesh" getter="get_mesh">
- The [Mesh] resource for the instance.
- </member>
- <member name="skeleton" type="NodePath" setter="set_skeleton_path" getter="get_skeleton_path" default="NodePath(&quot;..&quot;)">
- [NodePath] to the [Skeleton] associated with the instance.
- </member>
- <member name="skin" type="Skin" setter="set_skin" getter="get_skin">
- Sets the skin to be used by this instance.
- </member>
- </members>
- <constants>
- </constants>
-</class>
diff --git a/doc/classes/MeshInstance2D.xml b/doc/classes/MeshInstance2D.xml
index 2781dd4626..0cfc8deb0a 100644
--- a/doc/classes/MeshInstance2D.xml
+++ b/doc/classes/MeshInstance2D.xml
@@ -4,7 +4,7 @@
Node used for displaying a [Mesh] in 2D.
</brief_description>
<description>
- Node used for displaying a [Mesh] in 2D. Can be constructed from an existing [Sprite] via a tool in the editor toolbar. Select "Sprite" then "Convert to Mesh2D", select settings in popup and press "Create Mesh2D".
+ Node used for displaying a [Mesh] in 2D. Can be constructed from an existing [Sprite2D] via a tool in the editor toolbar. Select "Sprite2D" then "Convert to Mesh2D", select settings in popup and press "Create Mesh2D".
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/2d/2d_meshes.html</link>
diff --git a/doc/classes/MeshInstance3D.xml b/doc/classes/MeshInstance3D.xml
new file mode 100644
index 0000000000..c569da2df1
--- /dev/null
+++ b/doc/classes/MeshInstance3D.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="MeshInstance3D" inherits="GeometryInstance3D" version="4.0">
+ <brief_description>
+ Node that instances meshes into a scenario.
+ </brief_description>
+ <description>
+ MeshInstance3D is a node that takes a [Mesh] resource and adds it to the current scenario by creating an instance of it. This is the class most often used render 3D geometry and can be used to instance a single [Mesh] in many places. This allows reuse of geometry which can save on resources. When a [Mesh] has to be instanced more than thousands of times at close proximity, consider using a [MultiMesh] in a [MultiMeshInstance3D] instead.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="create_convex_collision">
+ <return type="void">
+ </return>
+ <description>
+ This helper creates a [StaticBody3D] child node with a [ConvexPolygonShape3D] collision shape calculated from the mesh geometry. It's mainly used for testing.
+ </description>
+ </method>
+ <method name="create_debug_tangents">
+ <return type="void">
+ </return>
+ <description>
+ This helper creates a [MeshInstance3D] child node with gizmos at every vertex calculated from the mesh geometry. It's mainly used for testing.
+ </description>
+ </method>
+ <method name="create_trimesh_collision">
+ <return type="void">
+ </return>
+ <description>
+ This helper creates a [StaticBody3D] child node with a [ConcavePolygonShape3D] collision shape calculated from the mesh geometry. It's mainly used for testing.
+ </description>
+ </method>
+ <method name="get_active_material" qualifiers="const">
+ <return type="Material">
+ </return>
+ <argument index="0" name="surface" type="int">
+ </argument>
+ <description>
+ Returns the [Material] that will be used by the [Mesh] when drawing. This can return the [member GeometryInstance3D.material_override], the surface override [Material] defined in this [MeshInstance3D], or the surface [Material] defined in the [Mesh]. For example, if [member GeometryInstance3D.material_override] is used, all surfaces will return the override material.
+ </description>
+ </method>
+ <method name="get_surface_material" qualifiers="const">
+ <return type="Material">
+ </return>
+ <argument index="0" name="surface" type="int">
+ </argument>
+ <description>
+ Returns the override [Material] for the specified surface of the [Mesh] resource.
+ </description>
+ </method>
+ <method name="get_surface_material_count" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ Returns the number of surface materials.
+ </description>
+ </method>
+ <method name="set_surface_material">
+ <return type="void">
+ </return>
+ <argument index="0" name="surface" type="int">
+ </argument>
+ <argument index="1" name="material" type="Material">
+ </argument>
+ <description>
+ Sets the override [Material] for the specified surface of the [Mesh] resource. This material is associated with this [MeshInstance3D] rather than with the [Mesh] resource.
+ </description>
+ </method>
+ </methods>
+ <members>
+ <member name="mesh" type="Mesh" setter="set_mesh" getter="get_mesh">
+ The [Mesh] resource for the instance.
+ </member>
+ <member name="skeleton" type="NodePath" setter="set_skeleton_path" getter="get_skeleton_path" default="NodePath(&quot;..&quot;)">
+ [NodePath] to the [Skeleton3D] associated with the instance.
+ </member>
+ <member name="skin" type="Skin" setter="set_skin" getter="get_skin">
+ Sets the skin to be used by this instance.
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/MeshLibrary.xml b/doc/classes/MeshLibrary.xml
index a96f6d7231..ccf6172017 100644
--- a/doc/classes/MeshLibrary.xml
+++ b/doc/classes/MeshLibrary.xml
@@ -94,7 +94,7 @@
</argument>
<description>
Returns an item's collision shapes.
- The array consists of each [Shape] followed by its [Transform].
+ The array consists of each [Shape3D] followed by its [Transform].
</description>
</method>
<method name="get_last_unused_item_id" qualifiers="const">
@@ -178,7 +178,7 @@
</argument>
<description>
Sets an item's collision shapes.
- The array should consist of [Shape] objects, each followed by a [Transform] that will be applied to it. For shapes that should not have a transform, use [constant Transform.IDENTITY].
+ The array should consist of [Shape3D] objects, each followed by a [Transform] that will be applied to it. For shapes that should not have a transform, use [constant Transform.IDENTITY].
</description>
</method>
</methods>
diff --git a/doc/classes/MultiMesh.xml b/doc/classes/MultiMesh.xml
index 2a1d270990..0f56ab4b95 100644
--- a/doc/classes/MultiMesh.xml
+++ b/doc/classes/MultiMesh.xml
@@ -4,7 +4,7 @@
Provides high-performance mesh instancing.
</brief_description>
<description>
- MultiMesh provides low-level mesh instancing. Drawing thousands of [MeshInstance] nodes can be slow, since each object is submitted to the GPU then drawn individually.
+ MultiMesh provides low-level mesh instancing. Drawing thousands of [MeshInstance3D] nodes can be slow, since each object is submitted to the GPU then drawn individually.
MultiMesh is much faster as it can draw thousands of instances with a single draw call, resulting in less API overhead.
As a drawback, if the instances are too far away of each other, performance may be reduced as every single instance will always rendered (they are spatially indexed as one, for the whole object).
Since instances may have any behavior, the AABB used for visibility must be provided by the user.
diff --git a/doc/classes/MultiMeshInstance2D.xml b/doc/classes/MultiMeshInstance2D.xml
index 2fe5447a27..07f21514ef 100644
--- a/doc/classes/MultiMeshInstance2D.xml
+++ b/doc/classes/MultiMeshInstance2D.xml
@@ -5,7 +5,7 @@
</brief_description>
<description>
[MultiMeshInstance2D] is a specialized node to instance a [MultiMesh] resource in 2D.
- Usage is the same as [MultiMeshInstance].
+ Usage is the same as [MultiMeshInstance3D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/MultiMeshInstance.xml b/doc/classes/MultiMeshInstance3D.xml
index 6cbc0a8e04..cab17c952e 100644
--- a/doc/classes/MultiMeshInstance.xml
+++ b/doc/classes/MultiMeshInstance3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="MultiMeshInstance" inherits="GeometryInstance" version="4.0">
+<class name="MultiMeshInstance3D" inherits="GeometryInstance3D" version="4.0">
<brief_description>
Node that instances a [MultiMesh].
</brief_description>
<description>
- [MultiMeshInstance] is a specialized node to instance [GeometryInstance]s based on a [MultiMesh] resource.
+ [MultiMeshInstance3D] is a specialized node to instance [GeometryInstance3D]s based on a [MultiMesh] resource.
This is useful to optimize the rendering of a high amount of instances of a given mesh (for example trees in a forest or grass strands).
</description>
<tutorials>
@@ -16,7 +16,7 @@
</methods>
<members>
<member name="multimesh" type="MultiMesh" setter="set_multimesh" getter="get_multimesh">
- The [MultiMesh] resource that will be used and shared among all instances of the [MultiMeshInstance].
+ The [MultiMesh] resource that will be used and shared among all instances of the [MultiMeshInstance3D].
</member>
</members>
<constants>
diff --git a/doc/classes/Navigation.xml b/doc/classes/Navigation3D.xml
index 93170bca4a..807f0ad309 100644
--- a/doc/classes/Navigation.xml
+++ b/doc/classes/Navigation3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Navigation" inherits="Spatial" version="4.0">
+<class name="Navigation3D" inherits="Node3D" version="4.0">
<brief_description>
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 [NavigationRegion] 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 [NavigationRegion3D] nodes. In addition to basic pathfinding, this class also assists with aligning navigation agents with the meshes they are navigating on.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/NavigationAgent.xml b/doc/classes/NavigationAgent3D.xml
index c6c9abec13..f9df1d390b 100644
--- a/doc/classes/NavigationAgent.xml
+++ b/doc/classes/NavigationAgent3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="NavigationAgent" inherits="Node" version="4.0">
+<class name="NavigationAgent3D" inherits="Node" version="4.0">
<brief_description>
3D Agent used in navigation for collision avoidance.
</brief_description>
<description>
- 3D Agent that is used in navigation to reach a location while avoiding static and dynamic obstacles. The dynamic obstacles are avoided using RVO collision avoidance. The agent needs navigation data to work correctly. This can be done by having the agent as a child of a [Navigation] node, or using [method set_navigation]. [NavigationAgent] is physics safe.
+ 3D Agent that is used in navigation to reach a location while avoiding static and dynamic obstacles. The dynamic obstacles are avoided using RVO collision avoidance. The agent needs navigation data to work correctly. This can be done by having the agent as a child of a [Navigation3D] node, or using [method set_navigation]. [NavigationAgent3D] is physics safe.
</description>
<tutorials>
</tutorials>
@@ -41,7 +41,7 @@
<return type="Node">
</return>
<description>
- Returns the [Navigation] node that the agent is using for its navigation system.
+ Returns the [Navigation3D] node that the agent is using for its navigation system.
</description>
</method>
<method name="get_next_location">
@@ -85,7 +85,7 @@
<argument index="0" name="navigation" type="Node">
</argument>
<description>
- Sets the [Navigation] node used by the agent. Useful when you don't want to make the agent a child of a [Navigation] node.
+ Sets the [Navigation3D] node used by the agent. Useful when you don't want to make the agent a child of a [Navigation3D] node.
</description>
</method>
<method name="set_target_location">
diff --git a/doc/classes/NavigationObstacle2D.xml b/doc/classes/NavigationObstacle2D.xml
index 4d12b985e0..ddd96975f1 100644
--- a/doc/classes/NavigationObstacle2D.xml
+++ b/doc/classes/NavigationObstacle2D.xml
@@ -4,7 +4,7 @@
2D Obstacle used in navigation for collision avoidance.
</brief_description>
<description>
- 2D Obstacle used in navigation for collision avoidance. The obstacle needs navigation data to work correctly. This can be done by having the obstacle as a child of a [Navigation2D] node, or using [method set_navigation]. [NavigationObstacle] is physics safe.
+ 2D Obstacle used in navigation for collision avoidance. The obstacle needs navigation data to work correctly. This can be done by having the obstacle as a child of a [Navigation2D] node, or using [method set_navigation]. [NavigationObstacle2D] is physics safe.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/NavigationObstacle.xml b/doc/classes/NavigationObstacle3D.xml
index 31cf01793a..e01a40ed73 100644
--- a/doc/classes/NavigationObstacle.xml
+++ b/doc/classes/NavigationObstacle3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="NavigationObstacle" inherits="Node" version="4.0">
+<class name="NavigationObstacle3D" inherits="Node" version="4.0">
<brief_description>
3D Obstacle used in navigation for collision avoidance.
</brief_description>
<description>
- 3D Obstacle used in navigation for collision avoidance. The obstacle needs navigation data to work correctly. This can be done by having the obstacle as a child of a [Navigation] node, or using [method set_navigation]. [NavigationObstacle] is physics safe.
+ 3D Obstacle used in navigation for collision avoidance. The obstacle needs navigation data to work correctly. This can be done by having the obstacle as a child of a [Navigation3D] node, or using [method set_navigation]. [NavigationObstacle3D] is physics safe.
</description>
<tutorials>
</tutorials>
@@ -13,7 +13,7 @@
<return type="Node">
</return>
<description>
- Returns the [Navigation] node that the obstacle is using for its navigation system.
+ Returns the [Navigation3D] node that the obstacle is using for its navigation system.
</description>
</method>
<method name="set_navigation">
@@ -22,7 +22,7 @@
<argument index="0" name="navigation" type="Node">
</argument>
<description>
- Sets the [Navigation] node used by the obstacle. Useful when you don't want to make the obstacle a child of a [Navigation] node.
+ Sets the [Navigation3D] node used by the obstacle. Useful when you don't want to make the obstacle a child of a [Navigation3D] node.
</description>
</method>
</methods>
diff --git a/doc/classes/NavigationRegion.xml b/doc/classes/NavigationRegion3D.xml
index a32ded2878..b70bfb6596 100644
--- a/doc/classes/NavigationRegion.xml
+++ b/doc/classes/NavigationRegion3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="NavigationRegion" inherits="Spatial" version="4.0">
+<class name="NavigationRegion3D" inherits="Node3D" version="4.0">
<brief_description>
A region of the navigation map.
</brief_description>
<description>
- 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).
+ A region of the navigation map. It tells the [Navigation3D] node what can be navigated and what cannot, based on the [NavigationMesh] resource. This should be a child of a [Navigation3D] node (even not a direct child).
</description>
<tutorials>
</tutorials>
@@ -19,7 +19,7 @@
</methods>
<members>
<member name="enabled" type="bool" setter="set_enabled" getter="is_enabled" default="true">
- Determines if the [NavigationRegion] is enabled or disabled.
+ Determines if the [NavigationRegion3D] 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/Navigation2DServer.xml b/doc/classes/NavigationServer2D.xml
index 110844c492..1b9099336c 100644
--- a/doc/classes/Navigation2DServer.xml
+++ b/doc/classes/NavigationServer2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Navigation2DServer" inherits="Object" version="4.0">
+<class name="NavigationServer2D" inherits="Object" version="4.0">
<brief_description>
Server interface for low-level 2D navigation access
</brief_description>
<description>
- Navigation2DServer is the server responsible for all 2D navigation. It creates the agents, maps, and regions for navigation to work as expected. This keeps tracks of any call and executes them during the sync phase. This means that you can request any change to the map, using any thread, without worrying.
+ NavigationServer2D is the server responsible for all 2D navigation. It creates the agents, maps, and regions for navigation to work as expected. This keeps tracks of any call and executes them during the sync phase. This means that you can request any change to the map, using any thread, without worrying.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/NavigationServer.xml b/doc/classes/NavigationServer3D.xml
index 1b534b8458..1f621c3c81 100644
--- a/doc/classes/NavigationServer.xml
+++ b/doc/classes/NavigationServer3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="NavigationServer" inherits="Object" version="4.0">
+<class name="NavigationServer3D" inherits="Object" version="4.0">
<brief_description>
Server interface for low-level 3D navigation access
</brief_description>
<description>
- NavigationServer is the server responsible for all 3D navigation. It creates the agents, maps, and regions for navigation to work as expected. This keeps tracks of any call and executes them during the sync phase. This means that you can request any change to the map, using any thread, without worrying.
+ NavigationServer3D is the server responsible for all 3D navigation. It creates the agents, maps, and regions for navigation to work as expected. This keeps tracks of any call and executes them during the sync phase. This means that you can request any change to the map, using any thread, without worrying.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml
index 717130728d..8c588f0373 100644
--- a/doc/classes/Node.xml
+++ b/doc/classes/Node.xml
@@ -53,7 +53,7 @@
<description>
Called when there is an input event. The input event propagates up through the node tree until a node consumes it.
It is only called if input processing is enabled, which is done automatically if this method is overridden, and can be toggled with [method set_process_input].
- To consume the input event and stop it propagating further to other nodes, [method SceneTree.set_input_as_handled] can be called.
+ To consume the input event and stop it propagating further to other nodes, [method Viewport.set_input_as_handled] can be called.
For gameplay input, [method _unhandled_input] and [method _unhandled_key_input] are usually a better fit as they allow the GUI to intercept the events first.
</description>
</method>
@@ -97,7 +97,7 @@
<description>
Called when an [InputEvent] hasn't been consumed by [method _input] or any GUI. The input event propagates up through the node tree until a node consumes it.
It is only called if unhandled input processing is enabled, which is done automatically if this method is overridden, and can be toggled with [method set_process_unhandled_input].
- To consume the input event and stop it propagating further to other nodes, [method SceneTree.set_input_as_handled] can be called.
+ To consume the input event and stop it propagating further to other nodes, [method Viewport.set_input_as_handled] can be called.
For gameplay input, this and [method _unhandled_key_input] are usually a better fit than [method _input] as they allow the GUI to intercept the events first.
</description>
</method>
@@ -109,7 +109,7 @@
<description>
Called when an [InputEventKey] hasn't been consumed by [method _input] or any GUI. The input event propagates up through the node tree until a node consumes it.
It is only called if unhandled key input processing is enabled, which is done automatically if this method is overridden, and can be toggled with [method set_process_unhandled_key_input].
- To consume the input event and stop it propagating further to other nodes, [method SceneTree.set_input_as_handled] can be called.
+ To consume the input event and stop it propagating further to other nodes, [method Viewport.set_input_as_handled] can be called.
For gameplay input, this and [method _unhandled_input] are usually a better fit than [method _input] as they allow the GUI to intercept the events first.
</description>
</method>
@@ -238,7 +238,7 @@
<return type="int">
</return>
<description>
- Returns the node's index, i.e. its position among the siblings of its parent.
+ Returns the node's order in the scene tree branch. For example, if called on the first child node the position is [code]0[/code].
</description>
</method>
<method name="get_network_master" qualifiers="const">
@@ -331,13 +331,6 @@
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">
- <return type="int">
- </return>
- <description>
- Returns the node's order in the scene tree branch. For example, if called on the first child node the position is [code]0[/code].
- </description>
- </method>
<method name="get_process_delta_time" qualifiers="const">
<return type="float">
</return>
@@ -938,42 +931,40 @@
Notification received from the OS when the game window is unfocused.
Implemented on all platforms.
</constant>
- <constant name="NOTIFICATION_WM_QUIT_REQUEST" value="1006">
- Notification received from the OS when a quit request is sent (e.g. closing the window with a "Close" button or Alt+F4).
+ <constant name="NOTIFICATION_WM_CLOSE_REQUEST" value="1006">
+ Notification received from the OS when a close request is sent (e.g. closing the window with a "Close" button or Alt+F4).
Implemented on desktop platforms.
</constant>
<constant name="NOTIFICATION_WM_GO_BACK_REQUEST" value="1007">
Notification received from the OS when a go back request is sent (e.g. pressing the "Back" button on Android).
Specific to the Android platform.
</constant>
- <constant name="NOTIFICATION_WM_UNFOCUS_REQUEST" value="1008">
- Notification received from the OS when an unfocus request is sent (e.g. another OS window wants to take the focus).
- No supported platforms currently send this notification.
+ <constant name="NOTIFICATION_WM_SIZE_CHANGED" value="1008">
</constant>
- <constant name="NOTIFICATION_OS_MEMORY_WARNING" value="1009">
+ <constant name="NOTIFICATION_OS_MEMORY_WARNING" value="2009">
Notification received from the OS when the application is exceeding its allocated memory.
Specific to the iOS platform.
</constant>
- <constant name="NOTIFICATION_TRANSLATION_CHANGED" value="1010">
+ <constant name="NOTIFICATION_TRANSLATION_CHANGED" value="2010">
Notification received when translations may have changed. Can be triggered by the user changing the locale. Can be used to respond to language changes, for example to change the UI strings on the fly. Useful when working with the built-in translation support, like [method Object.tr].
</constant>
- <constant name="NOTIFICATION_WM_ABOUT" value="1011">
+ <constant name="NOTIFICATION_WM_ABOUT" value="2011">
Notification received from the OS when a request for "About" information is sent.
Specific to the macOS platform.
</constant>
- <constant name="NOTIFICATION_CRASH" value="1012">
+ <constant name="NOTIFICATION_CRASH" value="2012">
Notification received from Godot's crash handler when the engine is about to crash.
Implemented on desktop platforms if the crash handler is enabled.
</constant>
- <constant name="NOTIFICATION_OS_IME_UPDATE" value="1013">
+ <constant name="NOTIFICATION_OS_IME_UPDATE" value="2013">
Notification received from the OS when an update of the Input Method Engine occurs (e.g. change of IME cursor position or composition string).
Specific to the macOS platform.
</constant>
- <constant name="NOTIFICATION_APP_RESUMED" value="1014">
+ <constant name="NOTIFICATION_APP_RESUMED" value="2014">
Notification received from the OS when the app is resumed.
Specific to the Android platform.
</constant>
- <constant name="NOTIFICATION_APP_PAUSED" value="1015">
+ <constant name="NOTIFICATION_APP_PAUSED" value="2015">
Notification received from the OS when the app is paused.
Specific to the Android platform.
</constant>
diff --git a/doc/classes/Spatial.xml b/doc/classes/Node3D.xml
index d057db8519..ef24f638fb 100644
--- a/doc/classes/Spatial.xml
+++ b/doc/classes/Node3D.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Spatial" inherits="Node" version="4.0">
+<class name="Node3D" inherits="Node" version="4.0">
<brief_description>
Most basic 3D game object, parent of all 3D-related nodes.
</brief_description>
<description>
- Most basic 3D game object, with a 3D [Transform] and visibility settings. All other 3D game objects inherit from Spatial. Use [Spatial] as a parent node to move, scale, rotate and show/hide children in a 3D project.
- Affine operations (rotate, scale, translate) happen in parent's local coordinate system, unless the [Spatial] object is set as top-level. Affine operations in this coordinate system correspond to direct affine operations on the [Spatial]'s transform. The word local below refers to this coordinate system. The coordinate system that is attached to the [Spatial] object itself is referred to as object-local coordinate system.
+ Most basic 3D game object, with a 3D [Transform] and visibility settings. All other 3D game objects inherit from Node3D. Use [Node3D] as a parent node to move, scale, rotate and show/hide children in a 3D project.
+ Affine operations (rotate, scale, translate) happen in parent's local coordinate system, unless the [Node3D] object is set as top-level. Affine operations in this coordinate system correspond to direct affine operations on the [Node3D]'s transform. The word local below refers to this coordinate system. The coordinate system that is attached to the [Node3D] object itself is referred to as object-local coordinate system.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/3d/introduction_to_3d.html</link>
@@ -19,17 +19,17 @@
</description>
</method>
<method name="get_parent_spatial" qualifiers="const">
- <return type="Spatial">
+ <return type="Node3D">
</return>
<description>
- Returns the parent [Spatial], or an empty [Object] if no parent exists or parent is not of type [Spatial].
+ Returns the parent [Node3D], or an empty [Object] if no parent exists or parent is not of type [Node3D].
</description>
</method>
<method name="get_world" qualifiers="const">
- <return type="World">
+ <return type="World3D">
</return>
<description>
- Returns the current [World] resource this [Spatial] node is registered to.
+ Returns the current [World3D] resource this [Node3D] node is registered to.
</description>
</method>
<method name="global_rotate">
@@ -72,7 +72,7 @@
<return type="bool">
</return>
<description>
- Returns whether node notifies about its local transformation changes. [Spatial] will not propagate this by default.
+ Returns whether node notifies about its local transformation changes. [Node3D] will not propagate this by default.
</description>
</method>
<method name="is_scale_disabled" qualifiers="const">
@@ -93,7 +93,7 @@
<return type="bool">
</return>
<description>
- Returns whether the node notifies about its global and local transformation changes. [Spatial] will not propagate this by default.
+ Returns whether the node notifies about its global and local transformation changes. [Node3D] will not propagate this by default.
</description>
</method>
<method name="is_visible_in_tree" qualifiers="const">
@@ -234,7 +234,7 @@
<argument index="0" name="enable" type="bool">
</argument>
<description>
- Sets whether the node notifies about its local transformation changes. [Spatial] will not propagate this by default.
+ Sets whether the node notifies about its local transformation changes. [Node3D] will not propagate this by default.
</description>
</method>
<method name="set_notify_transform">
@@ -243,7 +243,7 @@
<argument index="0" name="enable" type="bool">
</argument>
<description>
- Sets whether the node notifies about its global and local transformation changes. [Spatial] will not propagate this by default.
+ Sets whether the node notifies about its global and local transformation changes. [Node3D] will not propagate this by default.
</description>
</method>
<method name="show">
@@ -294,16 +294,16 @@
<return type="void">
</return>
<description>
- Updates the [SpatialGizmo] of this node.
+ Updates the [Node3DGizmo] of this node.
</description>
</method>
</methods>
<members>
- <member name="gizmo" type="SpatialGizmo" setter="set_gizmo" getter="get_gizmo">
- The [SpatialGizmo] for this node. Used for example in [EditorSpatialGizmo] as custom visualization and editing handles in Editor.
+ <member name="gizmo" type="Node3DGizmo" setter="set_gizmo" getter="get_gizmo">
+ The [Node3DGizmo] for this node. Used for example in [EditorNode3DGizmo] as custom visualization and editing handles in Editor.
</member>
<member name="global_transform" type="Transform" setter="set_global_transform" getter="get_global_transform">
- World space (global) [Transform] of this node.
+ World3D space (global) [Transform] of this node.
</member>
<member name="rotation" type="Vector3" setter="set_rotation" getter="get_rotation">
Rotation part of the local transformation in radians, specified in terms of YXZ-Euler angles in the format (X angle, Y angle, Z angle).
@@ -334,17 +334,17 @@
</signals>
<constants>
<constant name="NOTIFICATION_TRANSFORM_CHANGED" value="2000">
- Spatial nodes receives this notification when their global transform changes. This means that either the current or a parent node changed its transform.
+ Node3D nodes receives this notification when their global transform changes. This means that either the current or a parent node changed its transform.
In order for [constant NOTIFICATION_TRANSFORM_CHANGED] to work, users first need to ask for it, with [method set_notify_transform].
</constant>
<constant name="NOTIFICATION_ENTER_WORLD" value="41">
- Spatial nodes receives this notification when they are registered to new [World] resource.
+ Node3D nodes receives this notification when they are registered to new [World3D] resource.
</constant>
<constant name="NOTIFICATION_EXIT_WORLD" value="42">
- Spatial nodes receives this notification when they are unregistered from current [World] resource.
+ Node3D nodes receives this notification when they are unregistered from current [World3D] resource.
</constant>
<constant name="NOTIFICATION_VISIBILITY_CHANGED" value="43">
- Spatial nodes receives this notification when their visibility changes.
+ Node3D nodes receives this notification when their visibility changes.
</constant>
</constants>
</class>
diff --git a/doc/classes/SpatialGizmo.xml b/doc/classes/Node3DGizmo.xml
index 5260eaa8a3..55080614fc 100644
--- a/doc/classes/SpatialGizmo.xml
+++ b/doc/classes/Node3DGizmo.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SpatialGizmo" inherits="Reference" version="4.0">
+<class name="Node3DGizmo" inherits="Reference" version="4.0">
<brief_description>
</brief_description>
<description>
diff --git a/doc/classes/NodePath.xml b/doc/classes/NodePath.xml
index e8ab3e536e..dc7fd1be3f 100644
--- a/doc/classes/NodePath.xml
+++ b/doc/classes/NodePath.xml
@@ -4,7 +4,7 @@
Pre-parsed scene tree path.
</brief_description>
<description>
- A pre-parsed relative or absolute path in a scene tree, for use with [method Node.get_node] and similar functions. It can reference a node, a resource within a node, or a property of a node or resource. For instance, [code]"Path2D/PathFollow2D/Sprite:texture:size"[/code] would refer to the [code]size[/code] property of the [code]texture[/code] resource on the node named [code]"Sprite"[/code] which is a child of the other named nodes in the path.
+ A pre-parsed relative or absolute path in a scene tree, for use with [method Node.get_node] and similar functions. It can reference a node, a resource within a node, or a property of a node or resource. For instance, [code]"Path2D/PathFollow2D/Sprite2D:texture:size"[/code] would refer to the [code]size[/code] property of the [code]texture[/code] resource on the node named [code]"Sprite2D"[/code] which is a child of the other named nodes in the path.
You will usually just pass a string to [method Node.get_node] and it will be automatically converted, but you may occasionally want to parse a path ahead of time with [NodePath] or the literal syntax [code]@"path"[/code]. Exporting a [NodePath] variable will give you a node selection widget in the properties panel of the editor, which can often be useful.
A [NodePath] is composed of a list of slash-separated node names (like a filesystem path) and an optional colon-separated list of "subnames" which can be resources or properties.
Some examples of NodePaths include the following:
@@ -30,20 +30,20 @@
<argument index="0" name="from" type="String">
</argument>
<description>
- Creates a NodePath from a string, e.g. [code]"Path2D/PathFollow2D/Sprite:texture:size"[/code]. A path is absolute if it starts with a slash. Absolute paths are only valid in the global scene tree, not within individual scenes. In a relative path, [code]"."[/code] and [code]".."[/code] indicate the current node and its parent.
+ Creates a NodePath from a string, e.g. [code]"Path2D/PathFollow2D/Sprite2D:texture:size"[/code]. A path is absolute if it starts with a slash. Absolute paths are only valid in the global scene tree, not within individual scenes. In a relative path, [code]"."[/code] and [code]".."[/code] indicate the current node and its parent.
The "subnames" optionally included after the path to the target node can point to resources or properties, and can also be nested.
Examples of valid NodePaths (assuming that those nodes exist and have the referenced resources or properties):
[codeblock]
- # Points to the Sprite node
- "Path2D/PathFollow2D/Sprite"
- # Points to the Sprite node and its "texture" resource.
- # get_node() would retrieve "Sprite", while get_node_and_resource()
- # would retrieve both the Sprite node and the "texture" resource.
- "Path2D/PathFollow2D/Sprite:texture"
- # Points to the Sprite node and its "position" property.
- "Path2D/PathFollow2D/Sprite:position"
- # Points to the Sprite node and the "x" component of its "position" property.
- "Path2D/PathFollow2D/Sprite:position:x"
+ # Points to the Sprite2D node
+ "Path2D/PathFollow2D/Sprite2D"
+ # Points to the Sprite2D node and its "texture" resource.
+ # get_node() would retrieve "Sprite2D", while get_node_and_resource()
+ # would retrieve both the Sprite2D node and the "texture" resource.
+ "Path2D/PathFollow2D/Sprite2D:texture"
+ # Points to the Sprite2D node and its "position" property.
+ "Path2D/PathFollow2D/Sprite2D:position"
+ # Points to the Sprite2D node and the "x" component of its "position" property.
+ "Path2D/PathFollow2D/Sprite2D:position:x"
# Absolute path (from "root")
"/root/Level/Path2D"
[/codeblock]
@@ -69,7 +69,7 @@
<description>
Returns all subnames concatenated with a colon character ([code]:[/code]) as separator, i.e. the right side of the first colon in a node path.
[codeblock]
- var nodepath = NodePath("Path2D/PathFollow2D/Sprite:texture:load_path")
+ var nodepath = NodePath("Path2D/PathFollow2D/Sprite2D:texture:load_path")
print(nodepath.get_concatenated_subnames()) # texture:load_path
[/codeblock]
</description>
@@ -82,7 +82,7 @@
<description>
Gets the node name indicated by [code]idx[/code] (0 to [method get_name_count]).
[codeblock]
- var node_path = NodePath("Path2D/PathFollow2D/Sprite")
+ var node_path = NodePath("Path2D/PathFollow2D/Sprite2D")
print(node_path.get_name(0)) # Path2D
print(node_path.get_name(1)) # PathFollow2D
print(node_path.get_name(2)) # Sprite
@@ -94,7 +94,7 @@
</return>
<description>
Gets the number of node names which make up the path. Subnames (see [method get_subname_count]) are not included.
- For example, [code]"Path2D/PathFollow2D/Sprite"[/code] has 3 names.
+ For example, [code]"Path2D/PathFollow2D/Sprite2D"[/code] has 3 names.
</description>
</method>
<method name="get_subname">
@@ -105,7 +105,7 @@
<description>
Gets the resource or property name indicated by [code]idx[/code] (0 to [method get_subname_count]).
[codeblock]
- var node_path = NodePath("Path2D/PathFollow2D/Sprite:texture:load_path")
+ var node_path = NodePath("Path2D/PathFollow2D/Sprite2D:texture:load_path")
print(node_path.get_subname(0)) # texture
print(node_path.get_subname(1)) # load_path
[/codeblock]
@@ -116,7 +116,7 @@
</return>
<description>
Gets the number of resource or property names ("subnames") in the path. Each subname is listed after a colon character ([code]:[/code]) in the node path.
- For example, [code]"Path2D/PathFollow2D/Sprite:texture:load_path"[/code] has 2 subnames.
+ For example, [code]"Path2D/PathFollow2D/Sprite2D:texture:load_path"[/code] has 2 subnames.
</description>
</method>
<method name="is_absolute">
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index d43c395433..db79ee7765 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -9,24 +9,6 @@
<tutorials>
</tutorials>
<methods>
- <method name="alert">
- <return type="void">
- </return>
- <argument index="0" name="text" type="String">
- </argument>
- <argument index="1" name="title" type="String" default="&quot;Alert!&quot;">
- </argument>
- <description>
- Displays a modal dialog box using the host OS' facilities. Execution is blocked until the dialog is closed.
- </description>
- </method>
- <method name="can_draw" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the host OS allows drawing.
- </description>
- </method>
<method name="can_use_threads" qualifiers="const">
<return type="bool">
</return>
@@ -34,13 +16,6 @@
Returns [code]true[/code] if the current host platform is using multiple threads.
</description>
</method>
- <method name="center_window">
- <return type="void">
- </return>
- <description>
- Centers the window on the screen if in windowed mode.
- </description>
- </method>
<method name="close_midi_inputs">
<return type="void">
</return>
@@ -133,22 +108,6 @@
Returns the keycode of the given string (e.g. "Escape").
</description>
</method>
- <method name="get_audio_driver_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the total number of available audio drivers.
- </description>
- </method>
- <method name="get_audio_driver_name" qualifiers="const">
- <return type="String">
- </return>
- <argument index="0" name="driver" type="int">
- </argument>
- <description>
- Returns the audio driver name for the given index.
- </description>
- </method>
<method name="get_cmdline_args">
<return type="PackedStringArray">
</return>
@@ -165,13 +124,6 @@
[b]Note:[/b] This method is implemented on Linux, macOS and Windows.
</description>
</method>
- <method name="get_current_video_driver" qualifiers="const">
- <return type="int" enum="OS.VideoDriver">
- </return>
- <description>
- Returns the currently used video driver, using one of the values from [enum VideoDriver].
- </description>
- </method>
<method name="get_date" qualifiers="const">
<return type="Dictionary">
</return>
@@ -224,24 +176,6 @@
[b]Note:[/b] This method is implemented on Android.
</description>
</method>
- <method name="get_ime_selection" qualifiers="const">
- <return type="Vector2">
- </return>
- <description>
- Returns the IME cursor position (the currently-edited portion of the string) relative to the characters in the composition string.
- [constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to notify it of changes to the IME cursor position.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="get_ime_text" qualifiers="const">
- <return type="String">
- </return>
- <description>
- Returns the IME intermediate composition string.
- [constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to notify it of changes to the IME composition string.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
<method name="get_keycode_string" qualifiers="const">
<return type="String">
</return>
@@ -252,15 +186,6 @@
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>
- <description>
- Returns the current latin keyboard variant as a String.
- Possible return values are: [code]"QWERTY"[/code], [code]"AZERTY"[/code], [code]"QZERTY"[/code], [code]"DVORAK"[/code], [code]"NEO"[/code], [code]"COLEMAK"[/code] or [code]"ERROR"[/code].
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows. Returns [code]"QWERTY"[/code] on unsupported platforms.
- </description>
- </method>
<method name="get_locale" qualifiers="const">
<return type="String">
</return>
@@ -298,57 +223,6 @@
Returns the number of threads available on the host machine.
</description>
</method>
- <method name="get_real_window_size" qualifiers="const">
- <return type="Vector2">
- </return>
- <description>
- Returns the window size including decorations like window borders.
- </description>
- </method>
- <method name="get_screen_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the number of displays attached to the host machine.
- </description>
- </method>
- <method name="get_screen_dpi" qualifiers="const">
- <return type="int">
- </return>
- <argument index="0" name="screen" type="int" default="-1">
- </argument>
- <description>
- Returns the dots per inch density of the specified screen. If [code]screen[/code] is [/code]-1[/code] (the default value), the current screen will be used.
- On Android devices, the actual screen densities are grouped into six generalized densities:
- [codeblock]
- ldpi - 120 dpi
- mdpi - 160 dpi
- hdpi - 240 dpi
- xhdpi - 320 dpi
- xxhdpi - 480 dpi
- xxxhdpi - 640 dpi
- [/codeblock]
- [b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows. Returns [code]72[/code] on unsupported platforms.
- </description>
- </method>
- <method name="get_screen_position" qualifiers="const">
- <return type="Vector2">
- </return>
- <argument index="0" name="screen" type="int" default="-1">
- </argument>
- <description>
- Returns the position of the specified screen by index. If [code]screen[/code] is [/code]-1[/code] (the default value), the current screen will be used.
- </description>
- </method>
- <method name="get_screen_size" qualifiers="const">
- <return type="Vector2">
- </return>
- <argument index="0" name="screen" type="int" default="-1">
- </argument>
- <description>
- Returns the dimensions in pixels of the specified screen. If [code]screen[/code] is [/code]-1[/code] (the default value), the current screen will be used.
- </description>
- </method>
<method name="get_splash_tick_msec" qualifiers="const">
<return type="int">
</return>
@@ -461,84 +335,6 @@
If the project name is empty, [code]user://[/code] falls back to [code]res://[/code].
</description>
</method>
- <method name="get_video_driver_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the number of video drivers supported on the current platform.
- </description>
- </method>
- <method name="get_video_driver_name" qualifiers="const">
- <return type="String">
- </return>
- <argument index="0" name="driver" type="int" enum="OS.VideoDriver">
- </argument>
- <description>
- Returns the name of the video driver matching the given [code]driver[/code] index. This index is a value from [enum VideoDriver], and you can use [method get_current_video_driver] to get the current backend's index.
- </description>
- </method>
- <method name="get_virtual_keyboard_height">
- <return type="int">
- </return>
- <description>
- Returns the on-screen keyboard's height in pixels. Returns 0 if there is no keyboard or if it is currently hidden.
- </description>
- </method>
- <method name="get_window_safe_area" qualifiers="const">
- <return type="Rect2">
- </return>
- <description>
- Returns unobscured area of the window where interactive controls should be rendered.
- </description>
- </method>
- <method name="global_menu_add_item">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <argument index="1" name="label" type="String">
- </argument>
- <argument index="2" name="id" type="Variant">
- </argument>
- <argument index="3" name="meta" type="Variant">
- </argument>
- <description>
- Add a new item with text "label" to global menu. Use "_dock" menu to add item to the macOS dock icon menu.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="global_menu_add_separator">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <description>
- Add a separator between items. Separators also occupy an index.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="global_menu_clear">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <description>
- Clear the global menu, in effect removing all items.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="global_menu_remove_item">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <argument index="1" name="idx" type="int">
- </argument>
- <description>
- Removes the item at index "idx" from the global menu. Note that the indexes of items after the removed item are going to be shifted by one.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
<method name="has_environment" qualifiers="const">
<return type="bool">
</return>
@@ -558,27 +354,6 @@
[b]Note:[/b] Tag names are case-sensitive.
</description>
</method>
- <method name="has_touchscreen_ui_hint" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the device has a touchscreen or emulates one.
- </description>
- </method>
- <method name="has_virtual_keyboard" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the platform has a virtual keyboard, [code]false[/code] otherwise.
- </description>
- </method>
- <method name="hide_virtual_keyboard">
- <return type="void">
- </return>
- <description>
- Hides the virtual keyboard if it is shown, does nothing otherwise.
- </description>
- </method>
<method name="is_debug_build" qualifiers="const">
<return type="bool">
</return>
@@ -597,13 +372,6 @@
Returns [code]true[/code] if the input keycode corresponds to a Unicode character.
</description>
</method>
- <method name="is_ok_left_and_cancel_right" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- 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">
<return type="bool">
</return>
@@ -618,21 +386,6 @@
If [code]true[/code], the [code]user://[/code] file system is persistent, so that its state is the same after a player quits and starts the game again. Relevant to the HTML5 platform, where this persistence may be unavailable.
</description>
</method>
- <method name="is_window_always_on_top" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the window should always be on top of other windows.
- </description>
- </method>
- <method name="is_window_focused" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the window is currently focused.
- [b]Note:[/b] Only implemented on desktop platforms. On other platforms, it will always return [code]true[/code].
- </description>
- </method>
<method name="kill">
<return type="int" enum="Error">
</return>
@@ -644,62 +397,6 @@
[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows.
</description>
</method>
- <method name="move_window_to_foreground">
- <return type="void">
- </return>
- <description>
- Moves the window to the front.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="native_video_is_playing">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if native video is playing.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
- <method name="native_video_pause">
- <return type="void">
- </return>
- <description>
- Pauses native video playback.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
- <method name="native_video_play">
- <return type="int" enum="Error">
- </return>
- <argument index="0" name="path" type="String">
- </argument>
- <argument index="1" name="volume" type="float">
- </argument>
- <argument index="2" name="audio_track" type="String">
- </argument>
- <argument index="3" name="subtitle_track" type="String">
- </argument>
- <description>
- Plays native video from the specified path, at the given volume and with audio and subtitle tracks.
- [b]Note:[/b] This method is implemented on Android and iOS, and the current Android implementation does not support the [code]volume[/code], [code]audio_track[/code] and [code]subtitle_track[/code] options.
- </description>
- </method>
- <method name="native_video_stop">
- <return type="void">
- </return>
- <description>
- Stops native video playback.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
- <method name="native_video_unpause">
- <return type="void">
- </return>
- <description>
- Resumes native video playback.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
<method name="open_midi_inputs">
<return type="void">
</return>
@@ -742,14 +439,6 @@
Shows all resources currently used by the game.
</description>
</method>
- <method name="request_attention">
- <return type="void">
- </return>
- <description>
- Request the user attention to the window. It'll flash the taskbar button on Windows or bounce the dock icon on OSX.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
<method name="request_permission">
<return type="bool">
</return>
@@ -767,51 +456,6 @@
[b]Note:[/b] This method is implemented on Android.
</description>
</method>
- <method name="set_icon">
- <return type="void">
- </return>
- <argument index="0" name="icon" type="Image">
- </argument>
- <description>
- Sets the game's icon using an [Image] resource.
- The same image is used for window caption, taskbar/dock and window selection dialog. Image is scaled as needed.
- [b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_ime_active">
- <return type="void">
- </return>
- <argument index="0" name="active" type="bool">
- </argument>
- <description>
- Sets whether IME input mode should be enabled.
- If active IME handles key events before the application and creates an composition string and suggestion list.
- Application can retrieve the composition status by using [method get_ime_selection] and [method get_ime_text] functions.
- Completed composition string is committed when input is finished.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_ime_position">
- <return type="void">
- </return>
- <argument index="0" name="position" type="Vector2">
- </argument>
- <description>
- Sets position of IME suggestion list popup (in window coordinates).
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_native_icon">
- <return type="void">
- </return>
- <argument index="0" name="filename" type="String">
- </argument>
- <description>
- Sets the game's icon using a multi-size platform-specific icon file ([code]*.ico[/code] on Windows and [code]*.icns[/code] on macOS).
- Appropriate size sub-icons are used for window caption, taskbar/dock and window selection dialog.
- [b]Note:[/b] This method is implemented on macOS and Windows.
- </description>
- </method>
<method name="set_thread_name">
<return type="int" enum="Error">
</return>
@@ -830,27 +474,6 @@
Enables backup saves if [code]enabled[/code] is [code]true[/code].
</description>
</method>
- <method name="set_window_always_on_top">
- <return type="void">
- </return>
- <argument index="0" name="enabled" type="bool">
- </argument>
- <description>
- Sets whether the window should always be on top.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_window_title">
- <return type="void">
- </return>
- <argument index="0" name="title" type="String">
- </argument>
- <description>
- Sets the window title to the specified string.
- [b]Note:[/b] This should be used sporadically. Don't set this every frame, as that will negatively affect performance on some window managers.
- [b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows.
- </description>
- </method>
<method name="shell_open">
<return type="int" enum="Error">
</return>
@@ -864,82 +487,18 @@
[b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS and Windows.
</description>
</method>
- <method name="show_virtual_keyboard">
- <return type="void">
- </return>
- <argument index="0" name="existing_text" type="String" default="&quot;&quot;">
- </argument>
- <description>
- Shows the virtual keyboard if the platform has one. The [code]existing_text[/code] parameter is useful for implementing your own LineEdit, as it tells the virtual keyboard what text has already been typed (the virtual keyboard uses it for auto-correct and predictions).
- [b]Note:[/b] This method is implemented on Android, iOS and UWP.
- </description>
- </method>
</methods>
<members>
- <member name="clipboard" type="String" setter="set_clipboard" getter="get_clipboard" default="&quot;&quot;">
- The clipboard from the host OS. Might be unavailable on some platforms.
- </member>
- <member name="current_screen" type="int" setter="set_current_screen" getter="get_current_screen" default="0">
- The current screen index (starting from 0).
- </member>
<member name="exit_code" type="int" setter="set_exit_code" getter="get_exit_code" default="0">
The exit code passed to the OS when the main loop exits. By convention, an exit code of [code]0[/code] indicates success whereas a non-zero exit code indicates an error. For portability reasons, the exit code should be set between 0 and 125 (inclusive).
[b]Note:[/b] This value will be ignored if using [method SceneTree.quit] with an [code]exit_code[/code] argument passed.
</member>
- <member name="keep_screen_on" type="bool" setter="set_keep_screen_on" getter="is_keep_screen_on" default="true">
- If [code]true[/code], the engine tries to keep the screen on while the game is running. Useful on mobile.
- </member>
<member name="low_processor_usage_mode" type="bool" setter="set_low_processor_usage_mode" getter="is_in_low_processor_usage_mode" default="false">
If [code]true[/code], the engine optimizes for low processor usage by only refreshing the screen if needed. Can improve battery consumption on mobile.
</member>
<member name="low_processor_usage_mode_sleep_usec" type="int" setter="set_low_processor_usage_mode_sleep_usec" getter="get_low_processor_usage_mode_sleep_usec" default="6900">
The amount of sleeping between frames when the low-processor usage mode is enabled (in microseconds). Higher values will result in lower CPU usage.
</member>
- <member name="max_window_size" type="Vector2" setter="set_max_window_size" getter="get_max_window_size" default="Vector2( 0, 0 )">
- The maximum size of the window (without counting window manager decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to reset to the system default value.
- </member>
- <member name="min_window_size" type="Vector2" setter="set_min_window_size" getter="get_min_window_size" default="Vector2( 0, 0 )">
- The minimum size of the window (without counting window manager decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to reset to the system default value.
- </member>
- <member name="screen_orientation" type="int" setter="set_screen_orientation" getter="get_screen_orientation" enum="_OS.ScreenOrientation" default="0">
- The current screen orientation.
- </member>
- <member name="vsync_enabled" type="bool" setter="set_use_vsync" getter="is_vsync_enabled" default="true">
- If [code]true[/code], vertical synchronization (Vsync) is enabled.
- </member>
- <member name="vsync_via_compositor" type="bool" setter="set_vsync_via_compositor" getter="is_vsync_via_compositor_enabled" default="false">
- If [code]true[/code] and [code]vsync_enabled[/code] is true, the operating system's window compositor will be used for vsync when the compositor is enabled and the game is in windowed mode.
- [b]Note:[/b] This option is experimental and meant to alleviate stutter experienced by some users. However, some users have experienced a Vsync framerate halving (e.g. from 60 FPS to 30 FPS) when using it.
- [b]Note:[/b] This property is only implemented on Windows.
- </member>
- <member name="window_borderless" type="bool" setter="set_borderless_window" getter="get_borderless_window" default="false">
- If [code]true[/code], removes the window frame.
- [b]Note:[/b] Setting [code]window_borderless[/code] to [code]false[/code] disables per-pixel transparency.
- </member>
- <member name="window_fullscreen" type="bool" setter="set_window_fullscreen" getter="is_window_fullscreen" default="false">
- If [code]true[/code], the window is fullscreen.
- </member>
- <member name="window_maximized" type="bool" setter="set_window_maximized" getter="is_window_maximized" default="false">
- If [code]true[/code], the window is maximized.
- </member>
- <member name="window_minimized" type="bool" setter="set_window_minimized" getter="is_window_minimized" default="false">
- If [code]true[/code], the window is minimized.
- </member>
- <member name="window_per_pixel_transparency_enabled" type="bool" setter="set_window_per_pixel_transparency_enabled" getter="get_window_per_pixel_transparency_enabled" default="false">
- If [code]true[/code], the window background is transparent and window frame is removed.
- Use [code]get_tree().get_root().set_transparent_background(true)[/code] to disable main viewport background rendering.
- [b]Note:[/b] This property has no effect if [b]Project &gt; Project Settings &gt; Display &gt; Window &gt; Per-pixel transparency &gt; Allowed[/b] setting is disabled.
- [b]Note:[/b] This property is implemented on HTML5, Linux, macOS and Windows.
- </member>
- <member name="window_position" type="Vector2" setter="set_window_position" getter="get_window_position" default="Vector2( 0, 0 )">
- The window position relative to the screen, the origin is the top left corner, +Y axis goes to the bottom and +X axis goes to the right.
- </member>
- <member name="window_resizable" type="bool" setter="set_window_resizable" getter="is_window_resizable" default="true">
- If [code]true[/code], the window is resizable by the user.
- </member>
- <member name="window_size" type="Vector2" setter="set_window_size" getter="get_window_size" default="Vector2( 0, 0 )">
- The size of the window (without counting window manager decorations).
- </member>
</members>
<constants>
<constant name="VIDEO_DRIVER_GLES2" value="0" enum="VideoDriver">
@@ -1005,27 +564,6 @@
<constant name="MONTH_DECEMBER" value="12" enum="Month">
December.
</constant>
- <constant name="SCREEN_ORIENTATION_LANDSCAPE" value="0" enum="ScreenOrientation">
- Landscape screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_PORTRAIT" value="1" enum="ScreenOrientation">
- Portrait screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_REVERSE_LANDSCAPE" value="2" enum="ScreenOrientation">
- Reverse landscape screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_REVERSE_PORTRAIT" value="3" enum="ScreenOrientation">
- Reverse portrait screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_SENSOR_LANDSCAPE" value="4" enum="ScreenOrientation">
- Uses landscape or reverse landscape based on the hardware sensor.
- </constant>
- <constant name="SCREEN_ORIENTATION_SENSOR_PORTRAIT" value="5" enum="ScreenOrientation">
- Uses portrait or reverse portrait based on the hardware sensor.
- </constant>
- <constant name="SCREEN_ORIENTATION_SENSOR" value="6" enum="ScreenOrientation">
- Uses most suitable orientation based on the hardware sensor.
- </constant>
<constant name="SYSTEM_DIR_DESKTOP" value="0" enum="SystemDir">
Desktop directory path.
</constant>
diff --git a/doc/classes/Object.xml b/doc/classes/Object.xml
index a3faccae1a..35e87d1a2a 100644
--- a/doc/classes/Object.xml
+++ b/doc/classes/Object.xml
@@ -311,13 +311,22 @@
Returns [code]true[/code] if the object contains the given [code]method[/code].
</description>
</method>
+ <method name="has_signal" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="signal" type="StringName">
+ </argument>
+ <description>
+ Returns [code]true[/code] if the given [code]signal[/code] exists.
+ </description>
+ </method>
<method name="has_user_signal" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="signal" type="StringName">
</argument>
<description>
- Returns [code]true[/code] if the given user-defined [code]signal[/code] exists.
+ Returns [code]true[/code] if the given user-defined [code]signal[/code] exists. Only signals added using [method add_user_signal] are taken into account.
</description>
</method>
<method name="is_blocking_signals" qualifiers="const">
diff --git a/doc/classes/OmniLight.xml b/doc/classes/OmniLight3D.xml
index dc57efd3f9..0bbc987156 100644
--- a/doc/classes/OmniLight.xml
+++ b/doc/classes/OmniLight3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="OmniLight" inherits="Light" version="4.0">
+<class name="OmniLight3D" inherits="Light3D" version="4.0">
<brief_description>
Omnidirectional light, such as a light bulb or a candle.
</brief_description>
<description>
- An Omnidirectional light is a type of [Light] that emits light in all directions. The light is attenuated by distance and this attenuation can be configured by changing its energy, radius, and attenuation parameters.
+ An Omnidirectional light is a type of [Light3D] that emits light in all directions. The light is attenuated by distance and this attenuation can be configured by changing its energy, radius, and attenuation parameters.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html</link>
@@ -18,7 +18,7 @@
<member name="omni_range" type="float" setter="set_param" getter="get_param" default="5.0">
The light's radius.
</member>
- <member name="omni_shadow_mode" type="int" setter="set_shadow_mode" getter="get_shadow_mode" enum="OmniLight.ShadowMode" default="1">
+ <member name="omni_shadow_mode" type="int" setter="set_shadow_mode" getter="get_shadow_mode" enum="OmniLight3D.ShadowMode" default="1">
See [enum ShadowMode].
</member>
</members>
diff --git a/doc/classes/OptionButton.xml b/doc/classes/OptionButton.xml
index 5cb2aaf314..39d974ec47 100644
--- a/doc/classes/OptionButton.xml
+++ b/doc/classes/OptionButton.xml
@@ -214,14 +214,14 @@
</members>
<signals>
<signal name="item_focused">
- <argument index="0" name="id" type="int">
+ <argument index="0" name="index" type="int">
</argument>
<description>
Emitted the when user navigates to an item using the [code]ui_up[/code] or [code]ui_down[/code] actions. The index of the item selected is passed as argument.
</description>
</signal>
<signal name="item_selected">
- <argument index="0" name="id" type="int">
+ <argument index="0" name="index" type="int">
</argument>
<description>
Emitted when the current item has been changed by the user. The index of the item selected is passed as argument.
diff --git a/doc/classes/Panel.xml b/doc/classes/Panel.xml
index a3f6a0be8f..7285bc9e2e 100644
--- a/doc/classes/Panel.xml
+++ b/doc/classes/Panel.xml
@@ -10,11 +10,21 @@
</tutorials>
<methods>
</methods>
+ <members>
+ <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="Panel.Mode" default="0">
+ </member>
+ </members>
<constants>
+ <constant name="MODE_BACKGROUND" value="0" enum="Mode">
+ </constant>
+ <constant name="MODE_FOREGROUND" value="1" enum="Mode">
+ </constant>
</constants>
<theme_items>
<theme_item name="panel" type="StyleBox">
The style of this [Panel].
</theme_item>
+ <theme_item name="panel_fg" type="StyleBox">
+ </theme_item>
</theme_items>
</class>
diff --git a/doc/classes/PanoramaSky.xml b/doc/classes/PanoramaSkyMaterial.xml
index 0ddf1cb054..905a2dd506 100644
--- a/doc/classes/PanoramaSky.xml
+++ b/doc/classes/PanoramaSkyMaterial.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PanoramaSky" inherits="Sky" version="4.0">
+<class name="PanoramaSkyMaterial" inherits="Material" version="4.0">
<brief_description>
- A type of [Sky] used to draw a background texture.
+ A [Material] used with [Sky] to draw a background texture.
</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.
+ A resource referenced in a [Sky] that is used to draw a background. The Panorama sky material 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>
@@ -14,7 +14,7 @@
</methods>
<members>
<member name="panorama" type="Texture2D" setter="set_panorama" getter="get_panorama">
- [Texture2D] to be applied to the PanoramaSky.
+ [Texture2D] to be applied to the [PanoramaSkyMaterial].
</member>
</members>
<constants>
diff --git a/doc/classes/ParticlesMaterial.xml b/doc/classes/ParticlesMaterial.xml
index 1e90214e47..d04ac5bdce 100644
--- a/doc/classes/ParticlesMaterial.xml
+++ b/doc/classes/ParticlesMaterial.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="ParticlesMaterial" inherits="Material" version="4.0">
<brief_description>
- Particle properties for [Particles] and [Particles2D] nodes.
+ Particle properties for [GPUParticles3D] and [GPUParticles2D] nodes.
</brief_description>
<description>
- ParticlesMaterial defines particle properties and behavior. It is used in the [code]process_material[/code] of [Particles] and [Particles2D] emitter nodes.
+ ParticlesMaterial defines particle properties and behavior. It is used in the [code]process_material[/code] of [GPUParticles3D] and [GPUParticles2D] emitter nodes.
Some of this material's properties are applied to each particle when emitted, while others can have a [CurveTexture] applied to vary values over the lifetime of the particle.
When a randomness ratio is applied to a property it is used to scale that property by a random amount. The random ratio is used to interpolate between [code]1.0[/code] and a random number less than one, the result is multiplied by the property to obtain the randomized property. For example a random ratio of [code]0.4[/code] would scale the original property between [code]0.4-1.0[/code] of its original value.
</description>
@@ -132,7 +132,7 @@
Animation speed randomness ratio.
</member>
<member name="color" type="Color" setter="set_color" getter="get_color" default="Color( 1, 1, 1, 1 )">
- Each particle's initial color. If the [Particles2D]'s [code]texture[/code] is defined, it will be multiplied by this color. To have particle display color in a [BaseMaterial3D] make sure to set [member BaseMaterial3D.vertex_color_use_as_albedo] to [code]true[/code].
+ Each particle's initial color. If the [GPUParticles2D]'s [code]texture[/code] is defined, it will be multiplied by this color. To have particle display color in a [BaseMaterial3D] make sure to set [member BaseMaterial3D.vertex_color_use_as_albedo] to [code]true[/code].
</member>
<member name="color_ramp" type="Texture2D" setter="set_color_ramp" getter="get_color_ramp">
Each particle's color will vary along this [GradientTexture].
diff --git a/doc/classes/Path.xml b/doc/classes/Path3D.xml
index 801e86ff9e..b97e7efd5d 100644
--- a/doc/classes/Path.xml
+++ b/doc/classes/Path3D.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Path" inherits="Spatial" version="4.0">
+<class name="Path3D" inherits="Node3D" version="4.0">
<brief_description>
- Contains a [Curve3D] path for [PathFollow] nodes to follow.
+ Contains a [Curve3D] path for [PathFollow3D] nodes to follow.
</brief_description>
<description>
- Can have [PathFollow] child nodes moving along the [Curve3D]. See [PathFollow] for more information on the usage.
- Note that the path is considered as relative to the moved nodes (children of [PathFollow]). As such, the curve should usually start with a zero vector [code](0, 0, 0)[/code].
+ Can have [PathFollow3D] child nodes moving along the [Curve3D]. See [PathFollow3D] for more information on the usage.
+ Note that the path is considered as relative to the moved nodes (children of [PathFollow3D]). As such, the curve should usually start with a zero vector [code](0, 0, 0)[/code].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/PathFollow.xml b/doc/classes/PathFollow3D.xml
index 85ca5b787f..f405bdedfc 100644
--- a/doc/classes/PathFollow.xml
+++ b/doc/classes/PathFollow3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PathFollow" inherits="Spatial" version="4.0">
+<class name="PathFollow3D" inherits="Node3D" version="4.0">
<brief_description>
- Point sampler for a [Path].
+ Point sampler for a [Path3D].
</brief_description>
<description>
- This node takes its parent [Path], and returns the coordinates of a point within it, given a distance from the first vertex.
+ This node takes its parent [Path3D], and returns the coordinates of a point within it, given a distance from the first vertex.
It is useful for making other nodes follow a path, without coding the movement pattern. For that, the nodes must be children of this node. The descendant nodes will then move accordingly when setting an offset in this node.
</description>
<tutorials>
@@ -14,7 +14,7 @@
<members>
<member name="cubic_interp" type="bool" setter="set_cubic_interpolation" getter="get_cubic_interpolation" default="true">
If [code]true[/code], the position between two cached points is interpolated cubically, and linearly otherwise.
- The points along the [Curve3D] of the [Path] are precomputed before use, for faster calculations. The point at the requested offset is then calculated interpolating between two adjacent cached points. This may present a problem if the curve makes sharp turns, as the cached points may not follow the curve closely enough.
+ The points along the [Curve3D] of the [Path3D] are precomputed before use, for faster calculations. The point at the requested offset is then calculated interpolating between two adjacent cached points. This may present a problem if the curve makes sharp turns, as the cached points may not follow the curve closely enough.
There are two answers to this problem: either increase the number of cached points and increase memory consumption, or make a cubic interpolation between two points at the cost of (slightly) slower calculations.
</member>
<member name="h_offset" type="float" setter="set_h_offset" getter="get_h_offset" default="0.0">
@@ -26,7 +26,7 @@
<member name="offset" type="float" setter="set_offset" getter="get_offset" default="0.0">
The distance from the first vertex, measured in 3D units along the path. This sets this node's position to a point within the path.
</member>
- <member name="rotation_mode" type="int" setter="set_rotation_mode" getter="get_rotation_mode" enum="PathFollow.RotationMode" default="3">
+ <member name="rotation_mode" type="int" setter="set_rotation_mode" getter="get_rotation_mode" enum="PathFollow3D.RotationMode" default="3">
Allows or forbids rotation on one or more axes, depending on the [enum RotationMode] constants being used.
</member>
<member name="unit_offset" type="float" setter="set_unit_offset" getter="get_unit_offset" default="0.0">
@@ -38,19 +38,19 @@
</members>
<constants>
<constant name="ROTATION_NONE" value="0" enum="RotationMode">
- Forbids the PathFollow to rotate.
+ Forbids the PathFollow3D to rotate.
</constant>
<constant name="ROTATION_Y" value="1" enum="RotationMode">
- Allows the PathFollow to rotate in the Y axis only.
+ Allows the PathFollow3D to rotate in the Y axis only.
</constant>
<constant name="ROTATION_XY" value="2" enum="RotationMode">
- Allows the PathFollow to rotate in both the X, and Y axes.
+ Allows the PathFollow3D to rotate in both the X, and Y axes.
</constant>
<constant name="ROTATION_XYZ" value="3" enum="RotationMode">
- Allows the PathFollow to rotate in any axis.
+ Allows the PathFollow3D to rotate in any axis.
</constant>
<constant name="ROTATION_ORIENTED" value="4" enum="RotationMode">
- Uses the up vector information in a [Curve3D] to enforce orientation. This rotation mode requires the [Path]'s [member Curve3D.up_vector_enabled] property to be set to [code]true[/code].
+ Uses the up vector information in a [Curve3D] to enforce orientation. This rotation mode requires the [Path3D]'s [member Curve3D.up_vector_enabled] property to be set to [code]true[/code].
</constant>
</constants>
</class>
diff --git a/doc/classes/Performance.xml b/doc/classes/Performance.xml
index 378b165644..2a0c153267 100644
--- a/doc/classes/Performance.xml
+++ b/doc/classes/Performance.xml
@@ -95,7 +95,7 @@
Number of islands in the 2D physics engine.
</constant>
<constant name="PHYSICS_3D_ACTIVE_OBJECTS" value="23" enum="Monitor">
- Number of active [RigidBody] and [VehicleBody] nodes in the game.
+ Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game.
</constant>
<constant name="PHYSICS_3D_COLLISION_PAIRS" value="24" enum="Monitor">
Number of collision pairs in the 3D physics engine.
diff --git a/doc/classes/PhysicalBone.xml b/doc/classes/PhysicalBone.xml
deleted file mode 100644
index bb31f03c18..0000000000
--- a/doc/classes/PhysicalBone.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicalBone" inherits="PhysicsBody" version="4.0">
- <brief_description>
- </brief_description>
- <description>
- </description>
- <tutorials>
- </tutorials>
- <methods>
- <method name="apply_central_impulse">
- <return type="void">
- </return>
- <argument index="0" name="impulse" type="Vector3">
- </argument>
- <description>
- </description>
- </method>
- <method name="apply_impulse">
- <return type="void">
- </return>
- <argument index="0" name="position" type="Vector3">
- </argument>
- <argument index="1" name="impulse" type="Vector3">
- </argument>
- <description>
- </description>
- </method>
- <method name="get_bone_id" qualifiers="const">
- <return type="int">
- </return>
- <description>
- </description>
- </method>
- <method name="get_simulate_physics">
- <return type="bool">
- </return>
- <description>
- </description>
- </method>
- <method name="is_simulating_physics">
- <return type="bool">
- </return>
- <description>
- </description>
- </method>
- </methods>
- <members>
- <member name="body_offset" type="Transform" setter="set_body_offset" getter="get_body_offset" default="Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )">
- </member>
- <member name="bounce" type="float" setter="set_bounce" getter="get_bounce" default="0.0">
- </member>
- <member name="friction" type="float" setter="set_friction" getter="get_friction" default="1.0">
- </member>
- <member name="gravity_scale" type="float" setter="set_gravity_scale" getter="get_gravity_scale" default="1.0">
- </member>
- <member name="joint_offset" type="Transform" setter="set_joint_offset" getter="get_joint_offset" default="Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )">
- </member>
- <member name="joint_type" type="int" setter="set_joint_type" getter="get_joint_type" enum="PhysicalBone.JointType" default="0">
- </member>
- <member name="mass" type="float" setter="set_mass" getter="get_mass" default="1.0">
- </member>
- <member name="weight" type="float" setter="set_weight" getter="get_weight" default="9.8">
- </member>
- </members>
- <constants>
- <constant name="JOINT_TYPE_NONE" value="0" enum="JointType">
- </constant>
- <constant name="JOINT_TYPE_PIN" value="1" enum="JointType">
- </constant>
- <constant name="JOINT_TYPE_CONE" value="2" enum="JointType">
- </constant>
- <constant name="JOINT_TYPE_HINGE" value="3" enum="JointType">
- </constant>
- <constant name="JOINT_TYPE_SLIDER" value="4" enum="JointType">
- </constant>
- <constant name="JOINT_TYPE_6DOF" value="5" enum="JointType">
- </constant>
- </constants>
-</class>
diff --git a/doc/classes/PhysicalBone3D.xml b/doc/classes/PhysicalBone3D.xml
new file mode 100644
index 0000000000..75f1f3eab4
--- /dev/null
+++ b/doc/classes/PhysicalBone3D.xml
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicalBone3D" inherits="PhysicsBody3D" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="apply_central_impulse">
+ <return type="void">
+ </return>
+ <argument index="0" name="impulse" type="Vector3">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="apply_impulse">
+ <return type="void">
+ </return>
+ <argument index="0" name="position" type="Vector3">
+ </argument>
+ <argument index="1" name="impulse" type="Vector3">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_bone_id" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_simulate_physics">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_simulating_physics">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <members>
+ <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="-1.0">
+ Damps the body's rotation if greater than [code]0[/code].
+ </member>
+ <member name="axis_lock_angular_x" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
+ Lock the body's rotation in the X axis.
+ </member>
+ <member name="axis_lock_angular_y" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
+ Lock the body's rotation in the Y axis.
+ </member>
+ <member name="axis_lock_angular_z" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
+ Lock the body's rotation in the Z axis.
+ </member>
+ <member name="axis_lock_linear_x" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
+ Lock the body's movement in the X axis.
+ </member>
+ <member name="axis_lock_linear_y" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
+ Lock the body's movement in the Y axis.
+ </member>
+ <member name="axis_lock_linear_z" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
+ Lock the body's movement in the Z axis.
+ </member>
+ <member name="body_offset" type="Transform" setter="set_body_offset" getter="get_body_offset" default="Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )">
+ Sets the body's transform.
+ </member>
+ <member name="bounce" type="float" setter="set_bounce" getter="get_bounce" default="0.0">
+ The body's bounciness. Values range from [code]0[/code] (no bounce) to [code]1[/code] (full bounciness).
+ </member>
+ <member name="can_sleep" type="bool" setter="set_can_sleep" getter="is_able_to_sleep" default="true">
+ If [code]true[/code], the body is deactivated when there is no movement, so it will not take part in the simulation until it is awaken by an external force.
+ </member>
+ <member name="friction" type="float" setter="set_friction" getter="get_friction" default="1.0">
+ The body's friction, from [code]0[/code] (frictionless) to [code]1[/code] (max friction).
+ </member>
+ <member name="gravity_scale" type="float" setter="set_gravity_scale" getter="get_gravity_scale" default="1.0">
+ This is multiplied by the global 3D gravity setting found in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] to produce the body's gravity. For example, a value of 1 will be normal gravity, 2 will apply double gravity, and 0.5 will apply half gravity to this object.
+ </member>
+ <member name="joint_offset" type="Transform" setter="set_joint_offset" getter="get_joint_offset" default="Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )">
+ Sets the joint's transform.
+ </member>
+ <member name="joint_rotation" type="Vector3" setter="set_joint_rotation" getter="get_joint_rotation" default="Vector3( 0, 0, 0 )">
+ Sets the joint's rotation in radians.
+ </member>
+ <member name="joint_rotation_degrees" type="Vector3" setter="set_joint_rotation_degrees" getter="get_joint_rotation_degrees" default="Vector3( 0, 0, 0 )">
+ Sets the joint's rotation in degrees.
+ </member>
+ <member name="joint_type" type="int" setter="set_joint_type" getter="get_joint_type" enum="PhysicalBone3D.JointType" default="0">
+ Sets the joint type. See [enum JointType] for possible values.
+ </member>
+ <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="-1.0">
+ Damps the body's movement if greater than [code]0[/code].
+ </member>
+ <member name="mass" type="float" setter="set_mass" getter="get_mass" default="1.0">
+ The body's mass.
+ </member>
+ <member name="weight" type="float" setter="set_weight" getter="get_weight" default="9.8">
+ The body's weight based on its mass and the global 3D gravity. Global values are set in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b].
+ </member>
+ </members>
+ <constants>
+ <constant name="JOINT_TYPE_NONE" value="0" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_PIN" value="1" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_CONE" value="2" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_HINGE" value="3" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_SLIDER" value="4" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_6DOF" value="5" enum="JointType">
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/PhysicalSkyMaterial.xml b/doc/classes/PhysicalSkyMaterial.xml
new file mode 100644
index 0000000000..89b43158dc
--- /dev/null
+++ b/doc/classes/PhysicalSkyMaterial.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicalSkyMaterial" inherits="Material" version="4.0">
+ <brief_description>
+ [Sky] [Material] used for a physically based sky.
+ </brief_description>
+ <description>
+ The [PhysicalSkyMaterial] uses the Preetham analytic daylight model to draw a sky based on physical properties. This results in a substantially more realistic sky than the [ProceduralSkyMaterial], but it is slightly slower and less flexible.
+ The [PhysicalSkyMaterial] only supports one sun. The color, energy, and direction of the sun are taken from the first [DirectionalLight3D] in the scene tree.
+ As it is based on a daylight model, the sky fades to black as the sunset ends. If you want a full day/night cycle, you will have to add a night sky by converting this to a [ShaderMaterial] and adding a night sky directly into the resulting shader.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <members>
+ <member name="dither_strength" type="float" setter="set_dither_strength" getter="get_dither_strength" default="1.0">
+ Sets the amount of dithering to use. Dithering helps reduce banding that appears from the smooth changes in color in the sky. Use the lowest value possible, higher amounts may add fuzziness to the sky.
+ </member>
+ <member name="exposure" type="float" setter="set_exposure" getter="get_exposure" default="0.1">
+ Sets the exposure of the sky. Higher exposure values make the entire sky brighter.
+ </member>
+ <member name="ground_color" type="Color" setter="set_ground_color" getter="get_ground_color" default="Color( 1, 1, 1, 1 )">
+ Modulates the [Color] on the bottom half of the sky to represent the ground.
+ </member>
+ <member name="mie_coefficient" type="float" setter="set_mie_coefficient" getter="get_mie_coefficient" default="0.005">
+ Controls the strength of mie scattering for the sky. Mie scattering results from light colliding with larger particles (like water). On earth, mie scattering results in a whiteish color around the sun and horizon.
+ </member>
+ <member name="mie_color" type="Color" setter="set_mie_color" getter="get_mie_color" default="Color( 0.36, 0.56, 0.82, 1 )">
+ Controls the [Color] of the mie scattering effect. While not physically accurate, this allows for the creation of alien looking planets.
+ </member>
+ <member name="mie_eccentricity" type="float" setter="set_mie_eccentricity" getter="get_mie_eccentricity" default="0.8">
+ Controls the direction of the mie scattering. A value of [code]1[/code] means that when light hits a particle it passing through straight forward. A value of [code]-1[/code] means that all light is scatter backwards.
+ </member>
+ <member name="rayleigh_coefficient" type="float" setter="set_rayleigh_coefficient" getter="get_rayleigh_coefficient" default="2.0">
+ Controls the strength of the rayleigh scattering. Rayleigh scattering results from light colliding with small particles. It is responsible for the blue color of the sky.
+ </member>
+ <member name="rayleigh_color" type="Color" setter="set_rayleigh_color" getter="get_rayleigh_color" default="Color( 0.056, 0.14, 0.3, 1 )">
+ Controls the [Color] of the rayleigh scattering. While not physically accurate, this allows for the creation of alien looking planets. For example, setting this to a red [Color] results in a mars looking atmosphere with a corresponding blue sunset.
+ </member>
+ <member name="sun_disk_scale" type="float" setter="set_sun_disk_scale" getter="get_sun_disk_scale" default="1.0">
+ Sets the size of the sun disk. Default value is based on Sol's perceived size from Earth.
+ </member>
+ <member name="turbidity" type="float" setter="set_turbidity" getter="get_turbidity" default="10.0">
+ Sets the thickness of the atmosphere. High turbidity creates a foggy looking atmosphere, while a low turbidity results in a clearer atmosphere.
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/Physics2DDirectBodyStateSW.xml b/doc/classes/Physics2DDirectBodyStateSW.xml
deleted file mode 100644
index 11f1140ca8..0000000000
--- a/doc/classes/Physics2DDirectBodyStateSW.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DDirectBodyStateSW" inherits="Physics2DDirectBodyState" version="4.0">
- <brief_description>
- Software implementation of [Physics2DDirectBodyState].
- </brief_description>
- <description>
- Software implementation of [Physics2DDirectBodyState]. This object exposes no new methods or properties and should not be used, as [Physics2DDirectBodyState] selects the best implementation available.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <constants>
- </constants>
-</class>
diff --git a/doc/classes/PhysicsBody.xml b/doc/classes/PhysicsBody3D.xml
index c0927a5b53..f0ba2a7f5f 100644
--- a/doc/classes/PhysicsBody.xml
+++ b/doc/classes/PhysicsBody3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicsBody" inherits="CollisionObject" version="4.0">
+<class name="PhysicsBody3D" inherits="CollisionObject3D" version="4.0">
<brief_description>
Base class for all objects affected by physics in 3D space.
</brief_description>
<description>
- PhysicsBody is an abstract base class for implementing a physics body. All *Body types inherit from it.
+ PhysicsBody3D is an abstract base class for implementing a physics body. All *Body types inherit from it.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html</link>
diff --git a/doc/classes/Physics2DDirectBodyState.xml b/doc/classes/PhysicsDirectBodyState2D.xml
index d9d402ac9a..46205fecd1 100644
--- a/doc/classes/Physics2DDirectBodyState.xml
+++ b/doc/classes/PhysicsDirectBodyState2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DDirectBodyState" inherits="Object" version="4.0">
+<class name="PhysicsDirectBodyState2D" inherits="Object" version="4.0">
<brief_description>
- Direct access object to a physics body in the [Physics2DServer].
+ Direct access object to a physics body in the [PhysicsServer2D].
</brief_description>
<description>
- Provides direct access to a physics body in the [Physics2DServer], allowing safe changes to physics properties. This object is passed via the direct state callback of rigid/character bodies, and is intended for changing the direct state of that body. See [method RigidBody2D._integrate_forces].
+ Provides direct access to a physics body in the [PhysicsServer2D], allowing safe changes to physics properties. This object is passed via the direct state callback of rigid/character bodies, and is intended for changing the direct state of that body. See [method RigidBody2D._integrate_forces].
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html</link>
@@ -119,7 +119,7 @@
<argument index="0" name="contact_idx" type="int">
</argument>
<description>
- Returns the collided shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method Physics2DServer.shape_set_data].
+ Returns the collided shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method PhysicsServer2D.shape_set_data].
</description>
</method>
<method name="get_contact_collider_velocity_at_position" qualifiers="const">
@@ -167,7 +167,7 @@
</description>
</method>
<method name="get_space_state">
- <return type="Physics2DDirectSpaceState">
+ <return type="PhysicsDirectSpaceState2D">
</return>
<description>
Returns the current state of the space, useful for queries.
diff --git a/doc/classes/PhysicsDirectBodyState2DSW.xml b/doc/classes/PhysicsDirectBodyState2DSW.xml
new file mode 100644
index 0000000000..94fc4213b7
--- /dev/null
+++ b/doc/classes/PhysicsDirectBodyState2DSW.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicsDirectBodyState2DSW" inherits="PhysicsDirectBodyState2D" version="4.0">
+ <brief_description>
+ Software implementation of [PhysicsDirectBodyState2D].
+ </brief_description>
+ <description>
+ Software implementation of [PhysicsDirectBodyState2D]. This object exposes no new methods or properties and should not be used, as [PhysicsDirectBodyState2D] selects the best implementation available.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/PhysicsDirectBodyState.xml b/doc/classes/PhysicsDirectBodyState3D.xml
index 24cf4961be..1ee520fe5f 100644
--- a/doc/classes/PhysicsDirectBodyState.xml
+++ b/doc/classes/PhysicsDirectBodyState3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicsDirectBodyState" inherits="Object" version="4.0">
+<class name="PhysicsDirectBodyState3D" inherits="Object" version="4.0">
<brief_description>
- Direct access object to a physics body in the [PhysicsServer].
+ Direct access object to a physics body in the [PhysicsServer3D].
</brief_description>
<description>
- Provides direct access to a physics body in the [PhysicsServer], allowing safe changes to physics properties. This object is passed via the direct state callback of rigid/character bodies, and is intended for changing the direct state of that body. See [method RigidBody._integrate_forces].
+ Provides direct access to a physics body in the [PhysicsServer3D], allowing safe changes to physics properties. This object is passed via the direct state callback of rigid/character bodies, and is intended for changing the direct state of that body. See [method RigidBody3D._integrate_forces].
</description>
<tutorials>
</tutorials>
@@ -128,7 +128,7 @@
</return>
<description>
Returns the number of contacts this body has with other bodies.
- [b]Note:[/b] By default, this returns 0 unless bodies are configured to monitor contacts. See [member RigidBody.contact_monitor].
+ [b]Note:[/b] By default, this returns 0 unless bodies are configured to monitor contacts. See [member RigidBody3D.contact_monitor].
</description>
</method>
<method name="get_contact_impulse" qualifiers="const">
@@ -168,7 +168,7 @@
</description>
</method>
<method name="get_space_state">
- <return type="PhysicsDirectSpaceState">
+ <return type="PhysicsDirectSpaceState3D">
</return>
<description>
Returns the current state of the space, useful for queries.
diff --git a/doc/classes/Physics2DDirectSpaceState.xml b/doc/classes/PhysicsDirectSpaceState2D.xml
index 662a823d84..d85d7794dd 100644
--- a/doc/classes/Physics2DDirectSpaceState.xml
+++ b/doc/classes/PhysicsDirectSpaceState2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DDirectSpaceState" inherits="Object" version="4.0">
+<class name="PhysicsDirectSpaceState2D" inherits="Object" version="4.0">
<brief_description>
- Direct access object to a space in the [Physics2DServer].
+ Direct access object to a space in the [PhysicsServer2D].
</brief_description>
<description>
- Direct access object to a space in the [Physics2DServer]. It's used mainly to do queries against objects and areas residing in a given space.
+ Direct access object to a space in the [PhysicsServer2D]. It's used mainly to do queries against objects and areas residing in a given space.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html</link>
@@ -13,35 +13,35 @@
<method name="cast_motion">
<return type="Array">
</return>
- <argument index="0" name="shape" type="Physics2DShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D">
</argument>
<description>
Checks how far the shape can travel toward a point. If the shape can not move, the array will be empty.
- [b]Note:[/b] Both the shape and the motion are supplied through a [Physics2DShapeQueryParameters] object. The method will return an array with two floats between 0 and 1, both representing a fraction of [code]motion[/code]. The first is how far the shape can move without triggering a collision, and the second is the point at which a collision will occur. If no collision is detected, the returned array will be [code][1, 1][/code].
+ [b]Note:[/b] Both the shape and the motion are supplied through a [PhysicsShapeQueryParameters2D] object. The method will return an array with two floats between 0 and 1, both representing a fraction of [code]motion[/code]. The first is how far the shape can move without triggering a collision, and the second is the point at which a collision will occur. If no collision is detected, the returned array will be [code][1, 1][/code].
</description>
</method>
<method name="collide_shape">
<return type="Array">
</return>
- <argument index="0" name="shape" type="Physics2DShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D">
</argument>
<argument index="1" name="max_results" type="int" default="32">
</argument>
<description>
- Checks the intersections of a shape, given through a [Physics2DShapeQueryParameters] object, against the space. The resulting array contains a list of points where the shape intersects another. Like with [method intersect_shape], the number of returned results can be limited to save processing time.
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters2D] object, against the space. The resulting array contains a list of points where the shape intersects another. Like with [method intersect_shape], the number of returned results can be limited to save processing time.
</description>
</method>
<method name="get_rest_info">
<return type="Dictionary">
</return>
- <argument index="0" name="shape" type="Physics2DShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D">
</argument>
<description>
- Checks the intersections of a shape, given through a [Physics2DShapeQueryParameters] object, against the space. If it collides with more than one shape, the nearest one is selected. If the shape did not intersect anything, then an empty dictionary is returned instead.
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters2D] object, against the space. If it collides with more than one shape, the nearest one is selected. If the shape did not intersect anything, then an empty dictionary is returned instead.
[b]Note:[/b] This method does not take into account the [code]motion[/code] property of the object. The returned object is a dictionary containing the following fields:
[code]collider_id[/code]: The colliding object's ID.
[code]linear_velocity[/code]: The colliding object's velocity [Vector2]. If the object is an [Area2D], the result is [code](0, 0)[/code].
- [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method Physics2DServer.shape_set_data].
+ [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method PhysicsServer2D.shape_set_data].
[code]normal[/code]: The object's surface normal at the intersection point.
[code]point[/code]: The intersection point.
[code]rid[/code]: The intersecting object's [RID].
@@ -67,10 +67,10 @@
Checks whether a point is inside any shape. The shapes the point is inside of are returned in an array containing dictionaries with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
- [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method Physics2DServer.shape_set_data].
+ [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method PhysicsServer2D.shape_set_data].
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
- Additionally, the method can take an [code]exclude[/code] array of objects or [RID]s that are to be excluded from collisions, a [code]collision_mask[/code] bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody]s or [Area]s, respectively.
+ Additionally, the method can take an [code]exclude[/code] array of objects or [RID]s that are to be excluded from collisions, a [code]collision_mask[/code] bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, respectively.
</description>
</method>
<method name="intersect_point_on_canvas">
@@ -112,28 +112,28 @@
Intersects a ray in a given space. The returned object is a dictionary with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
- [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method Physics2DServer.shape_set_data].
+ [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method PhysicsServer2D.shape_set_data].
[code]normal[/code]: The object's surface normal at the intersection point.
[code]position[/code]: The intersection point.
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
If the ray did not intersect anything, then an empty dictionary is returned instead.
- Additionally, the method can take an [code]exclude[/code] array of objects or [RID]s that are to be excluded from collisions, a [code]collision_mask[/code] bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody]s or [Area]s, respectively.
+ Additionally, the method can take an [code]exclude[/code] array of objects or [RID]s that are to be excluded from collisions, a [code]collision_mask[/code] bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, respectively.
</description>
</method>
<method name="intersect_shape">
<return type="Array">
</return>
- <argument index="0" name="shape" type="Physics2DShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D">
</argument>
<argument index="1" name="max_results" type="int" default="32">
</argument>
<description>
- Checks the intersections of a shape, given through a [Physics2DShapeQueryParameters] object, against the space.
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters2D] object, against the space.
[b]Note:[/b] This method does not take into account the [code]motion[/code] property of the object. The intersected shapes are returned in an array containing dictionaries with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
- [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method Physics2DServer.shape_set_data].
+ [code]metadata[/code]: The intersecting shape's metadata. This metadata is different from [method Object.get_meta], and is set with [method PhysicsServer2D.shape_set_data].
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
The number of intersections can be limited with the [code]max_results[/code] parameter, to reduce the processing time.
diff --git a/doc/classes/PhysicsDirectSpaceState.xml b/doc/classes/PhysicsDirectSpaceState3D.xml
index a6172805e9..ea094dcd90 100644
--- a/doc/classes/PhysicsDirectSpaceState.xml
+++ b/doc/classes/PhysicsDirectSpaceState3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicsDirectSpaceState" inherits="Object" version="4.0">
+<class name="PhysicsDirectSpaceState3D" inherits="Object" version="4.0">
<brief_description>
- Direct access object to a space in the [PhysicsServer].
+ Direct access object to a space in the [PhysicsServer3D].
</brief_description>
<description>
- Direct access object to a space in the [PhysicsServer]. It's used mainly to do queries against objects and areas residing in a given space.
+ Direct access object to a space in the [PhysicsServer3D]. It's used mainly to do queries against objects and areas residing in a given space.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html</link>
@@ -13,35 +13,35 @@
<method name="cast_motion">
<return type="Array">
</return>
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D">
</argument>
<argument index="1" name="motion" type="Vector3">
</argument>
<description>
Checks whether the shape can travel to a point. The method will return an array with two floats between 0 and 1, both representing a fraction of [code]motion[/code]. The first is how far the shape can move without triggering a collision, and the second is the point at which a collision will occur. If no collision is detected, the returned array will be [code][1, 1][/code].
- If the shape can not move, the returned array will be [code][0, 0][/code] under Bullet, and empty under GodotPhysics.
+ If the shape can not move, the returned array will be [code][0, 0][/code] under Bullet, and empty under GodotPhysics3D.
</description>
</method>
<method name="collide_shape">
<return type="Array">
</return>
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D">
</argument>
<argument index="1" name="max_results" type="int" default="32">
</argument>
<description>
- Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters] object, against the space. The resulting array contains a list of points where the shape intersects another. Like with [method intersect_shape], the number of returned results can be limited to save processing time.
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters3D] object, against the space. The resulting array contains a list of points where the shape intersects another. Like with [method intersect_shape], the number of returned results can be limited to save processing time.
</description>
</method>
<method name="get_rest_info">
<return type="Dictionary">
</return>
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D">
</argument>
<description>
- Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters] object, against the space. If it collides with more than one shape, the nearest one is selected. The returned object is a dictionary containing the following fields:
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters3D] object, against the space. If it collides with more than one shape, the nearest one is selected. The returned object is a dictionary containing the following fields:
[code]collider_id[/code]: The colliding object's ID.
- [code]linear_velocity[/code]: The colliding object's velocity [Vector3]. If the object is an [Area], the result is [code](0, 0, 0)[/code].
+ [code]linear_velocity[/code]: The colliding object's velocity [Vector3]. If the object is an [Area3D], the result is [code](0, 0, 0)[/code].
[code]normal[/code]: The object's surface normal at the intersection point.
[code]point[/code]: The intersection point.
[code]rid[/code]: The intersecting object's [RID].
@@ -73,18 +73,18 @@
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
If the ray did not intersect anything, then an empty dictionary is returned instead.
- Additionally, the method can take an [code]exclude[/code] array of objects or [RID]s that are to be excluded from collisions, a [code]collision_mask[/code] bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody]s or [Area]s, respectively.
+ Additionally, the method can take an [code]exclude[/code] array of objects or [RID]s that are to be excluded from collisions, a [code]collision_mask[/code] bitmask representing the physics layers to check in, or booleans to determine if the ray should collide with [PhysicsBody3D]s or [Area3D]s, respectively.
</description>
</method>
<method name="intersect_shape">
<return type="Array">
</return>
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters">
+ <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D">
</argument>
<argument index="1" name="max_results" type="int" default="32">
</argument>
<description>
- Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters] object, against the space. The intersected shapes are returned in an array containing dictionaries with the following fields:
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters3D] object, against the space. The intersected shapes are returned in an array containing dictionaries with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
[code]rid[/code]: The intersecting object's [RID].
diff --git a/doc/classes/PhysicsMaterial.xml b/doc/classes/PhysicsMaterial.xml
index 84e7f2b275..6410626496 100644
--- a/doc/classes/PhysicsMaterial.xml
+++ b/doc/classes/PhysicsMaterial.xml
@@ -4,7 +4,7 @@
A material for physics properties.
</brief_description>
<description>
- Provides a means of modifying the collision properties of a [PhysicsBody].
+ Provides a means of modifying the collision properties of a [PhysicsBody3D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Physics2DServer.xml b/doc/classes/PhysicsServer2D.xml
index 45215253be..9da739e57a 100644
--- a/doc/classes/Physics2DServer.xml
+++ b/doc/classes/PhysicsServer2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DServer" inherits="Object" version="4.0">
+<class name="PhysicsServer2D" inherits="Object" version="4.0">
<brief_description>
Server interface for low-level 2D physics access.
</brief_description>
<description>
- Physics2DServer is the server responsible for all 2D physics. It can create many kinds of physics objects, but does not insert them on the node tree.
+ PhysicsServer2D is the server responsible for all 2D physics. It can create many kinds of physics objects, but does not insert them on the node tree.
</description>
<tutorials>
</tutorials>
@@ -83,7 +83,7 @@
</return>
<argument index="0" name="area" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.AreaParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.AreaParameter">
</argument>
<description>
Returns an area parameter value. See [enum AreaParameter] for a list of available parameters.
@@ -130,7 +130,7 @@
</description>
</method>
<method name="area_get_space_override_mode" qualifiers="const">
- <return type="int" enum="Physics2DServer.AreaSpaceOverrideMode">
+ <return type="int" enum="PhysicsServer2D.AreaSpaceOverrideMode">
</return>
<argument index="0" name="area" type="RID">
</argument>
@@ -225,7 +225,7 @@
</return>
<argument index="0" name="area" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.AreaParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.AreaParameter">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -288,7 +288,7 @@
</return>
<argument index="0" name="area" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="Physics2DServer.AreaSpaceOverrideMode">
+ <argument index="1" name="mode" type="int" enum="PhysicsServer2D.AreaSpaceOverrideMode">
</argument>
<description>
Sets the space override mode for the area. See [enum AreaSpaceOverrideMode] for a list of available modes.
@@ -461,7 +461,7 @@
</description>
</method>
<method name="body_get_continuous_collision_detection_mode" qualifiers="const">
- <return type="int" enum="Physics2DServer.CCDMode">
+ <return type="int" enum="PhysicsServer2D.CCDMode">
</return>
<argument index="0" name="body" type="RID">
</argument>
@@ -470,12 +470,12 @@
</description>
</method>
<method name="body_get_direct_state">
- <return type="Physics2DDirectBodyState">
+ <return type="PhysicsDirectBodyState2D">
</return>
<argument index="0" name="body" type="RID">
</argument>
<description>
- Returns the [Physics2DDirectBodyState] of the body.
+ Returns the [PhysicsDirectBodyState2D] of the body.
</description>
</method>
<method name="body_get_max_contacts_reported" qualifiers="const">
@@ -488,7 +488,7 @@
</description>
</method>
<method name="body_get_mode" qualifiers="const">
- <return type="int" enum="Physics2DServer.BodyMode">
+ <return type="int" enum="PhysicsServer2D.BodyMode">
</return>
<argument index="0" name="body" type="RID">
</argument>
@@ -510,7 +510,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.BodyParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.BodyParameter">
</argument>
<description>
Returns the value of a body parameter. See [enum BodyParameter] for a list of available parameters.
@@ -572,7 +572,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="state" type="int" enum="Physics2DServer.BodyState">
+ <argument index="1" name="state" type="int" enum="PhysicsServer2D.BodyState">
</argument>
<description>
Returns a body state.
@@ -647,7 +647,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="Physics2DServer.CCDMode">
+ <argument index="1" name="mode" type="int" enum="PhysicsServer2D.CCDMode">
</argument>
<description>
Sets the continuous collision detection mode using one of the [enum CCDMode] constants.
@@ -685,7 +685,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="Physics2DServer.BodyMode">
+ <argument index="1" name="mode" type="int" enum="PhysicsServer2D.BodyMode">
</argument>
<description>
Sets the body mode using one of the [enum BodyMode] constants.
@@ -707,7 +707,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.BodyParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.BodyParameter">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -798,7 +798,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="state" type="int" enum="Physics2DServer.BodyState">
+ <argument index="1" name="state" type="int" enum="PhysicsServer2D.BodyState">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -819,10 +819,10 @@
</argument>
<argument index="4" name="margin" type="float" default="0.08">
</argument>
- <argument index="5" name="result" type="Physics2DTestMotionResult" default="null">
+ <argument index="5" name="result" type="PhysicsTestMotionResult2D" default="null">
</argument>
<description>
- Returns [code]true[/code] if a collision would result from moving in the given direction from a given point in space. Margin increases the size of the shapes involved in the collision detection. [Physics2DTestMotionResult] can be passed to return additional information in.
+ Returns [code]true[/code] if a collision would result from moving in the given direction from a given point in space. Margin increases the size of the shapes involved in the collision detection. [PhysicsTestMotionResult2D] can be passed to return additional information in.
</description>
</method>
<method name="capsule_shape_create">
@@ -869,7 +869,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.DampedStringParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.DampedStringParam">
</argument>
<description>
Returns the value of a damped spring joint parameter.
@@ -880,7 +880,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.DampedStringParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.DampedStringParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -894,13 +894,13 @@
<argument index="0" name="rid" type="RID">
</argument>
<description>
- Destroys any of the objects created by Physics2DServer. If the [RID] passed is not one of the objects that can be created by Physics2DServer, an error will be sent to the console.
+ Destroys any of the objects created by PhysicsServer2D. If the [RID] passed is not one of the objects that can be created by PhysicsServer2D, an error will be sent to the console.
</description>
</method>
<method name="get_process_info">
<return type="int">
</return>
- <argument index="0" name="process_info" type="int" enum="Physics2DServer.ProcessInfo">
+ <argument index="0" name="process_info" type="int" enum="PhysicsServer2D.ProcessInfo">
</argument>
<description>
Returns information about the current state of the 2D physics engine. See [enum ProcessInfo] for a list of available states.
@@ -928,14 +928,14 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.JointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.JointParam">
</argument>
<description>
Returns the value of a joint parameter.
</description>
</method>
<method name="joint_get_type" qualifiers="const">
- <return type="int" enum="Physics2DServer.JointType">
+ <return type="int" enum="PhysicsServer2D.JointType">
</return>
<argument index="0" name="joint" type="RID">
</argument>
@@ -948,7 +948,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.JointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.JointParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -1012,7 +1012,7 @@
</description>
</method>
<method name="shape_get_type" qualifiers="const">
- <return type="int" enum="Physics2DServer.ShapeType">
+ <return type="int" enum="PhysicsServer2D.ShapeType">
</return>
<argument index="0" name="shape" type="RID">
</argument>
@@ -1039,12 +1039,12 @@
</description>
</method>
<method name="space_get_direct_state">
- <return type="Physics2DDirectSpaceState">
+ <return type="PhysicsDirectSpaceState2D">
</return>
<argument index="0" name="space" type="RID">
</argument>
<description>
- Returns the state of a space, a [Physics2DDirectSpaceState]. This object can be used to make collision/intersection queries.
+ Returns the state of a space, a [PhysicsDirectSpaceState2D]. This object can be used to make collision/intersection queries.
</description>
</method>
<method name="space_get_param" qualifiers="const">
@@ -1052,7 +1052,7 @@
</return>
<argument index="0" name="space" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.SpaceParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.SpaceParameter">
</argument>
<description>
Returns the value of a space parameter.
@@ -1083,7 +1083,7 @@
</return>
<argument index="0" name="space" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="Physics2DServer.SpaceParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer2D.SpaceParameter">
</argument>
<argument index="2" name="value" type="float">
</argument>
diff --git a/doc/classes/Physics2DServerSW.xml b/doc/classes/PhysicsServer2DSW.xml
index 1e4531ed66..dac5e360f0 100644
--- a/doc/classes/Physics2DServerSW.xml
+++ b/doc/classes/PhysicsServer2DSW.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DServerSW" inherits="Physics2DServer" version="4.0">
+<class name="PhysicsServer2DSW" inherits="PhysicsServer2D" version="4.0">
<brief_description>
- Software implementation of [Physics2DServer].
+ Software implementation of [PhysicsServer2D].
</brief_description>
<description>
- This class exposes no new methods or properties and should not be used, as [Physics2DServer] automatically selects the best implementation available.
+ This class exposes no new methods or properties and should not be used, as [PhysicsServer2D] automatically selects the best implementation available.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/PhysicsServer.xml b/doc/classes/PhysicsServer3D.xml
index 1b9ce80a1b..e9e1552c92 100644
--- a/doc/classes/PhysicsServer.xml
+++ b/doc/classes/PhysicsServer3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicsServer" inherits="Object" version="4.0">
+<class name="PhysicsServer3D" inherits="Object" version="4.0">
<brief_description>
Server interface for low-level physics access.
</brief_description>
<description>
- PhysicsServer is the server responsible for all 3D physics. It can create many kinds of physics objects, but does not insert them on the node tree.
+ PhysicsServer3D is the server responsible for all 3D physics. It can create many kinds of physics objects, but does not insert them on the node tree.
</description>
<tutorials>
</tutorials>
@@ -48,7 +48,7 @@
<return type="RID">
</return>
<description>
- Creates an [Area].
+ Creates an [Area3D].
</description>
</method>
<method name="area_get_object_instance_id" qualifiers="const">
@@ -65,7 +65,7 @@
</return>
<argument index="0" name="area" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.AreaParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.AreaParameter">
</argument>
<description>
Returns an area parameter value. A list of available parameters is on the [enum AreaParameter] constants.
@@ -112,7 +112,7 @@
</description>
</method>
<method name="area_get_space_override_mode" qualifiers="const">
- <return type="int" enum="PhysicsServer.AreaSpaceOverrideMode">
+ <return type="int" enum="PhysicsServer3D.AreaSpaceOverrideMode">
</return>
<argument index="0" name="area" type="RID">
</argument>
@@ -216,7 +216,7 @@
</return>
<argument index="0" name="area" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.AreaParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.AreaParameter">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -289,7 +289,7 @@
</return>
<argument index="0" name="area" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="PhysicsServer.AreaSpaceOverrideMode">
+ <argument index="1" name="mode" type="int" enum="PhysicsServer3D.AreaSpaceOverrideMode">
</argument>
<description>
Sets the space override mode for the area. The modes are described in the [enum AreaSpaceOverrideMode] constants.
@@ -421,7 +421,7 @@
<method name="body_create">
<return type="RID">
</return>
- <argument index="0" name="mode" type="int" enum="PhysicsServer.BodyMode" default="2">
+ <argument index="0" name="mode" type="int" enum="PhysicsServer3D.BodyMode" default="2">
</argument>
<argument index="1" name="init_sleeping" type="bool" default="false">
</argument>
@@ -449,12 +449,12 @@
</description>
</method>
<method name="body_get_direct_state">
- <return type="PhysicsDirectBodyState">
+ <return type="PhysicsDirectBodyState3D">
</return>
<argument index="0" name="body" type="RID">
</argument>
<description>
- Returns the [PhysicsDirectBodyState] of the body.
+ Returns the [PhysicsDirectBodyState3D] of the body.
</description>
</method>
<method name="body_get_kinematic_safe_margin" qualifiers="const">
@@ -475,7 +475,7 @@
</description>
</method>
<method name="body_get_mode" qualifiers="const">
- <return type="int" enum="PhysicsServer.BodyMode">
+ <return type="int" enum="PhysicsServer3D.BodyMode">
</return>
<argument index="0" name="body" type="RID">
</argument>
@@ -497,7 +497,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.BodyParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.BodyParameter">
</argument>
<description>
Returns the value of a body parameter. A list of available parameters is on the [enum BodyParameter] constants.
@@ -548,7 +548,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="state" type="int" enum="PhysicsServer.BodyState">
+ <argument index="1" name="state" type="int" enum="PhysicsServer3D.BodyState">
</argument>
<description>
Returns a body state.
@@ -559,7 +559,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="axis" type="int" enum="PhysicsServer.BodyAxis">
+ <argument index="1" name="axis" type="int" enum="PhysicsServer3D.BodyAxis">
</argument>
<description>
</description>
@@ -619,7 +619,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="axis" type="int" enum="PhysicsServer.BodyAxis">
+ <argument index="1" name="axis" type="int" enum="PhysicsServer3D.BodyAxis">
</argument>
<argument index="2" name="lock" type="bool">
</argument>
@@ -712,7 +712,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="PhysicsServer.BodyMode">
+ <argument index="1" name="mode" type="int" enum="PhysicsServer3D.BodyMode">
</argument>
<description>
Sets the body mode, from one of the [enum BodyMode] constants.
@@ -734,7 +734,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.BodyParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.BodyParameter">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -807,7 +807,7 @@
</return>
<argument index="0" name="body" type="RID">
</argument>
- <argument index="1" name="state" type="int" enum="PhysicsServer.BodyState">
+ <argument index="1" name="state" type="int" enum="PhysicsServer3D.BodyState">
</argument>
<argument index="2" name="value" type="Variant">
</argument>
@@ -820,7 +820,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.ConeTwistJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.ConeTwistJointParam">
</argument>
<description>
Gets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants).
@@ -831,7 +831,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.ConeTwistJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.ConeTwistJointParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -845,7 +845,7 @@
<argument index="0" name="rid" type="RID">
</argument>
<description>
- Destroys any of the objects created by PhysicsServer. If the [RID] passed is not one of the objects that can be created by PhysicsServer, an error will be sent to the console.
+ Destroys any of the objects created by PhysicsServer3D. If the [RID] passed is not one of the objects that can be created by PhysicsServer3D, an error will be sent to the console.
</description>
</method>
<method name="generic_6dof_joint_get_flag">
@@ -855,7 +855,7 @@
</argument>
<argument index="1" name="axis" type="int" enum="Vector3.Axis">
</argument>
- <argument index="2" name="flag" type="int" enum="PhysicsServer.G6DOFJointAxisFlag">
+ <argument index="2" name="flag" type="int" enum="PhysicsServer3D.G6DOFJointAxisFlag">
</argument>
<description>
Gets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants).
@@ -868,7 +868,7 @@
</argument>
<argument index="1" name="axis" type="int" enum="Vector3.Axis">
</argument>
- <argument index="2" name="param" type="int" enum="PhysicsServer.G6DOFJointAxisParam">
+ <argument index="2" name="param" type="int" enum="PhysicsServer3D.G6DOFJointAxisParam">
</argument>
<description>
Gets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] constants).
@@ -881,7 +881,7 @@
</argument>
<argument index="1" name="axis" type="int" enum="Vector3.Axis">
</argument>
- <argument index="2" name="flag" type="int" enum="PhysicsServer.G6DOFJointAxisFlag">
+ <argument index="2" name="flag" type="int" enum="PhysicsServer3D.G6DOFJointAxisFlag">
</argument>
<argument index="3" name="enable" type="bool">
</argument>
@@ -896,7 +896,7 @@
</argument>
<argument index="1" name="axis" type="int" enum="Vector3.Axis">
</argument>
- <argument index="2" name="param" type="int" enum="PhysicsServer.G6DOFJointAxisParam">
+ <argument index="2" name="param" type="int" enum="PhysicsServer3D.G6DOFJointAxisParam">
</argument>
<argument index="3" name="value" type="float">
</argument>
@@ -907,7 +907,7 @@
<method name="get_process_info">
<return type="int">
</return>
- <argument index="0" name="process_info" type="int" enum="PhysicsServer.ProcessInfo">
+ <argument index="0" name="process_info" type="int" enum="PhysicsServer3D.ProcessInfo">
</argument>
<description>
Returns an Info defined by the [enum ProcessInfo] input given.
@@ -918,7 +918,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="flag" type="int" enum="PhysicsServer.HingeJointFlag">
+ <argument index="1" name="flag" type="int" enum="PhysicsServer3D.HingeJointFlag">
</argument>
<description>
Gets a hinge_joint flag (see [enum HingeJointFlag] constants).
@@ -929,7 +929,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.HingeJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.HingeJointParam">
</argument>
<description>
Gets a hinge_joint parameter (see [enum HingeJointParam]).
@@ -940,7 +940,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="flag" type="int" enum="PhysicsServer.HingeJointFlag">
+ <argument index="1" name="flag" type="int" enum="PhysicsServer3D.HingeJointFlag">
</argument>
<argument index="2" name="enabled" type="bool">
</argument>
@@ -953,7 +953,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.HingeJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.HingeJointParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -973,7 +973,7 @@
<argument index="3" name="local_ref_B" type="Transform">
</argument>
<description>
- Creates a [ConeTwistJoint].
+ Creates a [ConeTwistJoint3D].
</description>
</method>
<method name="joint_create_generic_6dof">
@@ -988,7 +988,7 @@
<argument index="3" name="local_ref_B" type="Transform">
</argument>
<description>
- Creates a [Generic6DOFJoint].
+ Creates a [Generic6DOFJoint3D].
</description>
</method>
<method name="joint_create_hinge">
@@ -1003,7 +1003,7 @@
<argument index="3" name="hinge_B" type="Transform">
</argument>
<description>
- Creates a [HingeJoint].
+ Creates a [HingeJoint3D].
</description>
</method>
<method name="joint_create_pin">
@@ -1018,7 +1018,7 @@
<argument index="3" name="local_B" type="Vector3">
</argument>
<description>
- Creates a [PinJoint].
+ Creates a [PinJoint3D].
</description>
</method>
<method name="joint_create_slider">
@@ -1033,7 +1033,7 @@
<argument index="3" name="local_ref_B" type="Transform">
</argument>
<description>
- Creates a [SliderJoint].
+ Creates a [SliderJoint3D].
</description>
</method>
<method name="joint_get_solver_priority" qualifiers="const">
@@ -1042,16 +1042,16 @@
<argument index="0" name="joint" type="RID">
</argument>
<description>
- Gets the priority value of the Joint.
+ Gets the priority value of the Joint3D.
</description>
</method>
<method name="joint_get_type" qualifiers="const">
- <return type="int" enum="PhysicsServer.JointType">
+ <return type="int" enum="PhysicsServer3D.JointType">
</return>
<argument index="0" name="joint" type="RID">
</argument>
<description>
- Returns the type of the Joint.
+ Returns the type of the Joint3D.
</description>
</method>
<method name="joint_set_solver_priority">
@@ -1062,7 +1062,7 @@
<argument index="1" name="priority" type="int">
</argument>
<description>
- Sets the priority value of the Joint.
+ Sets the priority value of the Joint3D.
</description>
</method>
<method name="pin_joint_get_local_a" qualifiers="const">
@@ -1088,7 +1088,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.PinJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.PinJointParam">
</argument>
<description>
Gets a pin_joint parameter (see [enum PinJointParam] constants).
@@ -1121,7 +1121,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.PinJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.PinJointParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -1141,7 +1141,7 @@
<method name="shape_create">
<return type="RID">
</return>
- <argument index="0" name="type" type="int" enum="PhysicsServer.ShapeType">
+ <argument index="0" name="type" type="int" enum="PhysicsServer3D.ShapeType">
</argument>
<description>
Creates a shape of a type from [enum ShapeType]. Does not assign it to a body or an area. To do so, you must use [method area_set_shape] or [method body_set_shape].
@@ -1157,7 +1157,7 @@
</description>
</method>
<method name="shape_get_type" qualifiers="const">
- <return type="int" enum="PhysicsServer.ShapeType">
+ <return type="int" enum="PhysicsServer3D.ShapeType">
</return>
<argument index="0" name="shape" type="RID">
</argument>
@@ -1181,7 +1181,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.SliderJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.SliderJointParam">
</argument>
<description>
Gets a slider_joint parameter (see [enum SliderJointParam] constants).
@@ -1192,7 +1192,7 @@
</return>
<argument index="0" name="joint" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.SliderJointParam">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.SliderJointParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -1208,12 +1208,12 @@
</description>
</method>
<method name="space_get_direct_state">
- <return type="PhysicsDirectSpaceState">
+ <return type="PhysicsDirectSpaceState3D">
</return>
<argument index="0" name="space" type="RID">
</argument>
<description>
- Returns the state of a space, a [PhysicsDirectSpaceState]. This object can be used to make collision/intersection queries.
+ Returns the state of a space, a [PhysicsDirectSpaceState3D]. This object can be used to make collision/intersection queries.
</description>
</method>
<method name="space_get_param" qualifiers="const">
@@ -1221,7 +1221,7 @@
</return>
<argument index="0" name="space" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.SpaceParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.SpaceParameter">
</argument>
<description>
Returns the value of a space parameter.
@@ -1252,7 +1252,7 @@
</return>
<argument index="0" name="space" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="PhysicsServer.SpaceParameter">
+ <argument index="1" name="param" type="int" enum="PhysicsServer3D.SpaceParameter">
</argument>
<argument index="2" name="value" type="float">
</argument>
@@ -1263,19 +1263,19 @@
</methods>
<constants>
<constant name="JOINT_PIN" value="0" enum="JointType">
- The [Joint] is a [PinJoint].
+ The [Joint3D] is a [PinJoint3D].
</constant>
<constant name="JOINT_HINGE" value="1" enum="JointType">
- The [Joint] is a [HingeJoint].
+ The [Joint3D] is a [HingeJoint3D].
</constant>
<constant name="JOINT_SLIDER" value="2" enum="JointType">
- The [Joint] is a [SliderJoint].
+ The [Joint3D] is a [SliderJoint3D].
</constant>
<constant name="JOINT_CONE_TWIST" value="3" enum="JointType">
- The [Joint] is a [ConeTwistJoint].
+ The [Joint3D] is a [ConeTwistJoint3D].
</constant>
<constant name="JOINT_6DOF" value="4" enum="JointType">
- The [Joint] is a [Generic6DOFJoint].
+ The [Joint3D] is a [Generic6DOFJoint3D].
</constant>
<constant name="PIN_JOINT_BIAS" value="0" enum="PinJointParam">
The strength with which the pinned objects try to stay in positional relation to each other.
@@ -1286,7 +1286,7 @@
The higher, the stronger.
</constant>
<constant name="PIN_JOINT_IMPULSE_CLAMP" value="2" enum="PinJointParam">
- If above 0, this value is the maximum value for an impulse that this Joint puts on its ends.
+ If above 0, this value is the maximum value for an impulse that this Joint3D puts on its ends.
</constant>
<constant name="HINGE_JOINT_BIAS" value="0" enum="HingeJointParam">
The speed with which the two bodies get pulled together when they move in different directions.
@@ -1389,7 +1389,7 @@
<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 along the swing axis.
- Could be defined as looseness in the [ConeTwistJoint].
+ Could be defined as looseness in the [ConeTwistJoint3D].
If below 0.05, this behavior is locked.
</constant>
<constant name="CONE_TWIST_JOINT_TWIST_SPAN" value="1" enum="ConeTwistJointParam">
@@ -1401,7 +1401,7 @@
The higher, the faster.
</constant>
<constant name="CONE_TWIST_JOINT_SOFTNESS" value="3" enum="ConeTwistJointParam">
- The ease with which the Joint twists, if it's too low, it takes more force to twist the joint.
+ The ease with which the Joint3D twists, if it's too low, it takes more force to twist the joint.
</constant>
<constant name="CONE_TWIST_JOINT_RELAXATION" value="4" enum="ConeTwistJointParam">
Defines, how fast the swing- and twist-speed-difference on both sides gets synced.
@@ -1467,31 +1467,31 @@
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 [WorldMarginShape].
+ The [Shape3D] is a [WorldMarginShape3D].
</constant>
<constant name="SHAPE_RAY" value="1" enum="ShapeType">
- The [Shape] is a [RayShape].
+ The [Shape3D] is a [RayShape3D].
</constant>
<constant name="SHAPE_SPHERE" value="2" enum="ShapeType">
- The [Shape] is a [SphereShape].
+ The [Shape3D] is a [SphereShape3D].
</constant>
<constant name="SHAPE_BOX" value="3" enum="ShapeType">
- The [Shape] is a [BoxShape].
+ The [Shape3D] is a [BoxShape3D].
</constant>
<constant name="SHAPE_CAPSULE" value="4" enum="ShapeType">
- The [Shape] is a [CapsuleShape].
+ The [Shape3D] is a [CapsuleShape3D].
</constant>
<constant name="SHAPE_CYLINDER" value="5" enum="ShapeType">
- The [Shape] is a [CylinderShape].
+ The [Shape3D] is a [CylinderShape3D].
</constant>
<constant name="SHAPE_CONVEX_POLYGON" value="6" enum="ShapeType">
- The [Shape] is a [ConvexPolygonShape].
+ The [Shape3D] is a [ConvexPolygonShape3D].
</constant>
<constant name="SHAPE_CONCAVE_POLYGON" value="7" enum="ShapeType">
- The [Shape] is a [ConcavePolygonShape].
+ The [Shape3D] is a [ConcavePolygonShape3D].
</constant>
<constant name="SHAPE_HEIGHTMAP" value="8" enum="ShapeType">
- The [Shape] is a [HeightMapShape].
+ The [Shape3D] is a [HeightMapShape3D].
</constant>
<constant name="SHAPE_CUSTOM" value="9" enum="ShapeType">
This constant is used internally by the engine. Any attempt to create this kind of shape results in an error.
diff --git a/doc/classes/Physics2DShapeQueryParameters.xml b/doc/classes/PhysicsShapeQueryParameters2D.xml
index 392ccbd10a..9a162dabbb 100644
--- a/doc/classes/Physics2DShapeQueryParameters.xml
+++ b/doc/classes/PhysicsShapeQueryParameters2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DShapeQueryParameters" inherits="Reference" version="4.0">
+<class name="PhysicsShapeQueryParameters2D" inherits="Reference" version="4.0">
<brief_description>
Parameters to be sent to a 2D shape physics query.
</brief_description>
<description>
- This class contains the shape and other parameters for 2D intersection/collision queries. See also [Physics2DShapeQueryResult].
+ This class contains the shape and other parameters for 2D intersection/collision queries. See also [PhysicsShapeQueryResult2D].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/PhysicsShapeQueryParameters.xml b/doc/classes/PhysicsShapeQueryParameters3D.xml
index 829a1d1bf0..6606cfbc59 100644
--- a/doc/classes/PhysicsShapeQueryParameters.xml
+++ b/doc/classes/PhysicsShapeQueryParameters3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicsShapeQueryParameters" inherits="Reference" version="4.0">
+<class name="PhysicsShapeQueryParameters3D" inherits="Reference" version="4.0">
<brief_description>
Parameters to be sent to a 3D shape physics query.
</brief_description>
<description>
- This class contains the shape and other parameters for 3D intersection/collision queries. See also [PhysicsShapeQueryResult].
+ This class contains the shape and other parameters for 3D intersection/collision queries. See also [PhysicsShapeQueryResult3D].
</description>
<tutorials>
</tutorials>
@@ -15,16 +15,16 @@
<argument index="0" name="shape" type="Resource">
</argument>
<description>
- Sets the [Shape] that will be used for collision/intersection queries.
+ Sets the [Shape3D] that will be used for collision/intersection queries.
</description>
</method>
</methods>
<members>
<member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false">
- If [code]true[/code], the query will take [Area]s into account.
+ If [code]true[/code], the query will take [Area3D]s into account.
</member>
<member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true">
- If [code]true[/code], the query will take [PhysicsBody]s into account.
+ If [code]true[/code], the query will take [PhysicsBody3D]s into account.
</member>
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="2147483647">
The physics layer(s) the query will take into account (as a bitmask).
diff --git a/doc/classes/Physics2DShapeQueryResult.xml b/doc/classes/PhysicsShapeQueryResult2D.xml
index 359a716bee..227683cc33 100644
--- a/doc/classes/Physics2DShapeQueryResult.xml
+++ b/doc/classes/PhysicsShapeQueryResult2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DShapeQueryResult" inherits="Reference" version="4.0">
+<class name="PhysicsShapeQueryResult2D" inherits="Reference" version="4.0">
<brief_description>
- Result of a 2D shape query in [Physics2DServer].
+ Result of a 2D shape query in [PhysicsServer2D].
</brief_description>
<description>
- The result of a 2D shape query in [Physics2DServer]. See also [Physics2DShapeQueryParameters].
+ The result of a 2D shape query in [PhysicsServer2D]. See also [PhysicsShapeQueryParameters2D].
</description>
<tutorials>
</tutorials>
@@ -40,7 +40,7 @@
<argument index="0" name="idx" type="int">
</argument>
<description>
- Returns the child index of the object's [Shape] that intersected with the shape at index [code]idx[/code].
+ Returns the child index of the object's [Shape2D] that intersected with the shape at index [code]idx[/code].
</description>
</method>
<method name="get_result_rid" qualifiers="const">
diff --git a/doc/classes/PhysicsShapeQueryResult.xml b/doc/classes/PhysicsShapeQueryResult3D.xml
index ea6dc2c39e..4555c4e242 100644
--- a/doc/classes/PhysicsShapeQueryResult.xml
+++ b/doc/classes/PhysicsShapeQueryResult3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PhysicsShapeQueryResult" inherits="Reference" version="4.0">
+<class name="PhysicsShapeQueryResult3D" inherits="Reference" version="4.0">
<brief_description>
- Result of a 3D shape query in [PhysicsServer].
+ Result of a 3D shape query in [PhysicsServer3D].
</brief_description>
<description>
- The result of a 3D shape query in [PhysicsServer]. See also [PhysicsShapeQueryParameters].
+ The result of a 3D shape query in [PhysicsServer3D]. See also [PhysicsShapeQueryParameters3D].
</description>
<tutorials>
</tutorials>
@@ -40,7 +40,7 @@
<argument index="0" name="idx" type="int">
</argument>
<description>
- Returns the child index of the object's [Shape] that intersected with the shape at index [code]idx[/code].
+ Returns the child index of the object's [Shape3D] that intersected with the shape at index [code]idx[/code].
</description>
</method>
<method name="get_result_rid" qualifiers="const">
diff --git a/doc/classes/Physics2DTestMotionResult.xml b/doc/classes/PhysicsTestMotionResult2D.xml
index 9e8c03580f..301cff2885 100644
--- a/doc/classes/Physics2DTestMotionResult.xml
+++ b/doc/classes/PhysicsTestMotionResult2D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Physics2DTestMotionResult" inherits="Reference" version="4.0">
+<class name="PhysicsTestMotionResult2D" inherits="Reference" version="4.0">
<brief_description>
</brief_description>
<description>
diff --git a/doc/classes/PinJoint2D.xml b/doc/classes/PinJoint2D.xml
index 020babdf40..42155a7f25 100644
--- a/doc/classes/PinJoint2D.xml
+++ b/doc/classes/PinJoint2D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="PinJoint2D" inherits="Joint2D" version="4.0">
<brief_description>
- Pin Joint for 2D shapes.
+ Pin joint for 2D shapes.
</brief_description>
<description>
- Pin Joint for 2D rigid bodies. It pins two bodies (rigid or static) together.
+ Pin joint for 2D rigid bodies. It pins two bodies (rigid or static) together.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/PinJoint.xml b/doc/classes/PinJoint3D.xml
index 78cab4805e..0af1e60839 100644
--- a/doc/classes/PinJoint.xml
+++ b/doc/classes/PinJoint3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PinJoint" inherits="Joint" version="4.0">
+<class name="PinJoint3D" inherits="Joint3D" version="4.0">
<brief_description>
Pin joint for 3D shapes.
</brief_description>
@@ -12,7 +12,7 @@
<method name="get_param" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="PinJoint.Param">
+ <argument index="0" name="param" type="int" enum="PinJoint3D.Param">
</argument>
<description>
Returns the value of the specified parameter.
@@ -21,7 +21,7 @@
<method name="set_param">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="PinJoint.Param">
+ <argument index="0" name="param" type="int" enum="PinJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
@@ -38,7 +38,7 @@
The force with which the pinned objects stay in velocity relation to each other. The higher, the stronger.
</member>
<member name="params/impulse_clamp" type="float" setter="set_param" getter="get_param" default="0.0">
- If above 0, this value is the maximum value for an impulse that this Joint produces.
+ If above 0, this value is the maximum value for an impulse that this Joint3D produces.
</member>
</members>
<constants>
@@ -49,7 +49,7 @@
The force with which the pinned objects stay in velocity relation to each other. The higher, the stronger.
</constant>
<constant name="PARAM_IMPULSE_CLAMP" value="2" enum="Param">
- If above 0, this value is the maximum value for an impulse that this Joint produces.
+ If above 0, this value is the maximum value for an impulse that this Joint3D produces.
</constant>
</constants>
</class>
diff --git a/doc/classes/Popup.xml b/doc/classes/Popup.xml
index 483e262f60..6f77f3371d 100644
--- a/doc/classes/Popup.xml
+++ b/doc/classes/Popup.xml
@@ -1,81 +1,23 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Popup" inherits="Control" version="4.0">
+<class name="Popup" inherits="Window" version="4.0">
<brief_description>
Base container control for popups and dialogs.
</brief_description>
<description>
- Popup is a base [Control] used to show dialogs and popups. It's a subwindow and modal by default (see [Control]) and has helpers for custom popup behavior. All popup methods ensure correct placement within the viewport.
+ Popup is a base [Control] used to show dialogs and popups. It's a subwindow and modal by default (see [Control]) and has helpers for custom popup behavior.
</description>
<tutorials>
</tutorials>
<methods>
- <method name="popup">
- <return type="void">
- </return>
- <argument index="0" name="bounds" type="Rect2" default="Rect2( 0, 0, 0, 0 )">
- </argument>
- <description>
- Popup (show the control in modal form).
- </description>
- </method>
- <method name="popup_centered">
- <return type="void">
- </return>
- <argument index="0" name="size" type="Vector2" default="Vector2( 0, 0 )">
- </argument>
- <description>
- Popup (show the control in modal form) in the center of the screen relative to its current canvas transform, at the current size, or at a size determined by [code]size[/code].
- </description>
- </method>
- <method name="popup_centered_clamped">
- <return type="void">
- </return>
- <argument index="0" name="size" type="Vector2" default="Vector2( 0, 0 )">
- </argument>
- <argument index="1" name="fallback_ratio" type="float" default="0.75">
- </argument>
- <description>
- Popup (show the control in modal form) in the center of the screen relative to the current canvas transform, clamping the size to [code]size[/code], then ensuring the popup is no larger than the viewport size multiplied by [code]fallback_ratio[/code].
- </description>
- </method>
- <method name="popup_centered_minsize">
- <return type="void">
- </return>
- <argument index="0" name="minsize" type="Vector2" default="Vector2( 0, 0 )">
- </argument>
- <description>
- Popup (show the control in modal form) in the center of the screen relative to the current canvas transform, ensuring the size is never smaller than [code]minsize[/code].
- </description>
- </method>
- <method name="popup_centered_ratio">
- <return type="void">
- </return>
- <argument index="0" name="ratio" type="float" default="0.75">
- </argument>
- <description>
- Popup (show the control in modal form) in the center of the screen relative to the current canvas transform, scaled at a ratio of size of the screen.
- </description>
- </method>
- <method name="set_as_minsize">
- <return type="void">
- </return>
- <description>
- Shrink popup to keep to the minimum size of content.
- </description>
- </method>
</methods>
<members>
- <member name="popup_exclusive" type="bool" setter="set_exclusive" getter="is_exclusive" default="false">
- If [code]true[/code], the popup will not be hidden when a click event occurs outside of it, or when it receives the [code]ui_cancel[/code] action event.
- </member>
+ <member name="borderless" type="bool" setter="set_flag" getter="get_flag" override="true" default="true" />
+ <member name="transient" type="bool" setter="set_transient" getter="is_transient" override="true" default="true" />
+ <member name="unresizable" type="bool" setter="set_flag" getter="get_flag" override="true" default="true" />
<member name="visible" type="bool" setter="set_visible" getter="is_visible" override="true" default="false" />
+ <member name="wrap_controls" type="bool" setter="set_wrap_controls" getter="is_wrapping_controls" override="true" default="true" />
</members>
<signals>
- <signal name="about_to_show">
- <description>
- Emitted when a popup is about to be shown. This is often used in [PopupMenu] to clear the list of options then create a new one according to the current context.
- </description>
- </signal>
<signal name="popup_hide">
<description>
Emitted when a popup is hidden.
@@ -83,11 +25,5 @@
</signal>
</signals>
<constants>
- <constant name="NOTIFICATION_POST_POPUP" value="80">
- Notification sent right after the popup is shown.
- </constant>
- <constant name="NOTIFICATION_POPUP_HIDE" value="81">
- Notification sent right after the popup is hidden.
- </constant>
</constants>
</class>
diff --git a/doc/classes/PopupDialog.xml b/doc/classes/PopupDialog.xml
deleted file mode 100644
index a8fd9c1b7d..0000000000
--- a/doc/classes/PopupDialog.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="PopupDialog" inherits="Popup" version="4.0">
- <brief_description>
- Base class for popup dialogs.
- </brief_description>
- <description>
- PopupDialog is a base class for popup dialogs, along with [WindowDialog].
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <constants>
- </constants>
- <theme_items>
- <theme_item name="panel" type="StyleBox">
- Sets a custom [StyleBox] for the panel of the [PopupDialog].
- </theme_item>
- </theme_items>
-</class>
diff --git a/doc/classes/PopupMenu.xml b/doc/classes/PopupMenu.xml
index 8dda33f624..569da5c58b 100644
--- a/doc/classes/PopupMenu.xml
+++ b/doc/classes/PopupMenu.xml
@@ -330,13 +330,6 @@
Returns the tooltip associated with the specified index index [code]idx[/code].
</description>
</method>
- <method name="is_hide_on_window_lose_focus" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the popup will be hidden when the window loses focus or not.
- </description>
- </method>
<method name="is_item_checkable" qualifiers="const">
<return type="bool">
</return>
@@ -404,15 +397,6 @@
[b]Note:[/b] The indices of items after the removed item will be shifted by one.
</description>
</method>
- <method name="set_hide_on_window_lose_focus">
- <return type="void">
- </return>
- <argument index="0" name="enable" type="bool">
- </argument>
- <description>
- Hides the [PopupMenu] when the window loses focus.
- </description>
- </method>
<method name="set_item_accelerator">
<return type="void">
</return>
@@ -604,7 +588,6 @@
<member name="allow_search" type="bool" setter="set_allow_search" getter="get_allow_search" default="false">
If [code]true[/code], allows to navigate [PopupMenu] with letter keys.
</member>
- <member name="focus_mode" type="int" setter="set_focus_mode" getter="get_focus_mode" override="true" enum="Control.FocusMode" default="2" />
<member name="hide_on_checkable_item_selection" type="bool" setter="set_hide_on_checkable_item_selection" getter="is_hide_on_checkable_item_selection" default="true">
If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button is selected.
</member>
diff --git a/doc/classes/PopupPanel.xml b/doc/classes/PopupPanel.xml
index 2e62d09f8f..72045c5559 100644
--- a/doc/classes/PopupPanel.xml
+++ b/doc/classes/PopupPanel.xml
@@ -4,7 +4,7 @@
Class for displaying popups with a panel background.
</brief_description>
<description>
- Class for displaying popups with a panel background. In some cases it might be simpler to use than [Popup], since it provides a configurable background. If you are making windows, better check [WindowDialog].
+ Class for displaying popups with a panel background. In some cases it might be simpler to use than [Popup], since it provides a configurable background. If you are making windows, better check [Window].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Position3D.xml b/doc/classes/Position3D.xml
index 6dce8a91c6..ca61a57483 100644
--- a/doc/classes/Position3D.xml
+++ b/doc/classes/Position3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Position3D" inherits="Spatial" version="4.0">
+<class name="Position3D" inherits="Node3D" version="4.0">
<brief_description>
Generic 3D position hint for editing.
</brief_description>
<description>
- Generic 3D position hint for editing. It's just like a plain [Spatial], but it displays as a cross in the 3D editor at all times.
+ Generic 3D position hint for editing. It's just like a plain [Node3D], but it displays as a cross in the 3D editor at all times.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/ProceduralSky.xml b/doc/classes/ProceduralSky.xml
deleted file mode 100644
index 9a61fac63a..0000000000
--- a/doc/classes/ProceduralSky.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ProceduralSky" inherits="Sky" version="4.0">
- <brief_description>
- Type of [Sky] that is generated procedurally based on user input parameters.
- </brief_description>
- <description>
- ProceduralSky provides a way to create an effective background quickly by defining procedural parameters for the sun, the sky and the ground. The sky and ground are very similar, they are defined by a color at the horizon, another color, and finally an easing curve to interpolate between these two colors. Similarly, the sun is described by a position in the sky, a color, and an easing curve. However, the sun also defines a minimum and maximum angle, these two values define at what distance the easing curve begins and ends from the sun, and thus end up defining the size of the sun in the sky.
- The ProceduralSky is updated on the CPU after the parameters change. It is stored in a texture and then displayed as a background in the scene. This makes it relatively unsuitable for real-time updates during gameplay. However, with a small enough texture size, it can still be updated relatively frequently, as it is updated on a background thread when multi-threading is available.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <members>
- <member name="ground_bottom_color" type="Color" setter="set_ground_bottom_color" getter="get_ground_bottom_color" default="Color( 0.156863, 0.184314, 0.211765, 1 )">
- Color of the ground at the bottom.
- </member>
- <member name="ground_curve" type="float" setter="set_ground_curve" getter="get_ground_curve" default="0.02">
- How quickly the [member ground_horizon_color] fades into the [member ground_bottom_color].
- </member>
- <member name="ground_energy" type="float" setter="set_ground_energy" getter="get_ground_energy" default="1.0">
- Amount of energy contribution from the ground.
- </member>
- <member name="ground_horizon_color" type="Color" setter="set_ground_horizon_color" getter="get_ground_horizon_color" default="Color( 0.423529, 0.396078, 0.372549, 1 )">
- Color of the ground at the horizon.
- </member>
- <member name="sky_curve" type="float" setter="set_sky_curve" getter="get_sky_curve" default="0.09">
- How quickly the [member sky_horizon_color] fades into the [member sky_top_color].
- </member>
- <member name="sky_energy" type="float" setter="set_sky_energy" getter="get_sky_energy" default="1.0">
- Amount of energy contribution from the sky.
- </member>
- <member name="sky_horizon_color" type="Color" setter="set_sky_horizon_color" getter="get_sky_horizon_color" default="Color( 0.839216, 0.917647, 0.980392, 1 )">
- Color of the sky at the horizon.
- </member>
- <member name="sky_top_color" type="Color" setter="set_sky_top_color" getter="get_sky_top_color" default="Color( 0.647059, 0.839216, 0.945098, 1 )">
- Color of the sky at the top.
- </member>
- <member name="sun_angle_max" type="float" setter="set_sun_angle_max" getter="get_sun_angle_max" default="100.0">
- Distance from center of sun where it fades out completely.
- </member>
- <member name="sun_angle_min" type="float" setter="set_sun_angle_min" getter="get_sun_angle_min" default="1.0">
- Distance from sun where it goes from solid to starting to fade.
- </member>
- <member name="sun_color" type="Color" setter="set_sun_color" getter="get_sun_color" default="Color( 1, 1, 1, 1 )">
- The sun's color.
- </member>
- <member name="sun_curve" type="float" setter="set_sun_curve" getter="get_sun_curve" default="0.05">
- How quickly the sun fades away between [member sun_angle_min] and [member sun_angle_max].
- </member>
- <member name="sun_energy" type="float" setter="set_sun_energy" getter="get_sun_energy" default="1.0">
- Amount of energy contribution from the sun.
- </member>
- <member name="sun_latitude" type="float" setter="set_sun_latitude" getter="get_sun_latitude" default="35.0">
- The sun's height using polar coordinates.
- </member>
- <member name="sun_longitude" type="float" setter="set_sun_longitude" getter="get_sun_longitude" default="0.0">
- The direction of the sun using polar coordinates.
- </member>
- <member name="texture_size" type="int" setter="set_texture_size" getter="get_texture_size" enum="ProceduralSky.TextureSize" default="2">
- Size of [Texture2D] that the ProceduralSky will generate. The size is set using [enum TextureSize].
- </member>
- </members>
- <constants>
- <constant name="TEXTURE_SIZE_256" value="0" enum="TextureSize">
- Sky texture will be 256x128.
- </constant>
- <constant name="TEXTURE_SIZE_512" value="1" enum="TextureSize">
- Sky texture will be 512x256.
- </constant>
- <constant name="TEXTURE_SIZE_1024" value="2" enum="TextureSize">
- Sky texture will be 1024x512. This is the default size.
- </constant>
- <constant name="TEXTURE_SIZE_2048" value="3" enum="TextureSize">
- Sky texture will be 2048x1024.
- </constant>
- <constant name="TEXTURE_SIZE_4096" value="4" enum="TextureSize">
- Sky texture will be 4096x2048.
- </constant>
- <constant name="TEXTURE_SIZE_MAX" value="5" enum="TextureSize">
- Represents the size of the [enum TextureSize] enum.
- </constant>
- </constants>
-</class>
diff --git a/doc/classes/ProceduralSkyMaterial.xml b/doc/classes/ProceduralSkyMaterial.xml
new file mode 100644
index 0000000000..70e82d248c
--- /dev/null
+++ b/doc/classes/ProceduralSkyMaterial.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="ProceduralSkyMaterial" inherits="Material" version="4.0">
+ <brief_description>
+ A [Material] used with [Sky] to generate a background based on user input parameters.
+ </brief_description>
+ <description>
+ ProceduralSkyMaterial provides a way to create an effective background quickly by defining procedural parameters for the sun, the sky and the ground. The sky and ground are very similar, they are defined by a color at the horizon, another color, and finally an easing curve to interpolate between these two colors. Similarly, the sun is described by a position in the sky, a color, and an easing curve. However, the sun also defines a minimum and maximum angle, these two values define at what distance the easing curve begins and ends from the sun, and thus end up defining the size of the sun in the sky.
+ The [ProceduralSkyMaterial] uses a lightweight shader to draw the sky and is thus suited for real time updates. When you do not need a quick sky that is not realistic, this is a good option.
+ The [ProceduralSkyMaterial] supports up to 4 suns. Each sun takes its color, energy, and direction from the corresponding [DirectionalLight3D] in the scene.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <members>
+ <member name="ground_bottom_color" type="Color" setter="set_ground_bottom_color" getter="get_ground_bottom_color" default="Color( 0.12, 0.12, 0.13, 1 )">
+ Color of the ground at the bottom. Blends with [member ground_horizon_color].
+ </member>
+ <member name="ground_curve" type="float" setter="set_ground_curve" getter="get_ground_curve" default="0.02">
+ How quickly the [member ground_horizon_color] fades into the [member ground_bottom_color].
+ </member>
+ <member name="ground_energy" type="float" setter="set_ground_energy" getter="get_ground_energy" default="1.0">
+ Amount of energy contribution from the ground.
+ </member>
+ <member name="ground_horizon_color" type="Color" setter="set_ground_horizon_color" getter="get_ground_horizon_color" default="Color( 0.37, 0.33, 0.31, 1 )">
+ Color of the ground at the horizon. Blends with [member ground_bottom_color].
+ </member>
+ <member name="sky_curve" type="float" setter="set_sky_curve" getter="get_sky_curve" default="0.09">
+ How quickly the [member sky_horizon_color] fades into the [member sky_top_color].
+ </member>
+ <member name="sky_energy" type="float" setter="set_sky_energy" getter="get_sky_energy" default="1.0">
+ Amount of energy contribution from the sky.
+ </member>
+ <member name="sky_horizon_color" type="Color" setter="set_sky_horizon_color" getter="get_sky_horizon_color" default="Color( 0.55, 0.69, 0.81, 1 )">
+ Color of the sky at the horizon. Blends with [member sky_top_color].
+ </member>
+ <member name="sky_top_color" type="Color" setter="set_sky_top_color" getter="get_sky_top_color" default="Color( 0.35, 0.46, 0.71, 1 )">
+ Color of the sky at the top. Blends with [member sky_horizon_color].
+ </member>
+ <member name="sun_angle_max" type="float" setter="set_sun_angle_max" getter="get_sun_angle_max" default="100.0">
+ Distance from center of sun where it fades out completely.
+ </member>
+ <member name="sun_angle_min" type="float" setter="set_sun_angle_min" getter="get_sun_angle_min" default="1.0">
+ Distance from sun where it goes from solid to starting to fade.
+ </member>
+ <member name="sun_curve" type="float" setter="set_sun_curve" getter="get_sun_curve" default="0.05">
+ How quickly the sun fades away between [member sun_angle_min] and [member sun_angle_max].
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index 76674dcef8..67a033daca 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -202,7 +202,7 @@
Icon used for the project, set when project loads. Exporters will also use this icon when possible.
</member>
<member name="application/config/macos_native_icon" type="String" setter="" getter="" default="&quot;&quot;">
- Icon set in [code].icns[/code] format used on macOS to set the game's icon. This is done automatically on start by calling [method OS.set_native_icon].
+ Icon set in [code].icns[/code] format used on macOS to set the game's icon. This is done automatically on start by calling [method DisplayServer.set_native_icon].
</member>
<member name="application/config/name" type="String" setter="" getter="" default="&quot;&quot;">
The project's name. It is used both by the Project Manager and by exporters. The project name can be translated by translating its value in localization files.
@@ -215,7 +215,7 @@
If [code]true[/code], the project will save user data to its own user directory (see [member application/config/custom_user_dir_name]). This setting is only effective on desktop platforms. A name must be set in the [member application/config/custom_user_dir_name] setting for this to take effect. If [code]false[/code], the project will save user data to [code](OS user data directory)/Godot/app_userdata/(project name)[/code].
</member>
<member name="application/config/windows_native_icon" type="String" setter="" getter="" default="&quot;&quot;">
- Icon set in [code].ico[/code] format used on Windows to set the game's icon. This is done automatically on start by calling [method OS.set_native_icon].
+ Icon set in [code].ico[/code] format used on Windows to set the game's icon. This is done automatically on start by calling [method DisplayServer.set_native_icon].
</member>
<member name="application/run/disable_stderr" type="bool" setter="" getter="" default="false">
If [code]true[/code], disables printing to standard error in an exported build.
@@ -426,12 +426,6 @@
<member name="display/window/ios/hide_home_indicator" type="bool" setter="" getter="" default="true">
If [code]true[/code], the home indicator is hidden automatically. This only affects iOS devices without a physical home button.
</member>
- <member name="display/window/per_pixel_transparency/allowed" type="bool" setter="" getter="" default="false">
- If [code]true[/code], allows per-pixel transparency in a desktop window. This affects performance, so leave it on [code]false[/code] unless you need it.
- </member>
- <member name="display/window/per_pixel_transparency/enabled" type="bool" setter="" getter="" default="false">
- Sets the window background to transparent when it starts.
- </member>
<member name="display/window/size/always_on_top" type="bool" setter="" getter="" default="false">
Force the window to be always on top.
</member>
@@ -898,7 +892,7 @@
[b]Note:[/b] This property is only read when the project starts. To change the default gravity at runtime, use the following code sample:
[codeblock]
# Set the default gravity strength to 98.
- Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), Physics2DServer.AREA_PARAM_GRAVITY, 98)
+ PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), PhysicsServer2D.AREA_PARAM_GRAVITY, 98)
[/codeblock]
</member>
<member name="physics/2d/default_gravity_vector" type="Vector2" setter="" getter="" default="Vector2( 0, 1 )">
@@ -906,7 +900,7 @@
[b]Note:[/b] This property is only read when the project starts. To change the default gravity vector at runtime, use the following code sample:
[codeblock]
# Set the default gravity direction to `Vector2(0, 1)`.
- Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), Physics2DServer.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))
+ PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))
[/codeblock]
</member>
<member name="physics/2d/default_linear_damp" type="float" setter="" getter="" default="0.1">
@@ -917,23 +911,23 @@
</member>
<member name="physics/2d/physics_engine" type="String" setter="" getter="" default="&quot;DEFAULT&quot;">
Sets which physics engine to use for 2D physics.
- "DEFAULT" and "GodotPhysics" are the same, as there is currently no alternative 2D physics server implemented.
+ "DEFAULT" and "GodotPhysics2D" are the same, as there is currently no alternative 2D physics server implemented.
</member>
<member name="physics/2d/sleep_threshold_angular" type="float" setter="" getter="" default="0.139626">
- Threshold angular velocity under which a 2D physics body will be considered inactive. See [constant Physics2DServer.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD].
+ Threshold angular velocity under which a 2D physics body will be considered inactive. See [constant PhysicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD].
</member>
<member name="physics/2d/sleep_threshold_linear" type="float" setter="" getter="" default="2.0">
- Threshold linear velocity under which a 2D physics body will be considered inactive. See [constant Physics2DServer.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD].
+ Threshold linear velocity under which a 2D physics body will be considered inactive. See [constant PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD].
</member>
<member name="physics/2d/thread_model" type="int" setter="" getter="" default="1">
Sets whether physics is run on the main thread or a separate one. Running the server on a thread increases performance, but restricts API access to only physics process.
[b]Warning:[/b] As of Godot 3.2, there are mixed reports about the use of a Multi-Threaded thread model for physics. Be sure to assess whether it does give you extra performance and no regressions when using it.
</member>
<member name="physics/2d/time_before_sleep" type="float" setter="" getter="" default="0.5">
- Time (in seconds) of inactivity before which a 2D physics body will put to sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP].
+ Time (in seconds) of inactivity before which a 2D physics body will put to sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP].
</member>
<member name="physics/3d/active_soft_world" type="bool" setter="" getter="" default="true">
- Sets whether the 3D physics world will be created with support for [SoftBody] physics. Only applies to the Bullet physics engine.
+ Sets whether the 3D physics world will be created with support for [SoftBody3D] physics. Only applies to the Bullet physics engine.
</member>
<member name="physics/3d/default_angular_damp" type="float" setter="" getter="" default="0.1">
The default angular damp in 3D.
@@ -943,7 +937,7 @@
[b]Note:[/b] This property is only read when the project starts. To change the default gravity at runtime, use the following code sample:
[codeblock]
# Set the default gravity strength to 9.8.
- PhysicsServer.area_set_param(get_viewport().find_world().get_space(), PhysicsServer.AREA_PARAM_GRAVITY, 9.8)
+ PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)
[/codeblock]
</member>
<member name="physics/3d/default_gravity_vector" type="Vector3" setter="" getter="" default="Vector3( 0, -1, 0 )">
@@ -951,7 +945,7 @@
[b]Note:[/b] This property is only read when the project starts. To change the default gravity vector at runtime, use the following code sample:
[codeblock]
# Set the default gravity direction to `Vector3(0, -1, 0)`.
- PhysicsServer.area_set_param(get_viewport().find_world().get_space(), PhysicsServer.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))
+ PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))
[/codeblock]
</member>
<member name="physics/3d/default_linear_damp" type="float" setter="" getter="" default="0.1">
@@ -959,7 +953,7 @@
</member>
<member name="physics/3d/physics_engine" type="String" setter="" getter="" default="&quot;DEFAULT&quot;">
Sets which physics engine to use for 3D physics.
- "DEFAULT" is currently the [url=https://bulletphysics.org]Bullet[/url] physics engine. The "GodotPhysics" engine is still supported as an alternative.
+ "DEFAULT" is currently the [url=https://bulletphysics.org]Bullet[/url] physics engine. The "GodotPhysics3D" engine is still supported as an alternative.
</member>
<member name="physics/common/enable_object_picking" type="bool" setter="" getter="" default="true">
Enables [member Viewport.physics_object_picking] on the root viewport.
@@ -973,7 +967,7 @@
[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].
+ 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 RenderingServer.set_default_clear_color].
</member>
<member name="rendering/environment/default_environment" type="String" setter="" getter="" default="&quot;&quot;">
[Environment] that will be used as a fallback environment in case a scene does not specify its own environment. The default environment is loaded in at scene load time regardless of whether you have set an environment or not. If you do not rely on the fallback environment, it is best to delete [code]default_env.tres[/code], or to specify a different default environment here.
@@ -1000,9 +994,17 @@
<member name="rendering/quality/directional_shadow/size.mobile" type="int" setter="" getter="" default="2048">
Lower-end override for [member rendering/quality/directional_shadow/size] on mobile devices, due to performance concerns or driver support.
</member>
+ <member name="rendering/quality/directional_shadow/soft_shadow_quality" type="int" setter="" getter="" default="2">
+ Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality settings use more samples when reading from shadow maps and are thus slower. Low quality settings may result in shadows looking grainy.
+ </member>
+ <member name="rendering/quality/directional_shadow/soft_shadow_quality.mobile" type="int" setter="" getter="" default="0">
+ Lower-end override for [member rendering/quality/directional_shadow/soft_shadow_quality] on mobile devices, due to performance concerns or driver support.
+ </member>
<member name="rendering/quality/driver/driver_name" type="String" setter="" getter="" default="&quot;Vulkan&quot;">
The video driver to use ("GLES2" or "Vulkan").
- [b]Note:[/b] The backend in use can be overridden at runtime via the [code]--video-driver[/code] command line argument. In such cases, this property is not updated, so use [method OS.get_current_video_driver] to query it at run-time.
+ [b]Note:[/b] The backend in use can be overridden at runtime via the [code]--rendering-driver[/code] command line argument.
+ [b]FIXME:[/b] No longer valid after DisplayServer split:
+ In such cases, this property is not updated, so use [code]OS.get_current_video_driver[/code] to query it at run-time.
</member>
<member name="rendering/quality/filters/depth_of_field_bokeh_quality" type="int" setter="" getter="" default="2">
</member>
@@ -1027,6 +1029,10 @@
</member>
<member name="rendering/quality/gi_probes/quality" type="int" setter="" getter="" default="1">
</member>
+ <member name="rendering/quality/glow/upscale_mode" type="int" setter="" getter="" default="1">
+ </member>
+ <member name="rendering/quality/glow/upscale_mode.mobile" type="int" setter="" getter="" default="0">
+ </member>
<member name="rendering/quality/intended_usage/framebuffer_allocation" type="int" setter="" getter="" default="2">
Strategy used for framebuffer allocation. The simpler it is, the less resources it uses (but the less features it supports). If set to "2D Without Sampling" or "3D Without Effects", sample buffers will not be allocated. This means [code]SCREEN_TEXTURE[/code] and [code]DEPTH_TEXTURE[/code] will not be available in shaders and post-processing effects will not be available in the [Environment].
</member>
@@ -1036,7 +1042,7 @@
<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="128">
+ <member name="rendering/quality/reflection_atlas/reflection_size" type="int" setter="" getter="" default="256">
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">
@@ -1051,7 +1057,7 @@
<member name="rendering/quality/reflections/ggx_samples.mobile" type="int" setter="" getter="" default="128">
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">
+ <member name="rendering/quality/reflections/roughness_layers" type="int" setter="" getter="" default="8">
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">
@@ -1060,6 +1066,8 @@
<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.
</member>
+ <member name="rendering/quality/screen_space_reflection/roughness_quality" type="int" setter="" getter="" default="1">
+ </member>
<member name="rendering/quality/shading/force_blinn_over_ggx" type="bool" setter="" getter="" default="false">
If [code]true[/code], uses faster but lower-quality Blinn model to generate blurred reflections instead of the GGX model.
</member>
@@ -1096,16 +1104,22 @@
<member name="rendering/quality/shadow_atlas/size.mobile" type="int" setter="" getter="" default="2048">
Lower-end override for [member rendering/quality/shadow_atlas/size] on mobile devices, due to performance concerns or driver support.
</member>
- <member name="rendering/quality/shadows/filter_mode" type="int" setter="" getter="" default="1">
- Shadow filter mode. Higher-quality settings result in smoother shadows that flicker less when moving. "Disabled" is the fastest option, but also has the lowest quality. "PCF5" is smoother but is also slower. "PCF13" is the smoothest option, but is also the slowest.
+ <member name="rendering/quality/shadows/soft_shadow_quality" type="int" setter="" getter="" default="2">
+ Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. Higher quality settings use more samples when reading from shadow maps and are thus slower. Low quality settings may result in shadows looking grainy.
</member>
- <member name="rendering/quality/shadows/filter_mode.mobile" type="int" setter="" getter="" default="0">
- Lower-end override for [member rendering/quality/shadows/filter_mode] on mobile devices, due to performance concerns or driver support.
+ <member name="rendering/quality/shadows/soft_shadow_quality.mobile" type="int" setter="" getter="" default="0">
+ Lower-end override for [member rendering/quality/shadows/soft_shadow_quality] on mobile devices, due to performance concerns or driver support.
</member>
<member name="rendering/quality/ssao/half_size" type="bool" setter="" getter="" default="false">
</member>
<member name="rendering/quality/ssao/quality" type="int" setter="" getter="" default="1">
</member>
+ <member name="rendering/quality/subsurface_scattering/subsurface_scattering_depth_scale" type="float" setter="" getter="" default="0.01">
+ </member>
+ <member name="rendering/quality/subsurface_scattering/subsurface_scattering_quality" type="int" setter="" getter="" default="1">
+ </member>
+ <member name="rendering/quality/subsurface_scattering/subsurface_scattering_scale" type="float" setter="" getter="" default="0.05">
+ </member>
<member name="rendering/threads/thread_model" type="int" setter="" getter="" default="1">
Thread model for rendering. Rendering on a thread can vastly improve performance, but synchronizing to the main thread can cause a bit more jitter.
</member>
diff --git a/doc/classes/ProximityGroup.xml b/doc/classes/ProximityGroup3D.xml
index dee1a3daf0..1714c1ec8d 100644
--- a/doc/classes/ProximityGroup.xml
+++ b/doc/classes/ProximityGroup3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ProximityGroup" inherits="Spatial" version="4.0">
+<class name="ProximityGroup3D" inherits="Node3D" version="4.0">
<brief_description>
General-purpose proximity detection node.
</brief_description>
@@ -21,7 +21,7 @@
</method>
</methods>
<members>
- <member name="dispatch_mode" type="int" setter="set_dispatch_mode" getter="get_dispatch_mode" enum="ProximityGroup.DispatchMode" default="0">
+ <member name="dispatch_mode" type="int" setter="set_dispatch_mode" getter="get_dispatch_mode" enum="ProximityGroup3D.DispatchMode" default="0">
</member>
<member name="grid_radius" type="Vector3" setter="set_grid_radius" getter="get_grid_radius" default="Vector3( 1, 1, 1 )">
</member>
diff --git a/doc/classes/RID.xml b/doc/classes/RID.xml
index 77c608fccb..644c427120 100644
--- a/doc/classes/RID.xml
+++ b/doc/classes/RID.xml
@@ -4,7 +4,7 @@
Handle for a [Resource]'s unique ID.
</brief_description>
<description>
- The RID type is used to access the unique integer ID of a resource. They are opaque, which means they do not grant access to the associated resource by themselves. They are used by and with the low-level Server classes such as [VisualServer].
+ The RID type is used to access the unique integer ID of a resource. They are opaque, which means they do not grant access to the associated resource by themselves. They are used by and with the low-level Server classes such as [RenderingServer].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/RayCast.xml b/doc/classes/RayCast3D.xml
index 65f632ba74..08c6d6f40c 100644
--- a/doc/classes/RayCast.xml
+++ b/doc/classes/RayCast3D.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="RayCast" inherits="Spatial" version="4.0">
+<class name="RayCast3D" inherits="Node3D" version="4.0">
<brief_description>
Query the closest object intersecting a ray.
</brief_description>
<description>
A RayCast represents a line from its origin to its destination position, [code]cast_to[/code]. It is used to query the 3D space in order to find the closest object along the path of the ray.
- RayCast can ignore some objects by adding them to the exception list via [code]add_exception[/code] or by setting proper filtering with collision layers and masks.
- RayCast can be configured to report collisions with [Area]s ([member collide_with_areas]) and/or [PhysicsBody]s ([member collide_with_bodies]).
+ RayCast3D can ignore some objects by adding them to the exception list via [code]add_exception[/code] or by setting proper filtering with collision layers and masks.
+ RayCast3D can be configured to report collisions with [Area3D]s ([member collide_with_areas]) and/or [PhysicsBody3D]s ([member collide_with_bodies]).
Only enabled raycasts will be able to query the space and report collisions.
- RayCast calculates intersection every physics frame (see [Node]), and the result is cached so it can be used later until the next frame. If multiple queries are required between physics frames (or during the same frame), use [method force_raycast_update] after adjusting the raycast.
+ RayCast3D calculates intersection every physics frame (see [Node]), and the result is cached so it can be used later until the next frame. If multiple queries are required between physics frames (or during the same frame), use [method force_raycast_update] after adjusting the raycast.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html</link>
@@ -130,10 +130,10 @@
The ray's destination point, relative to the RayCast's [code]position[/code].
</member>
<member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false">
- If [code]true[/code], collision with [Area]s will be reported.
+ If [code]true[/code], collision with [Area3D]s will be reported.
</member>
<member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true">
- If [code]true[/code], collision with [PhysicsBody]s will be reported.
+ If [code]true[/code], collision with [PhysicsBody3D]s will be reported.
</member>
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="1">
The ray's collision mask. Only objects in at least one collision layer enabled in the mask will be detected.
@@ -142,7 +142,7 @@
If [code]true[/code], collisions will be reported.
</member>
<member name="exclude_parent" type="bool" setter="set_exclude_parent_body" getter="get_exclude_parent_body" default="true">
- If [code]true[/code], collisions will be ignored for this RayCast's immediate parent.
+ If [code]true[/code], collisions will be ignored for this RayCast3D's immediate parent.
</member>
</members>
<constants>
diff --git a/doc/classes/RayShape.xml b/doc/classes/RayShape3D.xml
index 87a642f779..9839044c30 100644
--- a/doc/classes/RayShape.xml
+++ b/doc/classes/RayShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="RayShape" inherits="Shape" version="4.0">
+<class name="RayShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Ray shape for 3D collisions.
</brief_description>
<description>
- Ray shape for 3D collisions, which can be set into a [PhysicsBody] or [Area]. A ray is not really a collision body; instead, it tries to separate itself from whatever is touching its far endpoint. It's often useful for characters.
+ Ray shape for 3D collisions, which can be set into a [PhysicsBody3D] or [Area3D]. A ray is not really a collision body; instead, it tries to separate itself from whatever is touching its far endpoint. It's often useful for characters.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/ReflectionProbe.xml b/doc/classes/ReflectionProbe.xml
index e138af6841..84f87c3e71 100644
--- a/doc/classes/ReflectionProbe.xml
+++ b/doc/classes/ReflectionProbe.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ReflectionProbe" inherits="VisualInstance" version="4.0">
+<class name="ReflectionProbe" inherits="VisualInstance3D" version="4.0">
<brief_description>
Captures its surroundings to create reflections.
</brief_description>
@@ -17,7 +17,7 @@
If [code]true[/code], enables box projection. This makes reflections look more correct in rectangle-shaped rooms by offsetting the reflection center depending on the camera's location.
</member>
<member name="cull_mask" type="int" setter="set_cull_mask" getter="get_cull_mask" default="1048575">
- Sets the cull mask which determines what objects are drawn by this probe. Every [VisualInstance] with a layer included in this cull mask will be rendered by the probe. It is best to only include large objects which are likely to take up a lot of space in the reflection in order to save on rendering cost.
+ Sets the cull mask which determines what objects are drawn by this probe. Every [VisualInstance3D] with a layer included in this cull mask will be rendered by the probe. It is best to only include large objects which are likely to take up a lot of space in the reflection in order to save on rendering cost.
</member>
<member name="enable_shadows" type="bool" setter="set_enable_shadows" getter="are_shadows_enabled" default="false">
If [code]true[/code], computes shadows in the reflection probe. This makes the reflection probe slower to render; you may want to disable this if using the [constant UPDATE_ALWAYS] [member update_mode].
diff --git a/doc/classes/RemoteTransform.xml b/doc/classes/RemoteTransform3D.xml
index feb6ac1841..bd3da2aea9 100644
--- a/doc/classes/RemoteTransform.xml
+++ b/doc/classes/RemoteTransform3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="RemoteTransform" inherits="Spatial" version="4.0">
+<class name="RemoteTransform3D" inherits="Node3D" version="4.0">
<brief_description>
- RemoteTransform pushes its own [Transform] to another [Spatial] derived Node in the scene.
+ RemoteTransform3D pushes its own [Transform] to another [Node3D] derived Node in the scene.
</brief_description>
<description>
- RemoteTransform pushes its own [Transform] to another [Spatial] derived Node (called the remote node) in the scene.
+ RemoteTransform3D pushes its own [Transform] to another [Node3D] derived Node (called the remote node) in the scene.
It can be set to update another Node's position, rotation and/or scale. It can use either global or local coordinates.
</description>
<tutorials>
@@ -14,13 +14,13 @@
<return type="void">
</return>
<description>
- [RemoteTransform] caches the remote node. It may not notice if the remote node disappears; [method force_update_cache] forces it to update the cache again.
+ [RemoteTransform3D] caches the remote node. It may not notice if the remote node disappears; [method force_update_cache] forces it to update the cache again.
</description>
</method>
</methods>
<members>
<member name="remote_path" type="NodePath" setter="set_remote_node" getter="get_remote_node" default="NodePath(&quot;&quot;)">
- The [NodePath] to the remote node, relative to the RemoteTransform's position in the scene.
+ The [NodePath] to the remote node, relative to the RemoteTransform3D's position in the scene.
</member>
<member name="update_position" type="bool" setter="set_update_position" getter="get_update_position" default="true">
If [code]true[/code], the remote node's position is updated.
diff --git a/doc/classes/VisualServer.xml b/doc/classes/RenderingServer.xml
index ca2058ddbb..bfdcf1bb79 100644
--- a/doc/classes/VisualServer.xml
+++ b/doc/classes/RenderingServer.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisualServer" inherits="Object" version="4.0">
+<class name="RenderingServer" inherits="Object" version="4.0">
<brief_description>
Server for anything visible.
</brief_description>
@@ -9,7 +9,7 @@
The visual server can be used to bypass the scene system entirely.
Resources are created using the [code]*_create[/code] functions.
All objects are drawn to a viewport. You can use the [Viewport] attached to the [SceneTree] or you can create one yourself with [method viewport_create]. When using a custom scenario or canvas, the scenario or canvas needs to be attached to the viewport using [method viewport_set_scenario] or [method viewport_attach_canvas].
- In 3D, all visual objects must be associated with a scenario. The scenario is a visual representation of the world. If accessing the visual server from a running game, the scenario can be accessed from the scene tree from any [Spatial] node with [method Spatial.get_world]. Otherwise, a scenario can be created with [method scenario_create].
+ In 3D, all visual objects must be associated with a scenario. The scenario is a visual representation of the world. If accessing the visual server from a running game, the scenario can be accessed from the scene tree from any [Node3D] node with [method Node3D.get_world]. Otherwise, a scenario can be created with [method scenario_create].
Similarly in 2D, a canvas is needed to draw all canvas items.
In 3D, all visible objects are comprised of a resource and an instance. A resource can be a mesh, a particle system, a light, or any other 3D object. In order to be visible resources must be attached to an instance using [method instance_set_base]. The instance must also be attached to the scenario using [method instance_set_scenario] in order to be visible.
In 2D, all visible objects are some form of canvas item. In order to be visible, a canvas item needs to be the child of a canvas attached to a viewport, or it needs to be the child of another canvas item that is eventually attached to the canvas.
@@ -52,8 +52,8 @@
<return type="RID">
</return>
<description>
- Creates a camera and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]camera_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a camera and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]camera_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="camera_set_cull_mask">
@@ -64,7 +64,7 @@
<argument index="1" name="layers" type="int">
</argument>
<description>
- Sets the cull mask associated with this camera. The cull mask describes which 3D layers are rendered by this camera. Equivalent to [member Camera.cull_mask].
+ Sets the cull mask associated with this camera. The cull mask describes which 3D layers are rendered by this camera. Equivalent to [member Camera3D.cull_mask].
</description>
</method>
<method name="camera_set_environment">
@@ -75,7 +75,7 @@
<argument index="1" name="env" type="RID">
</argument>
<description>
- Sets the environment used by this camera. Equivalent to [member Camera.environment].
+ Sets the environment used by this camera. Equivalent to [member Camera3D.environment].
</description>
</method>
<method name="camera_set_frustum">
@@ -144,15 +144,15 @@
<argument index="1" name="enable" type="bool">
</argument>
<description>
- If [code]true[/code], preserves the horizontal aspect ratio which is equivalent to [constant Camera.KEEP_WIDTH]. If [code]false[/code], preserves the vertical aspect ratio which is equivalent to [constant Camera.KEEP_HEIGHT].
+ If [code]true[/code], preserves the horizontal aspect ratio which is equivalent to [constant Camera3D.KEEP_WIDTH]. If [code]false[/code], preserves the vertical aspect ratio which is equivalent to [constant Camera3D.KEEP_HEIGHT].
</description>
</method>
<method name="canvas_create">
<return type="RID">
</return>
<description>
- Creates a canvas and returns the assigned [RID]. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a canvas and returns the assigned [RID]. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="canvas_item_clear">
@@ -247,8 +247,8 @@
<return type="RID">
</return>
<description>
- Creates a canvas light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_light_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a canvas light and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_light_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="canvas_light_occluder_attach_to_canvas">
@@ -266,8 +266,8 @@
<return type="RID">
</return>
<description>
- Creates a light occluder and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_light_ocluder_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a light occluder and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_light_ocluder_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="canvas_light_occluder_set_enabled">
@@ -398,7 +398,7 @@
</return>
<argument index="0" name="light" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="VisualServer.CanvasLightMode">
+ <argument index="1" name="mode" type="int" enum="RenderingServer.CanvasLightMode">
</argument>
<description>
The mode of the light, see [enum CanvasLightMode] constants.
@@ -453,7 +453,7 @@
</return>
<argument index="0" name="light" type="RID">
</argument>
- <argument index="1" name="filter" type="int" enum="VisualServer.CanvasLightShadowFilter">
+ <argument index="1" name="filter" type="int" enum="RenderingServer.CanvasLightShadowFilter">
</argument>
<description>
Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] constants.
@@ -520,8 +520,8 @@
<return type="RID">
</return>
<description>
- Creates a new light occluder polygon and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_occluder_polygon_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a new light occluder polygon and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]canvas_occluder_polygon_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="canvas_occluder_polygon_set_cull_mode">
@@ -529,7 +529,7 @@
</return>
<argument index="0" name="occluder_polygon" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="VisualServer.CanvasOccluderPolygonCullMode">
+ <argument index="1" name="mode" type="int" enum="RenderingServer.CanvasOccluderPolygonCullMode">
</argument>
<description>
Sets an occluder polygons cull mode. See [enum CanvasOccluderPolygonCullMode] constants.
@@ -587,8 +587,8 @@
<return type="RID">
</return>
<description>
- Creates a directional light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most [code]light_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a directional light and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID can be used in most [code]light_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this directional light to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -596,8 +596,8 @@
<return type="RID">
</return>
<description>
- Creates an environment and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]environment_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates an environment and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]environment_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="environment_set_adjustment">
@@ -626,13 +626,13 @@
</argument>
<argument index="1" name="color" type="Color">
</argument>
- <argument index="2" name="ambient" type="int" enum="VisualServer.EnvironmentAmbientSource" default="0">
+ <argument index="2" name="ambient" type="int" enum="RenderingServer.EnvironmentAmbientSource" default="0">
</argument>
<argument index="3" name="energy" type="float" default="1.0">
</argument>
<argument index="4" name="sky_contibution" type="float" default="0.0">
</argument>
- <argument index="5" name="reflection_source" type="int" enum="VisualServer.EnvironmentReflectionSource" default="0">
+ <argument index="5" name="reflection_source" type="int" enum="RenderingServer.EnvironmentReflectionSource" default="0">
</argument>
<argument index="6" name="ao_color" type="Color" default="Color( 0, 0, 0, 1 )">
</argument>
@@ -644,7 +644,7 @@
</return>
<argument index="0" name="env" type="RID">
</argument>
- <argument index="1" name="bg" type="int" enum="VisualServer.EnvironmentBG">
+ <argument index="1" name="bg" type="int" enum="RenderingServer.EnvironmentBG">
</argument>
<description>
Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment.background_mode].
@@ -755,7 +755,7 @@
</argument>
<argument index="6" name="bloom_threshold" type="float">
</argument>
- <argument index="7" name="blend_mode" type="int" enum="VisualServer.EnvironmentGlowBlendMode">
+ <argument index="7" name="blend_mode" type="int" enum="RenderingServer.EnvironmentGlowBlendMode">
</argument>
<argument index="8" name="hdr_bleed_threshold" type="float">
</argument>
@@ -763,8 +763,6 @@
</argument>
<argument index="10" name="hdr_luminance_cap" type="float">
</argument>
- <argument index="11" name="bicubic_upscale" type="bool">
- </argument>
<description>
</description>
</method>
@@ -818,7 +816,7 @@
</argument>
<argument index="6" name="ao_channel_affect" type="float">
</argument>
- <argument index="7" name="blur" type="int" enum="VisualServer.EnvironmentSSAOBlur">
+ <argument index="7" name="blur" type="int" enum="RenderingServer.EnvironmentSSAOBlur">
</argument>
<argument index="8" name="bilateral_sharpness" type="float">
</argument>
@@ -840,8 +838,6 @@
</argument>
<argument index="5" name="depth_tolerance" type="float">
</argument>
- <argument index="6" name="roughness" type="bool">
- </argument>
<description>
Sets the variables to be used with the "screen space reflections" post-process effect. See [Environment] for more details.
</description>
@@ -851,7 +847,7 @@
</return>
<argument index="0" name="env" type="RID">
</argument>
- <argument index="1" name="tone_mapper" type="int" enum="VisualServer.EnvironmentToneMapper">
+ <argument index="1" name="tone_mapper" type="int" enum="RenderingServer.EnvironmentToneMapper">
</argument>
<argument index="2" name="exposure" type="float">
</argument>
@@ -902,13 +898,13 @@
<argument index="0" name="rid" type="RID">
</argument>
<description>
- Tries to free an object in the VisualServer.
+ Tries to free an object in the RenderingServer.
</description>
</method>
<method name="get_render_info">
<return type="int">
</return>
- <argument index="0" name="info" type="int" enum="VisualServer.RenderInfo">
+ <argument index="0" name="info" type="int" enum="RenderingServer.RenderInfo">
</argument>
<description>
Returns a certain information, see [enum RenderInfo] for options.
@@ -955,13 +951,13 @@
<return type="bool">
</return>
<description>
- Returns [code]true[/code] if changes have been made to the VisualServer's data. [method force_draw] is usually called if this happens.
+ Returns [code]true[/code] if changes have been made to the RenderingServer's data. [method force_draw] is usually called if this happens.
</description>
</method>
<method name="has_feature" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="feature" type="int" enum="VisualServer.Features">
+ <argument index="0" name="feature" type="int" enum="RenderingServer.Features">
</argument>
<description>
Not yet implemented. Always returns [code]false[/code].
@@ -981,12 +977,12 @@
</return>
<argument index="0" name="immediate" type="RID">
</argument>
- <argument index="1" name="primitive" type="int" enum="VisualServer.PrimitiveType">
+ <argument index="1" name="primitive" type="int" enum="RenderingServer.PrimitiveType">
</argument>
<argument index="2" name="texture" type="RID">
</argument>
<description>
- Sets up [ImmediateGeometry] internals to prepare for drawing. Equivalent to [method ImmediateGeometry.begin].
+ Sets up [ImmediateGeometry3D] internals to prepare for drawing. Equivalent to [method ImmediateGeometry3D.begin].
</description>
</method>
<method name="immediate_clear">
@@ -995,7 +991,7 @@
<argument index="0" name="immediate" type="RID">
</argument>
<description>
- Clears everything that was set up between [method immediate_begin] and [method immediate_end]. Equivalent to [method ImmediateGeometry.clear].
+ Clears everything that was set up between [method immediate_begin] and [method immediate_end]. Equivalent to [method ImmediateGeometry3D.clear].
</description>
</method>
<method name="immediate_color">
@@ -1006,15 +1002,15 @@
<argument index="1" name="color" type="Color">
</argument>
<description>
- Sets the color to be used with next vertex. Equivalent to [method ImmediateGeometry.set_color].
+ Sets the color to be used with next vertex. Equivalent to [method ImmediateGeometry3D.set_color].
</description>
</method>
<method name="immediate_create">
<return type="RID">
</return>
<description>
- Creates an immediate geometry and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]immediate_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates an immediate geometry and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]immediate_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this immediate geometry to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -1024,7 +1020,7 @@
<argument index="0" name="immediate" type="RID">
</argument>
<description>
- Ends drawing the [ImmediateGeometry] and displays it. Equivalent to [method ImmediateGeometry.end].
+ Ends drawing the [ImmediateGeometry3D] and displays it. Equivalent to [method ImmediateGeometry3D.end].
</description>
</method>
<method name="immediate_get_material" qualifiers="const">
@@ -1033,7 +1029,7 @@
<argument index="0" name="immediate" type="RID">
</argument>
<description>
- Returns the material assigned to the [ImmediateGeometry].
+ Returns the material assigned to the [ImmediateGeometry3D].
</description>
</method>
<method name="immediate_normal">
@@ -1044,7 +1040,7 @@
<argument index="1" name="normal" type="Vector3">
</argument>
<description>
- Sets the normal to be used with next vertex. Equivalent to [method ImmediateGeometry.set_normal].
+ Sets the normal to be used with next vertex. Equivalent to [method ImmediateGeometry3D.set_normal].
</description>
</method>
<method name="immediate_set_material">
@@ -1055,7 +1051,7 @@
<argument index="1" name="material" type="RID">
</argument>
<description>
- Sets the material to be used to draw the [ImmediateGeometry].
+ Sets the material to be used to draw the [ImmediateGeometry3D].
</description>
</method>
<method name="immediate_tangent">
@@ -1066,7 +1062,7 @@
<argument index="1" name="tangent" type="Plane">
</argument>
<description>
- Sets the tangent to be used with next vertex. Equivalent to [method ImmediateGeometry.set_tangent].
+ Sets the tangent to be used with next vertex. Equivalent to [method ImmediateGeometry3D.set_tangent].
</description>
</method>
<method name="immediate_uv">
@@ -1077,7 +1073,7 @@
<argument index="1" name="tex_uv" type="Vector2">
</argument>
<description>
- Sets the UV to be used with next vertex. Equivalent to [method ImmediateGeometry.set_uv].
+ Sets the UV to be used with next vertex. Equivalent to [method ImmediateGeometry3D.set_uv].
</description>
</method>
<method name="immediate_uv2">
@@ -1088,7 +1084,7 @@
<argument index="1" name="tex_uv" type="Vector2">
</argument>
<description>
- Sets the UV2 to be used with next vertex. Equivalent to [method ImmediateGeometry.set_uv2].
+ Sets the UV2 to be used with next vertex. Equivalent to [method ImmediateGeometry3D.set_uv2].
</description>
</method>
<method name="immediate_vertex">
@@ -1099,7 +1095,7 @@
<argument index="1" name="vertex" type="Vector3">
</argument>
<description>
- Adds the next vertex using the information provided in advance. Equivalent to [method ImmediateGeometry.add_vertex].
+ Adds the next vertex using the information provided in advance. Equivalent to [method ImmediateGeometry3D.add_vertex].
</description>
</method>
<method name="immediate_vertex_2d">
@@ -1110,7 +1106,7 @@
<argument index="1" name="vertex" type="Vector2">
</argument>
<description>
- Adds the next vertex using the information provided in advance. This is a helper class that calls [method immediate_vertex] under the hood. Equivalent to [method ImmediateGeometry.add_vertex].
+ Adds the next vertex using the information provided in advance. This is a helper class that calls [method immediate_vertex] under the hood. Equivalent to [method ImmediateGeometry3D.add_vertex].
</description>
</method>
<method name="init">
@@ -1146,8 +1142,8 @@
<return type="RID">
</return>
<description>
- Creates a visual instance and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]instance_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a visual instance and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]instance_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
An instance is a way of placing a 3D object in the scenario. Objects like particles, meshes, and reflection probes need to be associated with an instance to be visible in the scenario using [method instance_set_base].
</description>
</method>
@@ -1159,8 +1155,8 @@
<argument index="1" name="scenario" type="RID">
</argument>
<description>
- Creates a visual instance, adds it to the VisualServer, and sets both base and scenario. It can be accessed with the RID that is returned. This RID will be used in all [code]instance_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a visual instance, adds it to the RenderingServer, and sets both base and scenario. It can be accessed with the RID that is returned. This RID will be used in all [code]instance_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="instance_geometry_set_as_instance_lod">
@@ -1179,10 +1175,10 @@
</return>
<argument index="0" name="instance" type="RID">
</argument>
- <argument index="1" name="shadow_casting_setting" type="int" enum="VisualServer.ShadowCastingSetting">
+ <argument index="1" name="shadow_casting_setting" type="int" enum="RenderingServer.ShadowCastingSetting">
</argument>
<description>
- Sets the shadow casting setting to one of [enum ShadowCastingSetting]. Equivalent to [member GeometryInstance.cast_shadow].
+ Sets the shadow casting setting to one of [enum ShadowCastingSetting]. Equivalent to [member GeometryInstance3D.cast_shadow].
</description>
</method>
<method name="instance_geometry_set_draw_range">
@@ -1207,7 +1203,7 @@
</return>
<argument index="0" name="instance" type="RID">
</argument>
- <argument index="1" name="flag" type="int" enum="VisualServer.InstanceFlags">
+ <argument index="1" name="flag" type="int" enum="RenderingServer.InstanceFlags">
</argument>
<argument index="2" name="enabled" type="bool">
</argument>
@@ -1223,7 +1219,7 @@
<argument index="1" name="material" type="RID">
</argument>
<description>
- Sets a material that will override the material for all surfaces on the mesh associated with this instance. Equivalent to [member GeometryInstance.material_override].
+ Sets a material that will override the material for all surfaces on the mesh associated with this instance. Equivalent to [member GeometryInstance3D.material_override].
</description>
</method>
<method name="instance_set_base">
@@ -1234,7 +1230,7 @@
<argument index="1" name="base" type="RID">
</argument>
<description>
- Sets the base of the instance. A base can be any of the 3D objects that are created in the VisualServer that can be displayed. For example, any of the light types, mesh, multimesh, immediate geometry, particle system, reflection probe, lightmap capture, and the GI probe are all types that can be set as the base of an instance in order to be displayed in the scenario.
+ Sets the base of the instance. A base can be any of the 3D objects that are created in the RenderingServer that can be displayed. For example, any of the light types, mesh, multimesh, immediate geometry, particle system, reflection probe, lightmap capture, and the GI probe are all types that can be set as the base of an instance in order to be displayed in the scenario.
</description>
</method>
<method name="instance_set_blend_shape_weight">
@@ -1258,7 +1254,7 @@
<argument index="1" name="aabb" type="AABB">
</argument>
<description>
- Sets a custom AABB to use when culling objects from the view frustum. Equivalent to [method GeometryInstance.set_custom_aabb].
+ Sets a custom AABB to use when culling objects from the view frustum. Equivalent to [method GeometryInstance3D.set_custom_aabb].
</description>
</method>
<method name="instance_set_exterior">
@@ -1280,7 +1276,7 @@
<argument index="1" name="margin" type="float">
</argument>
<description>
- Sets a margin to increase the size of the AABB when culling objects from the view frustum. This allows you avoid culling objects that fall outside the view frustum. Equivalent to [member GeometryInstance.extra_cull_margin].
+ Sets a margin to increase the size of the AABB when culling objects from the view frustum. This allows you avoid culling objects that fall outside the view frustum. Equivalent to [member GeometryInstance3D.extra_cull_margin].
</description>
</method>
<method name="instance_set_layer_mask">
@@ -1291,7 +1287,7 @@
<argument index="1" name="mask" type="int">
</argument>
<description>
- Sets the render layers that this instance will be drawn to. Equivalent to [member VisualInstance.layers].
+ Sets the render layers that this instance will be drawn to. Equivalent to [member VisualInstance3D.layers].
</description>
</method>
<method name="instance_set_scenario">
@@ -1315,7 +1311,7 @@
<argument index="2" name="material" type="RID">
</argument>
<description>
- Sets the material of a specific surface. Equivalent to [method MeshInstance.set_surface_material].
+ Sets the material of a specific surface. Equivalent to [method MeshInstance3D.set_surface_material].
</description>
</method>
<method name="instance_set_transform">
@@ -1326,7 +1322,7 @@
<argument index="1" name="transform" type="Transform">
</argument>
<description>
- Sets the world space transform of the instance. Equivalent to [member Spatial.transform].
+ Sets the world space transform of the instance. Equivalent to [member Node3D.transform].
</description>
</method>
<method name="instance_set_use_lightmap">
@@ -1350,7 +1346,7 @@
<argument index="1" name="visible" type="bool">
</argument>
<description>
- Sets whether an instance is drawn or not. Equivalent to [member Spatial.visible].
+ Sets whether an instance is drawn or not. Equivalent to [member Node3D.visible].
</description>
</method>
<method name="instances_cull_aabb" qualifiers="const">
@@ -1361,7 +1357,7 @@
<argument index="1" name="scenario" type="RID">
</argument>
<description>
- Returns an array of object IDs intersecting with the provided AABB. Only visual 3D nodes are considered, such as [MeshInstance] or [DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World] you want to query. This forces an update for all resources queued to update.
+ Returns an array of object IDs intersecting with the provided AABB. Only visual 3D nodes are considered, such as [MeshInstance3D] or [DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World3D] you want to query. This forces an update for all resources queued to update.
[b]Warning:[/b] This function is primarily intended for editor usage. For in-game use cases, prefer physics collision.
</description>
</method>
@@ -1373,7 +1369,7 @@
<argument index="1" name="scenario" type="RID">
</argument>
<description>
- Returns an array of object IDs intersecting with the provided convex shape. Only visual 3D nodes are considered, such as [MeshInstance] or [DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World] you want to query. This forces an update for all resources queued to update.
+ Returns an array of object IDs intersecting with the provided convex shape. Only visual 3D nodes are considered, such as [MeshInstance3D] or [DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World3D] you want to query. This forces an update for all resources queued to update.
[b]Warning:[/b] This function is primarily intended for editor usage. For in-game use cases, prefer physics collision.
</description>
</method>
@@ -1387,7 +1383,7 @@
<argument index="2" name="scenario" type="RID">
</argument>
<description>
- Returns an array of object IDs intersecting with the provided 3D ray. Only visual 3D nodes are considered, such as [MeshInstance] or [DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World] you want to query. This forces an update for all resources queued to update.
+ Returns an array of object IDs intersecting with the provided 3D ray. Only visual 3D nodes are considered, such as [MeshInstance3D] or [DirectionalLight3D]. Use [method @GDScript.instance_from_id] to obtain the actual nodes. A scenario RID must be provided, which is available in the [World3D] you want to query. This forces an update for all resources queued to update.
[b]Warning:[/b] This function is primarily intended for editor usage. For in-game use cases, prefer physics collision.
</description>
</method>
@@ -1399,7 +1395,7 @@
<argument index="1" name="enable" type="bool">
</argument>
<description>
- If [code]true[/code], this directional light will blend between shadow map splits resulting in a smoother transition between them. Equivalent to [member DirectionalLight.directional_shadow_blend_splits].
+ If [code]true[/code], this directional light will blend between shadow map splits resulting in a smoother transition between them. Equivalent to [member DirectionalLight3D.directional_shadow_blend_splits].
</description>
</method>
<method name="light_directional_set_shadow_depth_range_mode">
@@ -1407,10 +1403,10 @@
</return>
<argument index="0" name="light" type="RID">
</argument>
- <argument index="1" name="range_mode" type="int" enum="VisualServer.LightDirectionalShadowDepthRangeMode">
+ <argument index="1" name="range_mode" type="int" enum="RenderingServer.LightDirectionalShadowDepthRangeMode">
</argument>
<description>
- Sets the shadow depth range mode for this directional light. Equivalent to [member DirectionalLight.directional_shadow_depth_range]. See [enum LightDirectionalShadowDepthRangeMode] for options.
+ Sets the shadow depth range mode for this directional light. Equivalent to [member DirectionalLight3D.directional_shadow_depth_range]. See [enum LightDirectionalShadowDepthRangeMode] for options.
</description>
</method>
<method name="light_directional_set_shadow_mode">
@@ -1418,10 +1414,10 @@
</return>
<argument index="0" name="light" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="VisualServer.LightDirectionalShadowMode">
+ <argument index="1" name="mode" type="int" enum="RenderingServer.LightDirectionalShadowMode">
</argument>
<description>
- Sets the shadow mode for this directional light. Equivalent to [member DirectionalLight.directional_shadow_mode]. See [enum LightDirectionalShadowMode] for options.
+ Sets the shadow mode for this directional light. Equivalent to [member DirectionalLight3D.directional_shadow_mode]. See [enum LightDirectionalShadowMode] for options.
</description>
</method>
<method name="light_omni_set_shadow_mode">
@@ -1429,10 +1425,10 @@
</return>
<argument index="0" name="light" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="VisualServer.LightOmniShadowMode">
+ <argument index="1" name="mode" type="int" enum="RenderingServer.LightOmniShadowMode">
</argument>
<description>
- Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual paraboloid is faster but may suffer from artifacts. Equivalent to [member OmniLight.omni_shadow_mode].
+ Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual paraboloid is faster but may suffer from artifacts. Equivalent to [member OmniLight3D.omni_shadow_mode].
</description>
</method>
<method name="light_set_color">
@@ -1443,7 +1439,7 @@
<argument index="1" name="color" type="Color">
</argument>
<description>
- Sets the color of the light. Equivalent to [member Light.light_color].
+ Sets the color of the light. Equivalent to [member Light3D.light_color].
</description>
</method>
<method name="light_set_cull_mask">
@@ -1454,7 +1450,7 @@
<argument index="1" name="mask" type="int">
</argument>
<description>
- Sets the cull mask for this Light. Lights only affect objects in the selected layers. Equivalent to [member Light.light_cull_mask].
+ Sets the cull mask for this Light3D. Lights only affect objects in the selected layers. Equivalent to [member Light3D.light_cull_mask].
</description>
</method>
<method name="light_set_negative">
@@ -1465,7 +1461,7 @@
<argument index="1" name="enable" type="bool">
</argument>
<description>
- If [code]true[/code], light will subtract light instead of adding light. Equivalent to [member Light.light_negative].
+ If [code]true[/code], light will subtract light instead of adding light. Equivalent to [member Light3D.light_negative].
</description>
</method>
<method name="light_set_param">
@@ -1473,12 +1469,12 @@
</return>
<argument index="0" name="light" type="RID">
</argument>
- <argument index="1" name="param" type="int" enum="VisualServer.LightParam">
+ <argument index="1" name="param" type="int" enum="RenderingServer.LightParam">
</argument>
<argument index="2" name="value" type="float">
</argument>
<description>
- Sets the specified light parameter. See [enum LightParam] for options. Equivalent to [method Light.set_param].
+ Sets the specified light parameter. See [enum LightParam] for options. Equivalent to [method Light3D.set_param].
</description>
</method>
<method name="light_set_projector">
@@ -1500,7 +1496,7 @@
<argument index="1" name="enabled" type="bool">
</argument>
<description>
- If [code]true[/code], reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double sided shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent to [member Light.shadow_reverse_cull_face].
+ If [code]true[/code], reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double sided shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent to [member Light3D.shadow_reverse_cull_face].
</description>
</method>
<method name="light_set_shadow">
@@ -1511,7 +1507,7 @@
<argument index="1" name="enabled" type="bool">
</argument>
<description>
- If [code]true[/code], light will cast shadows. Equivalent to [member Light.shadow_enabled].
+ If [code]true[/code], light will cast shadows. Equivalent to [member Light3D.shadow_enabled].
</description>
</method>
<method name="light_set_shadow_color">
@@ -1522,7 +1518,7 @@
<argument index="1" name="color" type="Color">
</argument>
<description>
- Sets the color of the shadow cast by the light. Equivalent to [member Light.shadow_color].
+ Sets the color of the shadow cast by the light. Equivalent to [member Light3D.shadow_color].
</description>
</method>
<method name="light_set_use_gi">
@@ -1540,8 +1536,8 @@
<return type="RID">
</return>
<description>
- Creates a lightmap capture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]lightmap_capture_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a lightmap capture and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]lightmap_capture_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this lightmap capture to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -1662,8 +1658,8 @@
<return type="RID">
</return>
<description>
- Creates an empty material and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]material_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates an empty material and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]material_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="material_get_param" qualifiers="const">
@@ -1728,7 +1724,7 @@
</return>
<argument index="0" name="mesh" type="RID">
</argument>
- <argument index="1" name="primitive" type="int" enum="VisualServer.PrimitiveType">
+ <argument index="1" name="primitive" type="int" enum="RenderingServer.PrimitiveType">
</argument>
<argument index="2" name="arrays" type="Array">
</argument>
@@ -1756,8 +1752,8 @@
<return type="RID">
</return>
<description>
- Creates a new mesh and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]mesh_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a new mesh and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]mesh_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this mesh to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -1771,7 +1767,7 @@
</description>
</method>
<method name="mesh_get_blend_shape_mode" qualifiers="const">
- <return type="int" enum="VisualServer.BlendShapeMode">
+ <return type="int" enum="RenderingServer.BlendShapeMode">
</return>
<argument index="0" name="mesh" type="RID">
</argument>
@@ -1802,7 +1798,7 @@
</return>
<argument index="0" name="mesh" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="VisualServer.BlendShapeMode">
+ <argument index="1" name="mode" type="int" enum="RenderingServer.BlendShapeMode">
</argument>
<description>
Sets a mesh's blend shape mode.
@@ -1915,7 +1911,7 @@
</argument>
<argument index="1" name="instances" type="int">
</argument>
- <argument index="2" name="transform_format" type="int" enum="VisualServer.MultimeshTransformFormat">
+ <argument index="2" name="transform_format" type="int" enum="RenderingServer.MultimeshTransformFormat">
</argument>
<argument index="3" name="color_format" type="bool" default="false">
</argument>
@@ -1928,8 +1924,8 @@
<return type="RID">
</return>
<description>
- Creates a new multimesh on the VisualServer and returns an [RID] handle. This RID will be used in all [code]multimesh_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a new multimesh on the RenderingServer and returns an [RID] handle. This RID will be used in all [code]multimesh_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this multimesh to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -2109,8 +2105,8 @@
<return type="RID">
</return>
<description>
- Creates a new omni light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most [code]light_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a new omni light and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID can be used in most [code]light_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this omni light to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -2118,8 +2114,8 @@
<return type="RID">
</return>
<description>
- Creates a particle system and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]particles_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a particle system and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]particles_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach these particles to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -2129,7 +2125,7 @@
<argument index="0" name="particles" type="RID">
</argument>
<description>
- Calculates and returns the axis-aligned bounding box that contains all the particles. Equivalent to [method Particles.capture_aabb].
+ Calculates and returns the axis-aligned bounding box that contains all the particles. Equivalent to [method GPUParticles3D.capture_aabb].
</description>
</method>
<method name="particles_get_emitting">
@@ -2165,7 +2161,7 @@
<argument index="0" name="particles" type="RID">
</argument>
<description>
- Reset the particles on the next update. Equivalent to [method Particles.restart].
+ Reset the particles on the next update. Equivalent to [method GPUParticles3D.restart].
</description>
</method>
<method name="particles_set_amount">
@@ -2176,7 +2172,7 @@
<argument index="1" name="amount" type="int">
</argument>
<description>
- Sets the number of particles to be drawn and allocates the memory for them. Equivalent to [member Particles.amount].
+ Sets the number of particles to be drawn and allocates the memory for them. Equivalent to [member GPUParticles3D.amount].
</description>
</method>
<method name="particles_set_custom_aabb">
@@ -2187,7 +2183,7 @@
<argument index="1" name="aabb" type="AABB">
</argument>
<description>
- Sets a custom axis-aligned bounding box for the particle system. Equivalent to [member Particles.visibility_aabb].
+ Sets a custom axis-aligned bounding box for the particle system. Equivalent to [member GPUParticles3D.visibility_aabb].
</description>
</method>
<method name="particles_set_draw_order">
@@ -2195,10 +2191,10 @@
</return>
<argument index="0" name="particles" type="RID">
</argument>
- <argument index="1" name="order" type="int" enum="VisualServer.ParticlesDrawOrder">
+ <argument index="1" name="order" type="int" enum="RenderingServer.ParticlesDrawOrder">
</argument>
<description>
- Sets the draw order of the particles to one of the named enums from [enum ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent to [member Particles.draw_order].
+ Sets the draw order of the particles to one of the named enums from [enum ParticlesDrawOrder]. See [enum ParticlesDrawOrder] for options. Equivalent to [member GPUParticles3D.draw_order].
</description>
</method>
<method name="particles_set_draw_pass_mesh">
@@ -2211,7 +2207,7 @@
<argument index="2" name="mesh" type="RID">
</argument>
<description>
- Sets the mesh to be used for the specified draw pass. Equivalent to [member Particles.draw_pass_1], [member Particles.draw_pass_2], [member Particles.draw_pass_3], and [member Particles.draw_pass_4].
+ Sets the mesh to be used for the specified draw pass. Equivalent to [member GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4].
</description>
</method>
<method name="particles_set_draw_passes">
@@ -2222,7 +2218,7 @@
<argument index="1" name="count" type="int">
</argument>
<description>
- Sets the number of draw passes to use. Equivalent to [member Particles.draw_passes].
+ Sets the number of draw passes to use. Equivalent to [member GPUParticles3D.draw_passes].
</description>
</method>
<method name="particles_set_emission_transform">
@@ -2244,7 +2240,7 @@
<argument index="1" name="emitting" type="bool">
</argument>
<description>
- If [code]true[/code], particles will emit over time. Setting to false does not reset the particles, but only stops their emission. Equivalent to [member Particles.emitting].
+ If [code]true[/code], particles will emit over time. Setting to false does not reset the particles, but only stops their emission. Equivalent to [member GPUParticles3D.emitting].
</description>
</method>
<method name="particles_set_explosiveness_ratio">
@@ -2255,7 +2251,7 @@
<argument index="1" name="ratio" type="float">
</argument>
<description>
- Sets the explosiveness ratio. Equivalent to [member Particles.explosiveness].
+ Sets the explosiveness ratio. Equivalent to [member GPUParticles3D.explosiveness].
</description>
</method>
<method name="particles_set_fixed_fps">
@@ -2266,7 +2262,7 @@
<argument index="1" name="fps" type="int">
</argument>
<description>
- Sets the frame rate that the particle system rendering will be fixed to. Equivalent to [member Particles.fixed_fps].
+ Sets the frame rate that the particle system rendering will be fixed to. Equivalent to [member GPUParticles3D.fixed_fps].
</description>
</method>
<method name="particles_set_fractional_delta">
@@ -2277,7 +2273,7 @@
<argument index="1" name="enable" type="bool">
</argument>
<description>
- If [code]true[/code], uses fractional delta which smooths the movement of the particles. Equivalent to [member Particles.fract_delta].
+ If [code]true[/code], uses fractional delta which smooths the movement of the particles. Equivalent to [member GPUParticles3D.fract_delta].
</description>
</method>
<method name="particles_set_lifetime">
@@ -2288,7 +2284,7 @@
<argument index="1" name="lifetime" type="float">
</argument>
<description>
- Sets the lifetime of each particle in the system. Equivalent to [member Particles.lifetime].
+ Sets the lifetime of each particle in the system. Equivalent to [member GPUParticles3D.lifetime].
</description>
</method>
<method name="particles_set_one_shot">
@@ -2299,7 +2295,7 @@
<argument index="1" name="one_shot" type="bool">
</argument>
<description>
- If [code]true[/code], particles will emit once and then stop. Equivalent to [member Particles.one_shot].
+ If [code]true[/code], particles will emit once and then stop. Equivalent to [member GPUParticles3D.one_shot].
</description>
</method>
<method name="particles_set_pre_process_time">
@@ -2310,7 +2306,7 @@
<argument index="1" name="time" type="float">
</argument>
<description>
- Sets the preprocess time for the particles animation. This lets you delay starting an animation until after the particles have begun emitting. Equivalent to [member Particles.preprocess].
+ Sets the preprocess time for the particles animation. This lets you delay starting an animation until after the particles have begun emitting. Equivalent to [member GPUParticles3D.preprocess].
</description>
</method>
<method name="particles_set_process_material">
@@ -2321,7 +2317,7 @@
<argument index="1" name="material" type="RID">
</argument>
<description>
- Sets the material for processing the particles. Note: this is not the material used to draw the materials. Equivalent to [member Particles.process_material].
+ Sets the material for processing the particles. Note: this is not the material used to draw the materials. Equivalent to [member GPUParticles3D.process_material].
</description>
</method>
<method name="particles_set_randomness_ratio">
@@ -2332,7 +2328,7 @@
<argument index="1" name="ratio" type="float">
</argument>
<description>
- Sets the emission randomness ratio. This randomizes the emission of particles within their phase. Equivalent to [member Particles.randomness].
+ Sets the emission randomness ratio. This randomizes the emission of particles within their phase. Equivalent to [member GPUParticles3D.randomness].
</description>
</method>
<method name="particles_set_speed_scale">
@@ -2343,7 +2339,7 @@
<argument index="1" name="scale" type="float">
</argument>
<description>
- Sets the speed scale of the particle system. Equivalent to [member Particles.speed_scale].
+ Sets the speed scale of the particle system. Equivalent to [member GPUParticles3D.speed_scale].
</description>
</method>
<method name="particles_set_use_local_coordinates">
@@ -2354,15 +2350,15 @@
<argument index="1" name="enable" type="bool">
</argument>
<description>
- If [code]true[/code], particles use local coordinates. If [code]false[/code] they use global coordinates. Equivalent to [member Particles.local_coords].
+ If [code]true[/code], particles use local coordinates. If [code]false[/code] they use global coordinates. Equivalent to [member GPUParticles3D.local_coords].
</description>
</method>
<method name="reflection_probe_create">
<return type="RID">
</return>
<description>
- Creates a reflection probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]reflection_probe_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a reflection probe and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]reflection_probe_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this reflection probe to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -2492,7 +2488,7 @@
</return>
<argument index="0" name="probe" type="RID">
</argument>
- <argument index="1" name="mode" type="int" enum="VisualServer.ReflectionProbeUpdateMode">
+ <argument index="1" name="mode" type="int" enum="RenderingServer.ReflectionProbeUpdateMode">
</argument>
<description>
Sets how often the reflection probe updates. Can either be once or every frame. See [enum ReflectionProbeUpdateMode] for options.
@@ -2516,8 +2512,8 @@
<return type="RID">
</return>
<description>
- Creates a scenario and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]scenario_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a scenario and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]scenario_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
The scenario is the 3D world that all the visual instances exist in.
</description>
</method>
@@ -2526,7 +2522,7 @@
</return>
<argument index="0" name="scenario" type="RID">
</argument>
- <argument index="1" name="debug_mode" type="int" enum="VisualServer.ScenarioDebugMode">
+ <argument index="1" name="debug_mode" type="int" enum="RenderingServer.ScenarioDebugMode">
</argument>
<description>
Sets the [enum ScenarioDebugMode] for this scenario. See [enum ScenarioDebugMode] for options.
@@ -2591,8 +2587,8 @@
<return type="RID">
</return>
<description>
- Creates an empty shader and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]shader_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates an empty shader and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]shader_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="shader_get_code" qualifiers="const">
@@ -2723,8 +2719,8 @@
<return type="RID">
</return>
<description>
- Creates a skeleton and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]skeleton_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a skeleton and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]skeleton_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="skeleton_get_bone_count" qualifiers="const">
@@ -2740,26 +2736,27 @@
<return type="RID">
</return>
<description>
- Creates an empty sky and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]sky_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates an empty sky and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]sky_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
- <method name="sky_set_texture">
+ <method name="sky_set_material">
<return type="void">
</return>
<argument index="0" name="sky" type="RID">
</argument>
- <argument index="1" name="panorama" type="RID">
+ <argument index="1" name="material" type="RID">
</argument>
<description>
+ Sets the material that the sky uses to render the background and reflection maps.
</description>
</method>
<method name="spot_light_create">
<return type="RID">
</return>
<description>
- Creates a spot light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most [code]light_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
+ Creates a spot light and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID can be used in most [code]light_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
To place in a scene, attach this spot light to an instance using [method instance_set_base] using the returned RID.
</description>
</method>
@@ -2811,7 +2808,7 @@
<argument index="2" name="screen" type="int" default="0">
</argument>
<description>
- Copies viewport to a region of the screen specified by [code]rect[/code]. If [member Viewport.render_direct_to_screen] is [code]true[/code], then viewport does not use a framebuffer and the contents of the viewport are rendered directly to screen. However, note that the root viewport is drawn last, therefore it will draw over the screen. Accordingly, you must set the root viewport to an area that does not cover the area that you have attached this viewport to.
+ Copies the viewport to a region of the screen specified by [code]rect[/code]. If [method viewport_set_render_direct_to_screen] is [code]true[/code], then the viewport does not use a framebuffer and the contents of the viewport are rendered directly to screen. However, note that the root viewport is drawn last, therefore it will draw over the screen. Accordingly, you must set the root viewport to an area that does not cover the area that you have attached this viewport to.
For example, you can set the root viewport to not render at all with the following code:
[codeblock]
func _ready():
@@ -2825,17 +2822,8 @@
<return type="RID">
</return>
<description>
- Creates an empty viewport and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all [code]viewport_*[/code] VisualServer functions.
- Once finished with your RID, you will want to free the RID using the VisualServer's [method free_rid] static method.
- </description>
- </method>
- <method name="viewport_detach">
- <return type="void">
- </return>
- <argument index="0" name="viewport" type="RID">
- </argument>
- <description>
- Detaches the viewport from the screen.
+ Creates an empty viewport and adds it to the RenderingServer. It can be accessed with the RID that is returned. This RID will be used in all [code]viewport_*[/code] RenderingServer functions.
+ Once finished with your RID, you will want to free the RID using the RenderingServer's [method free_rid] static method.
</description>
</method>
<method name="viewport_get_render_info">
@@ -2843,7 +2831,7 @@
</return>
<argument index="0" name="viewport" type="RID">
</argument>
- <argument index="1" name="info" type="int" enum="VisualServer.ViewportRenderInfo">
+ <argument index="1" name="info" type="int" enum="RenderingServer.ViewportRenderInfo">
</argument>
<description>
Returns a viewport's render information. For options, see the [enum ViewportRenderInfo] constants.
@@ -2914,7 +2902,7 @@
</return>
<argument index="0" name="viewport" type="RID">
</argument>
- <argument index="1" name="clear_mode" type="int" enum="VisualServer.ViewportClearMode">
+ <argument index="1" name="clear_mode" type="int" enum="RenderingServer.ViewportClearMode">
</argument>
<description>
Sets the clear mode of a viewport. See [enum ViewportClearMode] for options.
@@ -2925,7 +2913,7 @@
</return>
<argument index="0" name="viewport" type="RID">
</argument>
- <argument index="1" name="draw" type="int" enum="VisualServer.ViewportDebugDraw">
+ <argument index="1" name="draw" type="int" enum="RenderingServer.ViewportDebugDraw">
</argument>
<description>
Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for options.
@@ -2980,7 +2968,7 @@
</return>
<argument index="0" name="viewport" type="RID">
</argument>
- <argument index="1" name="msaa" type="int" enum="VisualServer.ViewportMSAA">
+ <argument index="1" name="msaa" type="int" enum="RenderingServer.ViewportMSAA">
</argument>
<description>
Sets the anti-aliasing mode. See [enum ViewportMSAA] for options.
@@ -3073,33 +3061,33 @@
</return>
<argument index="0" name="viewport" type="RID">
</argument>
- <argument index="1" name="update_mode" type="int" enum="VisualServer.ViewportUpdateMode">
+ <argument index="1" name="update_mode" type="int" enum="RenderingServer.ViewportUpdateMode">
</argument>
<description>
Sets when the viewport should be updated. See [enum ViewportUpdateMode] constants for options.
</description>
</method>
- <method name="viewport_set_use_arvr">
+ <method name="viewport_set_use_xr">
<return type="void">
</return>
<argument index="0" name="viewport" type="RID">
</argument>
- <argument index="1" name="use_arvr" type="bool">
+ <argument index="1" name="use_xr" type="bool">
</argument>
<description>
- If [code]true[/code], the viewport uses augmented or virtual reality technologies. See [ARVRInterface].
+ If [code]true[/code], the viewport uses augmented or virtual reality technologies. See [XRInterface].
</description>
</method>
</methods>
<signals>
<signal name="frame_post_draw">
<description>
- Emitted at the end of the frame, after the VisualServer has finished updating all the Viewports.
+ Emitted at the end of the frame, after the RenderingServer has finished updating all the Viewports.
</description>
</signal>
<signal name="frame_pre_draw">
<description>
- Emitted at the beginning of the frame, before the VisualServer updates all the Viewports.
+ Emitted at the beginning of the frame, before the RenderingServer updates all the Viewports.
</description>
</signal>
</signals>
@@ -3155,7 +3143,10 @@
<constant name="SHADER_PARTICLES" value="2" enum="ShaderMode">
Shader is a particle shader.
</constant>
- <constant name="SHADER_MAX" value="3" enum="ShaderMode">
+ <constant name="SHADER_SKY" value="3" enum="ShaderMode">
+ Shader is a sky shader.
+ </constant>
+ <constant name="SHADER_MAX" value="4" enum="ShaderMode">
Represents the size of the [enum ShaderMode] enum.
</constant>
<constant name="ARRAY_VERTEX" value="0" enum="ArrayType">
@@ -3291,18 +3282,18 @@
<constant name="LIGHT_PARAM_RANGE" value="3" enum="LightParam">
The light's range.
</constant>
- <constant name="LIGHT_PARAM_ATTENUATION" value="4" enum="LightParam">
+ <constant name="LIGHT_PARAM_SIZE" value="4" enum="LightParam">
+ The size of the light when using spot light or omni light. The angular size of the light when using directional light.
+ </constant>
+ <constant name="LIGHT_PARAM_ATTENUATION" value="5" enum="LightParam">
The light's attenuation.
</constant>
- <constant name="LIGHT_PARAM_SPOT_ANGLE" value="5" enum="LightParam">
+ <constant name="LIGHT_PARAM_SPOT_ANGLE" value="6" enum="LightParam">
The spotlight's angle.
</constant>
- <constant name="LIGHT_PARAM_SPOT_ATTENUATION" value="6" enum="LightParam">
+ <constant name="LIGHT_PARAM_SPOT_ATTENUATION" value="7" enum="LightParam">
The spotlight's attenuation.
</constant>
- <constant name="LIGHT_PARAM_CONTACT_SHADOW_SIZE" value="7" enum="LightParam">
- Scales the shadow color.
- </constant>
<constant name="LIGHT_PARAM_SHADOW_MAX_DISTANCE" value="8" enum="LightParam">
Max distance that shadows will be rendered.
</constant>
@@ -3374,7 +3365,9 @@
<constant name="VIEWPORT_UPDATE_WHEN_VISIBLE" value="2" enum="ViewportUpdateMode">
Update the viewport whenever it is visible.
</constant>
- <constant name="VIEWPORT_UPDATE_ALWAYS" value="3" enum="ViewportUpdateMode">
+ <constant name="VIEWPORT_UPDATE_WHEN_PARENT_VISIBLE" value="3" enum="ViewportUpdateMode">
+ </constant>
+ <constant name="VIEWPORT_UPDATE_ALWAYS" value="4" enum="ViewportUpdateMode">
Always update the viewport.
</constant>
<constant name="VIEWPORT_CLEAR_ALWAYS" value="0" enum="ViewportClearMode">
diff --git a/doc/classes/RigidBody2D.xml b/doc/classes/RigidBody2D.xml
index 79c4205f59..e746d7fc96 100644
--- a/doc/classes/RigidBody2D.xml
+++ b/doc/classes/RigidBody2D.xml
@@ -16,7 +16,7 @@
<method name="_integrate_forces" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="state" type="Physics2DDirectBodyState">
+ <argument index="0" name="state" type="PhysicsDirectBodyState2D">
</argument>
<description>
Allows you to read and safely modify the simulation state for the object. Use this instead of [method Node._physics_process] if you need to directly change the body's [code]position[/code] or other physics properties. By default, it works in addition to the usual physics behavior, but [member custom_integrator] allows you to disable the default behavior and write custom force integration for a body.
@@ -106,10 +106,10 @@
</argument>
<argument index="2" name="margin" type="float" default="0.08">
</argument>
- <argument index="3" name="result" type="Physics2DTestMotionResult" default="null">
+ <argument index="3" name="result" type="PhysicsTestMotionResult2D" default="null">
</argument>
<description>
- Returns [code]true[/code] if a collision would result from moving in the given vector. [code]margin[/code] increases the size of the shapes involved in the collision detection, and [code]result[/code] is an object of type [Physics2DTestMotionResult], which contains additional information about the collision (should there be one).
+ Returns [code]true[/code] if a collision would result from moving in the given vector. [code]margin[/code] increases the size of the shapes involved in the collision detection, and [code]result[/code] is an object of type [PhysicsTestMotionResult2D], which contains additional information about the collision (should there be one).
</description>
</method>
</methods>
diff --git a/doc/classes/RigidBody.xml b/doc/classes/RigidBody3D.xml
index e2b7813361..1db818d6af 100644
--- a/doc/classes/RigidBody.xml
+++ b/doc/classes/RigidBody3D.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="RigidBody" inherits="PhysicsBody" version="4.0">
+<class name="RigidBody3D" inherits="PhysicsBody3D" version="4.0">
<brief_description>
Physics Body whose position is determined through physics simulation in 3D space.
</brief_description>
<description>
- This is the node that implements full 3D physics. This means that you do not control a RigidBody directly. Instead, you can apply forces to it (gravity, impulses, etc.), and the physics simulation will calculate the resulting movement, collision, bouncing, rotating, etc.
- A RigidBody has 4 behavior [member mode]s: Rigid, Static, Character, and Kinematic.
- [b]Note:[/b] Don't change a RigidBody's position every frame or very often. Sporadic changes work fine, but physics runs at a different granularity (fixed Hz) than usual rendering (process callback) and maybe even in a separate thread, so changing this from a process loop may result in strange behavior. If you need to directly affect the body's state, use [method _integrate_forces], which allows you to directly access the physics state.
+ This is the node that implements full 3D physics. This means that you do not control a RigidBody3D directly. Instead, you can apply forces to it (gravity, impulses, etc.), and the physics simulation will calculate the resulting movement, collision, bouncing, rotating, etc.
+ A RigidBody3D has 4 behavior [member mode]s: Rigid, Static, Character, and Kinematic.
+ [b]Note:[/b] Don't change a RigidBody3D's position every frame or very often. Sporadic changes work fine, but physics runs at a different granularity (fixed Hz) than usual rendering (process callback) and maybe even in a separate thread, so changing this from a process loop may result in strange behavior. If you need to directly affect the body's state, use [method _integrate_forces], which allows you to directly access the physics state.
If you need to override the default physics behavior, you can write a custom force integration function. See [member custom_integrator].
</description>
<tutorials>
@@ -16,7 +16,7 @@
<method name="_integrate_forces" qualifiers="virtual">
<return type="void">
</return>
- <argument index="0" name="state" type="PhysicsDirectBodyState">
+ <argument index="0" name="state" type="PhysicsDirectBodyState3D">
</argument>
<description>
Called during physics processing, allowing you to read and safely modify the simulation state for the object. By default, it works in addition to the usual physics behavior, but the [member custom_integrator] property allows you to disable the default behavior and do fully custom force integration for a body.
@@ -28,7 +28,7 @@
<argument index="0" name="force" type="Vector3">
</argument>
<description>
- Adds a constant directional force without affecting rotation.
+ Adds a constant directional force (i.e. acceleration) without affecting rotation.
This is equivalent to [code]add_force(force, Vector3(0,0,0))[/code].
</description>
</method>
@@ -40,7 +40,8 @@
<argument index="1" name="position" type="Vector3">
</argument>
<description>
- Adds a constant force (i.e. acceleration).
+ Adds a constant directional force (i.e. acceleration).
+ The position uses the rotation of the global coordinate system, but is centered at the object's origin.
</description>
</method>
<method name="add_torque">
@@ -85,7 +86,7 @@
<method name="get_axis_lock" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="axis" type="int" enum="PhysicsServer.BodyAxis">
+ <argument index="0" name="axis" type="int" enum="PhysicsServer3D.BodyAxis">
</argument>
<description>
Returns [code]true[/code] if the specified linear or rotational axis is locked.
@@ -102,7 +103,7 @@
<method name="set_axis_lock">
<return type="void">
</return>
- <argument index="0" name="axis" type="int" enum="PhysicsServer.BodyAxis">
+ <argument index="0" name="axis" type="int" enum="PhysicsServer3D.BodyAxis">
</argument>
<argument index="1" name="lock" type="bool">
</argument>
@@ -122,10 +123,10 @@
</methods>
<members>
<member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="-1.0">
- Damps RigidBody's rotational forces.
+ Damps RigidBody3D's rotational forces.
</member>
<member name="angular_velocity" type="Vector3" setter="set_angular_velocity" getter="get_angular_velocity" default="Vector3( 0, 0, 0 )">
- RigidBody's rotational velocity.
+ RigidBody3D's rotational velocity.
</member>
<member name="axis_lock_angular_x" type="bool" setter="set_axis_lock" getter="get_axis_lock" default="false">
Lock the body's rotation in the X axis.
@@ -146,10 +147,10 @@
Lock the body's movement in the Z axis.
</member>
<member name="can_sleep" type="bool" setter="set_can_sleep" getter="is_able_to_sleep" default="true">
- If [code]true[/code], the RigidBody will not calculate forces and will act as a static body while there is no movement. It will wake up when forces are applied through other collisions or when the [code]apply_impulse[/code] method is used.
+ If [code]true[/code], the body is deactivated when there is no movement, so it will not take part in the simulation until it is awaken by an external force.
</member>
<member name="contact_monitor" type="bool" setter="set_contact_monitor" getter="is_contact_monitor_enabled" default="false">
- If [code]true[/code], the RigidBody will emit signals when it collides with another RigidBody.
+ If [code]true[/code], the RigidBody3D will emit signals when it collides with another RigidBody3D.
</member>
<member name="contacts_reported" type="int" setter="set_max_contacts_reported" getter="get_max_contacts_reported" default="0">
The maximum contacts to report. Bodies can keep a log of the contacts with other bodies, this is enabled by setting the maximum amount of contacts reported to a number greater than 0.
@@ -162,7 +163,7 @@
If [code]true[/code], internal force integration will be disabled (like gravity or air friction) for this body. Other than collision response, the body will only move as determined by the [method _integrate_forces] function, if defined.
</member>
<member name="gravity_scale" type="float" setter="set_gravity_scale" getter="get_gravity_scale" default="1.0">
- This is multiplied by the global 3D gravity setting found in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] to produce RigidBody's gravity. For example, a value of 1 will be normal gravity, 2 will apply double gravity, and 0.5 will apply half gravity to this object.
+ This is multiplied by the global 3D gravity setting found in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] to produce RigidBody3D's gravity. For example, a value of 1 will be normal gravity, 2 will apply double gravity, and 0.5 will apply half gravity to this object.
</member>
<member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="-1.0">
The body's linear damp. Cannot be less than -1.0. If this value is different from -1.0, any linear damp derived from the world or areas will be overridden.
@@ -173,7 +174,7 @@
<member name="mass" type="float" setter="set_mass" getter="get_mass" default="1.0">
The body's mass.
</member>
- <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="RigidBody.Mode" default="0">
+ <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="RigidBody3D.Mode" default="0">
The body mode. See [enum Mode] for possible values.
</member>
<member name="physics_material_override" type="PhysicsMaterial" setter="set_physics_material_override" getter="get_physics_material_override">
@@ -241,13 +242,13 @@
Rigid body mode. This is the "natural" state of a rigid body. It is affected by forces, and can move, rotate, and be affected by user code.
</constant>
<constant name="MODE_STATIC" value="1" enum="Mode">
- Static mode. The body behaves like a [StaticBody], and can only move by user code.
+ Static mode. The body behaves like a [StaticBody3D], and can only move by user code.
</constant>
<constant name="MODE_CHARACTER" value="2" enum="Mode">
Character body mode. This behaves like a rigid body, but can not rotate.
</constant>
<constant name="MODE_KINEMATIC" value="3" enum="Mode">
- Kinematic body mode. The body behaves like a [KinematicBody], and can only move by user code.
+ Kinematic body mode. The body behaves like a [KinematicBody3D], and can only move by user code.
</constant>
</constants>
</class>
diff --git a/doc/classes/RootMotionView.xml b/doc/classes/RootMotionView.xml
index 654e42a3c6..be8d8d0078 100644
--- a/doc/classes/RootMotionView.xml
+++ b/doc/classes/RootMotionView.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="RootMotionView" inherits="VisualInstance" version="4.0">
+<class name="RootMotionView" inherits="VisualInstance3D" version="4.0">
<brief_description>
</brief_description>
<description>
diff --git a/doc/classes/SceneTree.xml b/doc/classes/SceneTree.xml
index e6778013cf..00ca5c6e9f 100644
--- a/doc/classes/SceneTree.xml
+++ b/doc/classes/SceneTree.xml
@@ -135,13 +135,6 @@
Returns [code]true[/code] if there is a [member network_peer] set.
</description>
</method>
- <method name="is_input_handled">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the most recent [InputEvent] was marked as handled with [method set_input_as_handled].
- </description>
- </method>
<method name="is_network_server" qualifiers="const">
<return type="bool">
</return>
@@ -237,13 +230,6 @@
Sets the given [code]property[/code] to [code]value[/code] on all members of the given group, respecting the given [enum GroupCallFlags].
</description>
</method>
- <method name="set_input_as_handled">
- <return type="void">
- </return>
- <description>
- Marks the most recent [InputEvent] as handled.
- </description>
- </method>
<method name="set_quit_on_go_back">
<return type="void">
</return>
@@ -251,22 +237,7 @@
</argument>
<description>
If [code]true[/code], the application quits automatically on going back (e.g. on Android). Enabled by default.
- To handle 'Go Back' button when this option is disabled, use [constant MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST].
- </description>
- </method>
- <method name="set_screen_stretch">
- <return type="void">
- </return>
- <argument index="0" name="mode" type="int" enum="SceneTree.StretchMode">
- </argument>
- <argument index="1" name="aspect" type="int" enum="SceneTree.StretchAspect">
- </argument>
- <argument index="2" name="minsize" type="Vector2">
- </argument>
- <argument index="3" name="shrink" type="float" default="1">
- </argument>
- <description>
- Configures screen stretching to the given [enum StretchMode], [enum StretchAspect], minimum size and [code]shrink[/code] ratio.
+ To handle 'Go Back' button when this option is disabled, use [constant DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST].
</description>
</method>
</methods>
@@ -301,11 +272,8 @@
<member name="refuse_new_network_connections" type="bool" setter="set_refuse_new_network_connections" getter="is_refusing_new_network_connections" default="false">
If [code]true[/code], the [SceneTree]'s [member network_peer] refuses new incoming connections.
</member>
- <member name="root" type="Viewport" setter="" getter="get_root">
- The [SceneTree]'s root [Viewport].
- </member>
- <member name="use_font_oversampling" type="bool" setter="set_use_font_oversampling" getter="is_using_font_oversampling" default="false">
- If [code]true[/code], font oversampling is used.
+ <member name="root" type="Window" setter="" getter="get_root">
+ The [SceneTree]'s root [Window].
</member>
</members>
<signals>
@@ -328,15 +296,6 @@
Emitted when files are dragged from the OS file manager and dropped in the game window. The arguments are a list of file paths and the identifier of the screen where the drag originated.
</description>
</signal>
- <signal name="global_menu_action">
- <argument index="0" name="id" type="Variant">
- </argument>
- <argument index="1" name="meta" type="Variant">
- </argument>
- <description>
- Emitted whenever global menu item is clicked.
- </description>
- </signal>
<signal name="idle_frame">
<description>
Emitted immediately before [method Node._process] is called on every node in the [SceneTree].
@@ -389,11 +348,6 @@
Emitted immediately before [method Node._physics_process] is called on every node in the [SceneTree].
</description>
</signal>
- <signal name="screen_resized">
- <description>
- Emitted when the screen resolution (fullscreen) or window size (windowed) changes.
- </description>
- </signal>
<signal name="server_disconnected">
<description>
Emitted whenever this [SceneTree]'s [member network_peer] disconnected from server. Only emitted on clients.
@@ -418,29 +372,5 @@
<constant name="GROUP_CALL_UNIQUE" value="4" enum="GroupCallFlags">
Call a group only once even if the call is executed many times.
</constant>
- <constant name="STRETCH_MODE_DISABLED" value="0" enum="StretchMode">
- No stretching.
- </constant>
- <constant name="STRETCH_MODE_2D" value="1" enum="StretchMode">
- Render stretching in higher resolution (interpolated).
- </constant>
- <constant name="STRETCH_MODE_VIEWPORT" value="2" enum="StretchMode">
- Keep the specified display resolution. No interpolation. Content may appear pixelated.
- </constant>
- <constant name="STRETCH_ASPECT_IGNORE" value="0" enum="StretchAspect">
- Fill the window with the content stretched to cover excessive space. Content may appear stretched.
- </constant>
- <constant name="STRETCH_ASPECT_KEEP" value="1" enum="StretchAspect">
- Retain the same aspect ratio by padding with black bars on either axis. This prevents distortion.
- </constant>
- <constant name="STRETCH_ASPECT_KEEP_WIDTH" value="2" enum="StretchAspect">
- Expand vertically. Left/right black bars may appear if the window is too wide.
- </constant>
- <constant name="STRETCH_ASPECT_KEEP_HEIGHT" value="3" enum="StretchAspect">
- Expand horizontally. Top/bottom black bars may appear if the window is too tall.
- </constant>
- <constant name="STRETCH_ASPECT_EXPAND" value="4" enum="StretchAspect">
- Expand in both directions, retaining the same aspect ratio. This prevents distortion while avoiding black bars.
- </constant>
</constants>
</class>
diff --git a/doc/classes/ScriptCreateDialog.xml b/doc/classes/ScriptCreateDialog.xml
index 9f16a6ed46..aa60ecb12b 100644
--- a/doc/classes/ScriptCreateDialog.xml
+++ b/doc/classes/ScriptCreateDialog.xml
@@ -4,7 +4,7 @@
The Editor's popup dialog for creating new [Script] files.
</brief_description>
<description>
- The [ScriptCreateDialog] creates script files according to a given template for a given scripting language. The standard use is to configure its fields prior to calling one of the [method Popup.popup] methods.
+ The [ScriptCreateDialog] creates script files according to a given template for a given scripting language. The standard use is to configure its fields prior to calling one of the [method Window.popup] methods.
[codeblock]
func _ready():
dialog.config("Node", "res://new_node.gd") # For in-engine types
@@ -33,10 +33,7 @@
</methods>
<members>
<member name="dialog_hide_on_ok" type="bool" setter="set_hide_on_ok" getter="get_hide_on_ok" override="true" default="false" />
- <member name="margin_bottom" type="float" setter="set_margin" getter="get_margin" override="true" default="232.0" />
- <member name="margin_right" type="float" setter="set_margin" getter="get_margin" override="true" default="361.0" />
- <member name="rect_size" type="Vector2" setter="_set_size" getter="get_size" override="true" default="Vector2( 361, 232 )" />
- <member name="window_title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Attach Node Script&quot;" />
+ <member name="title" type="String" setter="set_title" getter="get_title" override="true" default="&quot;Attach Node Script&quot;" />
</members>
<signals>
<signal name="script_created">
diff --git a/doc/classes/Shader.xml b/doc/classes/Shader.xml
index 14c5d7a03c..109c500a63 100644
--- a/doc/classes/Shader.xml
+++ b/doc/classes/Shader.xml
@@ -66,5 +66,8 @@
<constant name="MODE_PARTICLES" value="2" enum="Mode">
Mode used to calculate particle information on a per-particle basis. Not used for drawing.
</constant>
+ <constant name="MODE_SKY" value="3" enum="Mode">
+ Mode used for drawing skies. Only works with shaders attached to [Sky] objects.
+ </constant>
</constants>
</class>
diff --git a/doc/classes/Shape.xml b/doc/classes/Shape3D.xml
index d70d2c09b3..1af6550dc5 100644
--- a/doc/classes/Shape.xml
+++ b/doc/classes/Shape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Shape" inherits="Resource" version="4.0">
+<class name="Shape3D" inherits="Resource" version="4.0">
<brief_description>
Base class for all 3D shape resources.
</brief_description>
<description>
- Base class for all 3D shape resources. Nodes that inherit from this can be used as shapes for a [PhysicsBody] or [Area] objects.
+ Base class for all 3D shape resources. Nodes that inherit from this can be used as shapes for a [PhysicsBody3D] or [Area3D] objects.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html</link>
diff --git a/doc/classes/Signal.xml b/doc/classes/Signal.xml
index 51490caf6f..1a05c02b60 100644
--- a/doc/classes/Signal.xml
+++ b/doc/classes/Signal.xml
@@ -33,7 +33,7 @@
</description>
</method>
<method name="disconnect">
- <return type="void">
+ <return type="Variant">
</return>
<argument index="0" name="callable" type="Callable">
</argument>
diff --git a/doc/classes/Skeleton.xml b/doc/classes/Skeleton3D.xml
index eaab4063b8..08404fb467 100644
--- a/doc/classes/Skeleton.xml
+++ b/doc/classes/Skeleton3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Skeleton" inherits="Spatial" version="4.0">
+<class name="Skeleton3D" inherits="Node3D" version="4.0">
<brief_description>
Skeleton for characters and animated objects.
</brief_description>
<description>
- Skeleton provides a hierarchical interface for managing bones, including pose, rest and animation (see [Animation]). It can also use ragdoll physics.
+ Skeleton3D provides a hierarchical interface for managing bones, including pose, rest and animation (see [Animation]). It can also use ragdoll physics.
The overall transform of a bone with respect to the skeleton is determined by the following hierarchical order: rest pose, custom pose and pose.
Note that "global pose" below refers to the overall transform of the bone with respect to skeleton, so it not the actual global/world transform of the bone.
</description>
@@ -38,6 +38,12 @@
Clear all the bones in this skeleton.
</description>
</method>
+ <method name="clear_bones_global_pose_override">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="find_bone" qualifiers="const">
<return type="int">
</return>
diff --git a/doc/classes/SkeletonIK.xml b/doc/classes/SkeletonIK3D.xml
index 1db78314d2..de83847403 100644
--- a/doc/classes/SkeletonIK.xml
+++ b/doc/classes/SkeletonIK3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SkeletonIK" inherits="Node" version="4.0">
+<class name="SkeletonIK3D" inherits="Node" version="4.0">
<brief_description>
</brief_description>
<description>
@@ -8,7 +8,7 @@
</tutorials>
<methods>
<method name="get_parent_skeleton" qualifiers="const">
- <return type="Skeleton">
+ <return type="Skeleton3D">
</return>
<description>
</description>
diff --git a/doc/classes/Sky.xml b/doc/classes/Sky.xml
index ba9c5ee661..f574f42431 100644
--- a/doc/classes/Sky.xml
+++ b/doc/classes/Sky.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="Sky" inherits="Resource" version="4.0">
<brief_description>
- The base class for [PanoramaSky] and [ProceduralSky].
+ Background that uses a [Material] to draw a sky.
</brief_description>
<description>
- The base class for [PanoramaSky] and [ProceduralSky].
+ The [Sky] class uses a [Material] to draw the background and update the reflection/radiance cubemaps.
</description>
<tutorials>
</tutorials>
@@ -14,11 +14,14 @@
<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">
+ <member name="radiance_size" type="int" setter="set_radiance_size" getter="get_radiance_size" enum="Sky.RadianceSize" default="3">
The [Sky]'s radiance map size. The higher the radiance map size, the more detailed the lighting from the [Sky] will be.
See [enum RadianceSize] constants for values.
[b]Note:[/b] Some hardware will have trouble with higher radiance sizes, especially [constant RADIANCE_SIZE_512] and above. Only use such high values on high-end hardware.
</member>
+ <member name="sky_material" type="Material" setter="set_material" getter="get_material">
+ [Material] used to draw the background. Can be [PanoramaSkyMaterial], [ProceduralSkyMaterial], [PhysicalSkyMaterial], or even a [ShaderMaterial] if you want to use your own custom shader.
+ </member>
</members>
<constants>
<constant name="RADIANCE_SIZE_32" value="0" enum="RadianceSize">
@@ -50,7 +53,7 @@
</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].
+ [b]Note:[/b] The fast filtering algorithm is limited to 256x256 cubemaps, so [member radiance_size] must be set to [constant RADIANCE_SIZE_256].
</constant>
</constants>
</class>
diff --git a/doc/classes/SliderJoint.xml b/doc/classes/SliderJoint3D.xml
index dc0cf96eb4..efd6353e3c 100644
--- a/doc/classes/SliderJoint.xml
+++ b/doc/classes/SliderJoint3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SliderJoint" inherits="Joint" version="4.0">
+<class name="SliderJoint3D" inherits="Joint3D" version="4.0">
<brief_description>
Piston kind of slider between two bodies in 3D.
</brief_description>
@@ -12,7 +12,7 @@
<method name="get_param" qualifiers="const">
<return type="float">
</return>
- <argument index="0" name="param" type="int" enum="SliderJoint.Param">
+ <argument index="0" name="param" type="int" enum="SliderJoint3D.Param">
</argument>
<description>
</description>
@@ -20,7 +20,7 @@
<method name="set_param">
<return type="void">
</return>
- <argument index="0" name="param" type="int" enum="SliderJoint.Param">
+ <argument index="0" name="param" type="int" enum="SliderJoint3D.Param">
</argument>
<argument index="1" name="value" type="float">
</argument>
diff --git a/doc/classes/SoftBody.xml b/doc/classes/SoftBody3D.xml
index 46a00fbd67..24d6609900 100644
--- a/doc/classes/SoftBody.xml
+++ b/doc/classes/SoftBody3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SoftBody" inherits="MeshInstance" version="4.0">
+<class name="SoftBody3D" inherits="MeshInstance3D" version="4.0">
<brief_description>
A soft mesh physics body.
</brief_description>
@@ -80,12 +80,12 @@
<member name="areaAngular_stiffness" type="float" setter="set_areaAngular_stiffness" getter="get_areaAngular_stiffness" default="0.5">
</member>
<member name="collision_layer" type="int" setter="set_collision_layer" getter="get_collision_layer" default="1">
- The physics layers this SoftBody is in.
+ The physics layers this SoftBody3D is in.
Collidable objects can exist in any of 32 different layers. These layers work like a tagging system, and are not visual. A collidable can use these layers to select with which objects it can collide, using the collision_mask property.
A contact is detected if object A is in any of the layers that object B scans, or object B is in any layer scanned by object A.
</member>
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="1">
- The physics layers this SoftBody scans for collisions.
+ The physics layers this SoftBody3D scans for collisions.
</member>
<member name="damping_coefficient" type="float" setter="set_damping_coefficient" getter="get_damping_coefficient" default="0.01">
</member>
@@ -94,20 +94,20 @@
<member name="linear_stiffness" type="float" setter="set_linear_stiffness" getter="get_linear_stiffness" default="0.5">
</member>
<member name="parent_collision_ignore" type="NodePath" setter="set_parent_collision_ignore" getter="get_parent_collision_ignore" default="NodePath(&quot;&quot;)">
- [NodePath] to a [CollisionObject] this SoftBody should avoid clipping.
+ [NodePath] to a [CollisionObject3D] this SoftBody3D should avoid clipping.
</member>
<member name="pose_matching_coefficient" type="float" setter="set_pose_matching_coefficient" getter="get_pose_matching_coefficient" default="0.0">
</member>
<member name="pressure_coefficient" type="float" setter="set_pressure_coefficient" getter="get_pressure_coefficient" default="0.0">
</member>
<member name="ray_pickable" type="bool" setter="set_ray_pickable" getter="is_ray_pickable" default="true">
- If [code]true[/code], the [SoftBody] will respond to [RayCast]s.
+ If [code]true[/code], the [SoftBody3D] will respond to [RayCast3D]s.
</member>
<member name="simulation_precision" type="int" setter="set_simulation_precision" getter="get_simulation_precision" default="5">
Increasing this value will improve the resulting simulation, but can affect performance. Use with care.
</member>
<member name="total_mass" type="float" setter="set_total_mass" getter="get_total_mass" default="1.0">
- The SoftBody's mass.
+ The SoftBody3D's mass.
</member>
<member name="volume_stiffness" type="float" setter="set_volume_stiffness" getter="get_volume_stiffness" default="0.5">
</member>
diff --git a/doc/classes/SphereShape.xml b/doc/classes/SphereShape3D.xml
index 75dab58c38..1eaf890639 100644
--- a/doc/classes/SphereShape.xml
+++ b/doc/classes/SphereShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SphereShape" inherits="Shape" version="4.0">
+<class name="SphereShape3D" inherits="Shape3D" version="4.0">
<brief_description>
Sphere shape for 3D collisions.
</brief_description>
<description>
- Sphere shape for 3D collisions, which can be set into a [PhysicsBody] or [Area]. This shape is useful for modeling sphere-like 3D objects.
+ Sphere shape for 3D collisions, which can be set into a [PhysicsBody3D] or [Area3D]. This shape is useful for modeling sphere-like 3D objects.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/SpotLight.xml b/doc/classes/SpotLight3D.xml
index 351d4f8aff..f094818c21 100644
--- a/doc/classes/SpotLight.xml
+++ b/doc/classes/SpotLight3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SpotLight" inherits="Light" version="4.0">
+<class name="SpotLight3D" inherits="Light3D" version="4.0">
<brief_description>
A spotlight, such as a reflector spotlight or a lantern.
</brief_description>
<description>
- A Spotlight is a type of [Light] node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance. This attenuation can be configured by changing the energy, radius and attenuation parameters of [Light].
+ A Spotlight is a type of [Light3D] node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance. This attenuation can be configured by changing the energy, radius and attenuation parameters of [Light3D].
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html</link>
diff --git a/doc/classes/SpringArm.xml b/doc/classes/SpringArm3D.xml
index 780ed5077d..8305494c2b 100644
--- a/doc/classes/SpringArm.xml
+++ b/doc/classes/SpringArm3D.xml
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SpringArm" inherits="Spatial" version="4.0">
+<class name="SpringArm3D" inherits="Node3D" version="4.0">
<brief_description>
A helper node, mostly used in 3rd person cameras.
</brief_description>
<description>
- The SpringArm node is a node that casts a ray (or collision shape) along its z axis and moves all its direct children to the collision point, minus a margin.
+ The SpringArm3D node is a node that casts a ray (or collision shape) along its z axis and moves all its direct children to the collision point, minus a margin.
The most common use case for this is to make a 3rd person camera that reacts to collisions in the environment.
- The SpringArm will either cast a ray, or if a shape is given, it will cast the shape in the direction of its z axis.
- If you use the SpringArm as a camera controller for your player, you might need to exclude the player's collider from the SpringArm's collision check.
+ The SpringArm3D will either cast a ray, or if a shape is given, it will cast the shape in the direction of its z axis.
+ If you use the SpringArm3D as a camera controller for your player, you might need to exclude the player's collider from the SpringArm3D's collision check.
</description>
<tutorials>
</tutorials>
@@ -18,14 +18,14 @@
<argument index="0" name="RID" type="RID">
</argument>
<description>
- Adds the [PhysicsBody] object with the given [RID] to the list of [PhysicsBody] objects excluded from the collision check.
+ Adds the [PhysicsBody3D] object with the given [RID] to the list of [PhysicsBody3D] objects excluded from the collision check.
</description>
</method>
<method name="clear_excluded_objects">
<return type="void">
</return>
<description>
- Clears the list of [PhysicsBody] objects excluded from the collision check.
+ Clears the list of [PhysicsBody3D] 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 [PhysicsBody] objects excluded from the collision check.
+ Removes the given [RID] from the list of [PhysicsBody3D] objects excluded from the collision check.
</description>
</method>
</methods>
@@ -50,17 +50,17 @@
The layers against which the collision check shall be done.
</member>
<member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.01">
- When the collision check is made, a candidate length for the SpringArm is given.
- The margin is then subtracted to this length and the translation is applied to the child objects of the SpringArm.
- This margin is useful for when the SpringArm has a [Camera] as a child node: without the margin, the [Camera] would be placed on the exact point of collision, while with the margin the [Camera] would be placed close to the point of collision.
+ When the collision check is made, a candidate length for the SpringArm3D is given.
+ The margin is then subtracted to this length and the translation is applied to the child objects of the SpringArm3D.
+ This margin is useful for when the SpringArm3D has a [Camera3D] as a child node: without the margin, the [Camera3D] would be placed on the exact point of collision, while with the margin the [Camera3D] would be placed close to the point of collision.
</member>
- <member name="shape" type="Shape" setter="set_shape" getter="get_shape">
- The [Shape] to use for the SpringArm.
- When the shape is set, the SpringArm will cast the [Shape] on its z axis instead of performing a ray cast.
+ <member name="shape" type="Shape3D" setter="set_shape" getter="get_shape">
+ The [Shape3D] to use for the SpringArm3D.
+ When the shape is set, the SpringArm3D will cast the [Shape3D] on its z axis instead of performing a ray cast.
</member>
<member name="spring_length" type="float" setter="set_length" getter="get_length" default="1.0">
- The maximum extent of the SpringArm. This is used as a length for both the ray and the shape cast used internally to calculate the desired position of the SpringArm's child nodes.
- To know more about how to perform a shape cast or a ray cast, please consult the [PhysicsDirectSpaceState] documentation.
+ The maximum extent of the SpringArm3D. This is used as a length for both the ray and the shape cast used internally to calculate the desired position of the SpringArm3D's child nodes.
+ To know more about how to perform a shape cast or a ray cast, please consult the [PhysicsDirectSpaceState3D] documentation.
</member>
</members>
<constants>
diff --git a/doc/classes/Sprite.xml b/doc/classes/Sprite2D.xml
index 6c21881535..950fda4e20 100644
--- a/doc/classes/Sprite.xml
+++ b/doc/classes/Sprite2D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="Sprite" inherits="Node2D" version="4.0">
+<class name="Sprite2D" inherits="Node2D" version="4.0">
<brief_description>
General-purpose sprite node.
</brief_description>
@@ -13,7 +13,7 @@
<return type="Rect2">
</return>
<description>
- Returns a [Rect2] representing the Sprite's boundary in local coordinates. Can be used to detect if the Sprite was clicked. Example:
+ Returns a [Rect2] representing the Sprite2D's boundary in local coordinates. Can be used to detect if the Sprite2D was clicked. Example:
[codeblock]
func _input(event):
if event is InputEventMouseButton and event.pressed and event.button_index == BUTTON_LEFT:
@@ -53,7 +53,7 @@
The number of columns in the sprite sheet.
</member>
<member name="normal_map" type="Texture2D" setter="set_normal_map" getter="get_normal_map">
- The normal map gives depth to the Sprite.
+ The normal map gives depth to the Sprite2D.
</member>
<member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2( 0, 0 )">
The texture's drawing offset.
@@ -68,7 +68,7 @@
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].
+ Strength of the specular light effect of this [Sprite2D].
</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.
diff --git a/doc/classes/Sprite3D.xml b/doc/classes/Sprite3D.xml
index 63958eeb7b..f59d5130c9 100644
--- a/doc/classes/Sprite3D.xml
+++ b/doc/classes/Sprite3D.xml
@@ -5,7 +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].
+ [b]Note:[/b] There are [url=https://github.com/godotengine/godot/issues/20855]known performance issues[/url] when using [Sprite3D]. Consider using a [MeshInstance3D] 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 563a17e8f6..479dc5f94c 100644
--- a/doc/classes/SpriteBase3D.xml
+++ b/doc/classes/SpriteBase3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SpriteBase3D" inherits="GeometryInstance" version="4.0">
+<class name="SpriteBase3D" inherits="GeometryInstance3D" version="4.0">
<brief_description>
2D sprite node in 3D environment.
</brief_description>
@@ -76,7 +76,7 @@
The size of one pixel's width on the sprite to scale it in 3D.
</member>
<member name="shaded" type="bool" setter="set_draw_flag" getter="get_draw_flag" default="false">
- If [code]true[/code], the [Light] in the [Environment] has effects on the sprite.
+ If [code]true[/code], the [Light3D] in the [Environment] has effects on the sprite.
</member>
<member name="transparent" type="bool" setter="set_draw_flag" getter="get_draw_flag" default="true">
If [code]true[/code], the texture's transparency and the opacity are used to make those parts of the sprite invisible.
diff --git a/doc/classes/SpriteFrames.xml b/doc/classes/SpriteFrames.xml
index 9facdde681..6e1e1688f4 100644
--- a/doc/classes/SpriteFrames.xml
+++ b/doc/classes/SpriteFrames.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="SpriteFrames" inherits="Resource" version="4.0">
<brief_description>
- Sprite frame library for AnimatedSprite.
+ Sprite frame library for AnimatedSprite2D.
</brief_description>
<description>
- Sprite frame library for [AnimatedSprite]. Contains frames and animation data for playback.
+ Sprite frame library for [AnimatedSprite2D]. Contains frames and animation data for playback.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/StaticBody.xml b/doc/classes/StaticBody3D.xml
index 280b95d182..c896efc314 100644
--- a/doc/classes/StaticBody.xml
+++ b/doc/classes/StaticBody3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="StaticBody" inherits="PhysicsBody" version="4.0">
+<class name="StaticBody3D" inherits="PhysicsBody3D" version="4.0">
<brief_description>
Static body for 3D physics.
</brief_description>
<description>
- Static body for 3D physics. A static body is a simple body that is not intended to move. In contrast to [RigidBody], they don't consume any CPU resources as long as they don't move.
+ Static body for 3D physics. A static body is a simple body that is not intended to move. In contrast to [RigidBody3D], they don't consume any CPU resources as long as they don't move.
Additionally, a constant linear or angular velocity can be set for the static body, so even if it doesn't move, it affects other bodies as if it was moving (this is useful for simulating conveyor belts or conveyor wheels).
</description>
<tutorials>
diff --git a/doc/classes/SubViewport.xml b/doc/classes/SubViewport.xml
new file mode 100644
index 0000000000..e877050bf8
--- /dev/null
+++ b/doc/classes/SubViewport.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="SubViewport" inherits="Viewport" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <members>
+ <member name="xr" type="bool" setter="set_use_xr" getter="is_using_xr" default="false">
+ If [code]true[/code], the sub-viewport will be used in AR/VR process.
+ </member>
+ <member name="render_target_clear_mode" type="int" setter="set_clear_mode" getter="get_clear_mode" enum="SubViewport.ClearMode" default="0">
+ The clear mode when the sub-viewport is used as a render target.
+ </member>
+ <member name="render_target_update_mode" type="int" setter="set_update_mode" getter="get_update_mode" enum="SubViewport.UpdateMode" default="2">
+ The update mode when the sub-viewport is used as a render target.
+ </member>
+ <member name="size" type="Vector2i" setter="set_size" getter="get_size" default="Vector2i( 0, 0 )">
+ The width and height of the sub-viewport.
+ </member>
+ <member name="size_2d_override" type="Vector2i" setter="set_size_2d_override" getter="get_size_2d_override" default="Vector2i( 0, 0 )">
+ The 2D size override of the sub-viewport. If either the width or height is [code]0[/code], the override is disabled.
+ </member>
+ <member name="size_2d_override_stretch" type="bool" setter="set_size_2d_override_stretch" getter="is_size_2d_override_stretch_enabled" default="false">
+ If [code]true[/code], the 2D size override affects stretch as well.
+ </member>
+ </members>
+ <constants>
+ <constant name="UPDATE_DISABLED" value="0" enum="UpdateMode">
+ Do not update the render target.
+ </constant>
+ <constant name="UPDATE_ONCE" value="1" enum="UpdateMode">
+ Update the render target once, then switch to [constant UPDATE_DISABLED].
+ </constant>
+ <constant name="UPDATE_WHEN_VISIBLE" value="2" enum="UpdateMode">
+ Update the render target only when it is visible. This is the default value.
+ </constant>
+ <constant name="UPDATE_WHEN_PARENT_VISIBLE" value="3" enum="UpdateMode">
+ Update the render target only when the its parent is visible.
+ </constant>
+ <constant name="UPDATE_ALWAYS" value="4" enum="UpdateMode">
+ Always update the render target.
+ </constant>
+ <constant name="CLEAR_MODE_ALWAYS" value="0" enum="ClearMode">
+ Always clear the render target before drawing.
+ </constant>
+ <constant name="CLEAR_MODE_NEVER" value="1" enum="ClearMode">
+ Never clear the render target.
+ </constant>
+ <constant name="CLEAR_MODE_ONLY_NEXT_FRAME" value="2" enum="ClearMode">
+ Clear the render target next frame, then switch to [constant CLEAR_MODE_NEVER].
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/SubViewportContainer.xml b/doc/classes/SubViewportContainer.xml
new file mode 100644
index 0000000000..e6a0bd4866
--- /dev/null
+++ b/doc/classes/SubViewportContainer.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="SubViewportContainer" inherits="Container" version="4.0">
+ <brief_description>
+ Control for holding [SubViewport]s.
+ </brief_description>
+ <description>
+ A [Container] node that holds a [SubViewport], automatically setting its size.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ </methods>
+ <members>
+ <member name="stretch" type="bool" setter="set_stretch" getter="is_stretch_enabled" default="false">
+ If [code]true[/code], the sub-viewport will be scaled to the control's size.
+ </member>
+ <member name="stretch_shrink" type="int" setter="set_stretch_shrink" getter="get_stretch_shrink" default="1">
+ Divides the sub-viewport's effective resolution by this value while preserving its scale. This can be used to speed up rendering.
+ For example, a 1280×720 sub-viewport with [member stretch_shrink] set to [code]2[/code] will be rendered at 640×360 while occupying the same size in the container.
+ [b]Note:[/b] [member stretch] must be [code]true[/code] for this property to work.
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/Texture2D.xml b/doc/classes/Texture2D.xml
index 63cdb0d90a..ffe806cef7 100644
--- a/doc/classes/Texture2D.xml
+++ b/doc/classes/Texture2D.xml
@@ -4,7 +4,7 @@
Texture for 2D and 3D.
</brief_description>
<description>
- A texture works by registering an image in the video hardware, which then can be used in 3D models or 2D [Sprite] or GUI [Control].
+ A texture works by registering an image in the video hardware, which then can be used in 3D models or 2D [Sprite2D] or GUI [Control].
Textures are often created by loading them from a file. See [method @GDScript.load].
[Texture2D] is a base for other resources. It cannot be used directly.
</description>
@@ -28,12 +28,12 @@
</argument>
<argument index="6" name="specular_color_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
- <argument index="7" name="texture_filter" type="int" enum="VisualServer.CanvasItemTextureFilter" default="0">
+ <argument index="7" name="texture_filter" type="int" enum="RenderingServer.CanvasItemTextureFilter" default="0">
</argument>
- <argument index="8" name="texture_repeat" type="int" enum="VisualServer.CanvasItemTextureRepeat" default="0">
+ <argument index="8" name="texture_repeat" type="int" enum="RenderingServer.CanvasItemTextureRepeat" default="0">
</argument>
<description>
- Draws the texture using a [CanvasItem] with the [VisualServer] API at the specified [code]position[/code].
+ Draws the texture using a [CanvasItem] with the [RenderingServer] API at the specified [code]position[/code].
</description>
</method>
<method name="draw_rect" qualifiers="const">
@@ -55,12 +55,12 @@
</argument>
<argument index="7" name="specular_color_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
- <argument index="8" name="texture_filter" type="int" enum="VisualServer.CanvasItemTextureFilter" default="0">
+ <argument index="8" name="texture_filter" type="int" enum="RenderingServer.CanvasItemTextureFilter" default="0">
</argument>
- <argument index="9" name="texture_repeat" type="int" enum="VisualServer.CanvasItemTextureRepeat" default="0">
+ <argument index="9" name="texture_repeat" type="int" enum="RenderingServer.CanvasItemTextureRepeat" default="0">
</argument>
<description>
- Draws the texture using a [CanvasItem] with the [VisualServer] API.
+ Draws the texture using a [CanvasItem] with the [RenderingServer] API.
</description>
</method>
<method name="draw_rect_region" qualifiers="const">
@@ -82,14 +82,14 @@
</argument>
<argument index="7" name="specular_color_shininess" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
- <argument index="8" name="texture_filter" type="int" enum="VisualServer.CanvasItemTextureFilter" default="0">
+ <argument index="8" name="texture_filter" type="int" enum="RenderingServer.CanvasItemTextureFilter" default="0">
</argument>
- <argument index="9" name="texture_repeat" type="int" enum="VisualServer.CanvasItemTextureRepeat" default="0">
+ <argument index="9" name="texture_repeat" type="int" enum="RenderingServer.CanvasItemTextureRepeat" default="0">
</argument>
<argument index="10" name="clip_uv" type="bool" default="true">
</argument>
<description>
- Draws a part of the texture using a [CanvasItem] with the [VisualServer] API.
+ Draws a part of the texture using a [CanvasItem] with the [RenderingServer] API.
</description>
</method>
<method name="get_data" qualifiers="const">
diff --git a/doc/classes/Thread.xml b/doc/classes/Thread.xml
index 3bb5797df5..4d6e89fa6f 100644
--- a/doc/classes/Thread.xml
+++ b/doc/classes/Thread.xml
@@ -36,7 +36,7 @@
<argument index="3" name="priority" type="int" enum="Thread.Priority" default="1">
</argument>
<description>
- Starts a new [Thread] that runs [code]method[/code] on object [code]instance[/code] with [code]userdata[/code] passed as an argument. The [code]priority[/code] of the [Thread] can be changed by passing a value from the [enum Priority] enum.
+ Starts a new [Thread] that runs [code]method[/code] on object [code]instance[/code] with [code]userdata[/code] passed as an argument. Even if no userdata is passed, [code]method[/code] must accept one argument and it will be null. The [code]priority[/code] of the [Thread] can be changed by passing a value from the [enum Priority] enum.
Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure.
</description>
</method>
diff --git a/doc/classes/TileMap.xml b/doc/classes/TileMap.xml
index 1db1142aa0..5b7694b775 100644
--- a/doc/classes/TileMap.xml
+++ b/doc/classes/TileMap.xml
@@ -43,7 +43,7 @@
<argument index="1" name="y" type="int">
</argument>
<description>
- Returns the coordinate of the autotile variation in the tileset. Returns a zero vector if the cell doesn't have autotiling.
+ Returns the coordinate (subtile column and row) of the autotile variation in the tileset. Returns a zero vector if the cell doesn't have autotiling.
</description>
</method>
<method name="get_cellv" qualifiers="const">
@@ -161,7 +161,7 @@
<description>
Sets the tile index for the cell given by a Vector2.
An index of [code]-1[/code] clears the cell.
- Optionally, the tile can also be flipped, transposed, or given autotile coordinates.
+ Optionally, the tile can also be flipped, transposed, or given autotile coordinates. The autotile coordinate refers to the column and row of the subtile.
[b]Note:[/b] Data such as navigation polygons and collision shapes are not immediately updated for performance reasons.
If you need these to be immediately updated, you can call [method update_dirty_quadrants].
Overriding this method also overrides it internally, allowing custom logic to be implemented when tiles are placed/removed:
diff --git a/doc/classes/Transform.xml b/doc/classes/Transform.xml
index 72f9c5493a..e4d367c344 100644
--- a/doc/classes/Transform.xml
+++ b/doc/classes/Transform.xml
@@ -149,7 +149,7 @@
</description>
</method>
<method name="xform">
- <return type="void">
+ <return type="Variant">
</return>
<argument index="0" name="v" type="Variant">
</argument>
@@ -158,7 +158,7 @@
</description>
</method>
<method name="xform_inv">
- <return type="void">
+ <return type="Variant">
</return>
<argument index="0" name="v" type="Variant">
</argument>
diff --git a/doc/classes/Transform2D.xml b/doc/classes/Transform2D.xml
index 164efd4e5e..af93d4c654 100644
--- a/doc/classes/Transform2D.xml
+++ b/doc/classes/Transform2D.xml
@@ -151,7 +151,7 @@
</description>
</method>
<method name="xform">
- <return type="void">
+ <return type="Variant">
</return>
<argument index="0" name="v" type="Variant">
</argument>
@@ -160,7 +160,7 @@
</description>
</method>
<method name="xform_inv">
- <return type="void">
+ <return type="Variant">
</return>
<argument index="0" name="v" type="Variant">
</argument>
diff --git a/doc/classes/UndoRedo.xml b/doc/classes/UndoRedo.xml
index 766ebf7e32..2cc3e974e2 100644
--- a/doc/classes/UndoRedo.xml
+++ b/doc/classes/UndoRedo.xml
@@ -155,7 +155,7 @@
Returns [code]true[/code] if an "undo" action is available.
</description>
</method>
- <method name="is_commiting_action" qualifiers="const">
+ <method name="is_committing_action" qualifiers="const">
<return type="bool">
</return>
<description>
diff --git a/doc/classes/VehicleBody.xml b/doc/classes/VehicleBody3D.xml
index 74879419a1..b8b85ff605 100644
--- a/doc/classes/VehicleBody.xml
+++ b/doc/classes/VehicleBody3D.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VehicleBody" inherits="RigidBody" version="4.0">
+<class name="VehicleBody3D" inherits="RigidBody3D" version="4.0">
<brief_description>
Physics body that simulates the behavior of a car.
</brief_description>
<description>
- This node implements all the physics logic needed to simulate a car. It is based on the raycast vehicle system commonly found in physics engines. You will need to add a [CollisionShape] for the main body of your vehicle and add [VehicleWheel] nodes for the wheels. You should also add a [MeshInstance] to this node for the 3D model of your car but this model should not include meshes for the wheels. You should control the vehicle by using the [member brake], [member engine_force], and [member steering] properties and not change the position or orientation of this node directly.
- [b]Note:[/b] The origin point of your VehicleBody will determine the center of gravity of your vehicle so it is better to keep this low and move the [CollisionShape] and [MeshInstance] upwards.
+ This node implements all the physics logic needed to simulate a car. It is based on the raycast vehicle system commonly found in physics engines. You will need to add a [CollisionShape3D] for the main body of your vehicle and add [VehicleWheel3D] nodes for the wheels. You should also add a [MeshInstance3D] to this node for the 3D model of your car but this model should not include meshes for the wheels. You should control the vehicle by using the [member brake], [member engine_force], and [member steering] properties and not change the position or orientation of this node directly.
+ [b]Note:[/b] The origin point of your VehicleBody3D will determine the center of gravity of your vehicle so it is better to keep this low and move the [CollisionShape3D] and [MeshInstance3D] upwards.
</description>
<tutorials>
</tutorials>
@@ -13,16 +13,16 @@
</methods>
<members>
<member name="brake" type="float" setter="set_brake" getter="get_brake" default="0.0">
- Slows down the vehicle by applying a braking force. The vehicle is only slowed down if the wheels are in contact with a surface. The force you need to apply to adequately slow down your vehicle depends on the [member RigidBody.mass] of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 30 range for hard braking.
+ Slows down the vehicle by applying a braking force. The vehicle is only slowed down if the wheels are in contact with a surface. The force you need to apply to adequately slow down your vehicle depends on the [member RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 30 range for hard braking.
</member>
<member name="engine_force" type="float" setter="set_engine_force" getter="get_engine_force" default="0.0">
- Accelerates the vehicle by applying an engine force. The vehicle is only speed up if the wheels that have [member VehicleWheel.use_as_traction] set to [code]true[/code] and are in contact with a surface. The [member RigidBody.mass] of the vehicle has an effect on the acceleration of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 range for acceleration.
+ Accelerates the vehicle by applying an engine force. The vehicle is only speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set to [code]true[/code] and are in contact with a surface. The [member RigidBody3D.mass] of the vehicle has an effect on the acceleration of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 range for acceleration.
[b]Note:[/b] The simulation does not take the effect of gears into account, you will need to add logic for this if you wish to simulate gears.
A negative value will result in the vehicle reversing.
</member>
<member name="mass" type="float" setter="set_mass" getter="get_mass" override="true" default="40.0" />
<member name="steering" type="float" setter="set_steering" getter="get_steering" default="0.0">
- The steering angle for the vehicle. Setting this to a non-zero value will result in the vehicle turning when it's moving. Wheels that have [member VehicleWheel.use_as_steering] set to [code]true[/code] will automatically be rotated.
+ The steering angle for the vehicle. Setting this to a non-zero value will result in the vehicle turning when it's moving. Wheels that have [member VehicleWheel3D.use_as_steering] set to [code]true[/code] will automatically be rotated.
</member>
<member name="weight" type="float" setter="set_weight" getter="get_weight" override="true" default="392.0" />
</members>
diff --git a/doc/classes/VehicleWheel.xml b/doc/classes/VehicleWheel3D.xml
index 1a6a226fd1..c71d797eff 100644
--- a/doc/classes/VehicleWheel.xml
+++ b/doc/classes/VehicleWheel3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VehicleWheel" inherits="Spatial" version="4.0">
+<class name="VehicleWheel3D" inherits="Node3D" version="4.0">
<brief_description>
Physics object that simulates the behavior of a wheel.
</brief_description>
<description>
- This node needs to be used as a child node of [VehicleBody] and simulates the behavior of one of its wheels. This node also acts as a collider to detect if the wheel is touching a surface.
+ This node needs to be used as a child node of [VehicleBody3D] and simulates the behavior of one of its wheels. This node also acts as a collider to detect if the wheel is touching a surface.
</description>
<tutorials>
</tutorials>
@@ -33,7 +33,7 @@
</methods>
<members>
<member name="brake" type="float" setter="set_brake" getter="get_brake" default="0.0">
- Slows down the wheel by applying a braking force. The wheel is only slowed down if it is in contact with a surface. The force you need to apply to adequately slow down your vehicle depends on the [member RigidBody.mass] of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 30 range for hard braking.
+ Slows down the wheel by applying a braking force. The wheel is only slowed down if it is in contact with a surface. The force you need to apply to adequately slow down your vehicle depends on the [member RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 30 range for hard braking.
</member>
<member name="damping_compression" type="float" setter="set_damping_compression" getter="get_damping_compression" default="0.83">
The damping applied to the spring when the spring is being compressed. This value should be between 0.0 (no damping) and 1.0. A value of 0.0 means the car will keep bouncing as the spring keeps its energy. A good value for this is around 0.3 for a normal car, 0.5 for a race car.
@@ -42,7 +42,7 @@
The damping applied to the spring when relaxing. This value should be between 0.0 (no damping) and 1.0. This value should always be slightly higher than the [member damping_compression] property. For a [member damping_compression] value of 0.3, try a relaxation value of 0.5.
</member>
<member name="engine_force" type="float" setter="set_engine_force" getter="get_engine_force" default="0.0">
- Accelerates the wheel by applying an engine force. The wheel is only speed up if it is in contact with a surface. The [member RigidBody.mass] of the vehicle has an effect on the acceleration of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 range for acceleration.
+ Accelerates the wheel by applying an engine force. The wheel is only speed up if it is in contact with a surface. The [member RigidBody3D.mass] of the vehicle has an effect on the acceleration of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 range for acceleration.
[b]Note:[/b] The simulation does not take the effect of gears into account, you will need to add logic for this if you wish to simulate gears.
A negative value will result in the wheel reversing.
</member>
@@ -50,7 +50,7 @@
The steering angle for the wheel. Setting this to a non-zero value will result in the vehicle turning when it's moving.
</member>
<member name="suspension_max_force" type="float" setter="set_suspension_max_force" getter="get_suspension_max_force" default="6000.0">
- The maximum force the spring can resist. This value should be higher than a quarter of the [member RigidBody.mass] of the [VehicleBody] or the spring will not carry the weight of the vehicle. Good results are often obtained by a value that is about 3× to 4× this number.
+ The maximum force the spring can resist. This value should be higher than a quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the spring will not carry the weight of the vehicle. Good results are often obtained by a value that is about 3× to 4× this number.
</member>
<member name="suspension_stiffness" type="float" setter="set_suspension_stiffness" getter="get_suspension_stiffness" default="5.88">
This value defines the stiffness of the suspension. Use a value lower than 50 for an off-road car, a value between 50 and 100 for a race car and try something around 200 for something like a Formula 1 car.
@@ -59,10 +59,10 @@
This is the distance the suspension can travel. As Godot units are equivalent to meters, keep this setting relatively low. Try a value between 0.1 and 0.3 depending on the type of car.
</member>
<member name="use_as_steering" type="bool" setter="set_use_as_steering" getter="is_used_as_steering" default="false">
- If [code]true[/code], this wheel will be turned when the car steers. This value is used in conjunction with [member VehicleBody.steering] and ignored if you are using the per-wheel [member steering] value instead.
+ If [code]true[/code], this wheel will be turned when the car steers. This value is used in conjunction with [member VehicleBody3D.steering] and ignored if you are using the per-wheel [member steering] value instead.
</member>
<member name="use_as_traction" type="bool" setter="set_use_as_traction" getter="is_used_as_traction" default="false">
- If [code]true[/code], this wheel transfers engine force to the ground to propel the vehicle forward. This value is used in conjunction with [member VehicleBody.engine_force] and ignored if you are using the per-wheel [member engine_force] value instead.
+ If [code]true[/code], this wheel transfers engine force to the ground to propel the vehicle forward. This value is used in conjunction with [member VehicleBody3D.engine_force] and ignored if you are using the per-wheel [member engine_force] value instead.
</member>
<member name="wheel_friction_slip" type="float" setter="set_friction_slip" getter="get_friction_slip" default="10.5">
This determines how much grip this wheel has. It is combined with the friction setting of the surface the wheel is in contact with. 0.0 means no grip, 1.0 is normal grip. For a drift car setup, try setting the grip of the rear wheels slightly lower than the front wheels, or use a lower value to simulate tire wear.
diff --git a/doc/classes/SpatialVelocityTracker.xml b/doc/classes/VelocityTracker3D.xml
index 7a4e0c054a..98f7533c76 100644
--- a/doc/classes/SpatialVelocityTracker.xml
+++ b/doc/classes/VelocityTracker3D.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="SpatialVelocityTracker" inherits="Reference" version="4.0">
+<class name="VelocityTracker3D" inherits="Reference" version="4.0">
<brief_description>
</brief_description>
<description>
diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml
index 0632be28e1..5826822c6e 100644
--- a/doc/classes/Viewport.xml
+++ b/doc/classes/Viewport.xml
@@ -4,9 +4,9 @@
Creates a sub-view into the screen.
</brief_description>
<description>
- A Viewport creates a different view into the screen, or a sub-view inside another viewport. Children 2D Nodes will display on it, and children Camera 3D nodes will render on it too.
+ A Viewport creates a different view into the screen, or a sub-view inside another viewport. Children 2D Nodes will display on it, and children Camera3D 3D nodes will render on it too.
Optionally, a viewport can have its own 2D or 3D world, so they don't share what they draw with other viewports.
- If a viewport is a child of a [ViewportContainer], it will automatically take up its size, otherwise it must be set manually.
+ If a viewport is a child of a [SubViewportContainer], it will automatically take up its size, otherwise it must be set manually.
Viewports can also choose to be audio listeners, so they generate positional audio depending on a 2D or 3D camera child of it.
Also, viewports can be assigned to different screens in case the devices have multiple screens.
Finally, viewports can also behave as render targets, in which case they will not be visible unless the associated texture is used to draw.
@@ -17,7 +17,7 @@
</tutorials>
<methods>
<method name="find_world" qualifiers="const">
- <return type="World">
+ <return type="World3D">
</return>
<description>
Returns the 3D world of the viewport, or if none the world of the parent viewport.
@@ -31,7 +31,7 @@
</description>
</method>
<method name="get_camera" qualifiers="const">
- <return type="Camera">
+ <return type="Camera3D">
</return>
<description>
Returns the active 3D camera.
@@ -44,13 +44,6 @@
Returns the total transform of the viewport.
</description>
</method>
- <method name="get_modal_stack_top" qualifiers="const">
- <return type="Control">
- </return>
- <description>
- Returns the topmost modal in the stack.
- </description>
- </method>
<method name="get_mouse_position" qualifiers="const">
<return type="Vector2">
</return>
@@ -76,13 +69,6 @@
Returns the [enum ShadowAtlasQuadrantSubdiv] of the specified quadrant.
</description>
</method>
- <method name="get_size_override" qualifiers="const">
- <return type="Vector2">
- </return>
- <description>
- Returns the size override set with [method set_size_override].
- </description>
- </method>
<method name="get_texture" qualifiers="const">
<return type="ViewportTexture">
</return>
@@ -99,7 +85,7 @@
<return type="RID">
</return>
<description>
- Returns the viewport's RID from the [VisualServer].
+ Returns the viewport's RID from the [RenderingServer].
</description>
</method>
<method name="get_visible_rect" qualifiers="const">
@@ -116,13 +102,6 @@
Returns the drag data from the GUI, that was previously returned by [method Control.get_drag_data].
</description>
</method>
- <method name="gui_has_modal_stack" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if there are visible modals on-screen.
- </description>
- </method>
<method name="gui_is_dragging" qualifiers="const">
<return type="bool">
</return>
@@ -133,31 +112,31 @@
<method name="input">
<return type="void">
</return>
- <argument index="0" name="local_event" type="InputEvent">
+ <argument index="0" name="event" type="InputEvent">
+ </argument>
+ <argument index="1" name="in_local_coords" type="bool" default="false">
</argument>
<description>
</description>
</method>
- <method name="is_input_handled" qualifiers="const">
- <return type="bool">
+ <method name="input_text">
+ <return type="void">
</return>
+ <argument index="0" name="text" type="String">
+ </argument>
<description>
</description>
</method>
- <method name="is_size_override_enabled" qualifiers="const">
+ <method name="is_embedding_subwindows" qualifiers="const">
<return type="bool">
</return>
<description>
- Returns [code]true[/code] if the size override is enabled. See [method set_size_override].
</description>
</method>
- <method name="set_attach_to_screen_rect">
- <return type="void">
+ <method name="is_input_handled" qualifiers="const">
+ <return type="bool">
</return>
- <argument index="0" name="rect" type="Rect2">
- </argument>
<description>
- Attaches this [Viewport] to the root [Viewport] with the specified rectangle. This bypasses the need for another node to display this [Viewport] but makes you responsible for updating the position of this [Viewport] manually.
</description>
</method>
<method name="set_input_as_handled">
@@ -178,23 +157,12 @@
Sets the number of subdivisions to use in the specified quadrant. A higher number of subdivisions allows you to have more shadows in the scene at once, but reduces the quality of the shadows. A good practice is to have quadrants with a varying number of subdivisions and to have as few subdivisions as possible.
</description>
</method>
- <method name="set_size_override">
- <return type="void">
- </return>
- <argument index="0" name="enable" type="bool">
- </argument>
- <argument index="1" name="size" type="Vector2" default="Vector2( -1, -1 )">
- </argument>
- <argument index="2" name="margin" type="Vector2" default="Vector2( 0, 0 )">
- </argument>
- <description>
- Sets the size override of the viewport. If the [code]enable[/code] parameter is [code]true[/code] the override is used, otherwise it uses the default size. If the size parameter is [code](-1, -1)[/code], it won't update the size.
- </description>
- </method>
<method name="unhandled_input">
<return type="void">
</return>
- <argument index="0" name="local_event" type="InputEvent">
+ <argument index="0" name="event" type="InputEvent">
+ </argument>
+ <argument index="1" name="in_local_coords" type="bool" default="false">
</argument>
<description>
</description>
@@ -217,9 +185,6 @@
</method>
</methods>
<members>
- <member name="arvr" type="bool" setter="set_use_arvr" getter="use_arvr" default="false">
- If [code]true[/code], the viewport will be used in AR/VR process.
- </member>
<member name="audio_listener_enable_2d" type="bool" setter="set_as_audio_listener_2d" getter="is_audio_listener_2d" default="false">
If [code]true[/code], the viewport will process 2D audio streams.
</member>
@@ -242,6 +207,8 @@
<member name="gui_disable_input" type="bool" setter="set_disable_input" getter="is_input_disabled" default="false">
If [code]true[/code], the viewport will not receive input event.
</member>
+ <member name="gui_embed_subwindows" type="bool" setter="set_embed_subwindows_hint" getter="get_embed_subwindows_hint" default="false">
+ </member>
<member name="gui_snap_controls_to_pixels" type="bool" setter="set_snap_controls_to_pixels" getter="is_snap_controls_to_pixels_enabled" default="true">
If [code]true[/code], the GUI controls on the viewport will lay pixel perfectly.
</member>
@@ -251,20 +218,11 @@
The multisample anti-aliasing mode. A higher number results in smoother edges at the cost of significantly worse performance. A value of 4 is best unless targeting very high-end systems.
</member>
<member name="own_world" type="bool" setter="set_use_own_world" getter="is_using_own_world" default="false">
- If [code]true[/code], the viewport will use [World] defined in [code]world[/code] property.
+ If [code]true[/code], the viewport will use [World3D] defined in [code]world[/code] property.
</member>
<member name="physics_object_picking" type="bool" setter="set_physics_object_picking" getter="get_physics_object_picking" default="false">
If [code]true[/code], the objects rendered by viewport become subjects of mouse picking process.
</member>
- <member name="render_direct_to_screen" type="bool" setter="set_use_render_direct_to_screen" getter="is_using_render_direct_to_screen" default="false">
- If [code]true[/code], renders the Viewport directly to the screen instead of to the root viewport. Only available in GLES2. This is a low-level optimization and should not be used in most cases. If used, reading from the Viewport or from [code]SCREEN_TEXTURE[/code] becomes unavailable. For more information see [method VisualServer.viewport_set_render_direct_to_screen].
- </member>
- <member name="render_target_clear_mode" type="int" setter="set_clear_mode" getter="get_clear_mode" enum="Viewport.ClearMode" default="0">
- The clear mode when viewport used as a render target.
- </member>
- <member name="render_target_update_mode" type="int" setter="set_update_mode" getter="get_update_mode" enum="Viewport.UpdateMode" default="2">
- The update mode when viewport used as a render target.
- </member>
<member name="shadow_atlas_quad_0" type="int" setter="set_shadow_atlas_quadrant_subdiv" getter="get_shadow_atlas_quadrant_subdiv" enum="Viewport.ShadowAtlasQuadrantSubdiv" default="2">
The subdivision amount of the first quadrant on the shadow atlas.
</member>
@@ -281,17 +239,11 @@
The shadow atlas' resolution (used for omni and spot lights). The value will be rounded up to the nearest power of 2.
[b]Note:[/b] If this is set to 0, shadows won't be visible. Since user-created viewports default to a value of 0, this value must be set above 0 manually.
</member>
- <member name="size" type="Vector2" setter="set_size" getter="get_size" default="Vector2( 0, 0 )">
- The width and height of viewport.
- </member>
- <member name="size_override_stretch" type="bool" setter="set_size_override_stretch" getter="is_size_override_stretch_enabled" default="false">
- If [code]true[/code], the size override affects stretch as well.
- </member>
<member name="transparent_bg" type="bool" setter="set_transparent_background" getter="has_transparent_background" default="false">
If [code]true[/code], the viewport should render its background as transparent.
</member>
- <member name="world" type="World" setter="set_world" getter="get_world">
- The custom [World] which can be used as 3D environment source.
+ <member name="world" type="World3D" setter="set_world" getter="get_world">
+ The custom [World3D] which can be used as 3D environment source.
</member>
<member name="world_2d" type="World2D" setter="set_world_2d" getter="get_world_2d">
The custom [World2D] which can be used as 2D environment source.
@@ -307,23 +259,11 @@
</signal>
<signal name="size_changed">
<description>
- Emitted when the size of the viewport is changed, whether by [method set_size_override], resize of window, or some other means.
+ Emitted when the size of the viewport is changed, whether by resizing of window, or some other means.
</description>
</signal>
</signals>
<constants>
- <constant name="UPDATE_DISABLED" value="0" enum="UpdateMode">
- Do not update the render target.
- </constant>
- <constant name="UPDATE_ONCE" value="1" enum="UpdateMode">
- Update the render target once, then switch to [constant UPDATE_DISABLED].
- </constant>
- <constant name="UPDATE_WHEN_VISIBLE" value="2" enum="UpdateMode">
- Update the render target only when it is visible. This is the default value.
- </constant>
- <constant name="UPDATE_ALWAYS" value="3" enum="UpdateMode">
- Always update the render target.
- </constant>
<constant name="SHADOW_ATLAS_QUADRANT_SUBDIV_DISABLED" value="0" enum="ShadowAtlasQuadrantSubdiv">
This quadrant will not be used.
</constant>
@@ -410,15 +350,6 @@
<constant name="MSAA_16X" value="4" enum="MSAA">
Use 16x Multisample Antialiasing. Likely unsupported on medium and low-end hardware.
</constant>
- <constant name="CLEAR_MODE_ALWAYS" value="0" enum="ClearMode">
- Always clear the render target before drawing.
- </constant>
- <constant name="CLEAR_MODE_NEVER" value="1" enum="ClearMode">
- Never clear the render target.
- </constant>
- <constant name="CLEAR_MODE_ONLY_NEXT_FRAME" value="2" enum="ClearMode">
- Clear the render target next frame, then switch to [constant CLEAR_MODE_NEVER].
- </constant>
<constant name="DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_NEAREST" value="0" enum="DefaultCanvasItemTextureFilter">
</constant>
<constant name="DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_LINEAR" value="1" enum="DefaultCanvasItemTextureFilter">
diff --git a/doc/classes/ViewportContainer.xml b/doc/classes/ViewportContainer.xml
deleted file mode 100644
index d2fbb85305..0000000000
--- a/doc/classes/ViewportContainer.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ViewportContainer" inherits="Container" version="4.0">
- <brief_description>
- Control for holding [Viewport]s.
- </brief_description>
- <description>
- A [Container] node that holds a [Viewport], automatically setting its size.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- </methods>
- <members>
- <member name="stretch" type="bool" setter="set_stretch" getter="is_stretch_enabled" default="false">
- If [code]true[/code], the viewport will be scaled to the control's size.
- </member>
- <member name="stretch_shrink" type="int" setter="set_stretch_shrink" getter="get_stretch_shrink" default="1">
- Divides the viewport's effective resolution by this value while preserving its scale. This can be used to speed up rendering.
- For example, a 1280×720 viewport with [member stretch_shrink] set to [code]2[/code] will be rendered at 640×360 while occupying the same size in the container.
- [b]Note:[/b] [member stretch] must be [code]true[/code] for this property to work.
- </member>
- </members>
- <constants>
- </constants>
-</class>
diff --git a/doc/classes/VisibilityEnabler2D.xml b/doc/classes/VisibilityEnabler2D.xml
index 98c3e5d78d..0bdecafbfa 100644
--- a/doc/classes/VisibilityEnabler2D.xml
+++ b/doc/classes/VisibilityEnabler2D.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and other nodes when they are not visible. It will only affect nodes with the same root node as the VisibilityEnabler2D, and the root node itself.
+ Note that VisibilityEnabler2D will not affect nodes added after scene initialization.
</description>
<tutorials>
</tutorials>
@@ -35,13 +36,13 @@
If [code]true[/code], [RigidBody2D] nodes will be paused.
</member>
<member name="pause_animated_sprites" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
- If [code]true[/code], [AnimatedSprite] nodes will be paused.
+ If [code]true[/code], [AnimatedSprite2D] nodes will be paused.
</member>
<member name="pause_animations" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
If [code]true[/code], [AnimationPlayer] nodes will be paused.
</member>
<member name="pause_particles" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
- If [code]true[/code], [Particles2D] nodes will be paused.
+ If [code]true[/code], [GPUParticles2D] nodes will be paused.
</member>
<member name="physics_process_parent" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="false">
If [code]true[/code], the parent's [method Node._physics_process] will be stopped.
@@ -58,7 +59,7 @@
This enabler will freeze [RigidBody2D] nodes.
</constant>
<constant name="ENABLER_PAUSE_PARTICLES" value="2" enum="Enabler">
- This enabler will stop [Particles2D] nodes.
+ This enabler will stop [GPUParticles2D] nodes.
</constant>
<constant name="ENABLER_PARENT_PROCESS" value="3" enum="Enabler">
This enabler will stop the parent's _process function.
@@ -67,7 +68,7 @@
This enabler will stop the parent's _physics_process function.
</constant>
<constant name="ENABLER_PAUSE_ANIMATED_SPRITES" value="5" enum="Enabler">
- This enabler will stop [AnimatedSprite] nodes animations.
+ This enabler will stop [AnimatedSprite2D] nodes animations.
</constant>
<constant name="ENABLER_MAX" value="6" enum="Enabler">
Represents the size of the [enum Enabler] enum.
diff --git a/doc/classes/VisibilityEnabler.xml b/doc/classes/VisibilityEnabler3D.xml
index 82b952fda6..9c25c6c7c8 100644
--- a/doc/classes/VisibilityEnabler.xml
+++ b/doc/classes/VisibilityEnabler3D.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisibilityEnabler" inherits="VisibilityNotifier" version="4.0">
+<class name="VisibilityEnabler3D" inherits="VisibilityNotifier3D" version="4.0">
<brief_description>
Enables certain nodes only when visible.
</brief_description>
<description>
- The VisibilityEnabler will disable [RigidBody] and [AnimationPlayer] nodes when they are not visible. It will only affect other nodes within the same scene as the VisibilityEnabler itself.
+ The VisibilityEnabler3D will disable [RigidBody3D] and [AnimationPlayer] nodes when they are not visible. It will only affect other nodes within the same scene as the VisibilityEnabler3D itself.
+ Note that VisibilityEnabler3D will not affect nodes added after scene initialization.
</description>
<tutorials>
</tutorials>
@@ -12,7 +13,7 @@
<method name="is_enabler_enabled" qualifiers="const">
<return type="bool">
</return>
- <argument index="0" name="enabler" type="int" enum="VisibilityEnabler.Enabler">
+ <argument index="0" name="enabler" type="int" enum="VisibilityEnabler3D.Enabler">
</argument>
<description>
Returns whether the enabler identified by given [enum Enabler] constant is active.
@@ -21,7 +22,7 @@
<method name="set_enabler">
<return type="void">
</return>
- <argument index="0" name="enabler" type="int" enum="VisibilityEnabler.Enabler">
+ <argument index="0" name="enabler" type="int" enum="VisibilityEnabler3D.Enabler">
</argument>
<argument index="1" name="enabled" type="bool">
</argument>
@@ -32,7 +33,7 @@
</methods>
<members>
<member name="freeze_bodies" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
- If [code]true[/code], [RigidBody] nodes will be paused.
+ If [code]true[/code], [RigidBody3D] nodes will be paused.
</member>
<member name="pause_animations" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
If [code]true[/code], [AnimationPlayer] nodes will be paused.
@@ -43,7 +44,7 @@
This enabler will pause [AnimationPlayer] nodes.
</constant>
<constant name="ENABLER_FREEZE_BODIES" value="1" enum="Enabler">
- This enabler will freeze [RigidBody] nodes.
+ This enabler will freeze [RigidBody3D] nodes.
</constant>
<constant name="ENABLER_MAX" value="2" enum="Enabler">
Represents the size of the [enum Enabler] enum.
diff --git a/doc/classes/VisibilityNotifier.xml b/doc/classes/VisibilityNotifier3D.xml
index 6161017884..d8a605c69c 100644
--- a/doc/classes/VisibilityNotifier.xml
+++ b/doc/classes/VisibilityNotifier3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisibilityNotifier" inherits="Spatial" version="4.0">
+<class name="VisibilityNotifier3D" inherits="Node3D" version="4.0">
<brief_description>
Detects when the node is visible on screen.
</brief_description>
<description>
- The VisibilityNotifier detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a [Camera]'s view.
+ The VisibilityNotifier3D detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a [Camera3D]'s view.
</description>
<tutorials>
</tutorials>
@@ -20,32 +20,32 @@
</methods>
<members>
<member name="aabb" type="AABB" setter="set_aabb" getter="get_aabb" default="AABB( -1, -1, -1, 2, 2, 2 )">
- The VisibilityNotifier's bounding box.
+ The VisibilityNotifier3D's bounding box.
</member>
</members>
<signals>
<signal name="camera_entered">
- <argument index="0" name="camera" type="Camera">
+ <argument index="0" name="camera" type="Camera3D">
</argument>
<description>
- Emitted when the VisibilityNotifier enters a [Camera]'s view.
+ Emitted when the VisibilityNotifier3D enters a [Camera3D]'s view.
</description>
</signal>
<signal name="camera_exited">
- <argument index="0" name="camera" type="Camera">
+ <argument index="0" name="camera" type="Camera3D">
</argument>
<description>
- Emitted when the VisibilityNotifier exits a [Camera]'s view.
+ Emitted when the VisibilityNotifier3D exits a [Camera3D]'s view.
</description>
</signal>
<signal name="screen_entered">
<description>
- Emitted when the VisibilityNotifier enters the screen.
+ Emitted when the VisibilityNotifier3D enters the screen.
</description>
</signal>
<signal name="screen_exited">
<description>
- Emitted when the VisibilityNotifier exits the screen.
+ Emitted when the VisibilityNotifier3D exits the screen.
</description>
</signal>
</signals>
diff --git a/doc/classes/VisualInstance.xml b/doc/classes/VisualInstance3D.xml
index 1bbd5cb64d..6451b3f330 100644
--- a/doc/classes/VisualInstance.xml
+++ b/doc/classes/VisualInstance3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="VisualInstance" inherits="Spatial" version="4.0">
+<class name="VisualInstance3D" inherits="Node3D" version="4.0">
<brief_description>
Parent of all visual 3D nodes.
</brief_description>
<description>
- The [VisualInstance] is used to connect a resource to a visual representation. All visual 3D nodes inherit from the [VisualInstance]. In general, you should not access the [VisualInstance] properties directly as they are accessed and managed by the nodes that inherit from [VisualInstance]. [VisualInstance] is the node representation of the [VisualServer] instance.
+ The [VisualInstance3D] is used to connect a resource to a visual representation. All visual 3D nodes inherit from the [VisualInstance3D]. In general, you should not access the [VisualInstance3D] properties directly as they are accessed and managed by the nodes that inherit from [VisualInstance3D]. [VisualInstance3D] is the node representation of the [RenderingServer] instance.
</description>
<tutorials>
</tutorials>
@@ -13,21 +13,21 @@
<return type="AABB">
</return>
<description>
- Returns the [AABB] (also known as the bounding box) for this [VisualInstance].
+ Returns the [AABB] (also known as the bounding box) for this [VisualInstance3D].
</description>
</method>
<method name="get_base" qualifiers="const">
<return type="RID">
</return>
<description>
- Returns the RID of the resource associated with this [VisualInstance]. For example, if the Node is a [MeshInstance], this will return the RID of the associated [Mesh].
+ Returns the RID of the resource associated with this [VisualInstance3D]. For example, if the Node is a [MeshInstance3D], this will return the RID of the associated [Mesh].
</description>
</method>
<method name="get_instance" qualifiers="const">
<return type="RID">
</return>
<description>
- Returns the RID of this instance. This RID is the same as the RID returned by [method VisualServer.instance_create]. This RID is needed if you want to call [VisualServer] functions directly on this [VisualInstance].
+ Returns the RID of this instance. This RID is the same as the RID returned by [method RenderingServer.instance_create]. This RID is needed if you want to call [RenderingServer] functions directly on this [VisualInstance3D].
</description>
</method>
<method name="get_layer_mask_bit" qualifiers="const">
@@ -43,8 +43,8 @@
<return type="AABB">
</return>
<description>
- Returns the transformed [AABB] (also known as the bounding box) for this [VisualInstance].
- Transformed in this case means the [AABB] plus the position, rotation, and scale of the [Spatial]'s [Transform].
+ Returns the transformed [AABB] (also known as the bounding box) for this [VisualInstance3D].
+ Transformed in this case means the [AABB] plus the position, rotation, and scale of the [Node3D]'s [Transform].
</description>
</method>
<method name="set_base">
@@ -53,7 +53,7 @@
<argument index="0" name="base" type="RID">
</argument>
<description>
- Sets the resource that is instantiated by this [VisualInstance], which changes how the engine handles the [VisualInstance] under the hood. Equivalent to [method VisualServer.instance_set_base].
+ Sets the resource that is instantiated by this [VisualInstance3D], which changes how the engine handles the [VisualInstance3D] under the hood. Equivalent to [method RenderingServer.instance_set_base].
</description>
</method>
<method name="set_layer_mask_bit">
@@ -70,8 +70,8 @@
</methods>
<members>
<member name="layers" type="int" setter="set_layer_mask" getter="get_layer_mask" default="1">
- The render layer(s) this [VisualInstance] is drawn on.
- This object will only be visible for [Camera]s whose cull mask includes the render object this [VisualInstance] is set to.
+ The render layer(s) this [VisualInstance3D] is drawn on.
+ This object will only be visible for [Camera3D]s whose cull mask includes the render object this [VisualInstance3D] is set to.
</member>
</members>
<constants>
diff --git a/doc/classes/Window.xml b/doc/classes/Window.xml
new file mode 100644
index 0000000000..e1a0f1f22a
--- /dev/null
+++ b/doc/classes/Window.xml
@@ -0,0 +1,419 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Window" inherits="Viewport" version="4.0">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="can_draw" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="child_controls_changed">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_flag" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="flag" type="int" enum="Window.Flags">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_real_size" qualifiers="const">
+ <return type="Vector2i">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_theme_color" qualifiers="const">
+ <return type="Color">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_theme_constant" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_theme_font" qualifiers="const">
+ <return type="Font">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_theme_icon" qualifiers="const">
+ <return type="Texture2D">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_theme_stylebox" qualifiers="const">
+ <return type="StyleBox">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="grab_focus">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="has_focus" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="has_theme_color" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="has_theme_constant" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="has_theme_font" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="has_theme_icon" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="has_theme_stylebox" qualifiers="const">
+ <return type="bool">
+ </return>
+ <argument index="0" name="name" type="StringName">
+ </argument>
+ <argument index="1" name="type" type="StringName" default="&quot;&quot;">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="hide">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_embedded" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_maximize_allowed" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="is_using_font_oversampling" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="move_to_foreground">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="popup">
+ <return type="void">
+ </return>
+ <argument index="0" name="rect" type="Rect2i" default="Rect2i( 0, 0, 0, 0 )">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="popup_centered">
+ <return type="void">
+ </return>
+ <argument index="0" name="minsize" type="Vector2i" default="Vector2i( 0, 0 )">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="popup_centered_clamped">
+ <return type="void">
+ </return>
+ <argument index="0" name="minsize" type="Vector2i" default="Vector2i( 0, 0 )">
+ </argument>
+ <argument index="1" name="fallback_ratio" type="float" default="0.75">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="popup_centered_ratio">
+ <return type="void">
+ </return>
+ <argument index="0" name="ratio" type="float" default="0.8">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="popup_on_parent">
+ <return type="void">
+ </return>
+ <argument index="0" name="parent_rect" type="Rect2i">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="request_attention">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="set_flag">
+ <return type="void">
+ </return>
+ <argument index="0" name="flag" type="int" enum="Window.Flags">
+ </argument>
+ <argument index="1" name="enabled" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_ime_active">
+ <return type="void">
+ </return>
+ <argument index="0" name="arg0" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_ime_position">
+ <return type="void">
+ </return>
+ <argument index="0" name="arg0" type="Vector2i">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_use_font_oversampling">
+ <return type="void">
+ </return>
+ <argument index="0" name="enable" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="show">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <members>
+ <member name="always_on_top" type="bool" setter="set_flag" getter="get_flag" default="false">
+ </member>
+ <member name="borderless" type="bool" setter="set_flag" getter="get_flag" default="false">
+ </member>
+ <member name="content_scale_aspect" type="int" setter="set_content_scale_aspect" getter="get_content_scale_aspect" enum="Window.ContentScaleAspect" default="0">
+ </member>
+ <member name="content_scale_mode" type="int" setter="set_content_scale_mode" getter="get_content_scale_mode" enum="Window.ContentScaleMode" default="0">
+ </member>
+ <member name="content_scale_size" type="Vector2i" setter="set_content_scale_size" getter="get_content_scale_size" default="Vector2i( 0, 0 )">
+ </member>
+ <member name="current_screen" type="int" setter="set_current_screen" getter="get_current_screen" default="0">
+ </member>
+ <member name="exclusive" type="bool" setter="set_exclusive" getter="is_exclusive" default="false">
+ </member>
+ <member name="max_size" type="Vector2i" setter="set_max_size" getter="get_max_size" default="Vector2i( 0, 0 )">
+ </member>
+ <member name="min_size" type="Vector2i" setter="set_min_size" getter="get_min_size" default="Vector2i( 0, 0 )">
+ </member>
+ <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="Window.Mode" default="0">
+ </member>
+ <member name="position" type="Vector2i" setter="set_position" getter="get_position" default="Vector2i( 0, 0 )">
+ </member>
+ <member name="size" type="Vector2i" setter="set_size" getter="get_size" default="Vector2i( 100, 100 )">
+ </member>
+ <member name="theme" type="Theme" setter="set_theme" getter="get_theme">
+ </member>
+ <member name="title" type="String" setter="set_title" getter="get_title" default="&quot;&quot;">
+ </member>
+ <member name="transient" type="bool" setter="set_transient" getter="is_transient" default="false">
+ </member>
+ <member name="transparent" type="bool" setter="set_flag" getter="get_flag" default="false">
+ </member>
+ <member name="unfocusable" type="bool" setter="set_flag" getter="get_flag" default="false">
+ </member>
+ <member name="unresizable" type="bool" setter="set_flag" getter="get_flag" default="false">
+ </member>
+ <member name="visible" type="bool" setter="set_visible" getter="is_visible" default="true">
+ </member>
+ <member name="wrap_controls" type="bool" setter="set_wrap_controls" getter="is_wrapping_controls" default="false">
+ </member>
+ </members>
+ <signals>
+ <signal name="about_to_popup">
+ <description>
+ </description>
+ </signal>
+ <signal name="close_requested">
+ <description>
+ </description>
+ </signal>
+ <signal name="files_dropped">
+ <argument index="0" name="files" type="PackedStringArray">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ <signal name="focus_entered">
+ <description>
+ </description>
+ </signal>
+ <signal name="focus_exited">
+ <description>
+ </description>
+ </signal>
+ <signal name="go_back_requested">
+ <description>
+ </description>
+ </signal>
+ <signal name="mouse_entered">
+ <description>
+ </description>
+ </signal>
+ <signal name="mouse_exited">
+ <description>
+ </description>
+ </signal>
+ <signal name="visibility_changed">
+ <description>
+ </description>
+ </signal>
+ <signal name="window_input">
+ <argument index="0" name="event" type="InputEvent">
+ </argument>
+ <description>
+ </description>
+ </signal>
+ </signals>
+ <constants>
+ <constant name="NOTIFICATION_VISIBILITY_CHANGED" value="30">
+ </constant>
+ <constant name="MODE_WINDOWED" value="0" enum="Mode">
+ </constant>
+ <constant name="MODE_MINIMIZED" value="1" enum="Mode">
+ </constant>
+ <constant name="MODE_MAXIMIZED" value="2" enum="Mode">
+ </constant>
+ <constant name="MODE_FULLSCREEN" value="3" enum="Mode">
+ </constant>
+ <constant name="FLAG_RESIZE_DISABLED" value="0" enum="Flags">
+ </constant>
+ <constant name="FLAG_BORDERLESS" value="1" enum="Flags">
+ </constant>
+ <constant name="FLAG_ALWAYS_ON_TOP" value="2" enum="Flags">
+ </constant>
+ <constant name="FLAG_TRANSPARENT" value="3" enum="Flags">
+ </constant>
+ <constant name="FLAG_NO_FOCUS" value="4" enum="Flags">
+ </constant>
+ <constant name="FLAG_MAX" value="5" enum="Flags">
+ </constant>
+ <constant name="CONTENT_SCALE_MODE_DISABLED" value="0" enum="ContentScaleMode">
+ </constant>
+ <constant name="CONTENT_SCALE_MODE_OBJECTS" value="1" enum="ContentScaleMode">
+ </constant>
+ <constant name="CONTENT_SCALE_MODE_PIXELS" value="2" enum="ContentScaleMode">
+ </constant>
+ <constant name="CONTENT_SCALE_ASPECT_IGNORE" value="0" enum="ContentScaleAspect">
+ </constant>
+ <constant name="CONTENT_SCALE_ASPECT_KEEP" value="1" enum="ContentScaleAspect">
+ </constant>
+ <constant name="CONTENT_SCALE_ASPECT_KEEP_WIDTH" value="2" enum="ContentScaleAspect">
+ </constant>
+ <constant name="CONTENT_SCALE_ASPECT_KEEP_HEIGHT" value="3" enum="ContentScaleAspect">
+ </constant>
+ <constant name="CONTENT_SCALE_ASPECT_EXPAND" value="4" enum="ContentScaleAspect">
+ </constant>
+ </constants>
+ <theme_items>
+ <theme_item name="close" type="Texture2D">
+ </theme_item>
+ <theme_item name="close_h_ofs" type="int" default="18">
+ </theme_item>
+ <theme_item name="close_highlight" type="Texture2D">
+ </theme_item>
+ <theme_item name="close_v_ofs" type="int" default="18">
+ </theme_item>
+ <theme_item name="panel" type="StyleBox">
+ </theme_item>
+ <theme_item name="resize_margin" type="int" default="4">
+ </theme_item>
+ <theme_item name="scaleborder_size" type="int" default="4">
+ </theme_item>
+ <theme_item name="title_color" type="Color" default="Color( 0, 0, 0, 1 )">
+ </theme_item>
+ <theme_item name="title_font" type="Font">
+ </theme_item>
+ <theme_item name="title_height" type="int" default="20">
+ </theme_item>
+ <theme_item name="window_panel" type="StyleBox">
+ </theme_item>
+ </theme_items>
+</class>
diff --git a/doc/classes/WindowDialog.xml b/doc/classes/WindowDialog.xml
deleted file mode 100644
index 8b6bf00508..0000000000
--- a/doc/classes/WindowDialog.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<class name="WindowDialog" inherits="Popup" version="4.0">
- <brief_description>
- Base class for window dialogs.
- </brief_description>
- <description>
- Windowdialog is the base class for all window-based dialogs. It's a by-default toplevel [Control] that draws a window decoration and allows motion and resizing.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- <method name="get_close_button">
- <return type="TextureButton">
- </return>
- <description>
- Returns the close [TextureButton].
- </description>
- </method>
- </methods>
- <members>
- <member name="resizable" type="bool" setter="set_resizable" getter="get_resizable" default="false">
- If [code]true[/code], the user can resize the window.
- </member>
- <member name="window_title" type="String" setter="set_title" getter="get_title" default="&quot;&quot;">
- The text displayed in the window's title bar.
- </member>
- </members>
- <constants>
- </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/World2D.xml b/doc/classes/World2D.xml
index 9e2d4cfde3..2d8382b7e3 100644
--- a/doc/classes/World2D.xml
+++ b/doc/classes/World2D.xml
@@ -13,13 +13,13 @@
</methods>
<members>
<member name="canvas" type="RID" setter="" getter="get_canvas">
- The [RID] of this world's canvas resource. Used by the [VisualServer] for 2D drawing.
+ The [RID] of this world's canvas resource. Used by the [RenderingServer] for 2D drawing.
</member>
- <member name="direct_space_state" type="Physics2DDirectSpaceState" setter="" getter="get_direct_space_state">
+ <member name="direct_space_state" type="PhysicsDirectSpaceState2D" setter="" getter="get_direct_space_state">
The state of this world's physics space. This allows arbitrary querying for collision.
</member>
<member name="space" type="RID" setter="" getter="get_space">
- The [RID] of this world's physics space resource. Used by the [Physics2DServer] for 2D physics, treating it as both a space and an area.
+ The [RID] of this world's physics space resource. Used by the [PhysicsServer2D] for 2D physics, treating it as both a space and an area.
</member>
</members>
<constants>
diff --git a/doc/classes/World.xml b/doc/classes/World3D.xml
index 48596c87d0..4224a2a2c3 100644
--- a/doc/classes/World.xml
+++ b/doc/classes/World3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="World" inherits="Resource" version="4.0">
+<class name="World3D" inherits="Resource" version="4.0">
<brief_description>
Class that has everything pertaining to a world.
</brief_description>
<description>
- Class that has everything pertaining to a world. A physics space, a visual scenario and a sound space. Spatial nodes register their resources into the current world.
+ Class that has everything pertaining to a world. A physics space, a visual scenario and a sound space. Node3D nodes register their resources into the current world.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html</link>
@@ -14,20 +14,20 @@
<members>
<member name="camera_effects" type="CameraEffects" setter="set_camera_effects" getter="get_camera_effects">
</member>
- <member name="direct_space_state" type="PhysicsDirectSpaceState" setter="" getter="get_direct_space_state">
- The World's physics direct space state, used for making various queries. Might be used only during [code]_physics_process[/code].
+ <member name="direct_space_state" type="PhysicsDirectSpaceState3D" setter="" getter="get_direct_space_state">
+ The World3D's physics direct space state, used for making various queries. Might be used only during [code]_physics_process[/code].
</member>
<member name="environment" type="Environment" setter="set_environment" getter="get_environment">
- The World's [Environment].
+ The World3D's [Environment].
</member>
<member name="fallback_environment" type="Environment" setter="set_fallback_environment" getter="get_fallback_environment">
- The World's fallback_environment will be used if the World's [Environment] fails or is missing.
+ The World3D's fallback_environment will be used if the World3D's [Environment] fails or is missing.
</member>
<member name="scenario" type="RID" setter="" getter="get_scenario">
- The World's visual scenario.
+ The World3D's visual scenario.
</member>
<member name="space" type="RID" setter="" getter="get_space">
- The World's physics space.
+ The World3D's physics space.
</member>
</members>
<constants>
diff --git a/doc/classes/WorldEnvironment.xml b/doc/classes/WorldEnvironment.xml
index 73500868a8..92b75621c2 100644
--- a/doc/classes/WorldEnvironment.xml
+++ b/doc/classes/WorldEnvironment.xml
@@ -5,7 +5,7 @@
</brief_description>
<description>
The [WorldEnvironment] node is used to configure the default [Environment] for the scene.
- The parameters defined in the [WorldEnvironment] can be overridden by an [Environment] node set on the current [Camera]. Additionally, only one [WorldEnvironment] may be instanced in a given scene at a time.
+ The parameters defined in the [WorldEnvironment] can be overridden by an [Environment] node set on the current [Camera3D]. Additionally, only one [WorldEnvironment] may be instanced in a given scene at a time.
The [WorldEnvironment] allows the user to specify default lighting parameters (e.g. ambient lighting), various post-processing effects (e.g. SSAO, DOF, Tonemapping), and how to draw the background (e.g. solid color, skybox). Usually, these are added in order to improve the realism/color balance of the scene.
</description>
<tutorials>
diff --git a/doc/classes/WorldMarginShape.xml b/doc/classes/WorldMarginShape3D.xml
index 54f76a066b..a91447056b 100644
--- a/doc/classes/WorldMarginShape.xml
+++ b/doc/classes/WorldMarginShape3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="WorldMarginShape" inherits="Shape" version="4.0">
+<class name="WorldMarginShape3D" inherits="Shape3D" 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 [WorldMarginShape] 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 [WorldMarginShape3D] is used in a [PhysicsBody3D], 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 [WorldMarginShape] for collision.
+ The [Plane] used by the [WorldMarginShape3D] for collision.
</member>
</members>
<constants>
diff --git a/doc/classes/ARVRAnchor.xml b/doc/classes/XRAnchor3D.xml
index 87181f572d..a409c79230 100644
--- a/doc/classes/ARVRAnchor.xml
+++ b/doc/classes/XRAnchor3D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVRAnchor" inherits="Spatial" version="4.0">
+<class name="XRAnchor3D" inherits="Node3D" version="4.0">
<brief_description>
An anchor point in AR space.
</brief_description>
<description>
- The [ARVRAnchor] point is a spatial node that maps a real world location identified by the AR platform to a position within the game world. For example, as long as plane detection in ARKit is on, ARKit will identify and update the position of planes (tables, floors, etc) and create anchors for them.
+ The [XRAnchor3D] point is a spatial node that maps a real world location identified by the AR platform to a position within the game world. For example, as long as plane detection in ARKit is on, ARKit will identify and update the position of planes (tables, floors, etc) and create anchors for them.
This node is mapped to one of the anchors through its unique ID. When you receive a signal that a new anchor is available, you should add this node to your scene for that anchor. You can predefine nodes and set the ID; the nodes will simply remain on 0,0,0 until a plane is recognized.
Keep in mind that, as long as plane detection is enabled, the size, placing and orientation of an anchor will be updated as the detection logic learns more about the real world out there especially if only part of the surface is in view.
</description>
@@ -29,7 +29,7 @@
<return type="Mesh">
</return>
<description>
- If provided by the [ARVRInterface], this returns a mesh object for the anchor. For an anchor, this can be a shape related to the object being tracked or it can be a mesh that provides topology related to the anchor and can be used to create shadows/reflections on surfaces or for generating collision shapes.
+ If provided by the [XRInterface], this returns a mesh object for the anchor. For an anchor, this can be a shape related to the object being tracked or it can be a mesh that provides topology related to the anchor and can be used to create shadows/reflections on surfaces or for generating collision shapes.
</description>
</method>
<method name="get_plane" qualifiers="const">
diff --git a/doc/classes/ARVRCamera.xml b/doc/classes/XRCamera3D.xml
index a571d26c83..4d86e24daa 100644
--- a/doc/classes/ARVRCamera.xml
+++ b/doc/classes/XRCamera3D.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVRCamera" inherits="Camera" version="4.0">
+<class name="XRCamera3D" inherits="Camera3D" version="4.0">
<brief_description>
A camera node with a few overrules for AR/VR applied, such as location tracking.
</brief_description>
<description>
This is a helper spatial node for our camera; note that, if stereoscopic rendering is applicable (VR-HMD), most of the camera properties are ignored, as the HMD information overrides them. The only properties that can be trusted are the near and far planes.
- The position and orientation of this node is automatically updated by the ARVR Server to represent the location of the HMD if such tracking is available and can thus be used by game logic. Note that, in contrast to the ARVR Controller, the render thread has access to the most up-to-date tracking data of the HMD and the location of the ARVRCamera can lag a few milliseconds behind what is used for rendering as a result.
+ The position and orientation of this node is automatically updated by the XR Server to represent the location of the HMD if such tracking is available and can thus be used by game logic. Note that, in contrast to the XR Controller, the render thread has access to the most up-to-date tracking data of the HMD and the location of the XRCamera3D can lag a few milliseconds behind what is used for rendering as a result.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/vr/index.html</link>
diff --git a/doc/classes/ARVRController.xml b/doc/classes/XRController3D.xml
index ebae25feb7..e4a06a80db 100644
--- a/doc/classes/ARVRController.xml
+++ b/doc/classes/XRController3D.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVRController" inherits="Spatial" version="4.0">
+<class name="XRController3D" inherits="Node3D" version="4.0">
<brief_description>
A spatial node representing a spatially-tracked controller.
</brief_description>
<description>
This is a helper spatial node that is linked to the tracking of controllers. It also offers several handy passthroughs to the state of buttons and such on the controllers.
- Controllers are linked by their ID. You can create controller nodes before the controllers are available. If your game always uses two controllers (one for each hand), you can predefine the controllers with ID 1 and 2; they will become active as soon as the controllers are identified. If you expect additional controllers to be used, you should react to the signals and add ARVRController nodes to your scene.
- The position of the controller node is automatically updated by the [ARVRServer]. This makes this node ideal to add child nodes to visualize the controller.
+ Controllers are linked by their ID. You can create controller nodes before the controllers are available. If your game always uses two controllers (one for each hand), you can predefine the controllers with ID 1 and 2; they will become active as soon as the controllers are identified. If you expect additional controllers to be used, you should react to the signals and add XRController3D nodes to your scene.
+ The position of the controller node is automatically updated by the [XRServer]. This makes this node ideal to add child nodes to visualize the controller.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/vr/index.html</link>
@@ -20,17 +20,17 @@
</description>
</method>
<method name="get_hand" qualifiers="const">
- <return type="int" enum="ARVRPositionalTracker.TrackerHand">
+ <return type="int" enum="XRPositionalTracker.TrackerHand">
</return>
<description>
- Returns the hand holding this controller, if known. See [enum ARVRPositionalTracker.TrackerHand].
+ Returns the hand holding this controller, if known. See [enum XRPositionalTracker.TrackerHand].
</description>
</method>
<method name="get_is_active" qualifiers="const">
<return type="bool">
</return>
<description>
- Returns [code]true[/code] if the bound controller is active. ARVR systems attempt to track active controllers.
+ Returns [code]true[/code] if the bound controller is active. XR systems attempt to track active controllers.
</description>
</method>
<method name="get_joystick_axis" qualifiers="const">
@@ -46,14 +46,14 @@
<return type="int">
</return>
<description>
- Returns the ID of the joystick object bound to this. Every controller tracked by the [ARVRServer] that has buttons and axis will also be registered as a joystick within Godot. This means that all the normal joystick tracking and input mapping will work for buttons and axis found on the AR/VR controllers. This ID is purely offered as information so you can link up the controller with its joystick entry.
+ Returns the ID of the joystick object bound to this. Every controller tracked by the [XRServer] that has buttons and axis will also be registered as a joystick within Godot. This means that all the normal joystick tracking and input mapping will work for buttons and axis found on the AR/VR controllers. This ID is purely offered as information so you can link up the controller with its joystick entry.
</description>
</method>
<method name="get_mesh" qualifiers="const">
<return type="Mesh">
</return>
<description>
- If provided by the [ARVRInterface], this returns a mesh associated with the controller. This can be used to visualize the controller.
+ If provided by the [XRInterface], this returns a mesh associated with the controller. This can be used to visualize the controller.
</description>
</method>
<method name="is_button_pressed" qualifiers="const">
@@ -70,11 +70,11 @@
<member name="controller_id" type="int" setter="set_controller_id" getter="get_controller_id" default="1">
The controller's ID.
A controller ID of 0 is unbound and will always result in an inactive node. Controller ID 1 is reserved for the first controller that identifies itself as the left-hand controller and ID 2 is reserved for the first controller that identifies itself as the right-hand controller.
- For any other controller that the [ARVRServer] detects, we continue with controller ID 3.
+ For any other controller that the [XRServer] detects, we continue with controller ID 3.
When a controller is turned off, its slot is freed. This ensures controllers will keep the same ID even when controllers with lower IDs are turned off.
</member>
<member name="rumble" type="float" setter="set_rumble" getter="get_rumble" default="0.0">
- The degree to which the controller vibrates. Ranges from [code]0.0[/code] to [code]1.0[/code] with precision [code].01[/code]. If changed, updates [member ARVRPositionalTracker.rumble] accordingly.
+ The degree to which the controller vibrates. Ranges from [code]0.0[/code] to [code]1.0[/code] with precision [code].01[/code]. If changed, updates [member XRPositionalTracker.rumble] accordingly.
This is a useful property to animate if you want the controller to vibrate for a limited duration.
</member>
</members>
diff --git a/doc/classes/ARVRInterface.xml b/doc/classes/XRInterface.xml
index 0727bda668..1985010223 100644
--- a/doc/classes/ARVRInterface.xml
+++ b/doc/classes/XRInterface.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVRInterface" inherits="Reference" version="4.0">
+<class name="XRInterface" inherits="Reference" version="4.0">
<brief_description>
Base class for an AR/VR interface implementation.
</brief_description>
<description>
- This class needs to be implemented to make an AR or VR platform available to Godot and these should be implemented as C++ modules or GDNative modules (note that for GDNative the subclass ARVRScriptInterface should be used). Part of the interface is exposed to GDScript so you can detect, enable and configure an AR or VR platform.
- Interfaces should be written in such a way that simply enabling them will give us a working setup. You can query the available interfaces through [ARVRServer].
+ This class needs to be implemented to make an AR or VR platform available to Godot and these should be implemented as C++ modules or GDNative modules (note that for GDNative the subclass XRScriptInterface should be used). Part of the interface is exposed to GDScript so you can detect, enable and configure an AR or VR platform.
+ Interfaces should be written in such a way that simply enabling them will give us a working setup. You can query the available interfaces through [XRServer].
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/vr/index.html</link>
@@ -40,7 +40,7 @@
</description>
</method>
<method name="get_tracking_status" qualifiers="const">
- <return type="int" enum="ARVRInterface.Tracking_status">
+ <return type="int" enum="XRInterface.Tracking_status">
</return>
<description>
If supported, returns the status of our tracking. This will allow you to provide feedback to the user whether there are issues with positional tracking.
@@ -84,19 +84,19 @@
</member>
</members>
<constants>
- <constant name="ARVR_NONE" value="0" enum="Capabilities">
- No ARVR capabilities.
+ <constant name="XR_NONE" value="0" enum="Capabilities">
+ No XR capabilities.
</constant>
- <constant name="ARVR_MONO" value="1" enum="Capabilities">
+ <constant name="XR_MONO" value="1" enum="Capabilities">
This interface can work with normal rendering output (non-HMD based AR).
</constant>
- <constant name="ARVR_STEREO" value="2" enum="Capabilities">
+ <constant name="XR_STEREO" value="2" enum="Capabilities">
This interface supports stereoscopic rendering.
</constant>
- <constant name="ARVR_AR" value="4" enum="Capabilities">
+ <constant name="XR_AR" value="4" enum="Capabilities">
This interface supports AR (video background and real world tracking).
</constant>
- <constant name="ARVR_EXTERNAL" value="8" enum="Capabilities">
+ <constant name="XR_EXTERNAL" value="8" enum="Capabilities">
This interface outputs to an external device. If the main viewport is used, the on screen output is an unmodified buffer of either the left or right eye (stretched if the viewport size is not changed to the same aspect ratio of [method get_render_targetsize]). Using a separate viewport node frees up the main viewport for other purposes.
</constant>
<constant name="EYE_MONO" value="0" enum="Eyes">
@@ -108,19 +108,19 @@
<constant name="EYE_RIGHT" value="2" enum="Eyes">
Right eye output, this is mostly used internally when rendering the image for the right eye and obtaining positioning and projection information.
</constant>
- <constant name="ARVR_NORMAL_TRACKING" value="0" enum="Tracking_status">
+ <constant name="XR_NORMAL_TRACKING" value="0" enum="Tracking_status">
Tracking is behaving as expected.
</constant>
- <constant name="ARVR_EXCESSIVE_MOTION" value="1" enum="Tracking_status">
+ <constant name="XR_EXCESSIVE_MOTION" value="1" enum="Tracking_status">
Tracking is hindered by excessive motion (the player is moving faster than tracking can keep up).
</constant>
- <constant name="ARVR_INSUFFICIENT_FEATURES" value="2" enum="Tracking_status">
+ <constant name="XR_INSUFFICIENT_FEATURES" value="2" enum="Tracking_status">
Tracking is hindered by insufficient features, it's too dark (for camera-based tracking), player is blocked, etc.
</constant>
- <constant name="ARVR_UNKNOWN_TRACKING" value="3" enum="Tracking_status">
+ <constant name="XR_UNKNOWN_TRACKING" value="3" enum="Tracking_status">
We don't know the status of the tracking or this interface does not provide feedback.
</constant>
- <constant name="ARVR_NOT_TRACKING" value="4" enum="Tracking_status">
+ <constant name="XR_NOT_TRACKING" value="4" enum="Tracking_status">
Tracking is not functional (camera not plugged in or obscured, lighthouses turned off, etc.).
</constant>
</constants>
diff --git a/doc/classes/ARVROrigin.xml b/doc/classes/XROrigin3D.xml
index 9a386fd154..57cf673d30 100644
--- a/doc/classes/ARVROrigin.xml
+++ b/doc/classes/XROrigin3D.xml
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVROrigin" inherits="Spatial" version="4.0">
+<class name="XROrigin3D" inherits="Node3D" version="4.0">
<brief_description>
The origin point in AR/VR.
</brief_description>
<description>
This is a special node within the AR/VR system that maps the physical location of the center of our tracking space to the virtual location within our game world.
- There should be only one of these nodes in your scene and you must have one. All the ARVRCamera, ARVRController and ARVRAnchor nodes should be direct children of this node for spatial tracking to work correctly.
+ There should be only one of these nodes in your scene and you must have one. All the XRCamera3D, XRController3D and XRAnchor3D nodes should be direct children of this node for spatial tracking to work correctly.
It is the position of this node that you update when your character needs to move through your game world while we're not moving in the real world. Movement in the real world is always in relation to this origin point.
- For example, if your character is driving a car, the ARVROrigin node should be a child node of this car. Or, if you're implementing a teleport system to move your character, you should change the position of this node.
+ For example, if your character is driving a car, the XROrigin3D node should be a child node of this car. Or, if you're implementing a teleport system to move your character, you should change the position of this node.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/vr/index.html</link>
@@ -17,7 +17,7 @@
<members>
<member name="world_scale" type="float" setter="set_world_scale" getter="get_world_scale" default="1.0">
Allows you to adjust the scale to your game's units. Most AR/VR platforms assume a scale of 1 game world unit = 1 real world meter.
- [b]Note:[/b] This method is a passthrough to the [ARVRServer] itself.
+ [b]Note:[/b] This method is a passthrough to the [XRServer] itself.
</member>
</members>
<constants>
diff --git a/doc/classes/ARVRPositionalTracker.xml b/doc/classes/XRPositionalTracker.xml
index 640b721d37..2f7cc21703 100644
--- a/doc/classes/ARVRPositionalTracker.xml
+++ b/doc/classes/XRPositionalTracker.xml
@@ -1,19 +1,19 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVRPositionalTracker" inherits="Object" version="4.0">
+<class name="XRPositionalTracker" inherits="Object" version="4.0">
<brief_description>
A tracked object.
</brief_description>
<description>
An instance of this object represents a device that is tracked, such as a controller or anchor point. HMDs aren't represented here as they are handled internally.
- As controllers are turned on and the AR/VR interface detects them, instances of this object are automatically added to this list of active tracking objects accessible through the [ARVRServer].
- The [ARVRController] and [ARVRAnchor] both consume objects of this type and should be used in your project. The positional trackers are just under-the-hood objects that make this all work. These are mostly exposed so that GDNative-based interfaces can interact with them.
+ As controllers are turned on and the AR/VR interface detects them, instances of this object are automatically added to this list of active tracking objects accessible through the [XRServer].
+ The [XRController3D] and [XRAnchor3D] both consume objects of this type and should be used in your project. The positional trackers are just under-the-hood objects that make this all work. These are mostly exposed so that GDNative-based interfaces can interact with them.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/vr/index.html</link>
</tutorials>
<methods>
<method name="get_hand" qualifiers="const">
- <return type="int" enum="ARVRPositionalTracker.TrackerHand">
+ <return type="int" enum="XRPositionalTracker.TrackerHand">
</return>
<description>
Returns the hand holding this tracker, if known. See [enum TrackerHand] constants.
@@ -58,7 +58,7 @@
<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.
+ 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 [XRController3D] and [XRAnchor3D] nodes.
</description>
</method>
<method name="get_tracks_orientation" qualifiers="const">
@@ -85,7 +85,7 @@
</description>
</method>
<method name="get_type" qualifiers="const">
- <return type="int" enum="ARVRServer.TrackerType">
+ <return type="int" enum="XRServer.TrackerType">
</return>
<description>
Returns the tracker's type.
diff --git a/doc/classes/ARVRServer.xml b/doc/classes/XRServer.xml
index 6db7121858..5e6002aee3 100644
--- a/doc/classes/ARVRServer.xml
+++ b/doc/classes/XRServer.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="ARVRServer" inherits="Object" version="4.0">
+<class name="XRServer" inherits="Object" version="4.0">
<brief_description>
Server for AR and VR features.
</brief_description>
@@ -13,7 +13,7 @@
<method name="center_on_hmd">
<return type="void">
</return>
- <argument index="0" name="rotation_mode" type="int" enum="ARVRServer.RotationMode">
+ <argument index="0" name="rotation_mode" type="int" enum="XRServer.RotationMode">
</argument>
<argument index="1" name="keep_height" type="bool">
</argument>
@@ -27,7 +27,7 @@
</description>
</method>
<method name="find_interface" qualifiers="const">
- <return type="ARVRInterface">
+ <return type="XRInterface">
</return>
<argument index="0" name="name" type="String">
</argument>
@@ -43,7 +43,7 @@
</description>
</method>
<method name="get_interface" qualifiers="const">
- <return type="ARVRInterface">
+ <return type="XRInterface">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -69,7 +69,7 @@
<return type="int">
</return>
<description>
- Returns the absolute timestamp (in μs) of the last [ARVRServer] commit of the AR/VR eyes to [VisualServer]. The value comes from an internal call to [method OS.get_ticks_usec].
+ Returns the absolute timestamp (in μs) of the last [XRServer] commit of the AR/VR eyes to [RenderingServer]. The value comes from an internal call to [method OS.get_ticks_usec].
</description>
</method>
<method name="get_last_frame_usec">
@@ -83,7 +83,7 @@
<return type="int">
</return>
<description>
- Returns the absolute timestamp (in μs) of the last [ARVRServer] process callback. The value comes from an internal call to [method OS.get_ticks_usec].
+ Returns the absolute timestamp (in μs) of the last [XRServer] process callback. The value comes from an internal call to [method OS.get_ticks_usec].
</description>
</method>
<method name="get_reference_frame" qualifiers="const">
@@ -94,7 +94,7 @@
</description>
</method>
<method name="get_tracker" qualifiers="const">
- <return type="ARVRPositionalTracker">
+ <return type="XRPositionalTracker">
</return>
<argument index="0" name="idx" type="int">
</argument>
@@ -111,8 +111,8 @@
</method>
</methods>
<members>
- <member name="primary_interface" type="ARVRInterface" setter="set_primary_interface" getter="get_primary_interface">
- The primary [ARVRInterface] currently bound to the [ARVRServer].
+ <member name="primary_interface" type="XRInterface" setter="set_primary_interface" getter="get_primary_interface">
+ The primary [XRInterface] currently bound to the [XRServer].
</member>
<member name="world_scale" type="float" setter="set_world_scale" getter="get_world_scale" default="1.0">
Allows you to adjust the scale to your game's units. Most AR/VR platforms assume a scale of 1 game world unit = 1 real world meter.
@@ -141,7 +141,7 @@
<argument index="2" name="id" type="int">
</argument>
<description>
- Emitted when a new tracker has been added. If you don't use a fixed number of controllers or if you're using [ARVRAnchor]s for an AR solution, it is important to react to this signal to add the appropriate [ARVRController] or [ARVRAnchor] nodes related to this new tracker.
+ Emitted when a new tracker has been added. If you don't use a fixed number of controllers or if you're using [XRAnchor3D]s for an AR solution, it is important to react to this signal to add the appropriate [XRController3D] or [XRAnchor3D] nodes related to this new tracker.
</description>
</signal>
<signal name="tracker_removed">
@@ -152,7 +152,7 @@
<argument index="2" name="id" type="int">
</argument>
<description>
- Emitted when a tracker is removed. You should remove any [ARVRController] or [ARVRAnchor] points if applicable. This is not mandatory, the nodes simply become inactive and will be made active again when a new tracker becomes available (i.e. a new controller is switched on that takes the place of the previous one).
+ Emitted when a tracker is removed. You should remove any [XRController3D] or [XRAnchor3D] points if applicable. This is not mandatory, the nodes simply become inactive and will be made active again when a new tracker becomes available (i.e. a new controller is switched on that takes the place of the previous one).
</description>
</signal>
</signals>