Browse Source

classref: Sync with current master branch (4ba934bf3)

Rémi Verschelde 2 years ago
parent
commit
c273baa258
50 changed files with 1517 additions and 638 deletions
  1. 2 2
      classes/[email protected]
  2. 34 16
      classes/class_animatedsprite3d.rst
  3. 2 2
      classes/class_animation.rst
  4. 45 21
      classes/class_area2d.rst
  5. 45 21
      classes/class_area3d.rst
  6. 1 1
      classes/class_astar2d.rst
  7. 1 1
      classes/class_astar3d.rst
  8. 1 1
      classes/class_bitmap.rst
  9. 6 2
      classes/class_boneattachment3d.rst
  10. 1 1
      classes/class_color.rst
  11. 4 4
      classes/class_curve2d.rst
  12. 4 4
      classes/class_curve3d.rst
  13. 6 6
      classes/class_displayserver.rst
  14. 33 15
      classes/class_editorplugin.rst
  15. 1 1
      classes/class_editorundoredomanager.rst
  16. 96 88
      classes/class_graphedit.rst
  17. 135 113
      classes/class_graphnode.rst
  18. 1 1
      classes/class_httpclient.rst
  19. 5 3
      classes/class_importermesh.rst
  20. 2 2
      classes/class_input.rst
  21. 1 1
      classes/class_jsonrpc.rst
  22. 23 7
      classes/class_multimesh.rst
  23. 23 3
      classes/class_navigationobstacle2d.rst
  24. 23 3
      classes/class_navigationobstacle3d.rst
  25. 5 15
      classes/class_node.rst
  26. 3 3
      classes/class_physicsbody2d.rst
  27. 5 5
      classes/class_physicsbody3d.rst
  28. 3 3
      classes/class_physicsdirectbodystate2d.rst
  29. 3 3
      classes/class_physicsdirectbodystate3d.rst
  30. 3 3
      classes/class_physicsserver2d.rst
  31. 359 239
      classes/class_physicsserver2dextension.rst
  32. 3 3
      classes/class_physicsserver3d.rst
  33. 376 0
      classes/class_physicsserver3dextension.rst
  34. 56 0
      classes/class_projectsettings.rst
  35. 1 1
      classes/class_renderingserver.rst
  36. 13 13
      classes/class_rigidbody2d.rst
  37. 13 13
      classes/class_rigidbody3d.rst
  38. 1 1
      classes/class_skeleton2d.rst
  39. 11 3
      classes/class_skeleton3d.rst
  40. 54 1
      classes/class_skeletonik3d.rst
  41. 2 0
      classes/class_skeletonmodification2dphysicalbones.rst
  42. 3 3
      classes/class_string.rst
  43. 2 0
      classes/class_textserver.rst
  44. 2 2
      classes/class_time.rst
  45. 1 1
      classes/class_tree.rst
  46. 16 4
      classes/class_tween.rst
  47. 68 0
      classes/class_webrtcpeerconnection.rst
  48. 16 0
      classes/class_webrtcpeerconnectionextension.rst
  49. 2 2
      classes/class_xrinterface.rst
  50. 1 1
      classes/class_xrnode3d.rst

+ 2 - 2
classes/[email protected]

@@ -536,7 +536,7 @@ Asserts that the ``condition`` is ``true``. If the ``condition`` is ``false``, a
 
 \ **Note:** For performance reasons, the code inside :ref:`assert<class_@GDScript_method_assert>` is only executed in debug builds or when running the project from the editor. Don't include code that has side effects in an :ref:`assert<class_@GDScript_method_assert>` call. Otherwise, the project will behave differently when exported in release mode.
 
-The optional ``message`` argument, if given, is shown in addition to the generic "Assertion failed" message. You can use this to provide additional details about why the assertion failed.
+The optional ``message`` argument, if given, is shown in addition to the generic "Assertion failed" message. It must be a static string, so format strings can't be used. You can use this to provide additional details about why the assertion failed.
 
 ::
 
@@ -545,7 +545,7 @@ The optional ``message`` argument, if given, is shown in addition to the generic
     assert(speed < 20) # True, the program will continue
     assert(speed >= 0) # False, the program will stop
     assert(speed >= 0 and speed < 20) # You can also combine the two conditional statements in one check
-    assert(speed < 20, "speed = %f, but the speed limit is 20" % speed) # Show a message with clarifying details
+    assert(speed < 20, "the speed limit is 20") # Show a message
 
 ----
 

+ 34 - 16
classes/class_animatedsprite3d.rst

@@ -27,24 +27,26 @@ Tutorials
 Properties
 ----------
 
-+-----------------------------------------+-------------------------------------------------------------+----------------+
-| :ref:`StringName<class_StringName>`     | :ref:`animation<class_AnimatedSprite3D_property_animation>` | ``&"default"`` |
-+-----------------------------------------+-------------------------------------------------------------+----------------+
-| :ref:`int<class_int>`                   | :ref:`frame<class_AnimatedSprite3D_property_frame>`         | ``0``          |
-+-----------------------------------------+-------------------------------------------------------------+----------------+
-| :ref:`SpriteFrames<class_SpriteFrames>` | :ref:`frames<class_AnimatedSprite3D_property_frames>`       |                |
-+-----------------------------------------+-------------------------------------------------------------+----------------+
-| :ref:`bool<class_bool>`                 | :ref:`playing<class_AnimatedSprite3D_property_playing>`     | ``false``      |
-+-----------------------------------------+-------------------------------------------------------------+----------------+
++-----------------------------------------+-----------------------------------------------------------------+----------------+
+| :ref:`StringName<class_StringName>`     | :ref:`animation<class_AnimatedSprite3D_property_animation>`     | ``&"default"`` |
++-----------------------------------------+-----------------------------------------------------------------+----------------+
+| :ref:`int<class_int>`                   | :ref:`frame<class_AnimatedSprite3D_property_frame>`             | ``0``          |
++-----------------------------------------+-----------------------------------------------------------------+----------------+
+| :ref:`SpriteFrames<class_SpriteFrames>` | :ref:`frames<class_AnimatedSprite3D_property_frames>`           |                |
++-----------------------------------------+-----------------------------------------------------------------+----------------+
+| :ref:`bool<class_bool>`                 | :ref:`playing<class_AnimatedSprite3D_property_playing>`         | ``false``      |
++-----------------------------------------+-----------------------------------------------------------------+----------------+
+| :ref:`float<class_float>`               | :ref:`speed_scale<class_AnimatedSprite3D_property_speed_scale>` | ``1.0``        |
++-----------------------------------------+-----------------------------------------------------------------+----------------+
 
 Methods
 -------
 
-+------+----------------------------------------------------------------------------------------------------------+
-| void | :ref:`play<class_AnimatedSprite3D_method_play>` **(** :ref:`StringName<class_StringName>` anim=&"" **)** |
-+------+----------------------------------------------------------------------------------------------------------+
-| void | :ref:`stop<class_AnimatedSprite3D_method_stop>` **(** **)**                                              |
-+------+----------------------------------------------------------------------------------------------------------+
++------+---------------------------------------------------------------------------------------------------------------------------------------------------+
+| void | :ref:`play<class_AnimatedSprite3D_method_play>` **(** :ref:`StringName<class_StringName>` anim=&"", :ref:`bool<class_bool>` backwards=false **)** |
++------+---------------------------------------------------------------------------------------------------------------------------------------------------+
+| void | :ref:`stop<class_AnimatedSprite3D_method_stop>` **(** **)**                                                                                       |
++------+---------------------------------------------------------------------------------------------------------------------------------------------------+
 
 Signals
 -------
@@ -126,14 +128,30 @@ The :ref:`SpriteFrames<class_SpriteFrames>` resource containing the animation(s)
 
 If ``true``, the :ref:`animation<class_AnimatedSprite3D_property_animation>` is currently playing.
 
+----
+
+.. _class_AnimatedSprite3D_property_speed_scale:
+
+- :ref:`float<class_float>` **speed_scale**
+
++-----------+------------------------+
+| *Default* | ``1.0``                |
++-----------+------------------------+
+| *Setter*  | set_speed_scale(value) |
++-----------+------------------------+
+| *Getter*  | get_speed_scale()      |
++-----------+------------------------+
+
+The animation speed is multiplied by this value.
+
 Method Descriptions
 -------------------
 
 .. _class_AnimatedSprite3D_method_play:
 
-- void **play** **(** :ref:`StringName<class_StringName>` anim=&"" **)**
+- void **play** **(** :ref:`StringName<class_StringName>` anim=&"", :ref:`bool<class_bool>` backwards=false **)**
 
-Plays the animation named ``anim``. If no ``anim`` is provided, the current animation is played.
+Plays the animation named ``anim``. If no ``anim`` is provided, the current animation is played. If ``backwards`` is ``true``, the animation will be played in reverse.
 
 ----
 

+ 2 - 2
classes/class_animation.rst

@@ -435,7 +435,7 @@ Returns the audio stream of the key identified by ``key_idx``. The ``track_idx``
 
 Inserts an Audio Track key at the given ``time`` in seconds. The ``track_idx`` must be the index of an Audio Track.
 
-``stream`` is the :ref:`AudioStream<class_AudioStream>` resource to play. ``start_offset`` is the number of seconds cut off at the beginning of the audio stream, while ``end_offset`` is at the ending.
+\ ``stream`` is the :ref:`AudioStream<class_AudioStream>` resource to play. ``start_offset`` is the number of seconds cut off at the beginning of the audio stream, while ``end_offset`` is at the ending.
 
 ----
 
@@ -493,7 +493,7 @@ Returns the value of the key identified by ``key_idx``. The ``track_idx`` must b
 
 Inserts a Bezier Track key at the given ``time`` in seconds. The ``track_idx`` must be the index of a Bezier Track.
 
-``in_handle`` is the left-side weight of the added Bezier curve point, ``out_handle`` is the right-side one, while ``value`` is the actual value at this point.
+\ ``in_handle`` is the left-side weight of the added Bezier curve point, ``out_handle`` is the right-side one, while ``value`` is the actual value at this point.
 
 ----
 

+ 45 - 21
classes/class_area2d.rst

@@ -77,6 +77,10 @@ Methods
 +-------------------------------+----------------------------------------------------------------------------------------------------------+
 | :ref:`Node2D[]<class_Node2D>` | :ref:`get_overlapping_bodies<class_Area2D_method_get_overlapping_bodies>` **(** **)** |const|            |
 +-------------------------------+----------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`has_overlapping_areas<class_Area2D_method_has_overlapping_areas>` **(** **)** |const|              |
++-------------------------------+----------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`has_overlapping_bodies<class_Area2D_method_has_overlapping_bodies>` **(** **)** |const|            |
++-------------------------------+----------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`       | :ref:`overlaps_area<class_Area2D_method_overlaps_area>` **(** :ref:`Node<class_Node>` area **)** |const| |
 +-------------------------------+----------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`       | :ref:`overlaps_body<class_Area2D_method_overlaps_body>` **(** :ref:`Node<class_Node>` body **)** |const| |
@@ -91,7 +95,7 @@ Signals
 
 Emitted when another Area2D enters this Area2D. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``.
 
-``area`` the other Area2D.
+\ ``area`` the other Area2D.
 
 ----
 
@@ -101,7 +105,7 @@ Emitted when another Area2D enters this Area2D. Requires :ref:`monitoring<class_
 
 Emitted when another Area2D exits this Area2D. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``.
 
-``area`` the other Area2D.
+\ ``area`` the other Area2D.
 
 ----
 
@@ -111,13 +115,13 @@ Emitted when another Area2D exits this Area2D. Requires :ref:`monitoring<class_A
 
 Emitted when one of another Area2D's :ref:`Shape2D<class_Shape2D>`\ s enters one of this Area2D's :ref:`Shape2D<class_Shape2D>`\ s. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``.
 
-``area_rid`` the :ref:`RID<class_RID>` of the other Area2D's :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
+\ ``area_rid`` the :ref:`RID<class_RID>` of the other Area2D's :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
 
-``area`` the other Area2D.
+\ ``area`` the other Area2D.
 
-``area_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
+\ ``area_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -127,13 +131,13 @@ Emitted when one of another Area2D's :ref:`Shape2D<class_Shape2D>`\ s enters one
 
 Emitted when one of another Area2D's :ref:`Shape2D<class_Shape2D>`\ s exits one of this Area2D's :ref:`Shape2D<class_Shape2D>`\ s. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``.
 
-``area_rid`` the :ref:`RID<class_RID>` of the other Area2D's :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
+\ ``area_rid`` the :ref:`RID<class_RID>` of the other Area2D's :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
 
-``area`` the other Area2D.
+\ ``area`` the other Area2D.
 
-``area_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
+\ ``area_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -143,7 +147,7 @@ Emitted when one of another Area2D's :ref:`Shape2D<class_Shape2D>`\ s exits one
 
 Emitted when a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` enters this Area2D. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
 ----
 
@@ -153,7 +157,7 @@ Emitted when a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_
 
 Emitted when a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` exits this Area2D. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
 ----
 
@@ -163,13 +167,13 @@ Emitted when a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_
 
 Emitted when one of a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`'s :ref:`Shape2D<class_Shape2D>`\ s enters one of this Area2D's :ref:`Shape2D<class_Shape2D>`\ s. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -179,13 +183,13 @@ Emitted when one of a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap
 
 Emitted when one of a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`'s :ref:`Shape2D<class_Shape2D>`\ s exits one of this Area2D's :ref:`Shape2D<class_Shape2D>`\ s. Requires :ref:`monitoring<class_Area2D_property_monitoring>` to be set to ``true``. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this Area2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 Enumerations
 ------------
@@ -476,12 +480,32 @@ For performance reasons (collisions are all processed at the same time) this lis
 
 - :ref:`Node2D[]<class_Node2D>` **get_overlapping_bodies** **(** **)** |const|
 
-Returns a list of intersecting :ref:`PhysicsBody2D<class_PhysicsBody2D>`\ s. The overlapping body's :ref:`CollisionObject2D.collision_layer<class_CollisionObject2D_property_collision_layer>` must be part of this area's :ref:`CollisionObject2D.collision_mask<class_CollisionObject2D_property_collision_mask>` in order to be detected.
+Returns a list of intersecting :ref:`PhysicsBody2D<class_PhysicsBody2D>`\ s and :ref:`TileMap<class_TileMap>`\ s. The overlapping body's :ref:`CollisionObject2D.collision_layer<class_CollisionObject2D_property_collision_layer>` must be part of this area's :ref:`CollisionObject2D.collision_mask<class_CollisionObject2D_property_collision_mask>` in order to be detected.
 
 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.
 
 ----
 
+.. _class_Area2D_method_has_overlapping_areas:
+
+- :ref:`bool<class_bool>` **has_overlapping_areas** **(** **)** |const|
+
+Returns ``true`` if intersecting any ``Area2D``\ s, otherwise returns ``false``. The overlapping area's :ref:`CollisionObject2D.collision_layer<class_CollisionObject2D_property_collision_layer>` must be part of this area's :ref:`CollisionObject2D.collision_mask<class_CollisionObject2D_property_collision_mask>` in order to be detected.
+
+For performance reasons (collisions are all processed at the same time) the list of overlapping areas is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+
+----
+
+.. _class_Area2D_method_has_overlapping_bodies:
+
+- :ref:`bool<class_bool>` **has_overlapping_bodies** **(** **)** |const|
+
+Returns ``true`` if intersecting any :ref:`PhysicsBody2D<class_PhysicsBody2D>`\ s or :ref:`TileMap<class_TileMap>`\ s, otherwise returns ``false``. The overlapping body's :ref:`CollisionObject2D.collision_layer<class_CollisionObject2D_property_collision_layer>` must be part of this area's :ref:`CollisionObject2D.collision_mask<class_CollisionObject2D_property_collision_mask>` in order to be detected.
+
+For performance reasons (collisions are all processed at the same time) the list of overlapping bodies is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+
+----
+
 .. _class_Area2D_method_overlaps_area:
 
 - :ref:`bool<class_bool>` **overlaps_area** **(** :ref:`Node<class_Node>` area **)** |const|

+ 45 - 21
classes/class_area3d.rst

@@ -87,6 +87,10 @@ Methods
 +-------------------------------+----------------------------------------------------------------------------------------------------------+
 | :ref:`Node3D[]<class_Node3D>` | :ref:`get_overlapping_bodies<class_Area3D_method_get_overlapping_bodies>` **(** **)** |const|            |
 +-------------------------------+----------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`has_overlapping_areas<class_Area3D_method_has_overlapping_areas>` **(** **)** |const|              |
++-------------------------------+----------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`has_overlapping_bodies<class_Area3D_method_has_overlapping_bodies>` **(** **)** |const|            |
++-------------------------------+----------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`       | :ref:`overlaps_area<class_Area3D_method_overlaps_area>` **(** :ref:`Node<class_Node>` area **)** |const| |
 +-------------------------------+----------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`       | :ref:`overlaps_body<class_Area3D_method_overlaps_body>` **(** :ref:`Node<class_Node>` body **)** |const| |
@@ -101,7 +105,7 @@ Signals
 
 Emitted when another Area3D enters this Area3D. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``.
 
-``area`` the other Area3D.
+\ ``area`` the other Area3D.
 
 ----
 
@@ -111,7 +115,7 @@ Emitted when another Area3D enters this Area3D. Requires :ref:`monitoring<class_
 
 Emitted when another Area3D exits this Area3D. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``.
 
-``area`` the other Area3D.
+\ ``area`` the other Area3D.
 
 ----
 
@@ -121,13 +125,13 @@ Emitted when another Area3D exits this Area3D. Requires :ref:`monitoring<class_A
 
 Emitted when one of another Area3D's :ref:`Shape3D<class_Shape3D>`\ s enters one of this Area3D's :ref:`Shape3D<class_Shape3D>`\ s. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``.
 
-``area_rid`` the :ref:`RID<class_RID>` of the other Area3D's :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
+\ ``area_rid`` the :ref:`RID<class_RID>` of the other Area3D's :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
 
-``area`` the other Area3D.
+\ ``area`` the other Area3D.
 
-``area_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
+\ ``area_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -137,13 +141,13 @@ Emitted when one of another Area3D's :ref:`Shape3D<class_Shape3D>`\ s enters one
 
 Emitted when one of another Area3D's :ref:`Shape3D<class_Shape3D>`\ s exits one of this Area3D's :ref:`Shape3D<class_Shape3D>`\ s. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``.
 
-``area_rid`` the :ref:`RID<class_RID>` of the other Area3D's :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
+\ ``area_rid`` the :ref:`RID<class_RID>` of the other Area3D's :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
 
-``area`` the other Area3D.
+\ ``area`` the other Area3D.
 
-``area_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
+\ ``area_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -153,7 +157,7 @@ Emitted when one of another Area3D's :ref:`Shape3D<class_Shape3D>`\ s exits one
 
 Emitted when a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` enters this Area3D. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
 ----
 
@@ -163,7 +167,7 @@ Emitted when a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_
 
 Emitted when a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` exits this Area3D. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
 ----
 
@@ -173,13 +177,13 @@ Emitted when a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_
 
 Emitted when one of a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`'s :ref:`Shape3D<class_Shape3D>`\ s enters one of this Area3D's :ref:`Shape3D<class_Shape3D>`\ s. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -189,13 +193,13 @@ Emitted when one of a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap
 
 Emitted when one of a :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`'s :ref:`Shape3D<class_Shape3D>`\ s enters one of this Area3D's :ref:`Shape3D<class_Shape3D>`\ s. Requires :ref:`monitoring<class_Area3D_property_monitoring>` to be set to ``true``. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this Area3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 Enumerations
 ------------
@@ -598,12 +602,32 @@ For performance reasons (collisions are all processed at the same time) this lis
 
 - :ref:`Node3D[]<class_Node3D>` **get_overlapping_bodies** **(** **)** |const|
 
-Returns a list of intersecting :ref:`PhysicsBody3D<class_PhysicsBody3D>`\ s. The overlapping body's :ref:`CollisionObject3D.collision_layer<class_CollisionObject3D_property_collision_layer>` must be part of this area's :ref:`CollisionObject3D.collision_mask<class_CollisionObject3D_property_collision_mask>` in order to be detected.
+Returns a list of intersecting :ref:`PhysicsBody3D<class_PhysicsBody3D>`\ s and :ref:`GridMap<class_GridMap>`\ s. The overlapping body's :ref:`CollisionObject3D.collision_layer<class_CollisionObject3D_property_collision_layer>` must be part of this area's :ref:`CollisionObject3D.collision_mask<class_CollisionObject3D_property_collision_mask>` in order to be detected.
 
 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.
 
 ----
 
+.. _class_Area3D_method_has_overlapping_areas:
+
+- :ref:`bool<class_bool>` **has_overlapping_areas** **(** **)** |const|
+
+Returns ``true`` if intersecting any ``Area3D``\ s, otherwise returns ``false``. The overlapping area's :ref:`CollisionObject3D.collision_layer<class_CollisionObject3D_property_collision_layer>` must be part of this area's :ref:`CollisionObject3D.collision_mask<class_CollisionObject3D_property_collision_mask>` in order to be detected.
+
+For performance reasons (collisions are all processed at the same time) the list of overlapping areas is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+
+----
+
+.. _class_Area3D_method_has_overlapping_bodies:
+
+- :ref:`bool<class_bool>` **has_overlapping_bodies** **(** **)** |const|
+
+Returns ``true`` if intersecting any :ref:`PhysicsBody3D<class_PhysicsBody3D>`\ s or :ref:`GridMap<class_GridMap>`\ s, otherwise returns ``false``. The overlapping body's :ref:`CollisionObject3D.collision_layer<class_CollisionObject3D_property_collision_layer>` must be part of this area's :ref:`CollisionObject3D.collision_mask<class_CollisionObject3D_property_collision_mask>` in order to be detected.
+
+For performance reasons (collisions are all processed at the same time) the list of overlapping bodies is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+
+----
+
 .. _class_Area3D_method_overlaps_area:
 
 - :ref:`bool<class_bool>` **overlaps_area** **(** :ref:`Node<class_Node>` area **)** |const|

+ 1 - 1
classes/class_astar2d.rst

@@ -103,7 +103,7 @@ Note that this function is hidden in the default ``AStar2D`` class.
 
 Adds a new point at the given position with the given identifier. The ``id`` must be 0 or larger, and the ``weight_scale`` must be 0.0 or greater.
 
-The ``weight_scale`` is multiplied by the result of :ref:`_compute_cost<class_AStar2D_method__compute_cost>` when determining the overall cost of traveling across a segment from a neighboring point to this point. Thus, all else being equal, the algorithm prefers points with lower ``weight_scale``s to form a path.
+The ``weight_scale`` is multiplied by the result of :ref:`_compute_cost<class_AStar2D_method__compute_cost>` when determining the overall cost of traveling across a segment from a neighboring point to this point. Thus, all else being equal, the algorithm prefers points with lower ``weight_scale``\ s to form a path.
 
 
 .. tabs::

+ 1 - 1
classes/class_astar3d.rst

@@ -141,7 +141,7 @@ Note that this function is hidden in the default ``AStar3D`` class.
 
 Adds a new point at the given position with the given identifier. The ``id`` must be 0 or larger, and the ``weight_scale`` must be 0.0 or greater.
 
-The ``weight_scale`` is multiplied by the result of :ref:`_compute_cost<class_AStar3D_method__compute_cost>` when determining the overall cost of traveling across a segment from a neighboring point to this point. Thus, all else being equal, the algorithm prefers points with lower ``weight_scale``s to form a path.
+The ``weight_scale`` is multiplied by the result of :ref:`_compute_cost<class_AStar3D_method__compute_cost>` when determining the overall cost of traveling across a segment from a neighboring point to this point. Thus, all else being equal, the algorithm prefers points with lower ``weight_scale``\ s to form a path.
 
 
 .. tabs::

+ 1 - 1
classes/class_bitmap.rst

@@ -129,7 +129,7 @@ To get polygons covering the whole bitmap, pass:
 
     Rect2(Vector2(), get_size())
 
-``epsilon`` is passed to RDP to control how accurately the polygons cover the bitmap: a lower ``epsilon`` corresponds to more points in the polygons.
+\ ``epsilon`` is passed to RDP to control how accurately the polygons cover the bitmap: a lower ``epsilon`` corresponds to more points in the polygons.
 
 ----
 

+ 6 - 2
classes/class_boneattachment3d.rst

@@ -101,7 +101,9 @@ Returns the :ref:`NodePath<class_NodePath>` to the external :ref:`Skeleton3D<cla
 
 - :ref:`int<class_int>` **get_override_mode** **(** **)** |const|
 
-Returns the override mode for the BoneAttachment3D node.
+Deprecated. Local pose overrides will be removed.
+
+Returns the override mode for the BoneAttachment3D node (0=global / 1=local).
 
 ----
 
@@ -141,7 +143,9 @@ Sets the :ref:`NodePath<class_NodePath>` to the external skeleton that the BoneA
 
 - void **set_override_mode** **(** :ref:`int<class_int>` override_mode **)**
 
-Sets the override mode for the BoneAttachment3D node. The override mode defines which of the bone poses the BoneAttachment3D node will override.
+Deprecated. Local pose overrides will be removed.
+
+Sets the override mode for the BoneAttachment3D node (0=global / 1=local). The override mode defines which of the bone poses the BoneAttachment3D node will override.
 
 ----
 

+ 1 - 1
classes/class_color.rst

@@ -1145,7 +1145,7 @@ This is useful when determining light or dark color. Colors with a luminance sma
 
 Returns a new color from ``rgba``, an HTML hexadecimal color string. ``rgba`` is not case sensitive, and may be prefixed with a '#' character.
 
-``rgba`` must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If ``rgba`` does not contain an alpha channel value, an alpha channel value of 1.0 is applied.
+\ ``rgba`` must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If ``rgba`` does not contain an alpha channel value, an alpha channel value of 1.0 is applied.
 
 If ``rgba`` is invalid a Color(0.0, 0.0, 0.0, 1.0) is returned.
 

+ 4 - 4
classes/class_curve2d.rst

@@ -145,7 +145,7 @@ Returns the cache of points as a :ref:`PackedVector2Array<class_PackedVector2Arr
 
 Returns the closest offset to ``to_point``. This offset is meant to be used in :ref:`sample_baked<class_Curve2D_method_sample_baked>`.
 
-``to_point`` must be in this curve's local space.
+\ ``to_point`` must be in this curve's local space.
 
 ----
 
@@ -155,7 +155,7 @@ Returns the closest offset to ``to_point``. This offset is meant to be used in :
 
 Returns the closest baked point (in curve's local space) to ``to_point``.
 
-``to_point`` must be in this curve's local space.
+\ ``to_point`` must be in this curve's local space.
 
 ----
 
@@ -253,9 +253,9 @@ Returns a list of points along the curve, with a curvature controlled point dens
 
 This approximation makes straight segments between each point, then subdivides those segments until the resulting shape is similar enough.
 
-``max_stages`` controls how many subdivisions a curve segment may face before it is considered approximate enough. Each subdivision splits the segment in half, so the default 5 stages may mean up to 32 subdivisions per curve segment. Increase with care!
+\ ``max_stages`` controls how many subdivisions a curve segment may face before it is considered approximate enough. Each subdivision splits the segment in half, so the default 5 stages may mean up to 32 subdivisions per curve segment. Increase with care!
 
-``tolerance_degrees`` controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided.
+\ ``tolerance_degrees`` controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided.
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 4 - 4
classes/class_curve3d.rst

@@ -191,7 +191,7 @@ If :ref:`up_vector_enabled<class_Curve3D_property_up_vector_enabled>` is ``false
 
 Returns the closest offset to ``to_point``. This offset is meant to be used in :ref:`sample_baked<class_Curve3D_method_sample_baked>` or :ref:`sample_baked_up_vector<class_Curve3D_method_sample_baked_up_vector>`.
 
-``to_point`` must be in this curve's local space.
+\ ``to_point`` must be in this curve's local space.
 
 ----
 
@@ -201,7 +201,7 @@ Returns the closest offset to ``to_point``. This offset is meant to be used in :
 
 Returns the closest baked point (in curve's local space) to ``to_point``.
 
-``to_point`` must be in this curve's local space.
+\ ``to_point`` must be in this curve's local space.
 
 ----
 
@@ -329,9 +329,9 @@ Returns a list of points along the curve, with a curvature controlled point dens
 
 This approximation makes straight segments between each point, then subdivides those segments until the resulting shape is similar enough.
 
-``max_stages`` controls how many subdivisions a curve segment may face before it is considered approximate enough. Each subdivision splits the segment in half, so the default 5 stages may mean up to 32 subdivisions per curve segment. Increase with care!
+\ ``max_stages`` controls how many subdivisions a curve segment may face before it is considered approximate enough. Each subdivision splits the segment in half, so the default 5 stages may mean up to 32 subdivisions per curve segment. Increase with care!
 
-``tolerance_degrees`` controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided.
+\ ``tolerance_degrees`` controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided.
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 6 - 6
classes/class_displayserver.rst

@@ -1921,17 +1921,17 @@ Hides the virtual keyboard if it is shown, does nothing otherwise.
 
 Shows the virtual keyboard if the platform has one.
 
-``existing_text`` parameter is useful for implementing your own :ref:`LineEdit<class_LineEdit>` or :ref:`TextEdit<class_TextEdit>`, as it tells the virtual keyboard what text has already been typed (the virtual keyboard uses it for auto-correct and predictions).
+\ ``existing_text`` parameter is useful for implementing your own :ref:`LineEdit<class_LineEdit>` or :ref:`TextEdit<class_TextEdit>`, as it tells the virtual keyboard what text has already been typed (the virtual keyboard uses it for auto-correct and predictions).
 
-``position`` parameter is the screen space :ref:`Rect2<class_Rect2>` of the edited text.
+\ ``position`` parameter is the screen space :ref:`Rect2<class_Rect2>` of the edited text.
 
-``type`` parameter allows configuring which type of virtual keyboard to show.
+\ ``type`` parameter allows configuring which type of virtual keyboard to show.
 
-``max_length`` limits the number of characters that can be entered if different from ``-1``.
+\ ``max_length`` limits the number of characters that can be entered if different from ``-1``.
 
-``cursor_start`` can optionally define the current text cursor position if ``cursor_end`` is not set.
+\ ``cursor_start`` can optionally define the current text cursor position if ``cursor_end`` is not set.
 
-``cursor_start`` and ``cursor_end`` can optionally define the current text selection.
+\ ``cursor_start`` and ``cursor_end`` can optionally define the current text selection.
 
 \ **Note:** This method is implemented on Android, iOS and Web.
 

+ 33 - 15
classes/class_editorplugin.rst

@@ -291,6 +291,24 @@ enum **DockSlot**:
 
 - **DOCK_SLOT_MAX** = **8** --- Represents the size of the :ref:`DockSlot<enum_EditorPlugin_DockSlot>` enum.
 
+----
+
+.. _enum_EditorPlugin_AfterGUIInput:
+
+.. _class_EditorPlugin_constant_AFTER_GUI_INPUT_PASS:
+
+.. _class_EditorPlugin_constant_AFTER_GUI_INPUT_STOP:
+
+.. _class_EditorPlugin_constant_AFTER_GUI_INPUT_CUSTOM:
+
+enum **AfterGUIInput**:
+
+- **AFTER_GUI_INPUT_PASS** = **0** --- Forwards the :ref:`InputEvent<class_InputEvent>` to other EditorPlugins.
+
+- **AFTER_GUI_INPUT_STOP** = **1** --- Prevents the :ref:`InputEvent<class_InputEvent>` from reaching other Editor classes.
+
+- **AFTER_GUI_INPUT_CUSTOM** = **2** --- Pass the :ref:`InputEvent<class_InputEvent>` to other editor plugins except the main :ref:`Node3D<class_Node3D>` one. This can be used to prevent node selection changes and work with sub-gizmos instead.
+
 Method Descriptions
 -------------------
 
@@ -365,8 +383,8 @@ Called by the engine when the 3D editor's viewport is updated. Use the ``overlay
         if event is InputEventMouseMotion:
             # Redraw viewport when cursor is moved.
             update_overlays()
-            return true
-        return false
+            return EditorPlugin.AFTER_GUI_INPUT_STOP
+        return EditorPlugin.AFTER_GUI_INPUT_PASS
 
  .. code-tab:: csharp
 
@@ -376,15 +394,15 @@ Called by the engine when the 3D editor's viewport is updated. Use the ``overlay
         overlay.DrawCircle(overlay.GetLocalMousePosition(), 64, Colors.White);
     }
     
-    public override bool _Forward3dGuiInput(Godot.Camera3D camera, InputEvent @event)
+    public override EditorPlugin.AfterGUIInput _Forward3dGuiInput(Godot.Camera3D camera, InputEvent @event)
     {
         if (@event is InputEventMouseMotion)
         {
             // Redraw viewport when cursor is moved.
             UpdateOverlays();
-            return true;
+            return EditorPlugin.AFTER_GUI_INPUT_STOP;
         }
-        return false;
+        return EditorPlugin.AFTER_GUI_INPUT_PASS;
 
 
 
@@ -404,28 +422,28 @@ You need to enable calling of this method by using :ref:`set_force_draw_over_for
 
 - :ref:`int<class_int>` **_forward_3d_gui_input** **(** :ref:`Camera3D<class_Camera3D>` viewport_camera, :ref:`InputEvent<class_InputEvent>` event **)** |virtual|
 
-Called when there is a root node in the current edited scene, :ref:`_handles<class_EditorPlugin_method__handles>` is implemented and an :ref:`InputEvent<class_InputEvent>` happens in the 3D viewport. Intercepts the :ref:`InputEvent<class_InputEvent>`, if ``return true`` ``EditorPlugin`` consumes the ``event``, otherwise forwards ``event`` to other Editor classes. Example:
+Called when there is a root node in the current edited scene, :ref:`_handles<class_EditorPlugin_method__handles>` is implemented, and an :ref:`InputEvent<class_InputEvent>` happens in the 3D viewport. The return value decides whether the :ref:`InputEvent<class_InputEvent>` is consumed or forwarded to other ``EditorPlugin``\ s. See :ref:`AfterGUIInput<enum_EditorPlugin_AfterGUIInput>` for options. Example:
 
 
 .. tabs::
 
  .. code-tab:: gdscript
 
-    # Prevents the InputEvent to reach other Editor classes.
+    # Prevents the InputEvent from reaching other Editor classes.
     func _forward_3d_gui_input(camera, event):
         return EditorPlugin.AFTER_GUI_INPUT_STOP
 
  .. code-tab:: csharp
 
-    // Prevents the InputEvent to reach other Editor classes.
-    public override bool _Forward3dGuiInput(Camera3D camera, InputEvent @event)
+    // Prevents the InputEvent from reaching other Editor classes.
+    public override EditorPlugin.AfterGUIInput _Forward3dGuiInput(Camera3D camera, InputEvent @event)
     {
         return EditorPlugin.AFTER_GUI_INPUT_STOP;
     }
 
 
 
-Must ``return false`` in order to forward the :ref:`InputEvent<class_InputEvent>` to other Editor classes. Example:
+Must ``return EditorPlugin.AFTER_GUI_INPUT_PASS`` in order to forward the :ref:`InputEvent<class_InputEvent>` to other Editor classes. Example:
 
 
 .. tabs::
@@ -434,14 +452,14 @@ Must ``return false`` in order to forward the :ref:`InputEvent<class_InputEvent>
 
     # Consumes InputEventMouseMotion and forwards other InputEvent types.
     func _forward_3d_gui_input(camera, event):
-        return event is InputEventMouseMotion
+        return EditorPlugin.AFTER_GUI_INPUT_STOP if event is InputEventMouseMotion else EditorPlugin.AFTER_GUI_INPUT_PASS
 
  .. code-tab:: csharp
 
     // Consumes InputEventMouseMotion and forwards other InputEvent types.
-    public override bool _Forward3dGuiInput(Camera3D camera, InputEvent @event)
+    public override EditorPlugin.AfterGUIInput _Forward3dGuiInput(Camera3D camera, InputEvent @event)
     {
-        return @event is InputEventMouseMotion;
+        return @event is InputEventMouseMotion ? EditorPlugin.AFTER_GUI_INPUT_STOP : EditorPlugin.AFTER_GUI_INPUT_PASS;
     }
 
 
@@ -513,13 +531,13 @@ Called when there is a root node in the current edited scene, :ref:`_handles<cla
 
  .. code-tab:: gdscript
 
-    # Prevents the InputEvent to reach other Editor classes.
+    # Prevents the InputEvent from reaching other Editor classes.
     func _forward_canvas_gui_input(event):
         return true
 
  .. code-tab:: csharp
 
-    // Prevents the InputEvent to reach other Editor classes.
+    // Prevents the InputEvent from reaching other Editor classes.
     public override bool ForwardCanvasGuiInput(InputEvent @event)
     {
         return true;

+ 1 - 1
classes/class_editorundoredomanager.rst

@@ -156,7 +156,7 @@ If ``custom_context`` object is provided, it will be used for deducing target hi
 
 Returns the :ref:`UndoRedo<class_UndoRedo>` object associated with the given history ``id``.
 
-``id`` above ``0`` are mapped to the opened scene tabs (but it doesn't match their order). ``id`` of ``0`` or lower have special meaning (see :ref:`SpecialHistory<enum_EditorUndoRedoManager_SpecialHistory>`).
+\ ``id`` above ``0`` are mapped to the opened scene tabs (but it doesn't match their order). ``id`` of ``0`` or lower have special meaning (see :ref:`SpecialHistory<enum_EditorUndoRedoManager_SpecialHistory>`).
 
 Best used with :ref:`get_object_history_id<class_EditorUndoRedoManager_method_get_object_history_id>`. This method is only provided in case you need some more advanced methods of :ref:`UndoRedo<class_UndoRedo>` (but keep in mind that directly operating on the :ref:`UndoRedo<class_UndoRedo>` object might affect editor's stability).
 

+ 96 - 88
classes/class_graphedit.rst

@@ -12,14 +12,16 @@ GraphEdit
 
 **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
 
-GraphEdit is an area capable of showing various GraphNodes. It manages connection events between them.
+GraphEdit is a control responsible for displaying and manipulating graph-like data using :ref:`GraphNode<class_GraphNode>`\ s. It provides access to creation, removal, connection, and disconnection of nodes.
 
 Description
 -----------
 
-GraphEdit manages the showing of GraphNodes it contains, as well as connections and disconnections between them. Signals are sent for each of these two events. Disconnection between GraphNode slots is disabled by default.
+GraphEdit provides tools for creation, manipulation, and display of various graphs. Its main purpose in the engine is to power the visual programming systems, such as visual shaders, but it is also available for use in user projects.
 
-It is greatly advised to enable low-processor usage mode (see :ref:`OS.low_processor_usage_mode<class_OS_property_low_processor_usage_mode>`) when using GraphEdits.
+GraphEdit by itself is only an empty container, representing an infinite grid where :ref:`GraphNode<class_GraphNode>`\ s can be placed. Each :ref:`GraphNode<class_GraphNode>` represent a node in the graph, a single unit of data in the connected scheme. GraphEdit, in turn, helps to control various interactions with nodes and between nodes. When the user attempts to connect, disconnect, or close a :ref:`GraphNode<class_GraphNode>`, a signal is emitted in the GraphEdit, but no action is taken by default. It is the responsibility of the programmer utilizing this control to implement the necessary logic to determine how each request should be handled.
+
+\ **Performance:** It is greatly advised to enable low-processor usage mode (see :ref:`OS.low_processor_usage_mode<class_OS_property_low_processor_usage_mode>`) when using GraphEdits.
 
 Properties
 ----------
@@ -67,51 +69,51 @@ Properties
 Methods
 -------
 
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`_get_connection_line<class_GraphEdit_method__get_connection_line>` **(** :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to **)** |virtual| |const|                                                                                                   |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                             | :ref:`_is_in_input_hotzone<class_GraphEdit_method__is_in_input_hotzone>` **(** :ref:`Object<class_Object>` graph_node, :ref:`int<class_int>` slot_index, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|                                                         |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                             | :ref:`_is_in_output_hotzone<class_GraphEdit_method__is_in_output_hotzone>` **(** :ref:`Object<class_Object>` graph_node, :ref:`int<class_int>` slot_index, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|                                                       |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                             | :ref:`_is_node_hover_valid<class_GraphEdit_method__is_node_hover_valid>` **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_slot, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_slot **)** |virtual|                               |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`add_valid_connection_type<class_GraphEdit_method_add_valid_connection_type>` **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)**                                                                                                                 |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`add_valid_left_disconnect_type<class_GraphEdit_method_add_valid_left_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                           |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`add_valid_right_disconnect_type<class_GraphEdit_method_add_valid_right_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                         |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`arrange_nodes<class_GraphEdit_method_arrange_nodes>` **(** **)**                                                                                                                                                                                                        |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`clear_connections<class_GraphEdit_method_clear_connections>` **(** **)**                                                                                                                                                                                                |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Error<enum_@GlobalScope_Error>`               | :ref:`connect_node<class_GraphEdit_method_connect_node>` **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port **)**                                                         |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`disconnect_node<class_GraphEdit_method_disconnect_node>` **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port **)**                                                   |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`force_connection_drag_end<class_GraphEdit_method_force_connection_drag_end>` **(** **)**                                                                                                                                                                                |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`get_connection_line<class_GraphEdit_method_get_connection_line>` **(** :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to **)**                                                                                                                       |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Dictionary[]<class_Dictionary>`               | :ref:`get_connection_list<class_GraphEdit_method_get_connection_list>` **(** **)** |const|                                                                                                                                                                                    |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`HBoxContainer<class_HBoxContainer>`           | :ref:`get_zoom_hbox<class_GraphEdit_method_get_zoom_hbox>` **(** **)**                                                                                                                                                                                                        |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                             | :ref:`is_node_connected<class_GraphEdit_method_is_node_connected>` **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port **)**                                               |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                             | :ref:`is_valid_connection_type<class_GraphEdit_method_is_valid_connection_type>` **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)** |const|                                                                                                           |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`remove_valid_connection_type<class_GraphEdit_method_remove_valid_connection_type>` **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)**                                                                                                           |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`remove_valid_left_disconnect_type<class_GraphEdit_method_remove_valid_left_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                     |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`remove_valid_right_disconnect_type<class_GraphEdit_method_remove_valid_right_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                   |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`set_connection_activity<class_GraphEdit_method_set_connection_activity>` **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port, :ref:`float<class_float>` amount **)** |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                | :ref:`set_selected<class_GraphEdit_method_set_selected>` **(** :ref:`Node<class_Node>` node **)**                                                                                                                                                                             |
-+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`_get_connection_line<class_GraphEdit_method__get_connection_line>` **(** :ref:`Vector2<class_Vector2>` from_position, :ref:`Vector2<class_Vector2>` to_position **)** |virtual| |const|                                                                                           |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                             | :ref:`_is_in_input_hotzone<class_GraphEdit_method__is_in_input_hotzone>` **(** :ref:`Object<class_Object>` in_node, :ref:`int<class_int>` in_port, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|                                                                         |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                             | :ref:`_is_in_output_hotzone<class_GraphEdit_method__is_in_output_hotzone>` **(** :ref:`Object<class_Object>` in_node, :ref:`int<class_int>` in_port, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|                                                                       |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                             | :ref:`_is_node_hover_valid<class_GraphEdit_method__is_node_hover_valid>` **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)** |virtual|                               |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`add_valid_connection_type<class_GraphEdit_method_add_valid_connection_type>` **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)**                                                                                                                           |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`add_valid_left_disconnect_type<class_GraphEdit_method_add_valid_left_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                                     |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`add_valid_right_disconnect_type<class_GraphEdit_method_add_valid_right_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                                   |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`arrange_nodes<class_GraphEdit_method_arrange_nodes>` **(** **)**                                                                                                                                                                                                                  |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`clear_connections<class_GraphEdit_method_clear_connections>` **(** **)**                                                                                                                                                                                                          |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Error<enum_@GlobalScope_Error>`               | :ref:`connect_node<class_GraphEdit_method_connect_node>` **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**                                                         |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`disconnect_node<class_GraphEdit_method_disconnect_node>` **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**                                                   |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`force_connection_drag_end<class_GraphEdit_method_force_connection_drag_end>` **(** **)**                                                                                                                                                                                          |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`get_connection_line<class_GraphEdit_method_get_connection_line>` **(** :ref:`Vector2<class_Vector2>` from_node, :ref:`Vector2<class_Vector2>` to_node **)**                                                                                                                       |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Dictionary[]<class_Dictionary>`               | :ref:`get_connection_list<class_GraphEdit_method_get_connection_list>` **(** **)** |const|                                                                                                                                                                                              |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`HBoxContainer<class_HBoxContainer>`           | :ref:`get_zoom_hbox<class_GraphEdit_method_get_zoom_hbox>` **(** **)**                                                                                                                                                                                                                  |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                             | :ref:`is_node_connected<class_GraphEdit_method_is_node_connected>` **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**                                               |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                             | :ref:`is_valid_connection_type<class_GraphEdit_method_is_valid_connection_type>` **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)** |const|                                                                                                                     |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`remove_valid_connection_type<class_GraphEdit_method_remove_valid_connection_type>` **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)**                                                                                                                     |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`remove_valid_left_disconnect_type<class_GraphEdit_method_remove_valid_left_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                               |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`remove_valid_right_disconnect_type<class_GraphEdit_method_remove_valid_right_disconnect_type>` **(** :ref:`int<class_int>` type **)**                                                                                                                                             |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`set_connection_activity<class_GraphEdit_method_set_connection_activity>` **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port, :ref:`float<class_float>` amount **)** |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                | :ref:`set_selected<class_GraphEdit_method_set_selected>` **(** :ref:`Node<class_Node>` node **)**                                                                                                                                                                                       |
++-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 Theme Properties
 ----------------
@@ -167,7 +169,7 @@ Emitted at the end of a connection drag.
 
 .. _class_GraphEdit_signal_connection_drag_started:
 
-- **connection_drag_started** **(** :ref:`String<class_String>` from, :ref:`int<class_int>` slot, :ref:`bool<class_bool>` is_output **)**
+- **connection_drag_started** **(** :ref:`String<class_String>` from_node, :ref:`int<class_int>` from_port, :ref:`bool<class_bool>` is_output **)**
 
 Emitted at the beginning of a connection drag.
 
@@ -175,25 +177,25 @@ Emitted at the beginning of a connection drag.
 
 .. _class_GraphEdit_signal_connection_from_empty:
 
-- **connection_from_empty** **(** :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_slot, :ref:`Vector2<class_Vector2>` release_position **)**
+- **connection_from_empty** **(** :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port, :ref:`Vector2<class_Vector2>` release_position **)**
 
-Emitted when user dragging connection from input port into empty space of the graph.
+Emitted when user drags a connection from an input port into the empty space of the graph.
 
 ----
 
 .. _class_GraphEdit_signal_connection_request:
 
-- **connection_request** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_slot, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_slot **)**
+- **connection_request** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**
 
-Emitted to the GraphEdit when the connection between the ``from_slot`` slot of the ``from`` GraphNode and the ``to_slot`` slot of the ``to`` GraphNode is attempted to be created.
+Emitted to the GraphEdit when the connection between the ``from_port`` of the ``from_node`` :ref:`GraphNode<class_GraphNode>` and the ``to_port`` of the ``to_node`` :ref:`GraphNode<class_GraphNode>` is attempted to be created.
 
 ----
 
 .. _class_GraphEdit_signal_connection_to_empty:
 
-- **connection_to_empty** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_slot, :ref:`Vector2<class_Vector2>` release_position **)**
+- **connection_to_empty** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`Vector2<class_Vector2>` release_position **)**
 
-Emitted when user dragging connection from output port into empty space of the graph.
+Emitted when user drags a connection from an output port into the empty space of the graph.
 
 ----
 
@@ -215,9 +217,9 @@ Emitted when a GraphNode is attempted to be removed from the GraphEdit. Provides
 
 .. _class_GraphEdit_signal_disconnection_request:
 
-- **disconnection_request** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_slot, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_slot **)**
+- **disconnection_request** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**
 
-Emitted to the GraphEdit when the connection between ``from_slot`` slot of ``from`` GraphNode and ``to_slot`` slot of ``to`` GraphNode is attempted to be removed.
+Emitted to the GraphEdit when the connection between ``from_port`` of ``from_node`` :ref:`GraphNode<class_GraphNode>` and ``to_port`` of ``to_node`` :ref:`GraphNode<class_GraphNode>` is attempted to be removed.
 
 ----
 
@@ -566,7 +568,7 @@ Method Descriptions
 
 .. _class_GraphEdit_method__get_connection_line:
 
-- :ref:`PackedVector2Array<class_PackedVector2Array>` **_get_connection_line** **(** :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to **)** |virtual| |const|
+- :ref:`PackedVector2Array<class_PackedVector2Array>` **_get_connection_line** **(** :ref:`Vector2<class_Vector2>` from_position, :ref:`Vector2<class_Vector2>` to_position **)** |virtual| |const|
 
 Virtual method which can be overridden to customize how connections are drawn.
 
@@ -574,20 +576,20 @@ Virtual method which can be overridden to customize how connections are drawn.
 
 .. _class_GraphEdit_method__is_in_input_hotzone:
 
-- :ref:`bool<class_bool>` **_is_in_input_hotzone** **(** :ref:`Object<class_Object>` graph_node, :ref:`int<class_int>` slot_index, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|
+- :ref:`bool<class_bool>` **_is_in_input_hotzone** **(** :ref:`Object<class_Object>` in_node, :ref:`int<class_int>` in_port, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|
 
 Returns whether the ``mouse_position`` is in the input hot zone.
 
-By default, a hot zone is a :ref:`Rect2<class_Rect2>` positioned such that its center is at ``graph_node``.\ :ref:`GraphNode.get_connection_input_position<class_GraphNode_method_get_connection_input_position>`\ (``slot_index``) (For output's case, call :ref:`GraphNode.get_connection_output_position<class_GraphNode_method_get_connection_output_position>` instead). The hot zone's width is twice the Theme Property ``port_grab_distance_horizontal``, and its height is twice the ``port_grab_distance_vertical``.
+By default, a hot zone is a :ref:`Rect2<class_Rect2>` positioned such that its center is at ``in_node``.\ :ref:`GraphNode.get_connection_input_position<class_GraphNode_method_get_connection_input_position>`\ (``in_port``) (For output's case, call :ref:`GraphNode.get_connection_output_position<class_GraphNode_method_get_connection_output_position>` instead). The hot zone's width is twice the Theme Property ``port_grab_distance_horizontal``, and its height is twice the ``port_grab_distance_vertical``.
 
 Below is a sample code to help get started:
 
 ::
 
-    func _is_in_input_hotzone(graph_node, slot_index, mouse_position):
-        var slot_size : Vector2 = Vector2(get_theme_constant("port_grab_distance_horizontal"), get_theme_constant("port_grab_distance_vertical"))
-        var slot_pos : Vector2 = graph_node.get_position() + graph_node.get_connection_input_position(slot_index) - slot_size / 2
-        var rect = Rect2(slot_pos, slot_size)
+    func _is_in_input_hotzone(in_node, in_port, mouse_position):
+        var port_size : Vector2 = Vector2(get_theme_constant("port_grab_distance_horizontal"), get_theme_constant("port_grab_distance_vertical"))
+        var port_pos : Vector2 = in_node.get_position() + in_node.get_connection_input_position(in_port) - port_size / 2
+        var rect = Rect2(port_pos, port_size)
     
         return rect.has_point(mouse_position)
 
@@ -595,7 +597,7 @@ Below is a sample code to help get started:
 
 .. _class_GraphEdit_method__is_in_output_hotzone:
 
-- :ref:`bool<class_bool>` **_is_in_output_hotzone** **(** :ref:`Object<class_Object>` graph_node, :ref:`int<class_int>` slot_index, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|
+- :ref:`bool<class_bool>` **_is_in_output_hotzone** **(** :ref:`Object<class_Object>` in_node, :ref:`int<class_int>` in_port, :ref:`Vector2<class_Vector2>` mouse_position **)** |virtual|
 
 Returns whether the ``mouse_position`` is in the output hot zone. For more information on hot zones, see :ref:`_is_in_input_hotzone<class_GraphEdit_method__is_in_input_hotzone>`.
 
@@ -603,10 +605,10 @@ Below is a sample code to help get started:
 
 ::
 
-    func _is_in_output_hotzone(graph_node, slot_index, mouse_position):
-        var slot_size : Vector2 = Vector2(get_theme_constant("port_grab_distance_horizontal"), get_theme_constant("port_grab_distance_vertical"))
-        var slot_pos : Vector2 = graph_node.get_position() + graph_node.get_connection_output_position(slot_index) - slot_size / 2
-        var rect = Rect2(slot_pos, slot_size)
+    func _is_in_output_hotzone(in_node, in_port, mouse_position):
+        var port_size : Vector2 = Vector2(get_theme_constant("port_grab_distance_horizontal"), get_theme_constant("port_grab_distance_vertical"))
+        var port_pos : Vector2 = in_node.get_position() + in_node.get_connection_output_position(in_port) - port_size / 2
+        var rect = Rect2(port_pos, port_size)
     
         return rect.has_point(mouse_position)
 
@@ -614,7 +616,7 @@ Below is a sample code to help get started:
 
 .. _class_GraphEdit_method__is_node_hover_valid:
 
-- :ref:`bool<class_bool>` **_is_node_hover_valid** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_slot, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_slot **)** |virtual|
+- :ref:`bool<class_bool>` **_is_node_hover_valid** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)** |virtual|
 
 This virtual method can be used to insert additional error detection while the user is dragging a connection over a valid port.
 
@@ -627,7 +629,7 @@ In this example a connection to same node is suppressed:
 
  .. code-tab:: gdscript
 
-    func _is_node_hover_valid(from, from_slot, to, to_slot):
+    func _is_node_hover_valid(from, from_port, to, to_port):
         return from != to
 
  .. code-tab:: csharp
@@ -644,7 +646,9 @@ In this example a connection to same node is suppressed:
 
 - void **add_valid_connection_type** **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)**
 
-Makes possible the connection between two different slot types. The type is defined with the :ref:`GraphNode.set_slot<class_GraphNode_method_set_slot>` method.
+Allows the connection between two different port types. The port type is defined individually for the left and the right port of each slot with the :ref:`GraphNode.set_slot<class_GraphNode_method_set_slot>` method.
+
+See also :ref:`is_valid_connection_type<class_GraphEdit_method_is_valid_connection_type>` and :ref:`remove_valid_connection_type<class_GraphEdit_method_remove_valid_connection_type>`.
 
 ----
 
@@ -652,7 +656,7 @@ Makes possible the connection between two different slot types. The type is defi
 
 - void **add_valid_left_disconnect_type** **(** :ref:`int<class_int>` type **)**
 
-Makes possible to disconnect nodes when dragging from the slot at the left if it has the specified type.
+Allows to disconnect nodes when dragging from the left port of the :ref:`GraphNode<class_GraphNode>`'s slot if it has the specified type. See also :ref:`remove_valid_left_disconnect_type<class_GraphEdit_method_remove_valid_left_disconnect_type>`.
 
 ----
 
@@ -660,7 +664,7 @@ Makes possible to disconnect nodes when dragging from the slot at the left if it
 
 - void **add_valid_right_disconnect_type** **(** :ref:`int<class_int>` type **)**
 
-Makes possible to disconnect nodes when dragging from the slot at the right if it has the specified type.
+Allows to disconnect nodes when dragging from the right port of the :ref:`GraphNode<class_GraphNode>`'s slot if it has the specified type. See also :ref:`remove_valid_right_disconnect_type<class_GraphEdit_method_remove_valid_right_disconnect_type>`.
 
 ----
 
@@ -682,17 +686,17 @@ Removes all connections between nodes.
 
 .. _class_GraphEdit_method_connect_node:
 
-- :ref:`Error<enum_@GlobalScope_Error>` **connect_node** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port **)**
+- :ref:`Error<enum_@GlobalScope_Error>` **connect_node** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**
 
-Create a connection between the ``from_port`` slot of the ``from`` GraphNode and the ``to_port`` slot of the ``to`` GraphNode. If the connection already exists, no connection is created.
+Create a connection between the ``from_port`` of the ``from_node`` :ref:`GraphNode<class_GraphNode>` and the ``to_port`` of the ``to_node`` :ref:`GraphNode<class_GraphNode>`. If the connection already exists, no connection is created.
 
 ----
 
 .. _class_GraphEdit_method_disconnect_node:
 
-- void **disconnect_node** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port **)**
+- void **disconnect_node** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**
 
-Removes the connection between the ``from_port`` slot of the ``from`` GraphNode and the ``to_port`` slot of the ``to`` GraphNode. If the connection does not exist, no connection is removed.
+Removes the connection between the ``from_port`` of the ``from_node`` :ref:`GraphNode<class_GraphNode>` and the ``to_port`` of the ``to_node`` :ref:`GraphNode<class_GraphNode>`. If the connection does not exist, no connection is removed.
 
 ----
 
@@ -710,9 +714,9 @@ This is best used together with :ref:`connection_drag_started<class_GraphEdit_si
 
 .. _class_GraphEdit_method_get_connection_line:
 
-- :ref:`PackedVector2Array<class_PackedVector2Array>` **get_connection_line** **(** :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to **)**
+- :ref:`PackedVector2Array<class_PackedVector2Array>` **get_connection_line** **(** :ref:`Vector2<class_Vector2>` from_node, :ref:`Vector2<class_Vector2>` to_node **)**
 
-Returns the points which would make up a connection between ``from`` and ``to``.
+Returns the points which would make up a connection between ``from_node`` and ``to_node``.
 
 ----
 
@@ -736,9 +740,9 @@ Gets the :ref:`HBoxContainer<class_HBoxContainer>` that contains the zooming and
 
 .. _class_GraphEdit_method_is_node_connected:
 
-- :ref:`bool<class_bool>` **is_node_connected** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port **)**
+- :ref:`bool<class_bool>` **is_node_connected** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port **)**
 
-Returns ``true`` if the ``from_port`` slot of the ``from`` GraphNode is connected to the ``to_port`` slot of the ``to`` GraphNode.
+Returns ``true`` if the ``from_port`` of the ``from_node`` :ref:`GraphNode<class_GraphNode>` is connected to the ``to_port`` of the ``to_node`` :ref:`GraphNode<class_GraphNode>`.
 
 ----
 
@@ -746,7 +750,9 @@ Returns ``true`` if the ``from_port`` slot of the ``from`` GraphNode is connecte
 
 - :ref:`bool<class_bool>` **is_valid_connection_type** **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)** |const|
 
-Returns whether it's possible to connect slots of the specified types.
+Returns whether it's possible to make a connection between two different port types. The port type is defined individually for the left and the right port of each slot with the :ref:`GraphNode.set_slot<class_GraphNode_method_set_slot>` method.
+
+See also :ref:`add_valid_connection_type<class_GraphEdit_method_add_valid_connection_type>` and :ref:`remove_valid_connection_type<class_GraphEdit_method_remove_valid_connection_type>`.
 
 ----
 
@@ -754,7 +760,9 @@ Returns whether it's possible to connect slots of the specified types.
 
 - void **remove_valid_connection_type** **(** :ref:`int<class_int>` from_type, :ref:`int<class_int>` to_type **)**
 
-Makes it not possible to connect between two different slot types. The type is defined with the :ref:`GraphNode.set_slot<class_GraphNode_method_set_slot>` method.
+Disallows the connection between two different port types previously allowed by :ref:`add_valid_connection_type<class_GraphEdit_method_add_valid_connection_type>`. The port type is defined individually for the left and the right port of each slot with the :ref:`GraphNode.set_slot<class_GraphNode_method_set_slot>` method.
+
+See also :ref:`is_valid_connection_type<class_GraphEdit_method_is_valid_connection_type>`.
 
 ----
 
@@ -762,7 +770,7 @@ Makes it not possible to connect between two different slot types. The type is d
 
 - void **remove_valid_left_disconnect_type** **(** :ref:`int<class_int>` type **)**
 
-Removes the possibility to disconnect nodes when dragging from the slot at the left if it has the specified type.
+Disallows to disconnect nodes when dragging from the left port of the :ref:`GraphNode<class_GraphNode>`'s slot if it has the specified type. Use this to disable disconnection previously allowed with :ref:`add_valid_left_disconnect_type<class_GraphEdit_method_add_valid_left_disconnect_type>`.
 
 ----
 
@@ -770,15 +778,15 @@ Removes the possibility to disconnect nodes when dragging from the slot at the l
 
 - void **remove_valid_right_disconnect_type** **(** :ref:`int<class_int>` type **)**
 
-Removes the possibility to disconnect nodes when dragging from the slot at the right if it has the specified type.
+Disallows to disconnect nodes when dragging from the right port of the :ref:`GraphNode<class_GraphNode>`'s slot if it has the specified type. Use this to disable disconnection previously allowed with :ref:`add_valid_right_disconnect_type<class_GraphEdit_method_add_valid_right_disconnect_type>`.
 
 ----
 
 .. _class_GraphEdit_method_set_connection_activity:
 
-- void **set_connection_activity** **(** :ref:`StringName<class_StringName>` from, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to, :ref:`int<class_int>` to_port, :ref:`float<class_float>` amount **)**
+- void **set_connection_activity** **(** :ref:`StringName<class_StringName>` from_node, :ref:`int<class_int>` from_port, :ref:`StringName<class_StringName>` to_node, :ref:`int<class_int>` to_port, :ref:`float<class_float>` amount **)**
 
-Sets the coloration of the connection between ``from``'s ``from_port`` and ``to``'s ``to_port`` with the color provided in the :ref:`activity<class_GraphEdit_theme_color_activity>` theme property.
+Sets the coloration of the connection between ``from_node``'s ``from_port`` and ``to_node``'s ``to_port`` with the color provided in the :ref:`activity<class_GraphEdit_theme_color_activity>` theme property.
 
 ----
 

+ 135 - 113
classes/class_graphnode.rst

@@ -12,16 +12,18 @@ GraphNode
 
 **Inherits:** :ref:`Container<class_Container>` **<** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
 
-A GraphNode is a container with potentially several input and output slots allowing connections between GraphNodes. Slots can have different, incompatible types.
+GraphNode is a :ref:`Container<class_Container>` control that represents a single data unit in a :ref:`GraphEdit<class_GraphEdit>` graph. You can customize the number, type, and color of left- and right-side connection ports.
 
 Description
 -----------
 
-A GraphNode is a container. Each GraphNode can have several input and output slots, sometimes referred to as ports, allowing connections between GraphNodes. To add a slot to GraphNode, add any :ref:`Control<class_Control>`-derived child node to it.
+GraphNode allows to create nodes for a :ref:`GraphEdit<class_GraphEdit>` graph with customizable content based on its child :ref:`Control<class_Control>`\ s. GraphNode is a :ref:`Container<class_Container>` and is responsible for placing its children on screen. This works similar to :ref:`VBoxContainer<class_VBoxContainer>`. Children, in turn, provide GraphNode with so-called slots, each of which can have a connection port on either side. This is similar to how :ref:`TabContainer<class_TabContainer>` uses children to create the tabs.
 
-After adding at least one child to GraphNode new sections will be automatically created in the Inspector called 'Slot'. When 'Slot' is expanded you will see list with index number for each slot. You can click on each of them to expand further.
+Each GraphNode slot is defined by its index and can provide the node with up to two ports: one on the left, and one on the right. By convention the left port is also referred to as the input port and the right port is referred to as the output port. Each port can be enabled and configured individually, using different type and color. The type is an arbitrary value that you can define using your own considerations. The parent :ref:`GraphEdit<class_GraphEdit>` will receive this information on each connect and disconnect request.
 
-In the Inspector you can enable (show) or disable (hide) slots. By default, all slots are disabled so you may not see any slots on your GraphNode initially. You can assign a type to each slot. Only slots of the same type will be able to connect to each other. You can also assign colors to slots. A tuple of input and output slots is defined for each GUI element included in the GraphNode. Input connections are on the left and output connections are on the right side of GraphNode. Only enabled slots are counted as connections.
+Slots can be configured in the Inspector dock once you add at least one child :ref:`Control<class_Control>`. The properties are grouped by each slot's index in the "Slot" section.
+
+\ **Note:** While GraphNode is set up using slots and slot indices, connections are made between the ports which are enabled. Because of that :ref:`GraphEdit<class_GraphEdit>` uses port's index and not slot's index. You can use :ref:`get_connection_input_slot<class_GraphNode_method_get_connection_input_slot>` and :ref:`get_connection_output_slot<class_GraphNode_method_get_connection_output_slot>` to get the slot index from the port index.
 
 Properties
 ----------
@@ -55,61 +57,65 @@ Properties
 Methods
 -------
 
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`clear_all_slots<class_GraphNode_method_clear_all_slots>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                      |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`clear_slot<class_GraphNode_method_clear_slot>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                                                      |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Color<class_Color>`     | :ref:`get_connection_input_color<class_GraphNode_method_get_connection_input_color>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                      |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_connection_input_count<class_GraphNode_method_get_connection_input_count>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_connection_input_height<class_GraphNode_method_get_connection_input_height>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                    |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Vector2<class_Vector2>` | :ref:`get_connection_input_position<class_GraphNode_method_get_connection_input_position>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_connection_input_type<class_GraphNode_method_get_connection_input_type>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                        |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Color<class_Color>`     | :ref:`get_connection_output_color<class_GraphNode_method_get_connection_output_color>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                    |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_connection_output_count<class_GraphNode_method_get_connection_output_count>` **(** **)**                                                                                                                                                                                                                                                                                                                                                              |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_connection_output_height<class_GraphNode_method_get_connection_output_height>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                  |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Vector2<class_Vector2>` | :ref:`get_connection_output_position<class_GraphNode_method_get_connection_output_position>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                              |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_connection_output_type<class_GraphNode_method_get_connection_output_type>` **(** :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                                      |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Color<class_Color>`     | :ref:`get_slot_color_left<class_GraphNode_method_get_slot_color_left>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                            |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Color<class_Color>`     | :ref:`get_slot_color_right<class_GraphNode_method_get_slot_color_right>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                          |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_slot_type_left<class_GraphNode_method_get_slot_type_left>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                              |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`         | :ref:`get_slot_type_right<class_GraphNode_method_get_slot_type_right>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                            |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`       | :ref:`is_slot_draw_stylebox<class_GraphNode_method_is_slot_draw_stylebox>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                        |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`       | :ref:`is_slot_enabled_left<class_GraphNode_method_is_slot_enabled_left>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                          |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`       | :ref:`is_slot_enabled_right<class_GraphNode_method_is_slot_enabled_right>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                        |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot<class_GraphNode_method_set_slot>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_left, :ref:`int<class_int>` type_left, :ref:`Color<class_Color>` color_left, :ref:`bool<class_bool>` enable_right, :ref:`int<class_int>` type_right, :ref:`Color<class_Color>` color_right, :ref:`Texture2D<class_Texture2D>` custom_left=null, :ref:`Texture2D<class_Texture2D>` custom_right=null, :ref:`bool<class_bool>` enable=true **)** |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_color_left<class_GraphNode_method_set_slot_color_left>` **(** :ref:`int<class_int>` idx, :ref:`Color<class_Color>` color_left **)**                                                                                                                                                                                                                                                                                                              |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_color_right<class_GraphNode_method_set_slot_color_right>` **(** :ref:`int<class_int>` idx, :ref:`Color<class_Color>` color_right **)**                                                                                                                                                                                                                                                                                                           |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_draw_stylebox<class_GraphNode_method_set_slot_draw_stylebox>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` draw_stylebox **)**                                                                                                                                                                                                                                                                                                       |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_enabled_left<class_GraphNode_method_set_slot_enabled_left>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_left **)**                                                                                                                                                                                                                                                                                                           |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_enabled_right<class_GraphNode_method_set_slot_enabled_right>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_right **)**                                                                                                                                                                                                                                                                                                        |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_type_left<class_GraphNode_method_set_slot_type_left>` **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` type_left **)**                                                                                                                                                                                                                                                                                                                     |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                          | :ref:`set_slot_type_right<class_GraphNode_method_set_slot_type_right>` **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` type_right **)**                                                                                                                                                                                                                                                                                                                  |
-+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`clear_all_slots<class_GraphNode_method_clear_all_slots>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                        |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`clear_slot<class_GraphNode_method_clear_slot>` **(** :ref:`int<class_int>` slot_index **)**                                                                                                                                                                                                                                                                                                                                                                                                 |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Color<class_Color>`     | :ref:`get_connection_input_color<class_GraphNode_method_get_connection_input_color>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                       |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_input_count<class_GraphNode_method_get_connection_input_count>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                  |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_input_height<class_GraphNode_method_get_connection_input_height>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                     |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Vector2<class_Vector2>` | :ref:`get_connection_input_position<class_GraphNode_method_get_connection_input_position>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                 |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_input_slot<class_GraphNode_method_get_connection_input_slot>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                         |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_input_type<class_GraphNode_method_get_connection_input_type>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                         |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Color<class_Color>`     | :ref:`get_connection_output_color<class_GraphNode_method_get_connection_output_color>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                     |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_output_count<class_GraphNode_method_get_connection_output_count>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_output_height<class_GraphNode_method_get_connection_output_height>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                   |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Vector2<class_Vector2>` | :ref:`get_connection_output_position<class_GraphNode_method_get_connection_output_position>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                               |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_output_slot<class_GraphNode_method_get_connection_output_slot>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                       |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_connection_output_type<class_GraphNode_method_get_connection_output_type>` **(** :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                                                                                                                                                       |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Color<class_Color>`     | :ref:`get_slot_color_left<class_GraphNode_method_get_slot_color_left>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                       |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Color<class_Color>`     | :ref:`get_slot_color_right<class_GraphNode_method_get_slot_color_right>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                     |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_slot_type_left<class_GraphNode_method_get_slot_type_left>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                         |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`         | :ref:`get_slot_type_right<class_GraphNode_method_get_slot_type_right>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                       |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`is_slot_draw_stylebox<class_GraphNode_method_is_slot_draw_stylebox>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                   |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`is_slot_enabled_left<class_GraphNode_method_is_slot_enabled_left>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                     |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`       | :ref:`is_slot_enabled_right<class_GraphNode_method_is_slot_enabled_right>` **(** :ref:`int<class_int>` slot_index **)** |const|                                                                                                                                                                                                                                                                                                                                                                   |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot<class_GraphNode_method_set_slot>` **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable_left_port, :ref:`int<class_int>` type_left, :ref:`Color<class_Color>` color_left, :ref:`bool<class_bool>` enable_right_port, :ref:`int<class_int>` type_right, :ref:`Color<class_Color>` color_right, :ref:`Texture2D<class_Texture2D>` custom_icon_left=null, :ref:`Texture2D<class_Texture2D>` custom_icon_right=null, :ref:`bool<class_bool>` draw_stylebox=true **)** |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_color_left<class_GraphNode_method_set_slot_color_left>` **(** :ref:`int<class_int>` slot_index, :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                              |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_color_right<class_GraphNode_method_set_slot_color_right>` **(** :ref:`int<class_int>` slot_index, :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                            |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_draw_stylebox<class_GraphNode_method_set_slot_draw_stylebox>` **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                                                                                                         |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_enabled_left<class_GraphNode_method_set_slot_enabled_left>` **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                                                                                                           |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_enabled_right<class_GraphNode_method_set_slot_enabled_right>` **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                                                                                                         |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_type_left<class_GraphNode_method_set_slot_type_left>` **(** :ref:`int<class_int>` slot_index, :ref:`int<class_int>` type **)**                                                                                                                                                                                                                                                                                                                                                     |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                          | :ref:`set_slot_type_right<class_GraphNode_method_set_slot_type_right>` **(** :ref:`int<class_int>` slot_index, :ref:`int<class_int>` type **)**                                                                                                                                                                                                                                                                                                                                                   |
++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 Theme Properties
 ----------------
@@ -436,17 +442,17 @@ Disables all input and output slots of the GraphNode.
 
 .. _class_GraphNode_method_clear_slot:
 
-- void **clear_slot** **(** :ref:`int<class_int>` idx **)**
+- void **clear_slot** **(** :ref:`int<class_int>` slot_index **)**
 
-Disables input and output slot whose index is ``idx``.
+Disables input and output slot whose index is ``slot_index``.
 
 ----
 
 .. _class_GraphNode_method_get_connection_input_color:
 
-- :ref:`Color<class_Color>` **get_connection_input_color** **(** :ref:`int<class_int>` idx **)**
+- :ref:`Color<class_Color>` **get_connection_input_color** **(** :ref:`int<class_int>` port **)**
 
-Returns the :ref:`Color<class_Color>` of the input connection ``idx``.
+Returns the :ref:`Color<class_Color>` of the input connection ``port``.
 
 ----
 
@@ -460,33 +466,41 @@ Returns the number of enabled input slots (connections) to the GraphNode.
 
 .. _class_GraphNode_method_get_connection_input_height:
 
-- :ref:`int<class_int>` **get_connection_input_height** **(** :ref:`int<class_int>` idx **)**
+- :ref:`int<class_int>` **get_connection_input_height** **(** :ref:`int<class_int>` port **)**
 
-Returns the height of the input connection ``idx``.
+Returns the height of the input connection ``port``.
 
 ----
 
 .. _class_GraphNode_method_get_connection_input_position:
 
-- :ref:`Vector2<class_Vector2>` **get_connection_input_position** **(** :ref:`int<class_int>` idx **)**
+- :ref:`Vector2<class_Vector2>` **get_connection_input_position** **(** :ref:`int<class_int>` port **)**
+
+Returns the position of the input connection ``port``.
+
+----
+
+.. _class_GraphNode_method_get_connection_input_slot:
+
+- :ref:`int<class_int>` **get_connection_input_slot** **(** :ref:`int<class_int>` port **)**
 
-Returns the position of the input connection ``idx``.
+Returns the corresponding slot index of the input connection ``port``.
 
 ----
 
 .. _class_GraphNode_method_get_connection_input_type:
 
-- :ref:`int<class_int>` **get_connection_input_type** **(** :ref:`int<class_int>` idx **)**
+- :ref:`int<class_int>` **get_connection_input_type** **(** :ref:`int<class_int>` port **)**
 
-Returns the type of the input connection ``idx``.
+Returns the type of the input connection ``port``.
 
 ----
 
 .. _class_GraphNode_method_get_connection_output_color:
 
-- :ref:`Color<class_Color>` **get_connection_output_color** **(** :ref:`int<class_int>` idx **)**
+- :ref:`Color<class_Color>` **get_connection_output_color** **(** :ref:`int<class_int>` port **)**
 
-Returns the :ref:`Color<class_Color>` of the output connection ``idx``.
+Returns the :ref:`Color<class_Color>` of the output connection ``port``.
 
 ----
 
@@ -500,157 +514,165 @@ Returns the number of enabled output slots (connections) of the GraphNode.
 
 .. _class_GraphNode_method_get_connection_output_height:
 
-- :ref:`int<class_int>` **get_connection_output_height** **(** :ref:`int<class_int>` idx **)**
+- :ref:`int<class_int>` **get_connection_output_height** **(** :ref:`int<class_int>` port **)**
 
-Returns the height of the output connection ``idx``.
+Returns the height of the output connection ``port``.
 
 ----
 
 .. _class_GraphNode_method_get_connection_output_position:
 
-- :ref:`Vector2<class_Vector2>` **get_connection_output_position** **(** :ref:`int<class_int>` idx **)**
+- :ref:`Vector2<class_Vector2>` **get_connection_output_position** **(** :ref:`int<class_int>` port **)**
+
+Returns the position of the output connection ``port``.
+
+----
+
+.. _class_GraphNode_method_get_connection_output_slot:
+
+- :ref:`int<class_int>` **get_connection_output_slot** **(** :ref:`int<class_int>` port **)**
 
-Returns the position of the output connection ``idx``.
+Returns the corresponding slot index of the output connection ``port``.
 
 ----
 
 .. _class_GraphNode_method_get_connection_output_type:
 
-- :ref:`int<class_int>` **get_connection_output_type** **(** :ref:`int<class_int>` idx **)**
+- :ref:`int<class_int>` **get_connection_output_type** **(** :ref:`int<class_int>` port **)**
 
-Returns the type of the output connection ``idx``.
+Returns the type of the output connection ``port``.
 
 ----
 
 .. _class_GraphNode_method_get_slot_color_left:
 
-- :ref:`Color<class_Color>` **get_slot_color_left** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`Color<class_Color>` **get_slot_color_left** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns the left (input) :ref:`Color<class_Color>` of the slot ``idx``.
+Returns the left (input) :ref:`Color<class_Color>` of the slot ``slot_index``.
 
 ----
 
 .. _class_GraphNode_method_get_slot_color_right:
 
-- :ref:`Color<class_Color>` **get_slot_color_right** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`Color<class_Color>` **get_slot_color_right** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns the right (output) :ref:`Color<class_Color>` of the slot ``idx``.
+Returns the right (output) :ref:`Color<class_Color>` of the slot ``slot_index``.
 
 ----
 
 .. _class_GraphNode_method_get_slot_type_left:
 
-- :ref:`int<class_int>` **get_slot_type_left** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`int<class_int>` **get_slot_type_left** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns the left (input) type of the slot ``idx``.
+Returns the left (input) type of the slot ``slot_index``.
 
 ----
 
 .. _class_GraphNode_method_get_slot_type_right:
 
-- :ref:`int<class_int>` **get_slot_type_right** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`int<class_int>` **get_slot_type_right** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns the right (output) type of the slot ``idx``.
+Returns the right (output) type of the slot ``slot_index``.
 
 ----
 
 .. _class_GraphNode_method_is_slot_draw_stylebox:
 
-- :ref:`bool<class_bool>` **is_slot_draw_stylebox** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`bool<class_bool>` **is_slot_draw_stylebox** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns true if the background :ref:`StyleBox<class_StyleBox>` of the slot ``idx`` is drawn.
+Returns true if the background :ref:`StyleBox<class_StyleBox>` of the slot ``slot_index`` is drawn.
 
 ----
 
 .. _class_GraphNode_method_is_slot_enabled_left:
 
-- :ref:`bool<class_bool>` **is_slot_enabled_left** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`bool<class_bool>` **is_slot_enabled_left** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns ``true`` if left (input) side of the slot ``idx`` is enabled.
+Returns ``true`` if left (input) side of the slot ``slot_index`` is enabled.
 
 ----
 
 .. _class_GraphNode_method_is_slot_enabled_right:
 
-- :ref:`bool<class_bool>` **is_slot_enabled_right** **(** :ref:`int<class_int>` idx **)** |const|
+- :ref:`bool<class_bool>` **is_slot_enabled_right** **(** :ref:`int<class_int>` slot_index **)** |const|
 
-Returns ``true`` if right (output) side of the slot ``idx`` is enabled.
+Returns ``true`` if right (output) side of the slot ``slot_index`` is enabled.
 
 ----
 
 .. _class_GraphNode_method_set_slot:
 
-- void **set_slot** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_left, :ref:`int<class_int>` type_left, :ref:`Color<class_Color>` color_left, :ref:`bool<class_bool>` enable_right, :ref:`int<class_int>` type_right, :ref:`Color<class_Color>` color_right, :ref:`Texture2D<class_Texture2D>` custom_left=null, :ref:`Texture2D<class_Texture2D>` custom_right=null, :ref:`bool<class_bool>` enable=true **)**
+- void **set_slot** **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable_left_port, :ref:`int<class_int>` type_left, :ref:`Color<class_Color>` color_left, :ref:`bool<class_bool>` enable_right_port, :ref:`int<class_int>` type_right, :ref:`Color<class_Color>` color_right, :ref:`Texture2D<class_Texture2D>` custom_icon_left=null, :ref:`Texture2D<class_Texture2D>` custom_icon_right=null, :ref:`bool<class_bool>` draw_stylebox=true **)**
 
-Sets properties of the slot with ID ``idx``.
+Sets properties of the slot with the ``slot_index`` index.
 
-If ``enable_left``/``enable_right``, a port will appear and the slot will be able to be connected from this side.
+If ``enable_left_port``/``enable_right_port`` is ``true``, a port will appear and the slot will be able to be connected from this side.
 
-``type_left``/``type_right`` is an arbitrary type of the port. Only ports with the same type values can be connected and negative values will disallow all connections to be made via user inputs.
+With ``type_left``/``type_right`` an arbitrary type can be assigned to each port. Two ports can be connected if they share the same type, or if the connection between their types is allowed in the parent :ref:`GraphEdit<class_GraphEdit>` (see :ref:`GraphEdit.add_valid_connection_type<class_GraphEdit_method_add_valid_connection_type>`). Keep in mind that the :ref:`GraphEdit<class_GraphEdit>` has the final say in accepting the connection. Type compatibility simply allows the :ref:`GraphEdit.connection_request<class_GraphEdit_signal_connection_request>` signal to be emitted.
 
-``color_left``/``color_right`` is the tint of the port's icon on this side.
+Ports can be further customized using ``color_left``/``color_right`` and ``custom_icon_left``/``custom_icon_right``. The color parameter adds a tint to the icon. The custom icon can be used to override the default port dot.
 
-``custom_left``/``custom_right`` is a custom texture for this side's port.
+Additionally, ``draw_stylebox`` can be used to enable or disable drawing of the background stylebox for each slot. See :ref:`slot<class_GraphNode_theme_style_slot>`.
 
-\ **Note:** This method only sets properties of the slot. To create the slot, add a :ref:`Control<class_Control>`-derived child to the GraphNode.
+Individual properties can also be set using one of the ``set_slot_*`` methods.
 
-Individual properties can be set using one of the ``set_slot_*`` methods. You must enable at least one side of the slot to do so.
+\ **Note:** This method only sets properties of the slot. To create the slot itself, add a :ref:`Control<class_Control>`-derived child to the GraphNode.
 
 ----
 
 .. _class_GraphNode_method_set_slot_color_left:
 
-- void **set_slot_color_left** **(** :ref:`int<class_int>` idx, :ref:`Color<class_Color>` color_left **)**
+- void **set_slot_color_left** **(** :ref:`int<class_int>` slot_index, :ref:`Color<class_Color>` color **)**
 
-Sets the :ref:`Color<class_Color>` of the left (input) side of the slot ``idx`` to ``color_left``.
+Sets the :ref:`Color<class_Color>` of the left (input) side of the slot ``slot_index`` to ``color``.
 
 ----
 
 .. _class_GraphNode_method_set_slot_color_right:
 
-- void **set_slot_color_right** **(** :ref:`int<class_int>` idx, :ref:`Color<class_Color>` color_right **)**
+- void **set_slot_color_right** **(** :ref:`int<class_int>` slot_index, :ref:`Color<class_Color>` color **)**
 
-Sets the :ref:`Color<class_Color>` of the right (output) side of the slot ``idx`` to ``color_right``.
+Sets the :ref:`Color<class_Color>` of the right (output) side of the slot ``slot_index`` to ``color``.
 
 ----
 
 .. _class_GraphNode_method_set_slot_draw_stylebox:
 
-- void **set_slot_draw_stylebox** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` draw_stylebox **)**
+- void **set_slot_draw_stylebox** **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable **)**
 
-Toggles the background :ref:`StyleBox<class_StyleBox>` of the slot ``idx``.
+Toggles the background :ref:`StyleBox<class_StyleBox>` of the slot ``slot_index``.
 
 ----
 
 .. _class_GraphNode_method_set_slot_enabled_left:
 
-- void **set_slot_enabled_left** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_left **)**
+- void **set_slot_enabled_left** **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable **)**
 
-Toggles the left (input) side of the slot ``idx``. If ``enable_left`` is ``true``, a port will appear on the left side and the slot will be able to be connected from this side.
+Toggles the left (input) side of the slot ``slot_index``. If ``enable`` is ``true``, a port will appear on the left side and the slot will be able to be connected from this side.
 
 ----
 
 .. _class_GraphNode_method_set_slot_enabled_right:
 
-- void **set_slot_enabled_right** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_right **)**
+- void **set_slot_enabled_right** **(** :ref:`int<class_int>` slot_index, :ref:`bool<class_bool>` enable **)**
 
-Toggles the right (output) side of the slot ``idx``. If ``enable_right`` is ``true``, a port will appear on the right side and the slot will be able to be connected from this side.
+Toggles the right (output) side of the slot ``slot_index``. If ``enable`` is ``true``, a port will appear on the right side and the slot will be able to be connected from this side.
 
 ----
 
 .. _class_GraphNode_method_set_slot_type_left:
 
-- void **set_slot_type_left** **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` type_left **)**
+- void **set_slot_type_left** **(** :ref:`int<class_int>` slot_index, :ref:`int<class_int>` type **)**
 
-Sets the left (input) type of the slot ``idx`` to ``type_left``. If the value is negative, all connections will be disallowed to be created via user inputs.
+Sets the left (input) type of the slot ``slot_index`` to ``type``. If the value is negative, all connections will be disallowed to be created via user inputs.
 
 ----
 
 .. _class_GraphNode_method_set_slot_type_right:
 
-- void **set_slot_type_right** **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` type_right **)**
+- void **set_slot_type_right** **(** :ref:`int<class_int>` slot_index, :ref:`int<class_int>` type **)**
 
-Sets the right (output) type of the slot ``idx`` to ``type_right``. If the value is negative, all connections will be disallowed to be created via user inputs.
+Sets the right (output) type of the slot ``slot_index`` to ``type``. If the value is negative, all connections will be disallowed to be created via user inputs.
 
 Theme Property Descriptions
 ---------------------------

+ 1 - 1
classes/class_httpclient.rst

@@ -503,7 +503,7 @@ The host should not have http:// prepended but will strip the protocol identifie
 
 If no ``port`` is specified (or ``-1`` is used), it is automatically set to 80 for HTTP and 443 for HTTPS (if ``use_tls`` is enabled).
 
-``verify_host`` will check the TLS identity of the host if set to ``true``.
+\ ``verify_host`` will check the TLS identity of the host if set to ``true``.
 
 ----
 

+ 5 - 3
classes/class_importermesh.rst

@@ -40,7 +40,7 @@ Methods
 +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                            | :ref:`clear<class_ImporterMesh_method_clear>` **(** **)**                                                                                                                                                                                                                                                                                                                    |
 +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                            | :ref:`generate_lods<class_ImporterMesh_method_generate_lods>` **(** :ref:`float<class_float>` normal_merge_angle, :ref:`float<class_float>` normal_split_angle **)**                                                                                                                                                                                                         |
+| void                                            | :ref:`generate_lods<class_ImporterMesh_method_generate_lods>` **(** :ref:`float<class_float>` normal_merge_angle, :ref:`float<class_float>` normal_split_angle, :ref:`Array<class_Array>` bone_transform_array **)**                                                                                                                                                         |
 +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`int<class_int>`                           | :ref:`get_blend_shape_count<class_ImporterMesh_method_get_blend_shape_count>` **(** **)** |const|                                                                                                                                                                                                                                                                            |
 +-------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -125,14 +125,16 @@ Removes all surfaces and blend shapes from this ``ImporterMesh``.
 
 .. _class_ImporterMesh_method_generate_lods:
 
-- void **generate_lods** **(** :ref:`float<class_float>` normal_merge_angle, :ref:`float<class_float>` normal_split_angle **)**
+- void **generate_lods** **(** :ref:`float<class_float>` normal_merge_angle, :ref:`float<class_float>` normal_split_angle, :ref:`Array<class_Array>` bone_transform_array **)**
 
 Generates all lods for this ImporterMesh.
 
-``normal_merge_angle`` and ``normal_split_angle`` are in degrees and used in the same way as the importer settings in ``lods``. As a good default, use 25 and 60 respectively.
+\ ``normal_merge_angle`` and ``normal_split_angle`` are in degrees and used in the same way as the importer settings in ``lods``. As a good default, use 25 and 60 respectively.
 
 The number of generated lods can be accessed using :ref:`get_surface_lod_count<class_ImporterMesh_method_get_surface_lod_count>`, and each LOD is available in :ref:`get_surface_lod_size<class_ImporterMesh_method_get_surface_lod_size>` and :ref:`get_surface_lod_indices<class_ImporterMesh_method_get_surface_lod_indices>`.
 
+\ ``bone_transform_array`` is an :ref:`Array<class_Array>` which can be either empty or contain :ref:`Transform3D<class_Transform3D>`\ s which, for each of the mesh's bone IDs, will apply mesh skinning when generating the LOD mesh variations. This is usually used to account for discrepancies in scale between the mesh itself and its skinning data.
+
 ----
 
 .. _class_ImporterMesh_method_get_blend_shape_count:

+ 2 - 2
classes/class_input.rst

@@ -615,9 +615,9 @@ Sets the acceleration value of the accelerometer sensor. Can be used for debuggi
 
 Sets a custom mouse cursor image, which is only visible inside the game window. The hotspot can also be specified. Passing ``null`` to the image parameter resets to the system cursor. See :ref:`CursorShape<enum_Input_CursorShape>` for the list of shapes.
 
-``image``'s size must be lower than 256×256.
+\ ``image``'s size must be lower than 256×256.
 
-``hotspot`` must be within ``image``'s size.
+\ ``hotspot`` must be within ``image``'s size.
 
 \ **Note:** :ref:`AnimatedTexture<class_AnimatedTexture>`\ s aren't supported as custom mouse cursors. If using an :ref:`AnimatedTexture<class_AnimatedTexture>`, only the first frame will be displayed.
 

+ 1 - 1
classes/class_jsonrpc.rst

@@ -128,7 +128,7 @@ Given a Dictionary which takes the form of a JSON-RPC request: unpack the reques
 
 To add new supported methods extend the JSONRPC class and call :ref:`process_action<class_JSONRPC_method_process_action>` on your subclass.
 
-``action``: The action to be run, as a Dictionary in the form of a JSON-RPC request or notification.
+\ ``action``: The action to be run, as a Dictionary in the form of a JSON-RPC request or notification.
 
 ----
 

+ 23 - 7
classes/class_multimesh.rst

@@ -12,7 +12,7 @@ MultiMesh
 
 **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
 
-Provides high-performance mesh instancing.
+Provides high-performance drawing of a mesh multiple times using GPU instancing.
 
 Description
 -----------
@@ -25,6 +25,10 @@ As a drawback, if the instances are too far away from each other, performance ma
 
 Since instances may have any behavior, the AABB used for visibility must be provided by the user.
 
+\ **Note:** A MultiMesh is a single object, therefore the same maximum lights per object restriction applies. This means, that once the maximum lights are consumed by one or more instances, the rest of the MultiMesh instances will **not** receive any lighting.
+
+\ **Note:** Blend Shapes will be ignored if used in a MultiMesh.
+
 Tutorials
 ---------
 
@@ -118,12 +122,16 @@ Property Descriptions
 
 - :ref:`PackedColorArray<class_PackedColorArray>` **color_array**
 
+See :ref:`set_instance_color<class_MultiMesh_method_set_instance_color>`.
+
 ----
 
 .. _class_MultiMesh_property_custom_data_array:
 
 - :ref:`PackedColorArray<class_PackedColorArray>` **custom_data_array**
 
+See :ref:`set_instance_custom_data<class_MultiMesh_method_set_instance_custom_data>`.
+
 ----
 
 .. _class_MultiMesh_property_instance_count:
@@ -154,7 +162,9 @@ By default, all instances are drawn but you can limit this with :ref:`visible_in
 | *Getter* | get_mesh()      |
 +----------+-----------------+
 
-Mesh to be drawn.
+:ref:`Mesh<class_Mesh>` resource to be instanced.
+
+The looks of the individual instances can be modified using :ref:`set_instance_color<class_MultiMesh_method_set_instance_color>` and :ref:`set_instance_custom_data<class_MultiMesh_method_set_instance_custom_data>`.
 
 ----
 
@@ -162,12 +172,16 @@ Mesh to be drawn.
 
 - :ref:`PackedVector2Array<class_PackedVector2Array>` **transform_2d_array**
 
+See :ref:`set_instance_transform_2d<class_MultiMesh_method_set_instance_transform_2d>`.
+
 ----
 
 .. _class_MultiMesh_property_transform_array:
 
 - :ref:`PackedVector3Array<class_PackedVector3Array>` **transform_array**
 
+See :ref:`set_instance_transform<class_MultiMesh_method_set_instance_transform>`.
+
 ----
 
 .. _class_MultiMesh_property_transform_format:
@@ -198,7 +212,7 @@ Format of transform used to transform mesh, either 2D or 3D.
 | *Getter*  | is_using_colors()     |
 +-----------+-----------------------+
 
-If ``true``, the ``MultiMesh`` will use color data (see :ref:`color_array<class_MultiMesh_property_color_array>`).
+If ``true``, the ``MultiMesh`` will use color data (see :ref:`set_instance_color<class_MultiMesh_method_set_instance_color>`). Can only be set when :ref:`instance_count<class_MultiMesh_property_instance_count>` is ``0`` or less. This means that you need to call this method before setting the instance count, or temporarily reset it to ``0``.
 
 ----
 
@@ -214,7 +228,7 @@ If ``true``, the ``MultiMesh`` will use color data (see :ref:`color_array<class_
 | *Getter*  | is_using_custom_data()     |
 +-----------+----------------------------+
 
-If ``true``, the ``MultiMesh`` will use custom data (see :ref:`custom_data_array<class_MultiMesh_property_custom_data_array>`).
+If ``true``, the ``MultiMesh`` will use custom data (see :ref:`set_instance_custom_data<class_MultiMesh_method_set_instance_custom_data>`). Can only be set when :ref:`instance_count<class_MultiMesh_property_instance_count>` is ``0`` or less. This means that you need to call this method before setting the instance count, or temporarily reset it to ``0``.
 
 ----
 
@@ -247,7 +261,7 @@ Returns the visibility axis-aligned bounding box in local space. See also :ref:`
 
 - :ref:`Color<class_Color>` **get_instance_color** **(** :ref:`int<class_int>` instance **)** |const|
 
-Gets a specific instance's color.
+Gets a specific instance's color multiplier.
 
 ----
 
@@ -279,9 +293,9 @@ Returns the :ref:`Transform2D<class_Transform2D>` of a specific instance.
 
 - void **set_instance_color** **(** :ref:`int<class_int>` instance, :ref:`Color<class_Color>` color **)**
 
-Sets the color of a specific instance by *multiplying* the mesh's existing vertex colors.
+Sets the color of a specific instance by *multiplying* the mesh's existing vertex colors. This allows for different color tinting per instance.
 
-For the color to take effect, ensure that :ref:`use_colors<class_MultiMesh_property_use_colors>` is ``true`` on the ``MultiMesh`` and :ref:`BaseMaterial3D.vertex_color_use_as_albedo<class_BaseMaterial3D_property_vertex_color_use_as_albedo>` is ``true`` on the material. If the color doesn't look as expected, make sure the material's albedo color is set to pure white (``Color(1, 1, 1)``).
+For the color to take effect, ensure that :ref:`use_colors<class_MultiMesh_property_use_colors>` is ``true`` on the ``MultiMesh`` and :ref:`BaseMaterial3D.vertex_color_use_as_albedo<class_BaseMaterial3D_property_vertex_color_use_as_albedo>` is ``true`` on the material. If you intend to set an absolute color instead of tinting, make sure the material's albedo color is set to pure white (``Color(1, 1, 1)``).
 
 ----
 
@@ -293,6 +307,8 @@ Sets custom data for a specific instance. Although :ref:`Color<class_Color>` is
 
 For the custom data to be used, ensure that :ref:`use_custom_data<class_MultiMesh_property_use_custom_data>` is ``true``.
 
+This custom instance data has to be manually accessed in your custom shader using ``INSTANCE_CUSTOM``.
+
 ----
 
 .. _class_MultiMesh_method_set_instance_transform:

+ 23 - 3
classes/class_navigationobstacle2d.rst

@@ -33,9 +33,13 @@ Properties
 Methods
 -------
 
-+-----------------------+-------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>` | :ref:`get_rid<class_NavigationObstacle2D_method_get_rid>` **(** **)** |const| |
-+-----------------------+-------------------------------------------------------------------------------+
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>` | :ref:`get_navigation_map<class_NavigationObstacle2D_method_get_navigation_map>` **(** **)** |const|                              |
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>` | :ref:`get_rid<class_NavigationObstacle2D_method_get_rid>` **(** **)** |const|                                                    |
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
+| void                  | :ref:`set_navigation_map<class_NavigationObstacle2D_method_set_navigation_map>` **(** :ref:`RID<class_RID>` navigation_map **)** |
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
 
 Property Descriptions
 ---------------------
@@ -73,12 +77,28 @@ The radius of the agent. Used only if :ref:`estimate_radius<class_NavigationObst
 Method Descriptions
 -------------------
 
+.. _class_NavigationObstacle2D_method_get_navigation_map:
+
+- :ref:`RID<class_RID>` **get_navigation_map** **(** **)** |const|
+
+Returns the :ref:`RID<class_RID>` of the navigation map for this NavigationObstacle node. This function returns always the map set on the NavigationObstacle node and not the map of the abstract agent on the NavigationServer. If the agent map is changed directly with the NavigationServer API the NavigationObstacle node will not be aware of the map change. Use :ref:`set_navigation_map<class_NavigationObstacle2D_method_set_navigation_map>` to change the navigation map for the NavigationObstacle and also update the agent on the NavigationServer.
+
+----
+
 .. _class_NavigationObstacle2D_method_get_rid:
 
 - :ref:`RID<class_RID>` **get_rid** **(** **)** |const|
 
 Returns the :ref:`RID<class_RID>` of this obstacle on the :ref:`NavigationServer2D<class_NavigationServer2D>`.
 
+----
+
+.. _class_NavigationObstacle2D_method_set_navigation_map:
+
+- void **set_navigation_map** **(** :ref:`RID<class_RID>` navigation_map **)**
+
+Sets the :ref:`RID<class_RID>` of the navigation map this NavigationObstacle node should use and also updates the ``agent`` on the NavigationServer.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 23 - 3
classes/class_navigationobstacle3d.rst

@@ -33,9 +33,13 @@ Properties
 Methods
 -------
 
-+-----------------------+-------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>` | :ref:`get_rid<class_NavigationObstacle3D_method_get_rid>` **(** **)** |const| |
-+-----------------------+-------------------------------------------------------------------------------+
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>` | :ref:`get_navigation_map<class_NavigationObstacle3D_method_get_navigation_map>` **(** **)** |const|                              |
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>` | :ref:`get_rid<class_NavigationObstacle3D_method_get_rid>` **(** **)** |const|                                                    |
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
+| void                  | :ref:`set_navigation_map<class_NavigationObstacle3D_method_set_navigation_map>` **(** :ref:`RID<class_RID>` navigation_map **)** |
++-----------------------+----------------------------------------------------------------------------------------------------------------------------------+
 
 Property Descriptions
 ---------------------
@@ -73,12 +77,28 @@ The radius of the agent. Used only if :ref:`estimate_radius<class_NavigationObst
 Method Descriptions
 -------------------
 
+.. _class_NavigationObstacle3D_method_get_navigation_map:
+
+- :ref:`RID<class_RID>` **get_navigation_map** **(** **)** |const|
+
+Returns the :ref:`RID<class_RID>` of the navigation map for this NavigationObstacle node. This function returns always the map set on the NavigationObstacle node and not the map of the abstract agent on the NavigationServer. If the agent map is changed directly with the NavigationServer API the NavigationObstacle node will not be aware of the map change. Use :ref:`set_navigation_map<class_NavigationObstacle3D_method_set_navigation_map>` to change the navigation map for the NavigationObstacle and also update the agent on the NavigationServer.
+
+----
+
 .. _class_NavigationObstacle3D_method_get_rid:
 
 - :ref:`RID<class_RID>` **get_rid** **(** **)** |const|
 
 Returns the :ref:`RID<class_RID>` of this obstacle on the :ref:`NavigationServer3D<class_NavigationServer3D>`.
 
+----
+
+.. _class_NavigationObstacle3D_method_set_navigation_map:
+
+- void **set_navigation_map** **(** :ref:`RID<class_RID>` navigation_map **)**
+
+Sets the :ref:`RID<class_RID>` of the navigation map this NavigationObstacle node should use and also updates the ``agent`` on the NavigationServer.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 5 - 15
classes/class_node.rst

@@ -195,8 +195,6 @@ Methods
 +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                              | :ref:`queue_free<class_Node_method_queue_free>` **(** **)**                                                                                                                                                                    |
 +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                              | :ref:`remove_and_skip<class_Node_method_remove_and_skip>` **(** **)**                                                                                                                                                          |
-+---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                              | :ref:`remove_child<class_Node_method_remove_child>` **(** :ref:`Node<class_Node>` node **)**                                                                                                                                   |
 +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                              | :ref:`remove_from_group<class_Node_method_remove_from_group>` **(** :ref:`StringName<class_StringName>` group **)**                                                                                                            |
@@ -946,7 +944,7 @@ You can fine-tune the behavior using the ``flags`` (see :ref:`DuplicateFlags<enu
 
 Finds the first descendant of this node whose name matches ``pattern`` as in :ref:`String.match<class_String_method_match>`.
 
-``pattern`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``).
+\ ``pattern`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``).
 
 If ``recursive`` is ``true``, all child nodes are included, even if deeply nested. Nodes are checked in tree order, so this node's first direct child is checked first, then its own direct children, etc., before moving to the second direct child, and so on. If ``recursive`` is ``false``, only this node's direct children are matched.
 
@@ -966,9 +964,9 @@ Returns ``null`` if no matching ``Node`` is found.
 
 Finds descendants of this node whose name matches ``pattern`` as in :ref:`String.match<class_String_method_match>`, and/or type matches ``type`` as in :ref:`Object.is_class<class_Object_method_is_class>`.
 
-``pattern`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``).
+\ ``pattern`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``).
 
-``type`` will check equality or inheritance, and is case-sensitive. ``"Object"`` will match a node whose type is ``"Node"`` but not the other way around.
+\ ``type`` will check equality or inheritance, and is case-sensitive. ``"Object"`` will match a node whose type is ``"Node"`` but not the other way around.
 
 If ``recursive`` is ``true``, all child nodes are included, even if deeply nested. Nodes are checked in tree order, so this node's first direct child is checked first, then its own direct children, etc., before moving to the second direct child, and so on. If ``recursive`` is ``false``, only this node's direct children are matched.
 
@@ -988,7 +986,7 @@ Returns an empty array if no matching nodes are found.
 
 Finds the first parent of the current node whose name matches ``pattern`` as in :ref:`String.match<class_String_method_match>`.
 
-``pattern`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``).
+\ ``pattern`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``).
 
 \ **Note:** As this method walks upwards in the scene tree, it can be slow in large, deeply nested scene trees. Whenever possible, consider using :ref:`get_node<class_Node_method_get_node>` with unique names instead (see :ref:`unique_name_in_owner<class_Node_property_unique_name_in_owner>`), or caching the node references into variable.
 
@@ -1351,7 +1349,7 @@ Returns ``true`` if the node is processing unhandled key input (see :ref:`set_pr
 
 - void **move_child** **(** :ref:`Node<class_Node>` child_node, :ref:`int<class_int>` to_position **)**
 
-Moves a child node to a different position (order) among the other children. Since calls, signals, etc are performed by tree order, changing the order of children nodes may be useful.
+Moves a child node to a different position (order) among the other children. Since calls, signals, etc are performed by tree order, changing the order of children nodes may be useful. If ``to_position`` is negative, the index will be counted from the end.
 
 \ **Note:** Internal children can only be moved within their expected "internal range" (see ``internal`` parameter in :ref:`add_child<class_Node_method_add_child>`).
 
@@ -1429,14 +1427,6 @@ Queues a node for deletion at the end of the current frame. When deleted, all of
 
 ----
 
-.. _class_Node_method_remove_and_skip:
-
-- void **remove_and_skip** **(** **)**
-
-Removes a node and sets all its children as children of the parent node (if it exists). All event subscriptions that pass by the removed node will be unsubscribed.
-
-----
-
 .. _class_Node_method_remove_child:
 
 - void **remove_child** **(** :ref:`Node<class_Node>` node **)**

+ 3 - 3
classes/class_physicsbody2d.rst

@@ -77,7 +77,7 @@ Returns a :ref:`KinematicCollision2D<class_KinematicCollision2D>`, which contain
 
 If ``test_only`` is ``true``, the body does not move but the would-be collision information is given.
 
-``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody2D.safe_margin<class_CharacterBody2D_property_safe_margin>` for more details).
+\ ``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody2D.safe_margin<class_CharacterBody2D_property_safe_margin>` for more details).
 
 ----
 
@@ -97,9 +97,9 @@ Checks for collisions without moving the body. In order to be frame rate indepen
 
 Virtually sets the node's position, scale and rotation to that of the given :ref:`Transform2D<class_Transform2D>`, then tries to move the body along the vector ``distance``. Returns ``true`` if a collision would stop the body from moving along the whole path.
 
-``collision`` is an optional object of type :ref:`KinematicCollision2D<class_KinematicCollision2D>`, which contains additional information about the collision when stopped, or when touching another body along the motion.
+\ ``collision`` is an optional object of type :ref:`KinematicCollision2D<class_KinematicCollision2D>`, which contains additional information about the collision when stopped, or when touching another body along the motion.
 
-``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody2D.safe_margin<class_CharacterBody2D_property_safe_margin>` for more details).
+\ ``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody2D.safe_margin<class_CharacterBody2D_property_safe_margin>` for more details).
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 5 - 5
classes/class_physicsbody3d.rst

@@ -196,9 +196,9 @@ The body will stop if it collides. Returns a :ref:`KinematicCollision3D<class_Ki
 
 If ``test_only`` is ``true``, the body does not move but the would-be collision information is given.
 
-``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody3D.safe_margin<class_CharacterBody3D_property_safe_margin>` for more details).
+\ ``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody3D.safe_margin<class_CharacterBody3D_property_safe_margin>` for more details).
 
-``max_collisions`` allows to retrieve more than one collision result.
+\ ``max_collisions`` allows to retrieve more than one collision result.
 
 ----
 
@@ -226,11 +226,11 @@ Checks for collisions without moving the body. In order to be frame rate indepen
 
 Virtually sets the node's position, scale and rotation to that of the given :ref:`Transform3D<class_Transform3D>`, then tries to move the body along the vector ``distance``. Returns ``true`` if a collision would stop the body from moving along the whole path.
 
-``collision`` is an optional object of type :ref:`KinematicCollision3D<class_KinematicCollision3D>`, which contains additional information about the collision when stopped, or when touching another body along the motion.
+\ ``collision`` is an optional object of type :ref:`KinematicCollision3D<class_KinematicCollision3D>`, which contains additional information about the collision when stopped, or when touching another body along the motion.
 
-``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody3D.safe_margin<class_CharacterBody3D_property_safe_margin>` for more details).
+\ ``safe_margin`` is the extra margin used for collision recovery (see :ref:`CharacterBody3D.safe_margin<class_CharacterBody3D_property_safe_margin>` for more details).
 
-``max_collisions`` allows to retrieve more than one collision result.
+\ ``max_collisions`` allows to retrieve more than one collision result.
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 3 - 3
classes/class_physicsdirectbodystate2d.rst

@@ -286,7 +286,7 @@ This is equivalent to using :ref:`add_constant_force<class_PhysicsDirectBodyStat
 
 Adds a constant positioned force to the body that keeps being applied over time until cleared with ``constant_force = Vector2(0, 0)``.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -326,7 +326,7 @@ This is equivalent to using :ref:`apply_impulse<class_PhysicsDirectBodyState2D_m
 
 Applies a positioned force to the body. A force is time dependent and meant to be applied every physics update.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -338,7 +338,7 @@ Applies a positioned impulse to the body.
 
 An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise).
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 

+ 3 - 3
classes/class_physicsdirectbodystate3d.rst

@@ -300,7 +300,7 @@ This is equivalent to using :ref:`add_constant_force<class_PhysicsDirectBodyStat
 
 Adds a constant positioned force to the body that keeps being applied over time until cleared with ``constant_force = Vector3(0, 0, 0)``.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -340,7 +340,7 @@ This is equivalent to using :ref:`apply_impulse<class_PhysicsDirectBodyState3D_m
 
 Applies a positioned force to the body. A force is time dependent and meant to be applied every physics update.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -352,7 +352,7 @@ Applies a positioned impulse to the body.
 
 An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise).
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 

+ 3 - 3
classes/class_physicsserver2d.rst

@@ -866,7 +866,7 @@ This is equivalent to using :ref:`body_add_constant_force<class_PhysicsServer2D_
 
 Adds a constant positioned force to the body that keeps being applied over time until cleared with ``body_set_constant_force(body, Vector2(0, 0))``.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -914,7 +914,7 @@ This is equivalent to using :ref:`body_apply_impulse<class_PhysicsServer2D_metho
 
 Applies a positioned force to the body. A force is time dependent and meant to be applied every physics update.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -926,7 +926,7 @@ Applies a positioned impulse to the body.
 
 An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise).
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 

+ 359 - 239
classes/class_physicsserver2dextension.rst

@@ -17,245 +17,275 @@ PhysicsServer2DExtension
 Methods
 -------
 
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_add_shape<class_PhysicsServer2DExtension_method__area_add_shape>` **(** :ref:`RID<class_RID>` area, :ref:`RID<class_RID>` shape, :ref:`Transform2D<class_Transform2D>` transform, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_attach_canvas_instance_id<class_PhysicsServer2DExtension_method__area_attach_canvas_instance_id>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_attach_object_instance_id<class_PhysicsServer2DExtension_method__area_attach_object_instance_id>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_clear_shapes<class_PhysicsServer2DExtension_method__area_clear_shapes>` **(** :ref:`RID<class_RID>` area **)** |virtual|                                                                                                                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_area_create<class_PhysicsServer2DExtension_method__area_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_area_get_canvas_instance_id<class_PhysicsServer2DExtension_method__area_get_canvas_instance_id>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                            |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_area_get_object_instance_id<class_PhysicsServer2DExtension_method__area_get_object_instance_id>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                            |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Variant<class_Variant>`                                     | :ref:`_area_get_param<class_PhysicsServer2DExtension_method__area_get_param>` **(** :ref:`RID<class_RID>` area, :ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` param **)** |virtual| |const|                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_area_get_shape<class_PhysicsServer2DExtension_method__area_get_shape>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_area_get_shape_count<class_PhysicsServer2DExtension_method__area_get_shape_count>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                          |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Transform2D<class_Transform2D>`                             | :ref:`_area_get_shape_transform<class_PhysicsServer2DExtension_method__area_get_shape_transform>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_area_get_space<class_PhysicsServer2DExtension_method__area_get_space>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Transform2D<class_Transform2D>`                             | :ref:`_area_get_transform<class_PhysicsServer2DExtension_method__area_get_transform>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_remove_shape<class_PhysicsServer2DExtension_method__area_remove_shape>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx **)** |virtual|                                                                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_area_monitor_callback<class_PhysicsServer2DExtension_method__area_set_area_monitor_callback>` **(** :ref:`RID<class_RID>` area, :ref:`Callable<class_Callable>` callback **)** |virtual|                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_collision_layer<class_PhysicsServer2DExtension_method__area_set_collision_layer>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` layer **)** |virtual|                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_collision_mask<class_PhysicsServer2DExtension_method__area_set_collision_mask>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` mask **)** |virtual|                                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_monitor_callback<class_PhysicsServer2DExtension_method__area_set_monitor_callback>` **(** :ref:`RID<class_RID>` area, :ref:`Callable<class_Callable>` callback **)** |virtual|                                                                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_monitorable<class_PhysicsServer2DExtension_method__area_set_monitorable>` **(** :ref:`RID<class_RID>` area, :ref:`bool<class_bool>` monitorable **)** |virtual|                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_param<class_PhysicsServer2DExtension_method__area_set_param>` **(** :ref:`RID<class_RID>` area, :ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` param, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_shape<class_PhysicsServer2DExtension_method__area_set_shape>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`RID<class_RID>` shape **)** |virtual|                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_shape_disabled<class_PhysicsServer2DExtension_method__area_set_shape_disabled>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_shape_transform<class_PhysicsServer2DExtension_method__area_set_shape_transform>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_Transform2D>` transform **)** |virtual|                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_space<class_PhysicsServer2DExtension_method__area_set_space>` **(** :ref:`RID<class_RID>` area, :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_area_set_transform<class_PhysicsServer2DExtension_method__area_set_transform>` **(** :ref:`RID<class_RID>` area, :ref:`Transform2D<class_Transform2D>` transform **)** |virtual|                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_add_collision_exception<class_PhysicsServer2DExtension_method__body_add_collision_exception>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` excepted_body **)** |virtual|                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_add_constant_central_force<class_PhysicsServer2DExtension_method__body_add_constant_central_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force **)** |virtual|                                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_add_constant_force<class_PhysicsServer2DExtension_method__body_add_constant_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force, :ref:`Vector2<class_Vector2>` position **)** |virtual|                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_add_constant_torque<class_PhysicsServer2DExtension_method__body_add_constant_torque>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` torque **)** |virtual|                                                                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_add_shape<class_PhysicsServer2DExtension_method__body_add_shape>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` shape, :ref:`Transform2D<class_Transform2D>` transform, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_apply_central_force<class_PhysicsServer2DExtension_method__body_apply_central_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force **)** |virtual|                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_apply_central_impulse<class_PhysicsServer2DExtension_method__body_apply_central_impulse>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` impulse **)** |virtual|                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_apply_force<class_PhysicsServer2DExtension_method__body_apply_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force, :ref:`Vector2<class_Vector2>` position **)** |virtual|                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_apply_impulse<class_PhysicsServer2DExtension_method__body_apply_impulse>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` impulse, :ref:`Vector2<class_Vector2>` position **)** |virtual|                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_apply_torque<class_PhysicsServer2DExtension_method__body_apply_torque>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` torque **)** |virtual|                                                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_apply_torque_impulse<class_PhysicsServer2DExtension_method__body_apply_torque_impulse>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` impulse **)** |virtual|                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_attach_canvas_instance_id<class_PhysicsServer2DExtension_method__body_attach_canvas_instance_id>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_attach_object_instance_id<class_PhysicsServer2DExtension_method__body_attach_object_instance_id>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_clear_shapes<class_PhysicsServer2DExtension_method__body_clear_shapes>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_body_create<class_PhysicsServer2DExtension_method__body_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_body_get_canvas_instance_id<class_PhysicsServer2DExtension_method__body_get_canvas_instance_id>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                            |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_body_get_collision_layer<class_PhysicsServer2DExtension_method__body_get_collision_layer>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                  |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_body_get_collision_mask<class_PhysicsServer2DExtension_method__body_get_collision_mask>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`float<class_float>`                                         | :ref:`_body_get_collision_priority<class_PhysicsServer2DExtension_method__body_get_collision_priority>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                            |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Vector2<class_Vector2>`                                     | :ref:`_body_get_constant_force<class_PhysicsServer2DExtension_method__body_get_constant_force>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                    |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`float<class_float>`                                         | :ref:`_body_get_constant_torque<class_PhysicsServer2DExtension_method__body_get_constant_torque>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                  |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`CCDMode<enum_PhysicsServer2D_CCDMode>`                      | :ref:`_body_get_continuous_collision_detection_mode<class_PhysicsServer2DExtension_method__body_get_continuous_collision_detection_mode>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                          |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`PhysicsDirectBodyState2D<class_PhysicsDirectBodyState2D>`   | :ref:`_body_get_direct_state<class_PhysicsServer2DExtension_method__body_get_direct_state>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_body_get_max_contacts_reported<class_PhysicsServer2DExtension_method__body_get_max_contacts_reported>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`BodyMode<enum_PhysicsServer2D_BodyMode>`                    | :ref:`_body_get_mode<class_PhysicsServer2DExtension_method__body_get_mode>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_body_get_object_instance_id<class_PhysicsServer2DExtension_method__body_get_object_instance_id>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                            |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Variant<class_Variant>`                                     | :ref:`_body_get_param<class_PhysicsServer2DExtension_method__body_get_param>` **(** :ref:`RID<class_RID>` body, :ref:`BodyParameter<enum_PhysicsServer2D_BodyParameter>` param **)** |virtual| |const|                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_body_get_shape<class_PhysicsServer2DExtension_method__body_get_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_body_get_shape_count<class_PhysicsServer2DExtension_method__body_get_shape_count>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                          |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Transform2D<class_Transform2D>`                             | :ref:`_body_get_shape_transform<class_PhysicsServer2DExtension_method__body_get_shape_transform>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_body_get_space<class_PhysicsServer2DExtension_method__body_get_space>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Variant<class_Variant>`                                     | :ref:`_body_get_state<class_PhysicsServer2DExtension_method__body_get_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer2D_BodyState>` state **)** |virtual| |const|                                                                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                                           | :ref:`_body_is_omitting_force_integration<class_PhysicsServer2DExtension_method__body_is_omitting_force_integration>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_remove_collision_exception<class_PhysicsServer2DExtension_method__body_remove_collision_exception>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` excepted_body **)** |virtual|                                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_remove_shape<class_PhysicsServer2DExtension_method__body_remove_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx **)** |virtual|                                                                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_reset_mass_properties<class_PhysicsServer2DExtension_method__body_reset_mass_properties>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_axis_velocity<class_PhysicsServer2DExtension_method__body_set_axis_velocity>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` axis_velocity **)** |virtual|                                                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_collision_layer<class_PhysicsServer2DExtension_method__body_set_collision_layer>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` layer **)** |virtual|                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_collision_mask<class_PhysicsServer2DExtension_method__body_set_collision_mask>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` mask **)** |virtual|                                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_collision_priority<class_PhysicsServer2DExtension_method__body_set_collision_priority>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` priority **)** |virtual|                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_constant_force<class_PhysicsServer2DExtension_method__body_set_constant_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force **)** |virtual|                                                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_constant_torque<class_PhysicsServer2DExtension_method__body_set_constant_torque>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` torque **)** |virtual|                                                                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_continuous_collision_detection_mode<class_PhysicsServer2DExtension_method__body_set_continuous_collision_detection_mode>` **(** :ref:`RID<class_RID>` body, :ref:`CCDMode<enum_PhysicsServer2D_CCDMode>` mode **)** |virtual|                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_force_integration_callback<class_PhysicsServer2DExtension_method__body_set_force_integration_callback>` **(** :ref:`RID<class_RID>` body, :ref:`Callable<class_Callable>` callable, :ref:`Variant<class_Variant>` userdata **)** |virtual|                                                                                                                                                  |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_max_contacts_reported<class_PhysicsServer2DExtension_method__body_set_max_contacts_reported>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` amount **)** |virtual|                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_mode<class_PhysicsServer2DExtension_method__body_set_mode>` **(** :ref:`RID<class_RID>` body, :ref:`BodyMode<enum_PhysicsServer2D_BodyMode>` mode **)** |virtual|                                                                                                                                                                                                                           |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_omit_force_integration<class_PhysicsServer2DExtension_method__body_set_omit_force_integration>` **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` enable **)** |virtual|                                                                                                                                                                                                            |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_param<class_PhysicsServer2DExtension_method__body_set_param>` **(** :ref:`RID<class_RID>` body, :ref:`BodyParameter<enum_PhysicsServer2D_BodyParameter>` param, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_shape<class_PhysicsServer2DExtension_method__body_set_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`RID<class_RID>` shape **)** |virtual|                                                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_shape_as_one_way_collision<class_PhysicsServer2DExtension_method__body_set_shape_as_one_way_collision>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` margin **)** |virtual|                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_shape_disabled<class_PhysicsServer2DExtension_method__body_set_shape_disabled>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_shape_transform<class_PhysicsServer2DExtension_method__body_set_shape_transform>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_Transform2D>` transform **)** |virtual|                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_space<class_PhysicsServer2DExtension_method__body_set_space>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_body_set_state<class_PhysicsServer2DExtension_method__body_set_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer2D_BodyState>` state, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                                           | :ref:`_body_test_motion<class_PhysicsServer2DExtension_method__body_test_motion>` **(** :ref:`RID<class_RID>` body, :ref:`Transform2D<class_Transform2D>` from, :ref:`Vector2<class_Vector2>` motion, :ref:`float<class_float>` margin, :ref:`bool<class_bool>` collide_separation_ray, :ref:`bool<class_bool>` recovery_as_collision, PhysicsServer2DExtensionMotionResult* result **)** |virtual| |const| |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_capsule_shape_create<class_PhysicsServer2DExtension_method__capsule_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_circle_shape_create<class_PhysicsServer2DExtension_method__circle_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_concave_polygon_shape_create<class_PhysicsServer2DExtension_method__concave_polygon_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_convex_polygon_shape_create<class_PhysicsServer2DExtension_method__convex_polygon_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`float<class_float>`                                         | :ref:`_damped_spring_joint_get_param<class_PhysicsServer2DExtension_method__damped_spring_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`DampedSpringParam<enum_PhysicsServer2D_DampedSpringParam>` param **)** |virtual| |const|                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_damped_spring_joint_set_param<class_PhysicsServer2DExtension_method__damped_spring_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`DampedSpringParam<enum_PhysicsServer2D_DampedSpringParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                      |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_end_sync<class_PhysicsServer2DExtension_method__end_sync>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_finish<class_PhysicsServer2DExtension_method__finish>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_flush_queries<class_PhysicsServer2DExtension_method__flush_queries>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                           |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_free_rid<class_PhysicsServer2DExtension_method__free_rid>` **(** :ref:`RID<class_RID>` rid **)** |virtual|                                                                                                                                                                                                                                                                                           |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`int<class_int>`                                             | :ref:`_get_process_info<class_PhysicsServer2DExtension_method__get_process_info>` **(** :ref:`ProcessInfo<enum_PhysicsServer2D_ProcessInfo>` process_info **)** |virtual|                                                                                                                                                                                                                                   |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_init<class_PhysicsServer2DExtension_method__init>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                                           | :ref:`_is_flushing_queries<class_PhysicsServer2DExtension_method__is_flushing_queries>` **(** **)** |virtual| |const|                                                                                                                                                                                                                                                                                       |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_joint_clear<class_PhysicsServer2DExtension_method__joint_clear>` **(** :ref:`RID<class_RID>` joint **)** |virtual|                                                                                                                                                                                                                                                                                   |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_joint_create<class_PhysicsServer2DExtension_method__joint_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`float<class_float>`                                         | :ref:`_joint_get_param<class_PhysicsServer2DExtension_method__joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param **)** |virtual| |const|                                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`JointType<enum_PhysicsServer2D_JointType>`                  | :ref:`_joint_get_type<class_PhysicsServer2DExtension_method__joint_get_type>` **(** :ref:`RID<class_RID>` joint **)** |virtual| |const|                                                                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_joint_make_damped_spring<class_PhysicsServer2DExtension_method__joint_make_damped_spring>` **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` anchor_a, :ref:`Vector2<class_Vector2>` anchor_b, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_joint_make_groove<class_PhysicsServer2DExtension_method__joint_make_groove>` **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` a_groove1, :ref:`Vector2<class_Vector2>` a_groove2, :ref:`Vector2<class_Vector2>` b_anchor, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_joint_make_pin<class_PhysicsServer2DExtension_method__joint_make_pin>` **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` anchor, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                                                                                                           |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_joint_set_param<class_PhysicsServer2DExtension_method__joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                                |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`float<class_float>`                                         | :ref:`_pin_joint_get_param<class_PhysicsServer2DExtension_method__pin_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param **)** |virtual| |const|                                                                                                                                                                                           |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_pin_joint_set_param<class_PhysicsServer2DExtension_method__pin_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                  |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_rectangle_shape_create<class_PhysicsServer2DExtension_method__rectangle_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_segment_shape_create<class_PhysicsServer2DExtension_method__segment_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_separation_ray_shape_create<class_PhysicsServer2DExtension_method__separation_ray_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_set_active<class_PhysicsServer2DExtension_method__set_active>` **(** :ref:`bool<class_bool>` active **)** |virtual|                                                                                                                                                                                                                                                                                  |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`Variant<class_Variant>`                                     | :ref:`_shape_get_data<class_PhysicsServer2DExtension_method__shape_get_data>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`ShapeType<enum_PhysicsServer2D_ShapeType>`                  | :ref:`_shape_get_type<class_PhysicsServer2DExtension_method__shape_get_type>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                                     |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_shape_set_data<class_PhysicsServer2DExtension_method__shape_set_data>` **(** :ref:`RID<class_RID>` shape, :ref:`Variant<class_Variant>` data **)** |virtual|                                                                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_space_create<class_PhysicsServer2DExtension_method__space_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`PhysicsDirectSpaceState2D<class_PhysicsDirectSpaceState2D>` | :ref:`_space_get_direct_state<class_PhysicsServer2DExtension_method__space_get_direct_state>` **(** :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`float<class_float>`                                         | :ref:`_space_get_param<class_PhysicsServer2DExtension_method__space_get_param>` **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer2D_SpaceParameter>` param **)** |virtual| |const|                                                                                                                                                                                                 |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`bool<class_bool>`                                           | :ref:`_space_is_active<class_PhysicsServer2DExtension_method__space_is_active>` **(** :ref:`RID<class_RID>` space **)** |virtual| |const|                                                                                                                                                                                                                                                                   |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_space_set_active<class_PhysicsServer2DExtension_method__space_set_active>` **(** :ref:`RID<class_RID>` space, :ref:`bool<class_bool>` active **)** |virtual|                                                                                                                                                                                                                                         |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_space_set_param<class_PhysicsServer2DExtension_method__space_set_param>` **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer2D_SpaceParameter>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                        |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_step<class_PhysicsServer2DExtension_method__step>` **(** :ref:`float<class_float>` step **)** |virtual|                                                                                                                                                                                                                                                                                              |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| void                                                              | :ref:`_sync<class_PhysicsServer2DExtension_method__sync>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                             |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| :ref:`RID<class_RID>`                                             | :ref:`_world_boundary_shape_create<class_PhysicsServer2DExtension_method__world_boundary_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                               |
-+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_add_shape<class_PhysicsServer2DExtension_method__area_add_shape>` **(** :ref:`RID<class_RID>` area, :ref:`RID<class_RID>` shape, :ref:`Transform2D<class_Transform2D>` transform, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_attach_canvas_instance_id<class_PhysicsServer2DExtension_method__area_attach_canvas_instance_id>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_attach_object_instance_id<class_PhysicsServer2DExtension_method__area_attach_object_instance_id>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_clear_shapes<class_PhysicsServer2DExtension_method__area_clear_shapes>` **(** :ref:`RID<class_RID>` area **)** |virtual|                                                                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_area_create<class_PhysicsServer2DExtension_method__area_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_area_get_canvas_instance_id<class_PhysicsServer2DExtension_method__area_get_canvas_instance_id>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_area_get_object_instance_id<class_PhysicsServer2DExtension_method__area_get_object_instance_id>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Variant<class_Variant>`                                     | :ref:`_area_get_param<class_PhysicsServer2DExtension_method__area_get_param>` **(** :ref:`RID<class_RID>` area, :ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` param **)** |virtual| |const|                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_area_get_shape<class_PhysicsServer2DExtension_method__area_get_shape>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_area_get_shape_count<class_PhysicsServer2DExtension_method__area_get_shape_count>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                                   |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Transform2D<class_Transform2D>`                             | :ref:`_area_get_shape_transform<class_PhysicsServer2DExtension_method__area_get_shape_transform>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_area_get_space<class_PhysicsServer2DExtension_method__area_get_space>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Transform2D<class_Transform2D>`                             | :ref:`_area_get_transform<class_PhysicsServer2DExtension_method__area_get_transform>` **(** :ref:`RID<class_RID>` area **)** |virtual| |const|                                                                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_remove_shape<class_PhysicsServer2DExtension_method__area_remove_shape>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx **)** |virtual|                                                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_area_monitor_callback<class_PhysicsServer2DExtension_method__area_set_area_monitor_callback>` **(** :ref:`RID<class_RID>` area, :ref:`Callable<class_Callable>` callback **)** |virtual|                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_collision_layer<class_PhysicsServer2DExtension_method__area_set_collision_layer>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` layer **)** |virtual|                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_collision_mask<class_PhysicsServer2DExtension_method__area_set_collision_mask>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` mask **)** |virtual|                                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_monitor_callback<class_PhysicsServer2DExtension_method__area_set_monitor_callback>` **(** :ref:`RID<class_RID>` area, :ref:`Callable<class_Callable>` callback **)** |virtual|                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_monitorable<class_PhysicsServer2DExtension_method__area_set_monitorable>` **(** :ref:`RID<class_RID>` area, :ref:`bool<class_bool>` monitorable **)** |virtual|                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_param<class_PhysicsServer2DExtension_method__area_set_param>` **(** :ref:`RID<class_RID>` area, :ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` param, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_pickable<class_PhysicsServer2DExtension_method__area_set_pickable>` **(** :ref:`RID<class_RID>` area, :ref:`bool<class_bool>` pickable **)** |virtual|                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_shape<class_PhysicsServer2DExtension_method__area_set_shape>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`RID<class_RID>` shape **)** |virtual|                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_shape_disabled<class_PhysicsServer2DExtension_method__area_set_shape_disabled>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_shape_transform<class_PhysicsServer2DExtension_method__area_set_shape_transform>` **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_Transform2D>` transform **)** |virtual|                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_space<class_PhysicsServer2DExtension_method__area_set_space>` **(** :ref:`RID<class_RID>` area, :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_area_set_transform<class_PhysicsServer2DExtension_method__area_set_transform>` **(** :ref:`RID<class_RID>` area, :ref:`Transform2D<class_Transform2D>` transform **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_add_collision_exception<class_PhysicsServer2DExtension_method__body_add_collision_exception>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` excepted_body **)** |virtual|                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_add_constant_central_force<class_PhysicsServer2DExtension_method__body_add_constant_central_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force **)** |virtual|                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_add_constant_force<class_PhysicsServer2DExtension_method__body_add_constant_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force, :ref:`Vector2<class_Vector2>` position **)** |virtual|                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_add_constant_torque<class_PhysicsServer2DExtension_method__body_add_constant_torque>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` torque **)** |virtual|                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_add_shape<class_PhysicsServer2DExtension_method__body_add_shape>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` shape, :ref:`Transform2D<class_Transform2D>` transform, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_apply_central_force<class_PhysicsServer2DExtension_method__body_apply_central_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_apply_central_impulse<class_PhysicsServer2DExtension_method__body_apply_central_impulse>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` impulse **)** |virtual|                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_apply_force<class_PhysicsServer2DExtension_method__body_apply_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force, :ref:`Vector2<class_Vector2>` position **)** |virtual|                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_apply_impulse<class_PhysicsServer2DExtension_method__body_apply_impulse>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` impulse, :ref:`Vector2<class_Vector2>` position **)** |virtual|                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_apply_torque<class_PhysicsServer2DExtension_method__body_apply_torque>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` torque **)** |virtual|                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_apply_torque_impulse<class_PhysicsServer2DExtension_method__body_apply_torque_impulse>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` impulse **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_attach_canvas_instance_id<class_PhysicsServer2DExtension_method__body_attach_canvas_instance_id>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_attach_object_instance_id<class_PhysicsServer2DExtension_method__body_attach_object_instance_id>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` id **)** |virtual|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_clear_shapes<class_PhysicsServer2DExtension_method__body_clear_shapes>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_body_collide_shape<class_PhysicsServer2DExtension_method__body_collide_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` body_shape, :ref:`RID<class_RID>` shape, :ref:`Transform2D<class_Transform2D>` shape_xform, :ref:`Vector2<class_Vector2>` motion, void* results, :ref:`int<class_int>` result_max, int32_t* result_count **)** |virtual|                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_body_create<class_PhysicsServer2DExtension_method__body_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_canvas_instance_id<class_PhysicsServer2DExtension_method__body_get_canvas_instance_id>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID[]<class_RID>`                                           | :ref:`_body_get_collision_exceptions<class_PhysicsServer2DExtension_method__body_get_collision_exceptions>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_collision_layer<class_PhysicsServer2DExtension_method__body_get_collision_layer>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_collision_mask<class_PhysicsServer2DExtension_method__body_get_collision_mask>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_body_get_collision_priority<class_PhysicsServer2DExtension_method__body_get_collision_priority>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Vector2<class_Vector2>`                                     | :ref:`_body_get_constant_force<class_PhysicsServer2DExtension_method__body_get_constant_force>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_body_get_constant_torque<class_PhysicsServer2DExtension_method__body_get_constant_torque>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_body_get_contacts_reported_depth_threshold<class_PhysicsServer2DExtension_method__body_get_contacts_reported_depth_threshold>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`CCDMode<enum_PhysicsServer2D_CCDMode>`                      | :ref:`_body_get_continuous_collision_detection_mode<class_PhysicsServer2DExtension_method__body_get_continuous_collision_detection_mode>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                   |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`PhysicsDirectBodyState2D<class_PhysicsDirectBodyState2D>`   | :ref:`_body_get_direct_state<class_PhysicsServer2DExtension_method__body_get_direct_state>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_max_contacts_reported<class_PhysicsServer2DExtension_method__body_get_max_contacts_reported>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`BodyMode<enum_PhysicsServer2D_BodyMode>`                    | :ref:`_body_get_mode<class_PhysicsServer2DExtension_method__body_get_mode>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_object_instance_id<class_PhysicsServer2DExtension_method__body_get_object_instance_id>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Variant<class_Variant>`                                     | :ref:`_body_get_param<class_PhysicsServer2DExtension_method__body_get_param>` **(** :ref:`RID<class_RID>` body, :ref:`BodyParameter<enum_PhysicsServer2D_BodyParameter>` param **)** |virtual| |const|                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_body_get_shape<class_PhysicsServer2DExtension_method__body_get_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_shape_count<class_PhysicsServer2DExtension_method__body_get_shape_count>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                                   |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Transform2D<class_Transform2D>`                             | :ref:`_body_get_shape_transform<class_PhysicsServer2DExtension_method__body_get_shape_transform>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx **)** |virtual| |const|                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_body_get_space<class_PhysicsServer2DExtension_method__body_get_space>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Variant<class_Variant>`                                     | :ref:`_body_get_state<class_PhysicsServer2DExtension_method__body_get_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer2D_BodyState>` state **)** |virtual| |const|                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_body_is_omitting_force_integration<class_PhysicsServer2DExtension_method__body_is_omitting_force_integration>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_remove_collision_exception<class_PhysicsServer2DExtension_method__body_remove_collision_exception>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` excepted_body **)** |virtual|                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_remove_shape<class_PhysicsServer2DExtension_method__body_remove_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx **)** |virtual|                                                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_reset_mass_properties<class_PhysicsServer2DExtension_method__body_reset_mass_properties>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_axis_velocity<class_PhysicsServer2DExtension_method__body_set_axis_velocity>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` axis_velocity **)** |virtual|                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_collision_layer<class_PhysicsServer2DExtension_method__body_set_collision_layer>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` layer **)** |virtual|                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_collision_mask<class_PhysicsServer2DExtension_method__body_set_collision_mask>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` mask **)** |virtual|                                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_collision_priority<class_PhysicsServer2DExtension_method__body_set_collision_priority>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` priority **)** |virtual|                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_constant_force<class_PhysicsServer2DExtension_method__body_set_constant_force>` **(** :ref:`RID<class_RID>` body, :ref:`Vector2<class_Vector2>` force **)** |virtual|                                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_constant_torque<class_PhysicsServer2DExtension_method__body_set_constant_torque>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` torque **)** |virtual|                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_contacts_reported_depth_threshold<class_PhysicsServer2DExtension_method__body_set_contacts_reported_depth_threshold>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` threshold **)** |virtual|                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_continuous_collision_detection_mode<class_PhysicsServer2DExtension_method__body_set_continuous_collision_detection_mode>` **(** :ref:`RID<class_RID>` body, :ref:`CCDMode<enum_PhysicsServer2D_CCDMode>` mode **)** |virtual|                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_force_integration_callback<class_PhysicsServer2DExtension_method__body_set_force_integration_callback>` **(** :ref:`RID<class_RID>` body, :ref:`Callable<class_Callable>` callable, :ref:`Variant<class_Variant>` userdata **)** |virtual|                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_max_contacts_reported<class_PhysicsServer2DExtension_method__body_set_max_contacts_reported>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` amount **)** |virtual|                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_mode<class_PhysicsServer2DExtension_method__body_set_mode>` **(** :ref:`RID<class_RID>` body, :ref:`BodyMode<enum_PhysicsServer2D_BodyMode>` mode **)** |virtual|                                                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_omit_force_integration<class_PhysicsServer2DExtension_method__body_set_omit_force_integration>` **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` enable **)** |virtual|                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_param<class_PhysicsServer2DExtension_method__body_set_param>` **(** :ref:`RID<class_RID>` body, :ref:`BodyParameter<enum_PhysicsServer2D_BodyParameter>` param, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_pickable<class_PhysicsServer2DExtension_method__body_set_pickable>` **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` pickable **)** |virtual|                                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_shape<class_PhysicsServer2DExtension_method__body_set_shape>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`RID<class_RID>` shape **)** |virtual|                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_shape_as_one_way_collision<class_PhysicsServer2DExtension_method__body_set_shape_as_one_way_collision>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` margin **)** |virtual|                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_shape_disabled<class_PhysicsServer2DExtension_method__body_set_shape_disabled>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disabled **)** |virtual|                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_shape_transform<class_PhysicsServer2DExtension_method__body_set_shape_transform>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_Transform2D>` transform **)** |virtual|                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_space<class_PhysicsServer2DExtension_method__body_set_space>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_state<class_PhysicsServer2DExtension_method__body_set_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer2D_BodyState>` state, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_state_sync_callback<class_PhysicsServer2DExtension_method__body_set_state_sync_callback>` **(** :ref:`RID<class_RID>` body, PhysicsServer2DExtensionStateCallback* callback **)** |virtual|                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_body_test_motion<class_PhysicsServer2DExtension_method__body_test_motion>` **(** :ref:`RID<class_RID>` body, :ref:`Transform2D<class_Transform2D>` from, :ref:`Vector2<class_Vector2>` motion, :ref:`float<class_float>` margin, :ref:`bool<class_bool>` collide_separation_ray, :ref:`bool<class_bool>` recovery_as_collision, PhysicsServer2DExtensionMotionResult* result **)** |virtual| |const|          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_capsule_shape_create<class_PhysicsServer2DExtension_method__capsule_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_circle_shape_create<class_PhysicsServer2DExtension_method__circle_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_concave_polygon_shape_create<class_PhysicsServer2DExtension_method__concave_polygon_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_convex_polygon_shape_create<class_PhysicsServer2DExtension_method__convex_polygon_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_damped_spring_joint_get_param<class_PhysicsServer2DExtension_method__damped_spring_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`DampedSpringParam<enum_PhysicsServer2D_DampedSpringParam>` param **)** |virtual| |const|                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_damped_spring_joint_set_param<class_PhysicsServer2DExtension_method__damped_spring_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`DampedSpringParam<enum_PhysicsServer2D_DampedSpringParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_end_sync<class_PhysicsServer2DExtension_method__end_sync>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_finish<class_PhysicsServer2DExtension_method__finish>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_flush_queries<class_PhysicsServer2DExtension_method__flush_queries>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_free_rid<class_PhysicsServer2DExtension_method__free_rid>` **(** :ref:`RID<class_RID>` rid **)** |virtual|                                                                                                                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_get_process_info<class_PhysicsServer2DExtension_method__get_process_info>` **(** :ref:`ProcessInfo<enum_PhysicsServer2D_ProcessInfo>` process_info **)** |virtual|                                                                                                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_init<class_PhysicsServer2DExtension_method__init>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_is_flushing_queries<class_PhysicsServer2DExtension_method__is_flushing_queries>` **(** **)** |virtual| |const|                                                                                                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_clear<class_PhysicsServer2DExtension_method__joint_clear>` **(** :ref:`RID<class_RID>` joint **)** |virtual|                                                                                                                                                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_joint_create<class_PhysicsServer2DExtension_method__joint_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_disable_collisions_between_bodies<class_PhysicsServer2DExtension_method__joint_disable_collisions_between_bodies>` **(** :ref:`RID<class_RID>` joint, :ref:`bool<class_bool>` disable **)** |virtual|                                                                                                                                                                                                   |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_joint_get_param<class_PhysicsServer2DExtension_method__joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param **)** |virtual| |const|                                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`JointType<enum_PhysicsServer2D_JointType>`                  | :ref:`_joint_get_type<class_PhysicsServer2DExtension_method__joint_get_type>` **(** :ref:`RID<class_RID>` joint **)** |virtual| |const|                                                                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_joint_is_disabled_collisions_between_bodies<class_PhysicsServer2DExtension_method__joint_is_disabled_collisions_between_bodies>` **(** :ref:`RID<class_RID>` joint **)** |virtual| |const|                                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_make_damped_spring<class_PhysicsServer2DExtension_method__joint_make_damped_spring>` **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` anchor_a, :ref:`Vector2<class_Vector2>` anchor_b, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_make_groove<class_PhysicsServer2DExtension_method__joint_make_groove>` **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` a_groove1, :ref:`Vector2<class_Vector2>` a_groove2, :ref:`Vector2<class_Vector2>` b_anchor, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_make_pin<class_PhysicsServer2DExtension_method__joint_make_pin>` **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` anchor, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_set_param<class_PhysicsServer2DExtension_method__joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_pin_joint_get_param<class_PhysicsServer2DExtension_method__pin_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param **)** |virtual| |const|                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_pin_joint_set_param<class_PhysicsServer2DExtension_method__pin_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`PinJointParam<enum_PhysicsServer2D_PinJointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_rectangle_shape_create<class_PhysicsServer2DExtension_method__rectangle_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_segment_shape_create<class_PhysicsServer2DExtension_method__segment_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_separation_ray_shape_create<class_PhysicsServer2DExtension_method__separation_ray_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_set_active<class_PhysicsServer2DExtension_method__set_active>` **(** :ref:`bool<class_bool>` active **)** |virtual|                                                                                                                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_shape_collide<class_PhysicsServer2DExtension_method__shape_collide>` **(** :ref:`RID<class_RID>` shape_A, :ref:`Transform2D<class_Transform2D>` xform_A, :ref:`Vector2<class_Vector2>` motion_A, :ref:`RID<class_RID>` shape_B, :ref:`Transform2D<class_Transform2D>` xform_B, :ref:`Vector2<class_Vector2>` motion_B, void* results, :ref:`int<class_int>` result_max, int32_t* result_count **)** |virtual| |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_shape_get_custom_solver_bias<class_PhysicsServer2DExtension_method__shape_get_custom_solver_bias>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Variant<class_Variant>`                                     | :ref:`_shape_get_data<class_PhysicsServer2DExtension_method__shape_get_data>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`ShapeType<enum_PhysicsServer2D_ShapeType>`                  | :ref:`_shape_get_type<class_PhysicsServer2DExtension_method__shape_get_type>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_shape_set_custom_solver_bias<class_PhysicsServer2DExtension_method__shape_set_custom_solver_bias>` **(** :ref:`RID<class_RID>` shape, :ref:`float<class_float>` bias **)** |virtual|                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_shape_set_data<class_PhysicsServer2DExtension_method__shape_set_data>` **(** :ref:`RID<class_RID>` shape, :ref:`Variant<class_Variant>` data **)** |virtual|                                                                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_space_create<class_PhysicsServer2DExtension_method__space_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_space_get_contact_count<class_PhysicsServer2DExtension_method__space_get_contact_count>` **(** :ref:`RID<class_RID>` space **)** |virtual| |const|                                                                                                                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`PackedVector2Array<class_PackedVector2Array>`               | :ref:`_space_get_contacts<class_PhysicsServer2DExtension_method__space_get_contacts>` **(** :ref:`RID<class_RID>` space **)** |virtual| |const|                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`PhysicsDirectSpaceState2D<class_PhysicsDirectSpaceState2D>` | :ref:`_space_get_direct_state<class_PhysicsServer2DExtension_method__space_get_direct_state>` **(** :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_space_get_param<class_PhysicsServer2DExtension_method__space_get_param>` **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer2D_SpaceParameter>` param **)** |virtual| |const|                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_space_is_active<class_PhysicsServer2DExtension_method__space_is_active>` **(** :ref:`RID<class_RID>` space **)** |virtual| |const|                                                                                                                                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_space_set_active<class_PhysicsServer2DExtension_method__space_set_active>` **(** :ref:`RID<class_RID>` space, :ref:`bool<class_bool>` active **)** |virtual|                                                                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_space_set_debug_contacts<class_PhysicsServer2DExtension_method__space_set_debug_contacts>` **(** :ref:`RID<class_RID>` space, :ref:`int<class_int>` max_contacts **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_space_set_param<class_PhysicsServer2DExtension_method__space_set_param>` **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer2D_SpaceParameter>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_step<class_PhysicsServer2DExtension_method__step>` **(** :ref:`float<class_float>` step **)** |virtual|                                                                                                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_sync<class_PhysicsServer2DExtension_method__sync>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                                                      |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_world_boundary_shape_create<class_PhysicsServer2DExtension_method__world_boundary_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 Method Descriptions
 -------------------
@@ -380,6 +410,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__area_set_pickable:
+
+- void **_area_set_pickable** **(** :ref:`RID<class_RID>` area, :ref:`bool<class_bool>` pickable **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__area_set_shape:
 
 - void **_area_set_shape** **(** :ref:`RID<class_RID>` area, :ref:`int<class_int>` shape_idx, :ref:`RID<class_RID>` shape **)** |virtual|
@@ -494,6 +530,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__body_collide_shape:
+
+- :ref:`bool<class_bool>` **_body_collide_shape** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` body_shape, :ref:`RID<class_RID>` shape, :ref:`Transform2D<class_Transform2D>` shape_xform, :ref:`Vector2<class_Vector2>` motion, void* results, :ref:`int<class_int>` result_max, int32_t* result_count **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__body_create:
 
 - :ref:`RID<class_RID>` **_body_create** **(** **)** |virtual|
@@ -506,6 +548,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__body_get_collision_exceptions:
+
+- :ref:`RID[]<class_RID>` **_body_get_collision_exceptions** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__body_get_collision_layer:
 
 - :ref:`int<class_int>` **_body_get_collision_layer** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
@@ -536,6 +584,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__body_get_contacts_reported_depth_threshold:
+
+- :ref:`float<class_float>` **_body_get_contacts_reported_depth_threshold** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__body_get_continuous_collision_detection_mode:
 
 - :ref:`CCDMode<enum_PhysicsServer2D_CCDMode>` **_body_get_continuous_collision_detection_mode** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
@@ -662,6 +716,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__body_set_contacts_reported_depth_threshold:
+
+- void **_body_set_contacts_reported_depth_threshold** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` threshold **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__body_set_continuous_collision_detection_mode:
 
 - void **_body_set_continuous_collision_detection_mode** **(** :ref:`RID<class_RID>` body, :ref:`CCDMode<enum_PhysicsServer2D_CCDMode>` mode **)** |virtual|
@@ -698,6 +758,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__body_set_pickable:
+
+- void **_body_set_pickable** **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` pickable **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__body_set_shape:
 
 - void **_body_set_shape** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` shape_idx, :ref:`RID<class_RID>` shape **)** |virtual|
@@ -734,6 +800,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__body_set_state_sync_callback:
+
+- void **_body_set_state_sync_callback** **(** :ref:`RID<class_RID>` body, PhysicsServer2DExtensionStateCallback* callback **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__body_test_motion:
 
 - :ref:`bool<class_bool>` **_body_test_motion** **(** :ref:`RID<class_RID>` body, :ref:`Transform2D<class_Transform2D>` from, :ref:`Vector2<class_Vector2>` motion, :ref:`float<class_float>` margin, :ref:`bool<class_bool>` collide_separation_ray, :ref:`bool<class_bool>` recovery_as_collision, PhysicsServer2DExtensionMotionResult* result **)** |virtual| |const|
@@ -830,6 +902,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__joint_disable_collisions_between_bodies:
+
+- void **_joint_disable_collisions_between_bodies** **(** :ref:`RID<class_RID>` joint, :ref:`bool<class_bool>` disable **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__joint_get_param:
 
 - :ref:`float<class_float>` **_joint_get_param** **(** :ref:`RID<class_RID>` joint, :ref:`JointParam<enum_PhysicsServer2D_JointParam>` param **)** |virtual| |const|
@@ -842,6 +920,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__joint_is_disabled_collisions_between_bodies:
+
+- :ref:`bool<class_bool>` **_joint_is_disabled_collisions_between_bodies** **(** :ref:`RID<class_RID>` joint **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__joint_make_damped_spring:
 
 - void **_joint_make_damped_spring** **(** :ref:`RID<class_RID>` joint, :ref:`Vector2<class_Vector2>` anchor_a, :ref:`Vector2<class_Vector2>` anchor_b, :ref:`RID<class_RID>` body_a, :ref:`RID<class_RID>` body_b **)** |virtual|
@@ -902,6 +986,18 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__shape_collide:
+
+- :ref:`bool<class_bool>` **_shape_collide** **(** :ref:`RID<class_RID>` shape_A, :ref:`Transform2D<class_Transform2D>` xform_A, :ref:`Vector2<class_Vector2>` motion_A, :ref:`RID<class_RID>` shape_B, :ref:`Transform2D<class_Transform2D>` xform_B, :ref:`Vector2<class_Vector2>` motion_B, void* results, :ref:`int<class_int>` result_max, int32_t* result_count **)** |virtual|
+
+----
+
+.. _class_PhysicsServer2DExtension_method__shape_get_custom_solver_bias:
+
+- :ref:`float<class_float>` **_shape_get_custom_solver_bias** **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__shape_get_data:
 
 - :ref:`Variant<class_Variant>` **_shape_get_data** **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|
@@ -914,6 +1010,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__shape_set_custom_solver_bias:
+
+- void **_shape_set_custom_solver_bias** **(** :ref:`RID<class_RID>` shape, :ref:`float<class_float>` bias **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__shape_set_data:
 
 - void **_shape_set_data** **(** :ref:`RID<class_RID>` shape, :ref:`Variant<class_Variant>` data **)** |virtual|
@@ -926,6 +1028,18 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__space_get_contact_count:
+
+- :ref:`int<class_int>` **_space_get_contact_count** **(** :ref:`RID<class_RID>` space **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer2DExtension_method__space_get_contacts:
+
+- :ref:`PackedVector2Array<class_PackedVector2Array>` **_space_get_contacts** **(** :ref:`RID<class_RID>` space **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__space_get_direct_state:
 
 - :ref:`PhysicsDirectSpaceState2D<class_PhysicsDirectSpaceState2D>` **_space_get_direct_state** **(** :ref:`RID<class_RID>` space **)** |virtual|
@@ -950,6 +1064,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer2DExtension_method__space_set_debug_contacts:
+
+- void **_space_set_debug_contacts** **(** :ref:`RID<class_RID>` space, :ref:`int<class_int>` max_contacts **)** |virtual|
+
+----
+
 .. _class_PhysicsServer2DExtension_method__space_set_param:
 
 - void **_space_set_param** **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer2D_SpaceParameter>` param, :ref:`float<class_float>` value **)** |virtual|

+ 3 - 3
classes/class_physicsserver3d.rst

@@ -1194,7 +1194,7 @@ This is equivalent to using :ref:`body_add_constant_force<class_PhysicsServer3D_
 
 Adds a constant positioned force to the body that keeps being applied over time until cleared with ``body_set_constant_force(body, Vector3(0, 0, 0))``.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -1242,7 +1242,7 @@ This is equivalent to using :ref:`body_apply_impulse<class_PhysicsServer3D_metho
 
 Applies a positioned force to the body. A force is time dependent and meant to be applied every physics update.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -1254,7 +1254,7 @@ Applies a positioned impulse to the body.
 
 An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise).
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 

+ 376 - 0
classes/class_physicsserver3dextension.rst

@@ -94,6 +94,8 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`RID<class_RID>`                                             | :ref:`_body_create<class_PhysicsServer3DExtension_method__body_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                      |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID[]<class_RID>`                                           | :ref:`_body_get_collision_exceptions<class_PhysicsServer3DExtension_method__body_get_collision_exceptions>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`int<class_int>`                                             | :ref:`_body_get_collision_layer<class_PhysicsServer3DExtension_method__body_get_collision_layer>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                         |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`int<class_int>`                                             | :ref:`_body_get_collision_mask<class_PhysicsServer3DExtension_method__body_get_collision_mask>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                           |
@@ -104,6 +106,8 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Vector3<class_Vector3>`                                     | :ref:`_body_get_constant_torque<class_PhysicsServer3DExtension_method__body_get_constant_torque>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                         |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_body_get_contacts_reported_depth_threshold<class_PhysicsServer3DExtension_method__body_get_contacts_reported_depth_threshold>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`PhysicsDirectBodyState3D<class_PhysicsDirectBodyState3D>`   | :ref:`_body_get_direct_state<class_PhysicsServer3DExtension_method__body_get_direct_state>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                                                       |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`int<class_int>`                                             | :ref:`_body_get_max_contacts_reported<class_PhysicsServer3DExtension_method__body_get_max_contacts_reported>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                             |
@@ -124,6 +128,8 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Variant<class_Variant>`                                     | :ref:`_body_get_state<class_PhysicsServer3DExtension_method__body_get_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer3D_BodyState>` state **)** |virtual| |const|                                                                                                                                                                                                     |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_body_get_user_flags<class_PhysicsServer3DExtension_method__body_get_user_flags>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                   |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`                                           | :ref:`_body_is_axis_locked<class_PhysicsServer3DExtension_method__body_is_axis_locked>` **(** :ref:`RID<class_RID>` body, :ref:`BodyAxis<enum_PhysicsServer3D_BodyAxis>` axis **)** |virtual| |const|                                                                                                                                                                                              |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`                                           | :ref:`_body_is_continuous_collision_detection_enabled<class_PhysicsServer3DExtension_method__body_is_continuous_collision_detection_enabled>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                             |
@@ -150,6 +156,8 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_body_set_constant_torque<class_PhysicsServer3DExtension_method__body_set_constant_torque>` **(** :ref:`RID<class_RID>` body, :ref:`Vector3<class_Vector3>` torque **)** |virtual|                                                                                                                                                                                                           |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_contacts_reported_depth_threshold<class_PhysicsServer3DExtension_method__body_set_contacts_reported_depth_threshold>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` threshold **)** |virtual|                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_body_set_enable_continuous_collision_detection<class_PhysicsServer3DExtension_method__body_set_enable_continuous_collision_detection>` **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` enable **)** |virtual|                                                                                                                                                                     |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_body_set_force_integration_callback<class_PhysicsServer3DExtension_method__body_set_force_integration_callback>` **(** :ref:`RID<class_RID>` body, :ref:`Callable<class_Callable>` callable, :ref:`Variant<class_Variant>` userdata **)** |virtual|                                                                                                                                         |
@@ -174,6 +182,10 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_body_set_state<class_PhysicsServer3DExtension_method__body_set_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer3D_BodyState>` state, :ref:`Variant<class_Variant>` value **)** |virtual|                                                                                                                                                                        |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_state_sync_callback<class_PhysicsServer3DExtension_method__body_set_state_sync_callback>` **(** :ref:`RID<class_RID>` body, PhysicsServer3DExtensionStateCallback* callback **)** |virtual|                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_body_set_user_flags<class_PhysicsServer3DExtension_method__body_set_user_flags>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` flags **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`                                           | :ref:`_body_test_motion<class_PhysicsServer3DExtension_method__body_test_motion>` **(** :ref:`RID<class_RID>` body, :ref:`Transform3D<class_Transform3D>` from, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` max_collisions, :ref:`bool<class_bool>` collide_separation_ray, PhysicsServer3DExtensionMotionResult* result **)** |virtual| |const| |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`RID<class_RID>`                                             | :ref:`_box_shape_create<class_PhysicsServer3DExtension_method__box_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                            |
@@ -238,6 +250,8 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_joint_make_hinge<class_PhysicsServer3DExtension_method__joint_make_hinge>` **(** :ref:`RID<class_RID>` joint, :ref:`RID<class_RID>` body_A, :ref:`Transform3D<class_Transform3D>` hinge_A, :ref:`RID<class_RID>` body_B, :ref:`Transform3D<class_Transform3D>` hinge_B **)** |virtual|                                                                                                      |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_joint_make_hinge_simple<class_PhysicsServer3DExtension_method__joint_make_hinge_simple>` **(** :ref:`RID<class_RID>` joint, :ref:`RID<class_RID>` body_A, :ref:`Vector3<class_Vector3>` pivot_A, :ref:`Vector3<class_Vector3>` axis_A, :ref:`RID<class_RID>` body_B, :ref:`Vector3<class_Vector3>` pivot_B, :ref:`Vector3<class_Vector3>` axis_B **)** |virtual|                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_joint_make_pin<class_PhysicsServer3DExtension_method__joint_make_pin>` **(** :ref:`RID<class_RID>` joint, :ref:`RID<class_RID>` body_A, :ref:`Vector3<class_Vector3>` local_A, :ref:`RID<class_RID>` body_B, :ref:`Vector3<class_Vector3>` local_B **)** |virtual|                                                                                                                          |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_joint_make_slider<class_PhysicsServer3DExtension_method__joint_make_slider>` **(** :ref:`RID<class_RID>` joint, :ref:`RID<class_RID>` body_A, :ref:`Transform3D<class_Transform3D>` local_ref_A, :ref:`RID<class_RID>` body_B, :ref:`Transform3D<class_Transform3D>` local_ref_B **)** |virtual|                                                                                            |
@@ -260,20 +274,98 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_set_active<class_PhysicsServer3DExtension_method__set_active>` **(** :ref:`bool<class_bool>` active **)** |virtual|                                                                                                                                                                                                                                                                         |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_shape_get_custom_solver_bias<class_PhysicsServer3DExtension_method__shape_get_custom_solver_bias>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Variant<class_Variant>`                                     | :ref:`_shape_get_data<class_PhysicsServer3DExtension_method__shape_get_data>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                            |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_shape_get_margin<class_PhysicsServer3DExtension_method__shape_get_margin>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`ShapeType<enum_PhysicsServer3D_ShapeType>`                  | :ref:`_shape_get_type<class_PhysicsServer3DExtension_method__shape_get_type>` **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|                                                                                                                                                                                                                                                            |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_shape_set_custom_solver_bias<class_PhysicsServer3DExtension_method__shape_set_custom_solver_bias>` **(** :ref:`RID<class_RID>` shape, :ref:`float<class_float>` bias **)** |virtual|                                                                                                                                                                                                        |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_shape_set_data<class_PhysicsServer3DExtension_method__shape_set_data>` **(** :ref:`RID<class_RID>` shape, :ref:`Variant<class_Variant>` data **)** |virtual|                                                                                                                                                                                                                                |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_shape_set_margin<class_PhysicsServer3DExtension_method__shape_set_margin>` **(** :ref:`RID<class_RID>` shape, :ref:`float<class_float>` margin **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`float<class_float>`                                         | :ref:`_slider_joint_get_param<class_PhysicsServer3DExtension_method__slider_joint_get_param>` **(** :ref:`RID<class_RID>` joint, :ref:`SliderJointParam<enum_PhysicsServer3D_SliderJointParam>` param **)** |virtual| |const|                                                                                                                                                                      |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_slider_joint_set_param<class_PhysicsServer3DExtension_method__slider_joint_set_param>` **(** :ref:`RID<class_RID>` joint, :ref:`SliderJointParam<enum_PhysicsServer3D_SliderJointParam>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                             |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_add_collision_exception<class_PhysicsServer3DExtension_method__soft_body_add_collision_exception>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_soft_body_create<class_PhysicsServer3DExtension_method__soft_body_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`AABB<class_AABB>`                                           | :ref:`_soft_body_get_bounds<class_PhysicsServer3DExtension_method__soft_body_get_bounds>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                 |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID[]<class_RID>`                                           | :ref:`_soft_body_get_collision_exceptions<class_PhysicsServer3DExtension_method__soft_body_get_collision_exceptions>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_soft_body_get_collision_layer<class_PhysicsServer3DExtension_method__soft_body_get_collision_layer>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                               |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_soft_body_get_collision_mask<class_PhysicsServer3DExtension_method__soft_body_get_collision_mask>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_soft_body_get_damping_coefficient<class_PhysicsServer3DExtension_method__soft_body_get_damping_coefficient>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_soft_body_get_drag_coefficient<class_PhysicsServer3DExtension_method__soft_body_get_drag_coefficient>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_soft_body_get_linear_stiffness<class_PhysicsServer3DExtension_method__soft_body_get_linear_stiffness>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Vector3<class_Vector3>`                                     | :ref:`_soft_body_get_point_global_position<class_PhysicsServer3DExtension_method__soft_body_get_point_global_position>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index **)** |virtual| |const|                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_soft_body_get_pressure_coefficient<class_PhysicsServer3DExtension_method__soft_body_get_pressure_coefficient>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_soft_body_get_simulation_precision<class_PhysicsServer3DExtension_method__soft_body_get_simulation_precision>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                     |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`RID<class_RID>`                                             | :ref:`_soft_body_get_space<class_PhysicsServer3DExtension_method__soft_body_get_space>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                                   |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`Variant<class_Variant>`                                     | :ref:`_soft_body_get_state<class_PhysicsServer3DExtension_method__soft_body_get_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer3D_BodyState>` state **)** |virtual| |const|                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`float<class_float>`                                         | :ref:`_soft_body_get_total_mass<class_PhysicsServer3DExtension_method__soft_body_get_total_mass>` **(** :ref:`RID<class_RID>` body **)** |virtual| |const|                                                                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                                           | :ref:`_soft_body_is_point_pinned<class_PhysicsServer3DExtension_method__soft_body_is_point_pinned>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index **)** |virtual| |const|                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_move_point<class_PhysicsServer3DExtension_method__soft_body_move_point>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index, :ref:`Vector3<class_Vector3>` global_position **)** |virtual|                                                                                                                                                                       |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_pin_point<class_PhysicsServer3DExtension_method__soft_body_pin_point>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index, :ref:`bool<class_bool>` pin **)** |virtual|                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_remove_all_pinned_points<class_PhysicsServer3DExtension_method__soft_body_remove_all_pinned_points>` **(** :ref:`RID<class_RID>` body **)** |virtual|                                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_remove_collision_exception<class_PhysicsServer3DExtension_method__soft_body_remove_collision_exception>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` body_b **)** |virtual|                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_collision_layer<class_PhysicsServer3DExtension_method__soft_body_set_collision_layer>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` layer **)** |virtual|                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_collision_mask<class_PhysicsServer3DExtension_method__soft_body_set_collision_mask>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` mask **)** |virtual|                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_damping_coefficient<class_PhysicsServer3DExtension_method__soft_body_set_damping_coefficient>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` damping_coefficient **)** |virtual|                                                                                                                                                                                |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_drag_coefficient<class_PhysicsServer3DExtension_method__soft_body_set_drag_coefficient>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` drag_coefficient **)** |virtual|                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_linear_stiffness<class_PhysicsServer3DExtension_method__soft_body_set_linear_stiffness>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` linear_stiffness **)** |virtual|                                                                                                                                                                                         |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_mesh<class_PhysicsServer3DExtension_method__soft_body_set_mesh>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` mesh **)** |virtual|                                                                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_pressure_coefficient<class_PhysicsServer3DExtension_method__soft_body_set_pressure_coefficient>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` pressure_coefficient **)** |virtual|                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_ray_pickable<class_PhysicsServer3DExtension_method__soft_body_set_ray_pickable>` **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` enable **)** |virtual|                                                                                                                                                                                                             |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_simulation_precision<class_PhysicsServer3DExtension_method__soft_body_set_simulation_precision>` **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` simulation_precision **)** |virtual|                                                                                                                                                                                 |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_space<class_PhysicsServer3DExtension_method__soft_body_set_space>` **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                              |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_state<class_PhysicsServer3DExtension_method__soft_body_set_state>` **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer3D_BodyState>` state, :ref:`Variant<class_Variant>` variant **)** |virtual|                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_total_mass<class_PhysicsServer3DExtension_method__soft_body_set_total_mass>` **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` total_mass **)** |virtual|                                                                                                                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_set_transform<class_PhysicsServer3DExtension_method__soft_body_set_transform>` **(** :ref:`RID<class_RID>` body, :ref:`Transform3D<class_Transform3D>` transform **)** |virtual|                                                                                                                                                                                                  |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_soft_body_update_rendering_server<class_PhysicsServer3DExtension_method__soft_body_update_rendering_server>` **(** :ref:`RID<class_RID>` body, :ref:`PhysicsServer3DRenderingServerHandler<class_PhysicsServer3DRenderingServerHandler>` rendering_server_handler **)** |virtual|                                                                                                           |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`RID<class_RID>`                                             | :ref:`_space_create<class_PhysicsServer3DExtension_method__space_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                                    |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`int<class_int>`                                             | :ref:`_space_get_contact_count<class_PhysicsServer3DExtension_method__space_get_contact_count>` **(** :ref:`RID<class_RID>` space **)** |virtual| |const|                                                                                                                                                                                                                                          |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`PackedVector3Array<class_PackedVector3Array>`               | :ref:`_space_get_contacts<class_PhysicsServer3DExtension_method__space_get_contacts>` **(** :ref:`RID<class_RID>` space **)** |virtual| |const|                                                                                                                                                                                                                                                    |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>` | :ref:`_space_get_direct_state<class_PhysicsServer3DExtension_method__space_get_direct_state>` **(** :ref:`RID<class_RID>` space **)** |virtual|                                                                                                                                                                                                                                                    |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`float<class_float>`                                         | :ref:`_space_get_param<class_PhysicsServer3DExtension_method__space_get_param>` **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer3D_SpaceParameter>` param **)** |virtual| |const|                                                                                                                                                                                        |
@@ -282,6 +374,8 @@ Methods
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_space_set_active<class_PhysicsServer3DExtension_method__space_set_active>` **(** :ref:`RID<class_RID>` space, :ref:`bool<class_bool>` active **)** |virtual|                                                                                                                                                                                                                                |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| void                                                              | :ref:`_space_set_debug_contacts<class_PhysicsServer3DExtension_method__space_set_debug_contacts>` **(** :ref:`RID<class_RID>` space, :ref:`int<class_int>` max_contacts **)** |virtual|                                                                                                                                                                                                            |
++-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | void                                                              | :ref:`_space_set_param<class_PhysicsServer3DExtension_method__space_set_param>` **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer3D_SpaceParameter>` param, :ref:`float<class_float>` value **)** |virtual|                                                                                                                                                               |
 +-------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`RID<class_RID>`                                             | :ref:`_sphere_shape_create<class_PhysicsServer3DExtension_method__sphere_shape_create>` **(** **)** |virtual|                                                                                                                                                                                                                                                                                      |
@@ -524,6 +618,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__body_get_collision_exceptions:
+
+- :ref:`RID[]<class_RID>` **_body_get_collision_exceptions** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__body_get_collision_layer:
 
 - :ref:`int<class_int>` **_body_get_collision_layer** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
@@ -554,6 +654,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__body_get_contacts_reported_depth_threshold:
+
+- :ref:`float<class_float>` **_body_get_contacts_reported_depth_threshold** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__body_get_direct_state:
 
 - :ref:`PhysicsDirectBodyState3D<class_PhysicsDirectBodyState3D>` **_body_get_direct_state** **(** :ref:`RID<class_RID>` body **)** |virtual|
@@ -614,6 +720,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__body_get_user_flags:
+
+- :ref:`int<class_int>` **_body_get_user_flags** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__body_is_axis_locked:
 
 - :ref:`bool<class_bool>` **_body_is_axis_locked** **(** :ref:`RID<class_RID>` body, :ref:`BodyAxis<enum_PhysicsServer3D_BodyAxis>` axis **)** |virtual| |const|
@@ -692,6 +804,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__body_set_contacts_reported_depth_threshold:
+
+- void **_body_set_contacts_reported_depth_threshold** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` threshold **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__body_set_enable_continuous_collision_detection:
 
 - void **_body_set_enable_continuous_collision_detection** **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` enable **)** |virtual|
@@ -764,6 +882,18 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__body_set_state_sync_callback:
+
+- void **_body_set_state_sync_callback** **(** :ref:`RID<class_RID>` body, PhysicsServer3DExtensionStateCallback* callback **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__body_set_user_flags:
+
+- void **_body_set_user_flags** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` flags **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__body_test_motion:
 
 - :ref:`bool<class_bool>` **_body_test_motion** **(** :ref:`RID<class_RID>` body, :ref:`Transform3D<class_Transform3D>` from, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` max_collisions, :ref:`bool<class_bool>` collide_separation_ray, PhysicsServer3DExtensionMotionResult* result **)** |virtual| |const|
@@ -956,6 +1086,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__joint_make_hinge_simple:
+
+- void **_joint_make_hinge_simple** **(** :ref:`RID<class_RID>` joint, :ref:`RID<class_RID>` body_A, :ref:`Vector3<class_Vector3>` pivot_A, :ref:`Vector3<class_Vector3>` axis_A, :ref:`RID<class_RID>` body_B, :ref:`Vector3<class_Vector3>` pivot_B, :ref:`Vector3<class_Vector3>` axis_B **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__joint_make_pin:
 
 - void **_joint_make_pin** **(** :ref:`RID<class_RID>` joint, :ref:`RID<class_RID>` body_A, :ref:`Vector3<class_Vector3>` local_A, :ref:`RID<class_RID>` body_B, :ref:`Vector3<class_Vector3>` local_B **)** |virtual|
@@ -1022,24 +1158,48 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__shape_get_custom_solver_bias:
+
+- :ref:`float<class_float>` **_shape_get_custom_solver_bias** **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__shape_get_data:
 
 - :ref:`Variant<class_Variant>` **_shape_get_data** **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__shape_get_margin:
+
+- :ref:`float<class_float>` **_shape_get_margin** **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__shape_get_type:
 
 - :ref:`ShapeType<enum_PhysicsServer3D_ShapeType>` **_shape_get_type** **(** :ref:`RID<class_RID>` shape **)** |virtual| |const|
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__shape_set_custom_solver_bias:
+
+- void **_shape_set_custom_solver_bias** **(** :ref:`RID<class_RID>` shape, :ref:`float<class_float>` bias **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__shape_set_data:
 
 - void **_shape_set_data** **(** :ref:`RID<class_RID>` shape, :ref:`Variant<class_Variant>` data **)** |virtual|
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__shape_set_margin:
+
+- void **_shape_set_margin** **(** :ref:`RID<class_RID>` shape, :ref:`float<class_float>` margin **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__slider_joint_get_param:
 
 - :ref:`float<class_float>` **_slider_joint_get_param** **(** :ref:`RID<class_RID>` joint, :ref:`SliderJointParam<enum_PhysicsServer3D_SliderJointParam>` param **)** |virtual| |const|
@@ -1052,18 +1212,228 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__soft_body_add_collision_exception:
+
+- void **_soft_body_add_collision_exception** **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` body_b **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_create:
+
+- :ref:`RID<class_RID>` **_soft_body_create** **(** **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__soft_body_get_bounds:
 
 - :ref:`AABB<class_AABB>` **_soft_body_get_bounds** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__soft_body_get_collision_exceptions:
+
+- :ref:`RID[]<class_RID>` **_soft_body_get_collision_exceptions** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_collision_layer:
+
+- :ref:`int<class_int>` **_soft_body_get_collision_layer** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_collision_mask:
+
+- :ref:`int<class_int>` **_soft_body_get_collision_mask** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_damping_coefficient:
+
+- :ref:`float<class_float>` **_soft_body_get_damping_coefficient** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_drag_coefficient:
+
+- :ref:`float<class_float>` **_soft_body_get_drag_coefficient** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_linear_stiffness:
+
+- :ref:`float<class_float>` **_soft_body_get_linear_stiffness** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_point_global_position:
+
+- :ref:`Vector3<class_Vector3>` **_soft_body_get_point_global_position** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_pressure_coefficient:
+
+- :ref:`float<class_float>` **_soft_body_get_pressure_coefficient** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_simulation_precision:
+
+- :ref:`int<class_int>` **_soft_body_get_simulation_precision** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_space:
+
+- :ref:`RID<class_RID>` **_soft_body_get_space** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_state:
+
+- :ref:`Variant<class_Variant>` **_soft_body_get_state** **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer3D_BodyState>` state **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_get_total_mass:
+
+- :ref:`float<class_float>` **_soft_body_get_total_mass** **(** :ref:`RID<class_RID>` body **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_is_point_pinned:
+
+- :ref:`bool<class_bool>` **_soft_body_is_point_pinned** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_move_point:
+
+- void **_soft_body_move_point** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index, :ref:`Vector3<class_Vector3>` global_position **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_pin_point:
+
+- void **_soft_body_pin_point** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` point_index, :ref:`bool<class_bool>` pin **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_remove_all_pinned_points:
+
+- void **_soft_body_remove_all_pinned_points** **(** :ref:`RID<class_RID>` body **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_remove_collision_exception:
+
+- void **_soft_body_remove_collision_exception** **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` body_b **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_collision_layer:
+
+- void **_soft_body_set_collision_layer** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` layer **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_collision_mask:
+
+- void **_soft_body_set_collision_mask** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` mask **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_damping_coefficient:
+
+- void **_soft_body_set_damping_coefficient** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` damping_coefficient **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_drag_coefficient:
+
+- void **_soft_body_set_drag_coefficient** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` drag_coefficient **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_linear_stiffness:
+
+- void **_soft_body_set_linear_stiffness** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` linear_stiffness **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_mesh:
+
+- void **_soft_body_set_mesh** **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` mesh **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_pressure_coefficient:
+
+- void **_soft_body_set_pressure_coefficient** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` pressure_coefficient **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_ray_pickable:
+
+- void **_soft_body_set_ray_pickable** **(** :ref:`RID<class_RID>` body, :ref:`bool<class_bool>` enable **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_simulation_precision:
+
+- void **_soft_body_set_simulation_precision** **(** :ref:`RID<class_RID>` body, :ref:`int<class_int>` simulation_precision **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_space:
+
+- void **_soft_body_set_space** **(** :ref:`RID<class_RID>` body, :ref:`RID<class_RID>` space **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_state:
+
+- void **_soft_body_set_state** **(** :ref:`RID<class_RID>` body, :ref:`BodyState<enum_PhysicsServer3D_BodyState>` state, :ref:`Variant<class_Variant>` variant **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_total_mass:
+
+- void **_soft_body_set_total_mass** **(** :ref:`RID<class_RID>` body, :ref:`float<class_float>` total_mass **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_set_transform:
+
+- void **_soft_body_set_transform** **(** :ref:`RID<class_RID>` body, :ref:`Transform3D<class_Transform3D>` transform **)** |virtual|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__soft_body_update_rendering_server:
+
+- void **_soft_body_update_rendering_server** **(** :ref:`RID<class_RID>` body, :ref:`PhysicsServer3DRenderingServerHandler<class_PhysicsServer3DRenderingServerHandler>` rendering_server_handler **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__space_create:
 
 - :ref:`RID<class_RID>` **_space_create** **(** **)** |virtual|
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__space_get_contact_count:
+
+- :ref:`int<class_int>` **_space_get_contact_count** **(** :ref:`RID<class_RID>` space **)** |virtual| |const|
+
+----
+
+.. _class_PhysicsServer3DExtension_method__space_get_contacts:
+
+- :ref:`PackedVector3Array<class_PackedVector3Array>` **_space_get_contacts** **(** :ref:`RID<class_RID>` space **)** |virtual| |const|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__space_get_direct_state:
 
 - :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>` **_space_get_direct_state** **(** :ref:`RID<class_RID>` space **)** |virtual|
@@ -1088,6 +1458,12 @@ Method Descriptions
 
 ----
 
+.. _class_PhysicsServer3DExtension_method__space_set_debug_contacts:
+
+- void **_space_set_debug_contacts** **(** :ref:`RID<class_RID>` space, :ref:`int<class_int>` max_contacts **)** |virtual|
+
+----
+
 .. _class_PhysicsServer3DExtension_method__space_set_param:
 
 - void **_space_set_param** **(** :ref:`RID<class_RID>` space, :ref:`SpaceParameter<enum_PhysicsServer3D_SpaceParameter>` param, :ref:`float<class_float>` value **)** |virtual|

+ 56 - 0
classes/class_projectsettings.rst

@@ -316,8 +316,16 @@ Properties
 +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`                           | :ref:`filesystem/import/blender/enabled<class_ProjectSettings_property_filesystem/import/blender/enabled>`                                                                                                 | ``true``                                                                                         |
 +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                           | :ref:`filesystem/import/blender/enabled.android<class_ProjectSettings_property_filesystem/import/blender/enabled.android>`                                                                                 | ``false``                                                                                        |
++---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                           | :ref:`filesystem/import/blender/enabled.web<class_ProjectSettings_property_filesystem/import/blender/enabled.web>`                                                                                         | ``false``                                                                                        |
++---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`                           | :ref:`filesystem/import/fbx/enabled<class_ProjectSettings_property_filesystem/import/fbx/enabled>`                                                                                                         | ``true``                                                                                         |
 +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                           | :ref:`filesystem/import/fbx/enabled.android<class_ProjectSettings_property_filesystem/import/fbx/enabled.android>`                                                                                         | ``false``                                                                                        |
++---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+| :ref:`bool<class_bool>`                           | :ref:`filesystem/import/fbx/enabled.web<class_ProjectSettings_property_filesystem/import/fbx/enabled.web>`                                                                                                 | ``false``                                                                                        |
++---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
 | :ref:`int<class_int>`                             | :ref:`gui/common/default_scroll_deadzone<class_ProjectSettings_property_gui/common/default_scroll_deadzone>`                                                                                               | ``0``                                                                                            |
 +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
 | :ref:`bool<class_bool>`                           | :ref:`gui/common/swap_cancel_ok<class_ProjectSettings_property_gui/common/swap_cancel_ok>`                                                                                                                 |                                                                                                  |
@@ -3023,6 +3031,30 @@ This requires configuring a path to a Blender executable in the editor settings
 
 ----
 
+.. _class_ProjectSettings_property_filesystem/import/blender/enabled.android:
+
+- :ref:`bool<class_bool>` **filesystem/import/blender/enabled.android**
+
++-----------+-----------+
+| *Default* | ``false`` |
++-----------+-----------+
+
+Override for :ref:`filesystem/import/blender/enabled<class_ProjectSettings_property_filesystem/import/blender/enabled>` on Android where Blender can't easily be accessed from Godot.
+
+----
+
+.. _class_ProjectSettings_property_filesystem/import/blender/enabled.web:
+
+- :ref:`bool<class_bool>` **filesystem/import/blender/enabled.web**
+
++-----------+-----------+
+| *Default* | ``false`` |
++-----------+-----------+
+
+Override for :ref:`filesystem/import/blender/enabled<class_ProjectSettings_property_filesystem/import/blender/enabled>` on the Web where Blender can't easily be accessed from Godot.
+
+----
+
 .. _class_ProjectSettings_property_filesystem/import/fbx/enabled:
 
 - :ref:`bool<class_bool>` **filesystem/import/fbx/enabled**
@@ -3037,6 +3069,30 @@ This requires configuring a path to a FBX2glTF executable in the editor settings
 
 ----
 
+.. _class_ProjectSettings_property_filesystem/import/fbx/enabled.android:
+
+- :ref:`bool<class_bool>` **filesystem/import/fbx/enabled.android**
+
++-----------+-----------+
+| *Default* | ``false`` |
++-----------+-----------+
+
+Override for :ref:`filesystem/import/fbx/enabled<class_ProjectSettings_property_filesystem/import/fbx/enabled>` on Android where FBX2glTF can't easily be accessed from Godot.
+
+----
+
+.. _class_ProjectSettings_property_filesystem/import/fbx/enabled.web:
+
+- :ref:`bool<class_bool>` **filesystem/import/fbx/enabled.web**
+
++-----------+-----------+
+| *Default* | ``false`` |
++-----------+-----------+
+
+Override for :ref:`filesystem/import/fbx/enabled<class_ProjectSettings_property_filesystem/import/fbx/enabled>` on the Web where FBX2glTF can't easily be accessed from Godot.
+
+----
+
 .. _class_ProjectSettings_property_gui/common/default_scroll_deadzone:
 
 - :ref:`int<class_int>` **gui/common/default_scroll_deadzone**

+ 1 - 1
classes/class_renderingserver.rst

@@ -6076,7 +6076,7 @@ If ``true``, sets the viewport active, else sets it inactive.
 
 Sets the stacking order for a viewport's canvas.
 
-``layer`` is the actual canvas layer, while ``sublayer`` specifies the stacking order of the canvas among those in the same layer.
+\ ``layer`` is the actual canvas layer, while ``sublayer`` specifies the stacking order of the canvas among those in the same layer.
 
 ----
 

+ 13 - 13
classes/class_rigidbody2d.rst

@@ -127,7 +127,7 @@ Signals
 
 Emitted when a collision with another :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` occurs. Requires :ref:`contact_monitor<class_RigidBody2D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody2D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
 ----
 
@@ -137,7 +137,7 @@ Emitted when a collision with another :ref:`PhysicsBody2D<class_PhysicsBody2D>`
 
 Emitted when the collision with another :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` ends. Requires :ref:`contact_monitor<class_RigidBody2D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody2D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
 ----
 
@@ -147,13 +147,13 @@ Emitted when the collision with another :ref:`PhysicsBody2D<class_PhysicsBody2D>
 
 Emitted when one of this RigidBody2D's :ref:`Shape2D<class_Shape2D>`\ s collides with another :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`'s :ref:`Shape2D<class_Shape2D>`\ s. Requires :ref:`contact_monitor<class_RigidBody2D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody2D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this RigidBody2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this RigidBody2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -163,13 +163,13 @@ Emitted when one of this RigidBody2D's :ref:`Shape2D<class_Shape2D>`\ s collides
 
 Emitted when the collision between one of this RigidBody2D's :ref:`Shape2D<class_Shape2D>`\ s and another :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`'s :ref:`Shape2D<class_Shape2D>`\ s ends. Requires :ref:`contact_monitor<class_RigidBody2D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody2D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`TileMap<class_TileMap>`\ s are detected if the :ref:`TileSet<class_TileSet>` has Collision :ref:`Shape2D<class_Shape2D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileSet<class_TileSet>`'s :ref:`CollisionObject2D<class_CollisionObject2D>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of the other :ref:`PhysicsBody2D<class_PhysicsBody2D>` or :ref:`TileMap<class_TileMap>` used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this RigidBody2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape2D<class_Shape2D>` of this RigidBody2D used by the :ref:`PhysicsServer2D<class_PhysicsServer2D>`. Get the :ref:`CollisionShape2D<class_CollisionShape2D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -662,7 +662,7 @@ This is equivalent to using :ref:`add_constant_force<class_RigidBody2D_method_ad
 
 Adds a constant positioned force to the body that keeps being applied over time until cleared with ``constant_force = Vector2(0, 0)``.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -702,7 +702,7 @@ This is equivalent to using :ref:`apply_impulse<class_RigidBody2D_method_apply_i
 
 Applies a positioned force to the body. A force is time dependent and meant to be applied every physics update.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -714,7 +714,7 @@ Applies a positioned impulse to the body.
 
 An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise).
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 

+ 13 - 13
classes/class_rigidbody3d.rst

@@ -129,7 +129,7 @@ Signals
 
 Emitted when a collision with another :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` occurs. Requires :ref:`contact_monitor<class_RigidBody3D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody3D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
 ----
 
@@ -139,7 +139,7 @@ Emitted when a collision with another :ref:`PhysicsBody3D<class_PhysicsBody3D>`
 
 Emitted when the collision with another :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` ends. Requires :ref:`contact_monitor<class_RigidBody3D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody3D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
 ----
 
@@ -149,13 +149,13 @@ Emitted when the collision with another :ref:`PhysicsBody3D<class_PhysicsBody3D>
 
 Emitted when one of this RigidBody3D's :ref:`Shape3D<class_Shape3D>`\ s collides with another :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`'s :ref:`Shape3D<class_Shape3D>`\ s. Requires :ref:`contact_monitor<class_RigidBody3D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody3D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this RigidBody3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this RigidBody3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -165,13 +165,13 @@ Emitted when one of this RigidBody3D's :ref:`Shape3D<class_Shape3D>`\ s collides
 
 Emitted when the collision between one of this RigidBody3D's :ref:`Shape3D<class_Shape3D>`\ s and another :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`'s :ref:`Shape3D<class_Shape3D>`\ s ends. Requires :ref:`contact_monitor<class_RigidBody3D_property_contact_monitor>` to be set to ``true`` and :ref:`max_contacts_reported<class_RigidBody3D_property_max_contacts_reported>` to be set high enough to detect all the collisions. :ref:`GridMap<class_GridMap>`\ s are detected if the :ref:`MeshLibrary<class_MeshLibrary>` has Collision :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. :ref:`GridMap<class_GridMap>`\ s are detected if the Meshes have :ref:`Shape3D<class_Shape3D>`\ s.
+\ ``body_rid`` the :ref:`RID<class_RID>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`MeshLibrary<class_MeshLibrary>`'s :ref:`CollisionObject3D<class_CollisionObject3D>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. :ref:`GridMap<class_GridMap>`\ s are detected if the Meshes have :ref:`Shape3D<class_Shape3D>`\ s.
 
-``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
+\ ``body`` the :ref:`Node<class_Node>`, if it exists in the tree, of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>`.
 
-``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
+\ ``body_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of the other :ref:`PhysicsBody3D<class_PhysicsBody3D>` or :ref:`GridMap<class_GridMap>` used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))``.
 
-``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this RigidBody3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
+\ ``local_shape_index`` the index of the :ref:`Shape3D<class_Shape3D>` of this RigidBody3D used by the :ref:`PhysicsServer3D<class_PhysicsServer3D>`. Get the :ref:`CollisionShape3D<class_CollisionShape3D>` node with ``self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))``.
 
 ----
 
@@ -646,7 +646,7 @@ This is equivalent to using :ref:`add_constant_force<class_RigidBody3D_method_ad
 
 Adds a constant positioned force to the body that keeps being applied over time until cleared with ``constant_force = Vector3(0, 0, 0)``.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -686,7 +686,7 @@ This is equivalent to using :ref:`apply_impulse<class_RigidBody3D_method_apply_i
 
 Applies a positioned force to the body. A force is time dependent and meant to be applied every physics update.
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 
@@ -698,7 +698,7 @@ Applies a positioned impulse to the body.
 
 An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise).
 
-``position`` is the offset from the body origin in global coordinates.
+\ ``position`` is the offset from the body origin in global coordinates.
 
 ----
 

+ 1 - 1
classes/class_skeleton2d.rst

@@ -113,7 +113,7 @@ Returns the :ref:`RID<class_RID>` of a Skeleton2D instance.
 
 Sets the local pose transform, ``override_pose``, for the bone at ``bone_idx``.
 
-``strength`` is the interpolation strength that will be used when applying the pose, and ``persistent`` determines if the applied pose will remain.
+\ ``strength`` is the interpolation strength that will be used when applying the pose, and ``persistent`` determines if the applied pose will remain.
 
 \ **Note:** The pose transform needs to be a local transform relative to the :ref:`Bone2D<class_Bone2D>` node at ``bone_idx``!
 

+ 11 - 3
classes/class_skeleton3d.rst

@@ -258,6 +258,8 @@ Removes the global pose override on all bones in the skeleton.
 
 - void **clear_bones_local_pose_override** **(** **)**
 
+Deprecated. Local pose overrides will be removed.
+
 Removes the local pose override on all bones in the skeleton.
 
 ----
@@ -438,6 +440,8 @@ This can be used to easily convert a global pose from :ref:`get_bone_global_pose
 
 - :ref:`Transform3D<class_Transform3D>` **global_pose_to_world_transform** **(** :ref:`Transform3D<class_Transform3D>` global_pose **)**
 
+Deprecated. Use :ref:`Node3D<class_Node3D>` apis instead.
+
 Takes the passed-in global pose and converts it to a world transform.
 
 This can be used to easily convert a global pose from :ref:`get_bone_global_pose<class_Skeleton3D_method_get_bone_global_pose>` to a global transform usable with a node's transform, like :ref:`Node3D.global_transform<class_Node3D_property_global_transform>` for example.
@@ -556,9 +560,9 @@ Disables the pose for the bone at ``bone_idx`` if ``false``, enables the bone po
 
 Sets the global pose transform, ``pose``, for the bone at ``bone_idx``.
 
-``amount`` is the interpolation strength that will be used when applying the pose, and ``persistent`` determines if the applied pose will remain.
+\ ``amount`` is the interpolation strength that will be used when applying the pose, and ``persistent`` determines if the applied pose will remain.
 
-\ **Note:** The pose transform needs to be a global pose! Use :ref:`world_transform_to_global_pose<class_Skeleton3D_method_world_transform_to_global_pose>` to convert a world transform, like one you can get from a :ref:`Node3D<class_Node3D>`, to a global pose.
+\ **Note:** The pose transform needs to be a global pose! To convert a world transform from a :ref:`Node3D<class_Node3D>` to a global bone pose, multiply the :ref:`Transform3D.affine_inverse<class_Transform3D_method_affine_inverse>` of the node's :ref:`Node3D.global_transform<class_Node3D_property_global_transform>` by the desired world transform
 
 ----
 
@@ -566,9 +570,11 @@ Sets the global pose transform, ``pose``, for the bone at ``bone_idx``.
 
 - void **set_bone_local_pose_override** **(** :ref:`int<class_int>` bone_idx, :ref:`Transform3D<class_Transform3D>` pose, :ref:`float<class_float>` amount, :ref:`bool<class_bool>` persistent=false **)**
 
+Deprecated. Local pose overrides will be removed.
+
 Sets the local pose transform, ``pose``, for the bone at ``bone_idx``.
 
-``amount`` is the interpolation strength that will be used when applying the pose, and ``persistent`` determines if the applied pose will remain.
+\ ``amount`` is the interpolation strength that will be used when applying the pose, and ``persistent`` determines if the applied pose will remain.
 
 \ **Note:** The pose transform needs to be a local pose! Use :ref:`global_pose_to_local_pose<class_Skeleton3D_method_global_pose_to_local_pose>` to convert a global pose to a local pose.
 
@@ -636,6 +642,8 @@ Unparents the bone at ``bone_idx`` and sets its rest position to that of its par
 
 - :ref:`Transform3D<class_Transform3D>` **world_transform_to_global_pose** **(** :ref:`Transform3D<class_Transform3D>` world_transform **)**
 
+Deprecated. Use :ref:`Node3D<class_Node3D>` apis instead.
+
 Takes the passed-in global transform and converts it to a global pose.
 
 This can be used to easily convert a global transform from :ref:`Node3D.global_transform<class_Node3D_property_global_transform>` to a global pose usable with :ref:`set_bone_global_pose_override<class_Skeleton3D_method_set_bone_global_pose_override>`, for example.

+ 54 - 1
classes/class_skeletonik3d.rst

@@ -12,7 +12,32 @@ SkeletonIK3D
 
 **Inherits:** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
 
-
+SkeletonIK3D is used to place the end bone of a :ref:`Skeleton3D<class_Skeleton3D>` bone chain at a certain point in 3D by rotating all bones in the chain accordingly.
+
+Description
+-----------
+
+SkeletonIK3D is used to place the end bone of a :ref:`Skeleton3D<class_Skeleton3D>` bone chain at a certain point in 3D by rotating all bones in the chain accordingly. A typical scenario for IK in games is to place a characters feet on the ground or a characters hands on a currently hold object. SkeletonIK uses FabrikInverseKinematic internally to solve the bone chain and applies the results to the :ref:`Skeleton3D<class_Skeleton3D>` ``bones_global_pose_override`` property for all affected bones in the chain. If fully applied this overwrites any bone transform from :ref:`Animation<class_Animation>`\ s or bone custom poses set by users. The applied amount can be controlled with the ``interpolation`` property.
+
+::
+
+    # Apply IK effect automatically on every new frame (not the current)
+    skeleton_ik_node.start()
+    
+    # Apply IK effect only on the current frame
+    skeleton_ik_node.start(true)
+    
+    # Stop IK effect and reset bones_global_pose_override on Skeleton
+    skeleton_ik_node.stop()
+    
+    # Apply full IK effect
+    skeleton_ik_node.set_interpolation(1.0)
+    
+    # Apply half IK effect
+    skeleton_ik_node.set_interpolation(0.5)
+    
+    # Apply zero IK effect (a value at or below 0.01 also removes bones_global_pose_override on Skeleton)
+    skeleton_ik_node.set_interpolation(0.0)
 
 Tutorials
 ---------
@@ -72,6 +97,8 @@ Property Descriptions
 | *Getter*  | get_interpolation()      |
 +-----------+--------------------------+
 
+Interpolation value for how much the IK results are applied to the current skeleton bone chain. A value of ``1.0`` will overwrite all skeleton bone transforms completely while a value of ``0.0`` will visually disable the SkeletonIK. A value at or below ``0.01`` also calls :ref:`Skeleton3D.clear_bones_global_pose_override<class_Skeleton3D_method_clear_bones_global_pose_override>`.
+
 ----
 
 .. _class_SkeletonIK3D_property_magnet:
@@ -86,6 +113,8 @@ Property Descriptions
 | *Getter*  | get_magnet_position()      |
 +-----------+----------------------------+
 
+Secondary target position (first is :ref:`target<class_SkeletonIK3D_property_target>` property or :ref:`target_node<class_SkeletonIK3D_property_target_node>`) for the IK chain. Use magnet position (pole target) to control the bending of the IK chain. Only works if the bone chain has more than 2 bones. The middle chain bone position will be linearly interpolated with the magnet position.
+
 ----
 
 .. _class_SkeletonIK3D_property_max_iterations:
@@ -100,6 +129,8 @@ Property Descriptions
 | *Getter*  | get_max_iterations()      |
 +-----------+---------------------------+
 
+Number of iteration loops used by the IK solver to produce more accurate (and elegant) bone chain results.
+
 ----
 
 .. _class_SkeletonIK3D_property_min_distance:
@@ -114,6 +145,8 @@ Property Descriptions
 | *Getter*  | get_min_distance()      |
 +-----------+-------------------------+
 
+The minimum distance between bone and goal target. If the distance is below this value, the IK solver stops further iterations.
+
 ----
 
 .. _class_SkeletonIK3D_property_override_tip_basis:
@@ -128,6 +161,8 @@ Property Descriptions
 | *Getter*  | is_override_tip_basis()       |
 +-----------+-------------------------------+
 
+If ``true`` overwrites the rotation of the tip bone with the rotation of the :ref:`target<class_SkeletonIK3D_property_target>` (or :ref:`target_node<class_SkeletonIK3D_property_target_node>` if defined).
+
 ----
 
 .. _class_SkeletonIK3D_property_root_bone:
@@ -142,6 +177,8 @@ Property Descriptions
 | *Getter*  | get_root_bone()      |
 +-----------+----------------------+
 
+The name of the current root bone, the first bone in the IK chain.
+
 ----
 
 .. _class_SkeletonIK3D_property_target:
@@ -156,6 +193,8 @@ Property Descriptions
 | *Getter*  | get_target_transform()                              |
 +-----------+-----------------------------------------------------+
 
+First target of the IK chain where the tip bone is placed and, if :ref:`override_tip_basis<class_SkeletonIK3D_property_override_tip_basis>` is ``true``, how the tip bone is rotated. If a :ref:`target_node<class_SkeletonIK3D_property_target_node>` path is available the nodes transform is used instead and this property is ignored.
+
 ----
 
 .. _class_SkeletonIK3D_property_target_node:
@@ -170,6 +209,8 @@ Property Descriptions
 | *Getter*  | get_target_node()      |
 +-----------+------------------------+
 
+Target node :ref:`NodePath<class_NodePath>` for the IK chain. If available, the node's current :ref:`Transform3D<class_Transform3D>` is used instead of the :ref:`target<class_SkeletonIK3D_property_target>` property.
+
 ----
 
 .. _class_SkeletonIK3D_property_tip_bone:
@@ -184,6 +225,8 @@ Property Descriptions
 | *Getter*  | get_tip_bone()      |
 +-----------+---------------------+
 
+The name of the current tip bone, the last bone in the IK chain placed at the :ref:`target<class_SkeletonIK3D_property_target>` transform (or :ref:`target_node<class_SkeletonIK3D_property_target_node>` if defined).
+
 ----
 
 .. _class_SkeletonIK3D_property_use_magnet:
@@ -198,6 +241,8 @@ Property Descriptions
 | *Getter*  | is_using_magnet()     |
 +-----------+-----------------------+
 
+If ``true``, instructs the IK solver to consider the secondary magnet target (pole target) when calculating the bone chain. Use the magnet position (pole target) to control the bending of the IK chain.
+
 Method Descriptions
 -------------------
 
@@ -205,24 +250,32 @@ Method Descriptions
 
 - :ref:`Skeleton3D<class_Skeleton3D>` **get_parent_skeleton** **(** **)** |const|
 
+Returns the parent :ref:`Skeleton3D<class_Skeleton3D>` Node that was present when SkeletonIK entered the :ref:`SceneTree<class_SceneTree>`. Returns null if the parent node was not a :ref:`Skeleton3D<class_Skeleton3D>` Node when SkeletonIK3D entered the :ref:`SceneTree<class_SceneTree>`.
+
 ----
 
 .. _class_SkeletonIK3D_method_is_running:
 
 - :ref:`bool<class_bool>` **is_running** **(** **)**
 
+Returns ``true`` if SkeletonIK is applying IK effects on continues frames to the :ref:`Skeleton3D<class_Skeleton3D>` bones. Returns ``false`` if SkeletonIK is stopped or :ref:`start<class_SkeletonIK3D_method_start>` was used with the ``one_time`` parameter set to ``true``.
+
 ----
 
 .. _class_SkeletonIK3D_method_start:
 
 - void **start** **(** :ref:`bool<class_bool>` one_time=false **)**
 
+Starts applying IK effects on each frame to the :ref:`Skeleton3D<class_Skeleton3D>` bones but will only take effect starting on the next frame. If ``one_time`` is ``true``, this will take effect immediately but also reset on the next frame.
+
 ----
 
 .. _class_SkeletonIK3D_method_stop:
 
 - void **stop** **(** **)**
 
+Stops applying IK effects on each frame to the :ref:`Skeleton3D<class_Skeleton3D>` bones and also calls :ref:`Skeleton3D.clear_bones_global_pose_override<class_Skeleton3D_method_clear_bones_global_pose_override>` to remove existing overrides on all bones.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 2 - 0
classes/class_skeletonmodification2dphysicalbones.rst

@@ -19,6 +19,8 @@ Description
 
 This modification takes the transforms of :ref:`PhysicalBone2D<class_PhysicalBone2D>` nodes and applies them to :ref:`Bone2D<class_Bone2D>` nodes. This allows the :ref:`Bone2D<class_Bone2D>` nodes to react to physics thanks to the linked :ref:`PhysicalBone2D<class_PhysicalBone2D>` nodes.
 
+Experimental. Physical bones may be changed in the future to perform the position update of :ref:`Bone2D<class_Bone2D>` on their own.
+
 Properties
 ----------
 

+ 3 - 3
classes/class_string.rst

@@ -469,7 +469,7 @@ Returns the index of the **first** case-insensitive occurrence of the specified
 
 Formats the string by replacing all occurrences of ``placeholder`` with the elements of ``values``.
 
-``values`` can be a :ref:`Dictionary<class_Dictionary>` or an :ref:`Array<class_Array>`. Any underscores in ``placeholder`` will be replaced with the corresponding keys in advance. Array elements use their index as keys.
+\ ``values`` can be a :ref:`Dictionary<class_Dictionary>` or an :ref:`Array<class_Array>`. Any underscores in ``placeholder`` will be replaced with the corresponding keys in advance. Array elements use their index as keys.
 
 ::
 
@@ -807,7 +807,7 @@ Returns the number of characters in the string.
 
 - :ref:`String<class_String>` **lpad** **(** :ref:`int<class_int>` min_length, :ref:`String<class_String>` character=" " **)** |const|
 
-Formats a string to be at least ``min_length`` long by adding ``character``s to the left of the string.
+Formats a string to be at least ``min_length`` long by adding ``character``\ s to the left of the string.
 
 ----
 
@@ -1014,7 +1014,7 @@ Examples:
 
 - :ref:`String<class_String>` **rpad** **(** :ref:`int<class_int>` min_length, :ref:`String<class_String>` character=" " **)** |const|
 
-Formats a string to be at least ``min_length`` long by adding ``character``s to the right of the string.
+Formats a string to be at least ``min_length`` long by adding ``character``\ s to the right of the string.
 
 ----
 

+ 2 - 0
classes/class_textserver.rst

@@ -713,6 +713,8 @@ enum **Hinting**:
 
 - **HINTING_NORMAL** = **2** --- Use the default font hinting mode (crisper but less smooth).
 
+\ **Note:** This hinting mode changes both horizontal and vertical glyph metrics. If applied to monospace font, some glyphs might have different width.
+
 ----
 
 .. _enum_TextServer_SubpixelPositioning:

+ 2 - 2
classes/class_time.rst

@@ -170,7 +170,7 @@ Method Descriptions
 
 - :ref:`Dictionary<class_Dictionary>` **get_date_dict_from_system** **(** :ref:`bool<class_bool>` utc=false **)** |const|
 
-Returns the current date as a dictionary of keys: ``year``, ``month``, ``day``, ``weekday``, and ``dst`` (Daylight Savings Time).
+Returns the current date as a dictionary of keys: ``year``, ``month``, ``day``, and ``weekday``.
 
 The returned values are in the system's local time when ``utc`` is ``false``, otherwise they are in UTC.
 
@@ -218,7 +218,7 @@ If ``weekday`` is ``false``, then the ``weekday`` entry is excluded (the calcula
 
 - :ref:`Dictionary<class_Dictionary>` **get_datetime_dict_from_system** **(** :ref:`bool<class_bool>` utc=false **)** |const|
 
-Returns the current date as a dictionary of keys: ``year``, ``month``, ``day``, ``weekday``, ``hour``, ``minute``, and ``second``.
+Returns the current date as a dictionary of keys: ``year``, ``month``, ``day``, ``weekday``, ``hour``, ``minute``, ``second``, and ``dst`` (Daylight Savings Time).
 
 ----
 

+ 1 - 1
classes/class_tree.rst

@@ -613,7 +613,7 @@ Creates an item in the tree and adds it as a child of ``parent``, which can be e
 
 If ``parent`` is ``null``, the root item will be the parent, or the new item will be the root itself if the tree is empty.
 
-The new item will be the ``idx``th child of parent, or it will be the last child if there are not enough siblings.
+The new item will be the ``idx``\ th child of parent, or it will be the last child if there are not enough siblings.
 
 ----
 

+ 16 - 4
classes/class_tween.rst

@@ -62,12 +62,24 @@ Another interesting use for ``Tween``\ s is animating arbitrary sets of objects:
 
 In the example above, all children of a node are moved one after another to position (0, 0).
 
+You should avoid using more than one ``Tween`` per object's property. If two or more tweens animate one property at the same time, the last one created will take priority and assign the final value. If you want to interrupt and restart an animation, consider assigning the ``Tween`` to a variable:
+
+::
+
+    var tween
+    func animate():
+        if tween:
+            tween.kill() # Abort the previous animation.
+        tween = create_tween()
+
 Some :ref:`Tweener<class_Tweener>`\ s use transitions and eases. The first accepts a :ref:`TransitionType<enum_Tween_TransitionType>` constant, and refers to the way the timing of the animation is handled (see `easings.net <https://easings.net/>`__ for some examples). The second accepts an :ref:`EaseType<enum_Tween_EaseType>` constant, and controls where the ``trans_type`` is applied to the interpolation (in the beginning, the end, or both). If you don't know which transition and easing to pick, you can try different :ref:`TransitionType<enum_Tween_TransitionType>` constants with :ref:`EASE_IN_OUT<class_Tween_constant_EASE_IN_OUT>`, and use the one that looks best.
 
 \ `Tween easing and transition types cheatsheet <https://raw.githubusercontent.com/godotengine/godot-docs/master/img/tween_cheatsheet.png>`__\ 
 
 \ **Note:** All ``Tween``\ s will automatically start by default. To prevent a ``Tween`` from autostarting, you can call :ref:`stop<class_Tween_method_stop>` immediately after it is created.
 
+\ **Note:** ``Tween``\ s are processing after all of nodes in the current frame, i.e. after :ref:`Node._process<class_Node_method__process>` or :ref:`Node._physics_process<class_Node_method__physics_process>` (depending on :ref:`TweenProcessMode<enum_Tween_TweenProcessMode>`).
+
 Methods
 -------
 
@@ -307,13 +319,13 @@ Returns the total time in seconds the ``Tween`` has been animating (i.e. the tim
 
 This method can be used for manual interpolation of a value, when you don't want ``Tween`` to do animating for you. It's similar to :ref:`@GlobalScope.lerp<class_@GlobalScope_method_lerp>`, but with support for custom transition and easing.
 
-``initial_value`` is the starting value of the interpolation.
+\ ``initial_value`` is the starting value of the interpolation.
 
-``delta_value`` is the change of the value in the interpolation, i.e. it's equal to ``final_value - initial_value``.
+\ ``delta_value`` is the change of the value in the interpolation, i.e. it's equal to ``final_value - initial_value``.
 
-``elapsed_time`` is the time in seconds that passed after the interpolation started and it's used to control the position of the interpolation. E.g. when it's equal to half of the ``duration``, the interpolated value will be halfway between initial and final values. This value can also be greater than ``duration`` or lower than 0, which will extrapolate the value.
+\ ``elapsed_time`` is the time in seconds that passed after the interpolation started and it's used to control the position of the interpolation. E.g. when it's equal to half of the ``duration``, the interpolated value will be halfway between initial and final values. This value can also be greater than ``duration`` or lower than 0, which will extrapolate the value.
 
-``duration`` is the total time of the interpolation.
+\ ``duration`` is the total time of the interpolation.
 
 \ **Note:** If ``duration`` is equal to ``0``, the method will always return the final value, regardless of ``elapsed_time`` provided.
 

+ 68 - 0
classes/class_webrtcpeerconnection.rst

@@ -45,6 +45,10 @@ Methods
 +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`ConnectionState<enum_WebRTCPeerConnection_ConnectionState>` | :ref:`get_connection_state<class_WebRTCPeerConnection_method_get_connection_state>` **(** **)** |const|                                                                                    |
 +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`GatheringState<enum_WebRTCPeerConnection_GatheringState>`   | :ref:`get_gathering_state<class_WebRTCPeerConnection_method_get_gathering_state>` **(** **)** |const|                                                                                      |
++-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`SignalingState<enum_WebRTCPeerConnection_SignalingState>`   | :ref:`get_signaling_state<class_WebRTCPeerConnection_method_get_signaling_state>` **(** **)** |const|                                                                                      |
++-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Error<enum_@GlobalScope_Error>`                             | :ref:`initialize<class_WebRTCPeerConnection_method_initialize>` **(** :ref:`Dictionary<class_Dictionary>` configuration={} **)**                                                           |
 +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Error<enum_@GlobalScope_Error>`                             | :ref:`poll<class_WebRTCPeerConnection_method_poll>` **(** **)**                                                                                                                            |
@@ -114,6 +118,54 @@ enum **ConnectionState**:
 
 - **STATE_CLOSED** = **5** --- The peer connection is closed (after calling :ref:`close<class_WebRTCPeerConnection_method_close>` for example).
 
+----
+
+.. _enum_WebRTCPeerConnection_GatheringState:
+
+.. _class_WebRTCPeerConnection_constant_GATHERING_STATE_NEW:
+
+.. _class_WebRTCPeerConnection_constant_GATHERING_STATE_GATHERING:
+
+.. _class_WebRTCPeerConnection_constant_GATHERING_STATE_COMPLETE:
+
+enum **GatheringState**:
+
+- **GATHERING_STATE_NEW** = **0** --- The peer connection was just created and hasn't done any networking yet.
+
+- **GATHERING_STATE_GATHERING** = **1** --- The ICE agent is in the process of gathering candidates for the connection.
+
+- **GATHERING_STATE_COMPLETE** = **2** --- The ICE agent has finished gathering candidates. If something happens that requires collecting new candidates, such as a new interface being added or the addition of a new ICE server, the state will revert to gathering to gather those candidates.
+
+----
+
+.. _enum_WebRTCPeerConnection_SignalingState:
+
+.. _class_WebRTCPeerConnection_constant_SIGNALING_STATE_STABLE:
+
+.. _class_WebRTCPeerConnection_constant_SIGNALING_STATE_HAVE_LOCAL_OFFER:
+
+.. _class_WebRTCPeerConnection_constant_SIGNALING_STATE_HAVE_REMOTE_OFFER:
+
+.. _class_WebRTCPeerConnection_constant_SIGNALING_STATE_HAVE_LOCAL_PRANSWER:
+
+.. _class_WebRTCPeerConnection_constant_SIGNALING_STATE_HAVE_REMOTE_PRANSWER:
+
+.. _class_WebRTCPeerConnection_constant_SIGNALING_STATE_CLOSED:
+
+enum **SignalingState**:
+
+- **SIGNALING_STATE_STABLE** = **0** --- There is no ongoing exchange of offer and answer underway. This may mean that the ``WebRTCPeerConnection`` is new (:ref:`STATE_NEW<class_WebRTCPeerConnection_constant_STATE_NEW>`) or that negotiation is complete and a connection has been established (:ref:`STATE_CONNECTED<class_WebRTCPeerConnection_constant_STATE_CONNECTED>`).
+
+- **SIGNALING_STATE_HAVE_LOCAL_OFFER** = **1** --- The local peer has called :ref:`set_local_description<class_WebRTCPeerConnection_method_set_local_description>`, passing in SDP representing an offer (usually created by calling :ref:`create_offer<class_WebRTCPeerConnection_method_create_offer>`), and the offer has been applied successfully.
+
+- **SIGNALING_STATE_HAVE_REMOTE_OFFER** = **2** --- The remote peer has created an offer and used the signaling server to deliver it to the local peer, which has set the offer as the remote description by calling :ref:`set_remote_description<class_WebRTCPeerConnection_method_set_remote_description>`.
+
+- **SIGNALING_STATE_HAVE_LOCAL_PRANSWER** = **3** --- The offer sent by the remote peer has been applied and an answer has been created and applied by calling :ref:`set_local_description<class_WebRTCPeerConnection_method_set_local_description>`. This provisional answer describes the supported media formats and so forth, but may not have a complete set of ICE candidates included. Further candidates will be delivered separately later.
+
+- **SIGNALING_STATE_HAVE_REMOTE_PRANSWER** = **4** --- A provisional answer has been received and successfully applied in response to an offer previously sent and established by calling :ref:`set_local_description<class_WebRTCPeerConnection_method_set_local_description>`.
+
+- **SIGNALING_STATE_CLOSED** = **5** --- The ``WebRTCPeerConnection`` has been closed.
+
 Method Descriptions
 -------------------
 
@@ -181,6 +233,22 @@ Returns the connection state. See :ref:`ConnectionState<enum_WebRTCPeerConnectio
 
 ----
 
+.. _class_WebRTCPeerConnection_method_get_gathering_state:
+
+- :ref:`GatheringState<enum_WebRTCPeerConnection_GatheringState>` **get_gathering_state** **(** **)** |const|
+
+Returns the ICE :ref:`GatheringState<enum_WebRTCPeerConnection_GatheringState>` of the connection. This lets you detect, for example, when collection of ICE candidates has finished.
+
+----
+
+.. _class_WebRTCPeerConnection_method_get_signaling_state:
+
+- :ref:`SignalingState<enum_WebRTCPeerConnection_SignalingState>` **get_signaling_state** **(** **)** |const|
+
+Returns the :ref:`SignalingState<enum_WebRTCPeerConnection_SignalingState>` on the local end of the connection while connecting or reconnecting to another peer.
+
+----
+
 .. _class_WebRTCPeerConnection_method_initialize:
 
 - :ref:`Error<enum_@GlobalScope_Error>` **initialize** **(** :ref:`Dictionary<class_Dictionary>` configuration={} **)**

+ 16 - 0
classes/class_webrtcpeerconnectionextension.rst

@@ -28,6 +28,10 @@ Methods
 +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`ConnectionState<enum_WebRTCPeerConnection_ConnectionState>` | :ref:`_get_connection_state<class_WebRTCPeerConnectionExtension_method__get_connection_state>` **(** **)** |virtual| |const|                                                                                                               |
 +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`GatheringState<enum_WebRTCPeerConnection_GatheringState>`   | :ref:`_get_gathering_state<class_WebRTCPeerConnectionExtension_method__get_gathering_state>` **(** **)** |virtual| |const|                                                                                                                 |
++-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| :ref:`SignalingState<enum_WebRTCPeerConnection_SignalingState>`   | :ref:`_get_signaling_state<class_WebRTCPeerConnectionExtension_method__get_signaling_state>` **(** **)** |virtual| |const|                                                                                                                 |
++-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Error<enum_@GlobalScope_Error>`                             | :ref:`_initialize<class_WebRTCPeerConnectionExtension_method__initialize>` **(** :ref:`Dictionary<class_Dictionary>` p_config **)** |virtual|                                                                                              |
 +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 | :ref:`Error<enum_@GlobalScope_Error>`                             | :ref:`_poll<class_WebRTCPeerConnectionExtension_method__poll>` **(** **)** |virtual|                                                                                                                                                       |
@@ -70,6 +74,18 @@ Method Descriptions
 
 ----
 
+.. _class_WebRTCPeerConnectionExtension_method__get_gathering_state:
+
+- :ref:`GatheringState<enum_WebRTCPeerConnection_GatheringState>` **_get_gathering_state** **(** **)** |virtual| |const|
+
+----
+
+.. _class_WebRTCPeerConnectionExtension_method__get_signaling_state:
+
+- :ref:`SignalingState<enum_WebRTCPeerConnection_SignalingState>` **_get_signaling_state** **(** **)** |virtual| |const|
+
+----
+
 .. _class_WebRTCPeerConnectionExtension_method__initialize:
 
 - :ref:`Error<enum_@GlobalScope_Error>` **_initialize** **(** :ref:`Dictionary<class_Dictionary>` p_config **)** |virtual|

+ 2 - 2
classes/class_xrinterface.rst

@@ -320,9 +320,9 @@ Call this to find out if a given play area mode is supported by this interface.
 
 Triggers a haptic pulse on a device associated with this interface.
 
-``action_name`` is the name of the action for this pulse.
+\ ``action_name`` is the name of the action for this pulse.
 
-``tracker_name`` is optional and can be used to direct the pulse to a specific device provided that device is bound to this haptic.
+\ ``tracker_name`` is optional and can be used to direct the pulse to a specific device provided that device is bound to this haptic.
 
 ----
 

+ 1 - 1
classes/class_xrnode3d.rst

@@ -113,7 +113,7 @@ Returns the :ref:`XRPose<class_XRPose>` containing the current state of the pose
 
 Triggers a haptic pulse on a device associated with this interface.
 
-``action_name`` is the name of the action for this pulse.
+\ ``action_name`` is the name of the action for this pulse.
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`