ソースを参照

classref: Sync with current master branch (13a0d6e)

Godot Organization 1 年間 前
コミット
dce008340a
36 ファイル変更1271 行追加197 行削除
  1. 1 1
      classes/[email protected]
  2. 1 1
      classes/[email protected]
  3. 1 3
      classes/class_animationnodestatemachine.rst
  4. 2 0
      classes/class_area2d.rst
  5. 2 0
      classes/class_area3d.rst
  6. 1 1
      classes/class_csgpolygon3d.rst
  7. 14 0
      classes/class_dictionary.rst
  8. 54 0
      classes/class_displayserver.rst
  9. 74 0
      classes/class_editorsettings.rst
  10. 48 3
      classes/class_graphedit.rst
  11. 25 9
      classes/class_label.rst
  12. 1 1
      classes/class_multiplayerpeer.rst
  13. 1 1
      classes/class_multiplayerpeerextension.rst
  14. 252 0
      classes/class_navigationserver2d.rst
  15. 280 0
      classes/class_navigationserver3d.rst
  16. 32 0
      classes/class_particleprocessmaterial.rst
  17. 46 13
      classes/class_popupmenu.rst
  18. 135 13
      classes/class_renderingdevice.rst
  19. 1 1
      classes/class_renderingserver.rst
  20. 3 1
      classes/class_resource.rst
  21. 5 3
      classes/class_resourceloader.rst
  22. 1 1
      classes/class_richtexteffect.rst
  23. 26 1
      classes/class_richtextlabel.rst
  24. 35 0
      classes/class_script.rst
  25. 16 0
      classes/class_scriptlanguageextension.rst
  26. 0 2
      classes/class_skeleton3d.rst
  27. 1 1
      classes/class_slider.rst
  28. 3 3
      classes/class_sprite2d.rst
  29. 3 3
      classes/class_sprite3d.rst
  30. 7 7
      classes/class_textureprogressbar.rst
  31. 2 2
      classes/class_tilesetatlassource.rst
  32. 178 122
      classes/class_tree.rst
  33. 17 1
      classes/class_viewport.rst
  34. 1 1
      classes/class_webrtcpeerconnection.rst
  35. 1 1
      classes/class_xrinterface.rst
  36. 1 1
      classes/class_xrinterfaceextension.rst

+ 1 - 1
classes/[email protected]

@@ -992,7 +992,7 @@ Returns the length of the given Variant ``var``. The length can be the character
 
 
 :ref:`Resource<class_Resource>` **load** **(** :ref:`String<class_String>` path **)**
 :ref:`Resource<class_Resource>` **load** **(** :ref:`String<class_String>` path **)**
 
 
-Returns a :ref:`Resource<class_Resource>` from the filesystem located at the absolute ``path``. Unless it's already referenced elsewhere (such as in another script or in the scene), the resource is loaded from disk on function call, which might cause a slight delay, especially when loading large scenes. To avoid unnecessary delays when loading something multiple times, either store the resource in a variable or use :ref:`preload<class_@GDScript_method_preload>`.
+Returns a :ref:`Resource<class_Resource>` from the filesystem located at the absolute ``path``. Unless it's already referenced elsewhere (such as in another script or in the scene), the resource is loaded from disk on function call, which might cause a slight delay, especially when loading large scenes. To avoid unnecessary delays when loading something multiple times, either store the resource in a variable or use :ref:`preload<class_@GDScript_method_preload>`. This method is equivalent of using :ref:`ResourceLoader.load<class_ResourceLoader_method_load>` with :ref:`ResourceLoader.CACHE_MODE_REUSE<class_ResourceLoader_constant_CACHE_MODE_REUSE>`.
 
 
 \ **Note:** Resource paths can be obtained by right-clicking on a resource in the FileSystem dock and choosing "Copy Path", or by dragging the file from the FileSystem dock into the current script.
 \ **Note:** Resource paths can be obtained by right-clicking on a resource in the FileSystem dock and choosing "Copy Path", or by dragging the file from the FileSystem dock into the current script.
 
 

+ 1 - 1
classes/[email protected]

@@ -7225,7 +7225,7 @@ Converts the given ``variant`` to the given ``type``, using the :ref:`Variant.Ty
 
 
 If the type conversion cannot be done, this method will return the default value for that type, for example converting :ref:`Rect2<class_Rect2>` to :ref:`Vector2<class_Vector2>` will always return :ref:`Vector2.ZERO<class_Vector2_constant_ZERO>`. This method will never show error messages as long as ``type`` is a valid Variant type.
 If the type conversion cannot be done, this method will return the default value for that type, for example converting :ref:`Rect2<class_Rect2>` to :ref:`Vector2<class_Vector2>` will always return :ref:`Vector2.ZERO<class_Vector2_constant_ZERO>`. This method will never show error messages as long as ``type`` is a valid Variant type.
 
 
-The returned value is a :ref:`Variant<class_Variant>`, but the data inside and the :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` will be the same as the requested type.
+The returned value is a :ref:`Variant<class_Variant>`, but the data inside and its type will be the same as the requested type.
 
 
 ::
 ::
 
 

+ 1 - 3
classes/class_animationnodestatemachine.rst

@@ -413,9 +413,7 @@ Renames the given animation node.
 
 
 void **replace_node** **(** :ref:`StringName<class_StringName>` name, :ref:`AnimationNode<class_AnimationNode>` node **)**
 void **replace_node** **(** :ref:`StringName<class_StringName>` name, :ref:`AnimationNode<class_AnimationNode>` node **)**
 
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Replaces the given animation node with a new animation node.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 2 - 0
classes/class_area2d.rst

@@ -23,6 +23,8 @@ Description
 
 
 This node can also locally alter or override physics parameters (gravity, damping) and route audio to custom audio buses.
 This node can also locally alter or override physics parameters (gravity, damping) and route audio to custom audio buses.
 
 
+\ **Note:** Areas and bodies created with :ref:`PhysicsServer2D<class_PhysicsServer2D>` might not interact as expected with **Area2D**\ s, and might not emit signals or track objects correctly.
+
 .. rst-class:: classref-introduction-group
 .. rst-class:: classref-introduction-group
 
 
 Tutorials
 Tutorials

+ 2 - 0
classes/class_area3d.rst

@@ -23,6 +23,8 @@ Description
 
 
 This node can also locally alter or override physics parameters (gravity, damping) and route audio to custom audio buses.
 This node can also locally alter or override physics parameters (gravity, damping) and route audio to custom audio buses.
 
 
+\ **Note:** Areas and bodies created with :ref:`PhysicsServer3D<class_PhysicsServer3D>` might not interact as expected with **Area3D**\ s, and might not emit signals or track objects correctly.
+
 \ **Warning:** Using a :ref:`ConcavePolygonShape3D<class_ConcavePolygonShape3D>` inside a :ref:`CollisionShape3D<class_CollisionShape3D>` child of this node (created e.g. by using the **Create Trimesh Collision Sibling** option in the **Mesh** menu that appears when selecting a :ref:`MeshInstance3D<class_MeshInstance3D>` node) may give unexpected results, since this collision shape is hollow. If this is not desired, it has to be split into multiple :ref:`ConvexPolygonShape3D<class_ConvexPolygonShape3D>`\ s or primitive shapes like :ref:`BoxShape3D<class_BoxShape3D>`, or in some cases it may be replaceable by a :ref:`CollisionPolygon3D<class_CollisionPolygon3D>`.
 \ **Warning:** Using a :ref:`ConcavePolygonShape3D<class_ConcavePolygonShape3D>` inside a :ref:`CollisionShape3D<class_CollisionShape3D>` child of this node (created e.g. by using the **Create Trimesh Collision Sibling** option in the **Mesh** menu that appears when selecting a :ref:`MeshInstance3D<class_MeshInstance3D>` node) may give unexpected results, since this collision shape is hollow. If this is not desired, it has to be split into multiple :ref:`ConvexPolygonShape3D<class_ConvexPolygonShape3D>`\ s or primitive shapes like :ref:`BoxShape3D<class_BoxShape3D>`, or in some cases it may be replaceable by a :ref:`CollisionPolygon3D<class_CollisionPolygon3D>`.
 
 
 .. rst-class:: classref-introduction-group
 .. rst-class:: classref-introduction-group

+ 1 - 1
classes/class_csgpolygon3d.rst

@@ -348,7 +348,7 @@ When :ref:`mode<class_CSGPolygon3D_property_mode>` is :ref:`MODE_PATH<class_CSGP
 - void **set_path_rotation** **(** :ref:`PathRotation<enum_CSGPolygon3D_PathRotation>` value **)**
 - void **set_path_rotation** **(** :ref:`PathRotation<enum_CSGPolygon3D_PathRotation>` value **)**
 - :ref:`PathRotation<enum_CSGPolygon3D_PathRotation>` **get_path_rotation** **(** **)**
 - :ref:`PathRotation<enum_CSGPolygon3D_PathRotation>` **get_path_rotation** **(** **)**
 
 
-When :ref:`mode<class_CSGPolygon3D_property_mode>` is :ref:`MODE_PATH<class_CSGPolygon3D_constant_MODE_PATH>`, the :ref:`PathRotation<enum_CSGPolygon3D_PathRotation>` method used to rotate the :ref:`polygon<class_CSGPolygon3D_property_polygon>` as it is extruded.
+When :ref:`mode<class_CSGPolygon3D_property_mode>` is :ref:`MODE_PATH<class_CSGPolygon3D_constant_MODE_PATH>`, the path rotation method used to rotate the :ref:`polygon<class_CSGPolygon3D_property_polygon>` as it is extruded.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 14 - 0
classes/class_dictionary.rst

@@ -237,6 +237,8 @@ Methods
    +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Variant<class_Variant>`       | :ref:`get<class_Dictionary_method_get>` **(** :ref:`Variant<class_Variant>` key, :ref:`Variant<class_Variant>` default=null **)** |const|       |
    | :ref:`Variant<class_Variant>`       | :ref:`get<class_Dictionary_method_get>` **(** :ref:`Variant<class_Variant>` key, :ref:`Variant<class_Variant>` default=null **)** |const|       |
    +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Variant<class_Variant>`       | :ref:`get_or_add<class_Dictionary_method_get_or_add>` **(** :ref:`Variant<class_Variant>` key, :ref:`Variant<class_Variant>` default=null **)** |
+   +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`has<class_Dictionary_method_has>` **(** :ref:`Variant<class_Variant>` key **)** |const|                                                   |
    | :ref:`bool<class_bool>`             | :ref:`has<class_Dictionary_method_has>` **(** :ref:`Variant<class_Variant>` key **)** |const|                                                   |
    +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`has_all<class_Dictionary_method_has_all>` **(** :ref:`Array<class_Array>` keys **)** |const|                                              |
    | :ref:`bool<class_bool>`             | :ref:`has_all<class_Dictionary_method_has_all>` **(** :ref:`Array<class_Array>` keys **)** |const|                                              |
@@ -374,6 +376,18 @@ Returns the corresponding value for the given ``key`` in the dictionary. If the
 
 
 ----
 ----
 
 
+.. _class_Dictionary_method_get_or_add:
+
+.. rst-class:: classref-method
+
+:ref:`Variant<class_Variant>` **get_or_add** **(** :ref:`Variant<class_Variant>` key, :ref:`Variant<class_Variant>` default=null **)**
+
+Gets a value and ensures the key is set. If the ``key`` exists in the dictionary, this behaves like :ref:`get<class_Dictionary_method_get>`. Otherwise, the ``default`` value is inserted into the dictionary and returned.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Dictionary_method_has:
 .. _class_Dictionary_method_has:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 54 - 0
classes/class_displayserver.rst

@@ -132,6 +132,8 @@ Methods
    +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>`                                             | :ref:`global_menu_get_item_tooltip<class_DisplayServer_method_global_menu_get_item_tooltip>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                     |
    | :ref:`String<class_String>`                                             | :ref:`global_menu_get_item_tooltip<class_DisplayServer_method_global_menu_get_item_tooltip>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                     |
    +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary<class_Dictionary>`                                     | :ref:`global_menu_get_system_menu_roots<class_DisplayServer_method_global_menu_get_system_menu_roots>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                            |
+   +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                                 | :ref:`global_menu_is_item_checkable<class_DisplayServer_method_global_menu_is_item_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                   |
    | :ref:`bool<class_bool>`                                                 | :ref:`global_menu_is_item_checkable<class_DisplayServer_method_global_menu_is_item_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                   |
    +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                                 | :ref:`global_menu_is_item_checked<class_DisplayServer_method_global_menu_is_item_checked>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                       |
    | :ref:`bool<class_bool>`                                                 | :ref:`global_menu_is_item_checked<class_DisplayServer_method_global_menu_is_item_checked>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                       |
@@ -1791,6 +1793,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1818,6 +1823,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1845,6 +1853,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1874,6 +1885,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1901,6 +1915,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1932,6 +1949,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1961,6 +1981,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1984,6 +2007,9 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2007,6 +2033,9 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2028,6 +2057,9 @@ Removes all items from the global menu with ID ``menu_root``.
 
 
     "_main" - Main menu (macOS).
     "_main" - Main menu (macOS).
     "_dock" - Dock popup menu (macOS).
     "_dock" - Dock popup menu (macOS).
+    "_apple" - Apple menu (macOS, custom items added before "Services").
+    "_window" - Window menu (macOS, custom items added after "Bring All to Front").
+    "_help" - Help menu (macOS).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2229,6 +2261,20 @@ Returns the tooltip associated with the specified index ``idx``.
 
 
 ----
 ----
 
 
+.. _class_DisplayServer_method_global_menu_get_system_menu_roots:
+
+.. rst-class:: classref-method
+
+:ref:`Dictionary<class_Dictionary>` **global_menu_get_system_menu_roots** **(** **)** |const|
+
+Returns Dictionary of supported system menu IDs and names.
+
+\ **Note:** This method is implemented only on macOS.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_DisplayServer_method_global_menu_is_item_checkable:
 .. _class_DisplayServer_method_global_menu_is_item_checkable:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -3105,6 +3151,14 @@ void **tablet_set_current_driver** **(** :ref:`String<class_String>` name **)**
 
 
 Set active tablet driver name.
 Set active tablet driver name.
 
 
+Supported drivers:
+
+- ``winink``: Windows Ink API, default (Windows 8.1+ required).
+
+- ``wintab``: Wacom Wintab API (compatible device driver required).
+
+- ``dummy``: Dummy driver, tablet input is disabled.
+
 \ **Note:** This method is implemented only on Windows.
 \ **Note:** This method is implemented only on Windows.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator

+ 74 - 0
classes/class_editorsettings.rst

@@ -61,6 +61,8 @@ Properties
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`       | :ref:`debugger/auto_switch_to_remote_scene_tree<class_EditorSettings_property_debugger/auto_switch_to_remote_scene_tree>`                                                           |
    | :ref:`bool<class_bool>`       | :ref:`debugger/auto_switch_to_remote_scene_tree<class_EditorSettings_property_debugger/auto_switch_to_remote_scene_tree>`                                                           |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`       | :ref:`debugger/profile_native_calls<class_EditorSettings_property_debugger/profile_native_calls>`                                                                                   |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`         | :ref:`debugger/profiler_frame_history_size<class_EditorSettings_property_debugger/profiler_frame_history_size>`                                                                     |
    | :ref:`int<class_int>`         | :ref:`debugger/profiler_frame_history_size<class_EditorSettings_property_debugger/profiler_frame_history_size>`                                                                     |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`         | :ref:`debugger/profiler_frame_max_functions<class_EditorSettings_property_debugger/profiler_frame_max_functions>`                                                                   |
    | :ref:`int<class_int>`         | :ref:`debugger/profiler_frame_max_functions<class_EditorSettings_property_debugger/profiler_frame_max_functions>`                                                                   |
@@ -231,6 +233,10 @@ Properties
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>`   | :ref:`filesystem/external_programs/raster_image_editor<class_EditorSettings_property_filesystem/external_programs/raster_image_editor>`                                             |
    | :ref:`String<class_String>`   | :ref:`filesystem/external_programs/raster_image_editor<class_EditorSettings_property_filesystem/external_programs/raster_image_editor>`                                             |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`   | :ref:`filesystem/external_programs/terminal_emulator<class_EditorSettings_property_filesystem/external_programs/terminal_emulator>`                                                 |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`   | :ref:`filesystem/external_programs/terminal_emulator_flags<class_EditorSettings_property_filesystem/external_programs/terminal_emulator_flags>`                                     |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>`   | :ref:`filesystem/external_programs/vector_image_editor<class_EditorSettings_property_filesystem/external_programs/vector_image_editor>`                                             |
    | :ref:`String<class_String>`   | :ref:`filesystem/external_programs/vector_image_editor<class_EditorSettings_property_filesystem/external_programs/vector_image_editor>`                                             |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`         | :ref:`filesystem/file_dialog/display_mode<class_EditorSettings_property_filesystem/file_dialog/display_mode>`                                                                       |
    | :ref:`int<class_int>`         | :ref:`filesystem/file_dialog/display_mode<class_EditorSettings_property_filesystem/file_dialog/display_mode>`                                                                       |
@@ -305,6 +311,8 @@ Properties
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`       | :ref:`interface/editor/single_window_mode<class_EditorSettings_property_interface/editor/single_window_mode>`                                                                       |
    | :ref:`bool<class_bool>`       | :ref:`interface/editor/single_window_mode<class_EditorSettings_property_interface/editor/single_window_mode>`                                                                       |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`         | :ref:`interface/editor/ui_layout_direction<class_EditorSettings_property_interface/editor/ui_layout_direction>`                                                                     |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`     | :ref:`interface/editor/unfocused_low_processor_mode_sleep_usec<class_EditorSettings_property_interface/editor/unfocused_low_processor_mode_sleep_usec>`                             |
    | :ref:`float<class_float>`     | :ref:`interface/editor/unfocused_low_processor_mode_sleep_usec<class_EditorSettings_property_interface/editor/unfocused_low_processor_mode_sleep_usec>`                             |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`       | :ref:`interface/editor/use_embedded_menu<class_EditorSettings_property_interface/editor/use_embedded_menu>`                                                                         |
    | :ref:`bool<class_bool>`       | :ref:`interface/editor/use_embedded_menu<class_EditorSettings_property_interface/editor/use_embedded_menu>`                                                                         |
@@ -669,6 +677,18 @@ If ``true``, automatically switches to the **Remote** scene tree when running th
 
 
 ----
 ----
 
 
+.. _class_EditorSettings_property_debugger/profile_native_calls:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debugger/profile_native_calls**
+
+If ``true``, enables collection of profiling data from non-GDScript Godot functions, such as engine class methods. Enabling this slows execution while profiling further.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorSettings_property_debugger/profiler_frame_history_size:
 .. _class_EditorSettings_property_debugger/profiler_frame_history_size:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -1735,6 +1755,48 @@ The program that opens raster image files when clicking "Open in External Progra
 
 
 ----
 ----
 
 
+.. _class_EditorSettings_property_filesystem/external_programs/terminal_emulator:
+
+.. rst-class:: classref-property
+
+:ref:`String<class_String>` **filesystem/external_programs/terminal_emulator**
+
+The terminal emulator program to use when using **Open in Terminal** context menu action in the FileSystem dock. You can enter an absolute path to a program binary, or a path to a program that is present in the ``PATH`` environment variable.
+
+If left empty, Godot will use the default terminal emulator for the system:
+
+- **Windows:** PowerShell
+
+- **macOS:** Terminal.app
+
+- **Linux:** The first terminal found on the system in this order: gnome-terminal, konsole, xfce4-terminal, lxterminal, kitty, alacritty, urxvt, xterm.
+
+To use Command Prompt (cmd) instead of PowerShell on Windows, enter ``cmd`` in this field and the correct flags will automatically be used.
+
+On macOS, make sure to point to the actual program binary located within the ``Programs/MacOS`` folder of the .app bundle, rather than the .app bundle directory.
+
+If specifying a custom terminal emulator, you may need to override :ref:`filesystem/external_programs/terminal_emulator_flags<class_EditorSettings_property_filesystem/external_programs/terminal_emulator_flags>` so it opens in the correct folder.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_EditorSettings_property_filesystem/external_programs/terminal_emulator_flags:
+
+.. rst-class:: classref-property
+
+:ref:`String<class_String>` **filesystem/external_programs/terminal_emulator_flags**
+
+The command-line arguments to pass to the terminal emulator that is run when using **Open in Terminal** context menu action in the FileSystem dock. See also :ref:`filesystem/external_programs/terminal_emulator<class_EditorSettings_property_filesystem/external_programs/terminal_emulator>`.
+
+If left empty, the default flags are ``{directory}``, which is replaced by the absolute path to the directory that is being opened in the terminal.
+
+\ **Note:** If the terminal emulator is set to PowerShell, cmd, or Konsole, Godot will automatically prepend arguments to this list, as these terminals require nonstandard arguments to open in the correct folder.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorSettings_property_filesystem/external_programs/vector_image_editor:
 .. _class_EditorSettings_property_filesystem/external_programs/vector_image_editor:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -2229,6 +2291,18 @@ If ``true``, embed modal windows such as docks inside the main editor window. Wh
 
 
 ----
 ----
 
 
+.. _class_EditorSettings_property_interface/editor/ui_layout_direction:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **interface/editor/ui_layout_direction**
+
+Editor UI default layout direction.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorSettings_property_interface/editor/unfocused_low_processor_mode_sleep_usec:
 .. _class_EditorSettings_property_interface/editor/unfocused_low_processor_mode_sleep_usec:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property

+ 48 - 3
classes/class_graphedit.rst

@@ -44,6 +44,8 @@ Properties
    +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
    +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
    | :ref:`FocusMode<enum_Control_FocusMode>`           | focus_mode                                                                                 | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`)       |
    | :ref:`FocusMode<enum_Control_FocusMode>`           | focus_mode                                                                                 | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`)       |
    +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
    +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
+   | :ref:`GridPattern<enum_GraphEdit_GridPattern>`     | :ref:`grid_pattern<class_GraphEdit_property_grid_pattern>`                                 | ``0``                                                                     |
+   +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                            | :ref:`minimap_enabled<class_GraphEdit_property_minimap_enabled>`                           | ``true``                                                                  |
    | :ref:`bool<class_bool>`                            | :ref:`minimap_enabled<class_GraphEdit_property_minimap_enabled>`                           | ``true``                                                                  |
    +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
    +----------------------------------------------------+--------------------------------------------------------------------------------------------+---------------------------------------------------------------------------+
    | :ref:`float<class_float>`                          | :ref:`minimap_opacity<class_GraphEdit_property_minimap_opacity>`                           | ``0.65``                                                                  |
    | :ref:`float<class_float>`                          | :ref:`minimap_opacity<class_GraphEdit_property_minimap_opacity>`                           | ``0.65``                                                                  |
@@ -409,6 +411,32 @@ enum **PanningScheme**:
 
 
 :kbd:`Mouse Wheel` will move the view, :kbd:`Ctrl + Mouse Wheel` will zoom.
 :kbd:`Mouse Wheel` will move the view, :kbd:`Ctrl + Mouse Wheel` will zoom.
 
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _enum_GraphEdit_GridPattern:
+
+.. rst-class:: classref-enumeration
+
+enum **GridPattern**:
+
+.. _class_GraphEdit_constant_GRID_PATTERN_LINES:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`GridPattern<enum_GraphEdit_GridPattern>` **GRID_PATTERN_LINES** = ``0``
+
+Draw the grid using solid lines.
+
+.. _class_GraphEdit_constant_GRID_PATTERN_DOTS:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`GridPattern<enum_GraphEdit_GridPattern>` **GRID_PATTERN_DOTS** = ``1``
+
+Draw the grid using dots.
+
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
 ----
 ----
@@ -469,6 +497,23 @@ The thickness of the lines between the nodes.
 
 
 ----
 ----
 
 
+.. _class_GraphEdit_property_grid_pattern:
+
+.. rst-class:: classref-property
+
+:ref:`GridPattern<enum_GraphEdit_GridPattern>` **grid_pattern** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_grid_pattern** **(** :ref:`GridPattern<enum_GraphEdit_GridPattern>` value **)**
+- :ref:`GridPattern<enum_GraphEdit_GridPattern>` **get_grid_pattern** **(** **)**
+
+The pattern used for drawing the grid.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_GraphEdit_property_minimap_enabled:
 .. _class_GraphEdit_property_minimap_enabled:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -1010,7 +1055,7 @@ Returns the points which would make up a connection between ``from_node`` and ``
 
 
 :ref:`Dictionary[]<class_Dictionary>` **get_connection_list** **(** **)** |const|
 :ref:`Dictionary[]<class_Dictionary>` **get_connection_list** **(** **)** |const|
 
 
-Returns an Array containing the list of connections. A connection consists in a structure of the form ``{ from_port: 0, from: "GraphNode name 0", to_port: 1, to: "GraphNode name 1" }``.
+Returns an Array containing the list of connections. A connection consists in a structure of the form ``{ from_port: 0, from_node: "GraphNode name 0", to_port: 1, to_node: "GraphNode name 1" }``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1141,7 +1186,7 @@ Color of the connection's activity (see :ref:`set_connection_activity<class_Grap
 
 
 :ref:`Color<class_Color>` **grid_major** = ``Color(1, 1, 1, 0.2)``
 :ref:`Color<class_Color>` **grid_major** = ``Color(1, 1, 1, 0.2)``
 
 
-Color of major grid lines.
+Color of major grid lines/dots.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1153,7 +1198,7 @@ Color of major grid lines.
 
 
 :ref:`Color<class_Color>` **grid_minor** = ``Color(1, 1, 1, 0.05)``
 :ref:`Color<class_Color>` **grid_minor** = ``Color(1, 1, 1, 0.05)``
 
 
-Color of minor grid lines.
+Color of minor grid lines/dots.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 25 - 9
classes/class_label.rst

@@ -90,15 +90,17 @@ Methods
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +-----------------------+--------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>` | :ref:`get_line_count<class_Label_method_get_line_count>` **(** **)** |const|                                 |
-   +-----------------------+--------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>` | :ref:`get_line_height<class_Label_method_get_line_height>` **(** :ref:`int<class_int>` line=-1 **)** |const| |
-   +-----------------------+--------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>` | :ref:`get_total_character_count<class_Label_method_get_total_character_count>` **(** **)** |const|           |
-   +-----------------------+--------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>` | :ref:`get_visible_line_count<class_Label_method_get_visible_line_count>` **(** **)** |const|                 |
-   +-----------------------+--------------------------------------------------------------------------------------------------------------+
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Rect2<class_Rect2>` | :ref:`get_character_bounds<class_Label_method_get_character_bounds>` **(** :ref:`int<class_int>` pos **)** |const| |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`     | :ref:`get_line_count<class_Label_method_get_line_count>` **(** **)** |const|                                       |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`     | :ref:`get_line_height<class_Label_method_get_line_height>` **(** :ref:`int<class_int>` line=-1 **)** |const|       |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`     | :ref:`get_total_character_count<class_Label_method_get_total_character_count>` **(** **)** |const|                 |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`     | :ref:`get_visible_line_count<class_Label_method_get_visible_line_count>` **(** **)** |const|                       |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------+
 
 
 .. rst-class:: classref-reftable-group
 .. rst-class:: classref-reftable-group
 
 
@@ -490,6 +492,18 @@ The fraction of characters to display, relative to the total number of character
 Method Descriptions
 Method Descriptions
 -------------------
 -------------------
 
 
+.. _class_Label_method_get_character_bounds:
+
+.. rst-class:: classref-method
+
+:ref:`Rect2<class_Rect2>` **get_character_bounds** **(** :ref:`int<class_int>` pos **)** |const|
+
+Returns the bounding rectangle of the character at position ``pos``. If the character is a non-visual character or ``pos`` is outside the valid range, an empty :ref:`Rect2<class_Rect2>` is returned. If the character is a part of a composite grapheme, the bounding rectangle of the whole grapheme is returned.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Label_method_get_line_count:
 .. _class_Label_method_get_line_count:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -605,6 +619,8 @@ Text outline size.
 
 
 \ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_Label_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
 \ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_Label_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
 
 
+\ **Note:** Using a value that is larger than half the font size is not recommended, as the font outline may fail to be fully closed in this case.
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----

+ 1 - 1
classes/class_multiplayerpeer.rst

@@ -344,7 +344,7 @@ Returns the channel over which the next available packet was received. See :ref:
 
 
 :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>` **get_packet_mode** **(** **)** |const|
 :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>` **get_packet_mode** **(** **)** |const|
 
 
-Returns the :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>` the remote peer used to send the next available packet. See :ref:`PacketPeer.get_available_packet_count<class_PacketPeer_method_get_available_packet_count>`.
+Returns the transfer mode the remote peer used to send the next available packet. See :ref:`PacketPeer.get_available_packet_count<class_PacketPeer_method_get_available_packet_count>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 1 - 1
classes/class_multiplayerpeerextension.rst

@@ -176,7 +176,7 @@ Called to get the channel over which the next available packet was received. See
 
 
 :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>` **_get_packet_mode** **(** **)** |virtual| |const|
 :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>` **_get_packet_mode** **(** **)** |virtual| |const|
 
 
-Called to get the :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>` the remote peer used to send the next available packet. See :ref:`MultiplayerPeer.get_packet_mode<class_MultiplayerPeer_method_get_packet_mode>`.
+Called to get the transfer mode the remote peer used to send the next available packet. See :ref:`MultiplayerPeer.get_packet_mode<class_MultiplayerPeer_method_get_packet_mode>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 252 - 0
classes/class_navigationserver2d.rst

@@ -57,10 +57,34 @@ Methods
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_avoidance_enabled<class_NavigationServer2D_method_agent_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                  |
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_avoidance_enabled<class_NavigationServer2D_method_agent_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                  |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`agent_get_avoidance_layers<class_NavigationServer2D_method_agent_get_avoidance_layers>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`agent_get_avoidance_mask<class_NavigationServer2D_method_agent_get_avoidance_mask>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_avoidance_priority<class_NavigationServer2D_method_agent_get_avoidance_priority>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                               | :ref:`agent_get_map<class_NavigationServer2D_method_agent_get_map>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                              |
    | :ref:`RID<class_RID>`                               | :ref:`agent_get_map<class_NavigationServer2D_method_agent_get_map>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                              |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`agent_get_max_neighbors<class_NavigationServer2D_method_agent_get_max_neighbors>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                          |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_max_speed<class_NavigationServer2D_method_agent_get_max_speed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_neighbor_distance<class_NavigationServer2D_method_agent_get_neighbor_distance>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_paused<class_NavigationServer2D_method_agent_get_paused>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                        |
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_paused<class_NavigationServer2D_method_agent_get_paused>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                        |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`agent_get_position<class_NavigationServer2D_method_agent_get_position>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_radius<class_NavigationServer2D_method_agent_get_radius>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_time_horizon_agents<class_NavigationServer2D_method_agent_get_time_horizon_agents>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                              |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_time_horizon_obstacles<class_NavigationServer2D_method_agent_get_time_horizon_obstacles>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                        |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`agent_get_velocity<class_NavigationServer2D_method_agent_get_velocity>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                    |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`agent_has_avoidance_callback<class_NavigationServer2D_method_agent_has_avoidance_callback>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_is_map_changed<class_NavigationServer2D_method_agent_is_map_changed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                |
    | :ref:`bool<class_bool>`                             | :ref:`agent_is_map_changed<class_NavigationServer2D_method_agent_is_map_changed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`agent_set_avoidance_callback<class_NavigationServer2D_method_agent_set_avoidance_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                              |
    | void                                                | :ref:`agent_set_avoidance_callback<class_NavigationServer2D_method_agent_set_avoidance_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                              |
@@ -187,10 +211,20 @@ Methods
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_avoidance_enabled<class_NavigationServer2D_method_obstacle_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                         |
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_avoidance_enabled<class_NavigationServer2D_method_obstacle_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                         |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`obstacle_get_avoidance_layers<class_NavigationServer2D_method_obstacle_get_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                               | :ref:`obstacle_get_map<class_NavigationServer2D_method_obstacle_get_map>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                                     |
    | :ref:`RID<class_RID>`                               | :ref:`obstacle_get_map<class_NavigationServer2D_method_obstacle_get_map>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                                     |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_paused<class_NavigationServer2D_method_obstacle_get_paused>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                               |
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_paused<class_NavigationServer2D_method_obstacle_get_paused>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                               |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`obstacle_get_position<class_NavigationServer2D_method_obstacle_get_position>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`obstacle_get_radius<class_NavigationServer2D_method_obstacle_get_radius>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                       | :ref:`obstacle_get_velocity<class_NavigationServer2D_method_obstacle_get_velocity>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedVector2Array<class_PackedVector2Array>` | :ref:`obstacle_get_vertices<class_NavigationServer2D_method_obstacle_get_vertices>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`obstacle_set_avoidance_enabled<class_NavigationServer2D_method_obstacle_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                |
    | void                                                | :ref:`obstacle_set_avoidance_enabled<class_NavigationServer2D_method_obstacle_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`obstacle_set_avoidance_layers<class_NavigationServer2D_method_obstacle_set_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle, :ref:`int<class_int>` layers **)**                                                                                                                                                                                                     |
    | void                                                | :ref:`obstacle_set_avoidance_layers<class_NavigationServer2D_method_obstacle_set_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle, :ref:`int<class_int>` layers **)**                                                                                                                                                                                                     |
@@ -231,6 +265,8 @@ Methods
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector2<class_Vector2>`                       | :ref:`region_get_random_point<class_NavigationServer2D_method_region_get_random_point>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` navigation_layers, :ref:`bool<class_bool>` uniformly **)** |const|                                                                                                                                                             |
    | :ref:`Vector2<class_Vector2>`                       | :ref:`region_get_random_point<class_NavigationServer2D_method_region_get_random_point>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` navigation_layers, :ref:`bool<class_bool>` uniformly **)** |const|                                                                                                                                                             |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Transform2D<class_Transform2D>`               | :ref:`region_get_transform<class_NavigationServer2D_method_region_get_transform>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                           | :ref:`region_get_travel_cost<class_NavigationServer2D_method_region_get_travel_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                           |
    | :ref:`float<class_float>`                           | :ref:`region_get_travel_cost<class_NavigationServer2D_method_region_get_travel_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                           |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`region_get_use_edge_connections<class_NavigationServer2D_method_region_get_use_edge_connections>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                         |
    | :ref:`bool<class_bool>`                             | :ref:`region_get_use_edge_connections<class_NavigationServer2D_method_region_get_use_edge_connections>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                         |
@@ -320,6 +356,42 @@ Return ``true`` if the specified ``agent`` uses avoidance.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer2D_method_agent_get_avoidance_layers:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **agent_get_avoidance_layers** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``avoidance_layers`` bitmask of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_avoidance_mask:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **agent_get_avoidance_mask** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``avoidance_mask`` bitmask of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_avoidance_priority:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_avoidance_priority** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``avoidance_priority`` of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_agent_get_map:
 .. _class_NavigationServer2D_method_agent_get_map:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -332,6 +404,42 @@ Returns the navigation map :ref:`RID<class_RID>` the requested ``agent`` is curr
 
 
 ----
 ----
 
 
+.. _class_NavigationServer2D_method_agent_get_max_neighbors:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **agent_get_max_neighbors** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the maximum number of other agents the specified ``agent`` takes into account in the navigation.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_max_speed:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_max_speed** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the maximum speed of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_neighbor_distance:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_neighbor_distance** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the maximum distance to other agents the specified ``agent`` takes into account in the navigation.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_agent_get_paused:
 .. _class_NavigationServer2D_method_agent_get_paused:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -344,6 +452,78 @@ Returns ``true`` if the specified ``agent`` is paused.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer2D_method_agent_get_position:
+
+.. rst-class:: classref-method
+
+:ref:`Vector2<class_Vector2>` **agent_get_position** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the position of the specified ``agent`` in world space.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_radius:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_radius** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the radius of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_time_horizon_agents:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_time_horizon_agents** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the minimal amount of time for which the specified ``agent``'s velocities that are computed by the simulation are safe with respect to other agents.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_time_horizon_obstacles:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_time_horizon_obstacles** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the minimal amount of time for which the specified ``agent``'s velocities that are computed by the simulation are safe with respect to static avoidance obstacles.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_get_velocity:
+
+.. rst-class:: classref-method
+
+:ref:`Vector2<class_Vector2>` **agent_get_velocity** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the velocity of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_agent_has_avoidance_callback:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **agent_has_avoidance_callback** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Return ``true`` if the specified ``agent`` has an avoidance callback.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_agent_is_map_changed:
 .. _class_NavigationServer2D_method_agent_is_map_changed:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1114,6 +1294,18 @@ Returns ``true`` if the provided ``obstacle`` has avoidance enabled.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer2D_method_obstacle_get_avoidance_layers:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **obstacle_get_avoidance_layers** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the ``avoidance_layers`` bitmask of the specified ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_obstacle_get_map:
 .. _class_NavigationServer2D_method_obstacle_get_map:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1138,6 +1330,54 @@ Returns ``true`` if the specified ``obstacle`` is paused.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer2D_method_obstacle_get_position:
+
+.. rst-class:: classref-method
+
+:ref:`Vector2<class_Vector2>` **obstacle_get_position** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the position of the specified ``obstacle`` in world space.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_obstacle_get_radius:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **obstacle_get_radius** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the radius of the specified dynamic ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_obstacle_get_velocity:
+
+.. rst-class:: classref-method
+
+:ref:`Vector2<class_Vector2>` **obstacle_get_velocity** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the velocity of the specified dynamic ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_method_obstacle_get_vertices:
+
+.. rst-class:: classref-method
+
+:ref:`PackedVector2Array<class_PackedVector2Array>` **obstacle_get_vertices** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the outline vertices for the specified ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_obstacle_set_avoidance_enabled:
 .. _class_NavigationServer2D_method_obstacle_set_avoidance_enabled:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1386,6 +1626,18 @@ If ``uniformly`` is ``false``, just a random polygon and face is picked (faster)
 
 
 ----
 ----
 
 
+.. _class_NavigationServer2D_method_region_get_transform:
+
+.. rst-class:: classref-method
+
+:ref:`Transform2D<class_Transform2D>` **region_get_transform** **(** :ref:`RID<class_RID>` region **)** |const|
+
+Returns the global transformation of this ``region``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer2D_method_region_get_travel_cost:
 .. _class_NavigationServer2D_method_region_get_travel_cost:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 280 - 0
classes/class_navigationserver3d.rst

@@ -57,12 +57,38 @@ Methods
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_avoidance_enabled<class_NavigationServer3D_method_agent_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                         |
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_avoidance_enabled<class_NavigationServer3D_method_agent_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                         |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`agent_get_avoidance_layers<class_NavigationServer3D_method_agent_get_avoidance_layers>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`agent_get_avoidance_mask<class_NavigationServer3D_method_agent_get_avoidance_mask>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_avoidance_priority<class_NavigationServer3D_method_agent_get_avoidance_priority>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                       |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_height<class_NavigationServer3D_method_agent_get_height>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                               | :ref:`agent_get_map<class_NavigationServer3D_method_agent_get_map>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                     |
    | :ref:`RID<class_RID>`                               | :ref:`agent_get_map<class_NavigationServer3D_method_agent_get_map>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                                     |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`agent_get_max_neighbors<class_NavigationServer3D_method_agent_get_max_neighbors>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                 |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_max_speed<class_NavigationServer3D_method_agent_get_max_speed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                         |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_neighbor_distance<class_NavigationServer3D_method_agent_get_neighbor_distance>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                         |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_paused<class_NavigationServer3D_method_agent_get_paused>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                               |
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_paused<class_NavigationServer3D_method_agent_get_paused>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                               |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector3<class_Vector3>`                       | :ref:`agent_get_position<class_NavigationServer3D_method_agent_get_position>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_radius<class_NavigationServer3D_method_agent_get_radius>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                               |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_time_horizon_agents<class_NavigationServer3D_method_agent_get_time_horizon_agents>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                     |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`agent_get_time_horizon_obstacles<class_NavigationServer3D_method_agent_get_time_horizon_obstacles>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                               |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_use_3d_avoidance<class_NavigationServer3D_method_agent_get_use_3d_avoidance>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                           |
    | :ref:`bool<class_bool>`                             | :ref:`agent_get_use_3d_avoidance<class_NavigationServer3D_method_agent_get_use_3d_avoidance>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                           |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector3<class_Vector3>`                       | :ref:`agent_get_velocity<class_NavigationServer3D_method_agent_get_velocity>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                           |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`agent_has_avoidance_callback<class_NavigationServer3D_method_agent_has_avoidance_callback>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                       |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`agent_is_map_changed<class_NavigationServer3D_method_agent_is_map_changed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                       |
    | :ref:`bool<class_bool>`                             | :ref:`agent_is_map_changed<class_NavigationServer3D_method_agent_is_map_changed>` **(** :ref:`RID<class_RID>` agent **)** |const|                                                                                                                                                                                                                                       |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`agent_set_avoidance_callback<class_NavigationServer3D_method_agent_set_avoidance_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                     |
    | void                                                | :ref:`agent_set_avoidance_callback<class_NavigationServer3D_method_agent_set_avoidance_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                     |
@@ -207,12 +233,24 @@ Methods
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_avoidance_enabled<class_NavigationServer3D_method_obstacle_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                |
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_avoidance_enabled<class_NavigationServer3D_method_obstacle_get_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`obstacle_get_avoidance_layers<class_NavigationServer3D_method_obstacle_get_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`obstacle_get_height<class_NavigationServer3D_method_obstacle_get_height>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                      |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                               | :ref:`obstacle_get_map<class_NavigationServer3D_method_obstacle_get_map>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                            |
    | :ref:`RID<class_RID>`                               | :ref:`obstacle_get_map<class_NavigationServer3D_method_obstacle_get_map>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                            |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_paused<class_NavigationServer3D_method_obstacle_get_paused>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                      |
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_paused<class_NavigationServer3D_method_obstacle_get_paused>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                      |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector3<class_Vector3>`                       | :ref:`obstacle_get_position<class_NavigationServer3D_method_obstacle_get_position>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                           | :ref:`obstacle_get_radius<class_NavigationServer3D_method_obstacle_get_radius>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                      |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_use_3d_avoidance<class_NavigationServer3D_method_obstacle_get_use_3d_avoidance>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                  |
    | :ref:`bool<class_bool>`                             | :ref:`obstacle_get_use_3d_avoidance<class_NavigationServer3D_method_obstacle_get_use_3d_avoidance>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                  |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector3<class_Vector3>`                       | :ref:`obstacle_get_velocity<class_NavigationServer3D_method_obstacle_get_velocity>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedVector3Array<class_PackedVector3Array>` | :ref:`obstacle_get_vertices<class_NavigationServer3D_method_obstacle_get_vertices>` **(** :ref:`RID<class_RID>` obstacle **)** |const|                                                                                                                                                                                                                                  |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`obstacle_set_avoidance_enabled<class_NavigationServer3D_method_obstacle_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                       |
    | void                                                | :ref:`obstacle_set_avoidance_enabled<class_NavigationServer3D_method_obstacle_set_avoidance_enabled>` **(** :ref:`RID<class_RID>` obstacle, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                       |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`obstacle_set_avoidance_layers<class_NavigationServer3D_method_obstacle_set_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle, :ref:`int<class_int>` layers **)**                                                                                                                                                                                            |
    | void                                                | :ref:`obstacle_set_avoidance_layers<class_NavigationServer3D_method_obstacle_set_avoidance_layers>` **(** :ref:`RID<class_RID>` obstacle, :ref:`int<class_int>` layers **)**                                                                                                                                                                                            |
@@ -259,6 +297,8 @@ Methods
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector3<class_Vector3>`                       | :ref:`region_get_random_point<class_NavigationServer3D_method_region_get_random_point>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` navigation_layers, :ref:`bool<class_bool>` uniformly **)** |const|                                                                                                                                                    |
    | :ref:`Vector3<class_Vector3>`                       | :ref:`region_get_random_point<class_NavigationServer3D_method_region_get_random_point>` **(** :ref:`RID<class_RID>` region, :ref:`int<class_int>` navigation_layers, :ref:`bool<class_bool>` uniformly **)** |const|                                                                                                                                                    |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Transform3D<class_Transform3D>`               | :ref:`region_get_transform<class_NavigationServer3D_method_region_get_transform>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                      |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                           | :ref:`region_get_travel_cost<class_NavigationServer3D_method_region_get_travel_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                  |
    | :ref:`float<class_float>`                           | :ref:`region_get_travel_cost<class_NavigationServer3D_method_region_get_travel_cost>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                                  |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`region_get_use_edge_connections<class_NavigationServer3D_method_region_get_use_edge_connections>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                |
    | :ref:`bool<class_bool>`                             | :ref:`region_get_use_edge_connections<class_NavigationServer3D_method_region_get_use_edge_connections>` **(** :ref:`RID<class_RID>` region **)** |const|                                                                                                                                                                                                                |
@@ -449,6 +489,54 @@ Returns ``true`` if the provided ``agent`` has avoidance enabled.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_agent_get_avoidance_layers:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **agent_get_avoidance_layers** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``avoidance_layers`` bitmask of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_avoidance_mask:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **agent_get_avoidance_mask** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``avoidance_mask`` bitmask of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_avoidance_priority:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_avoidance_priority** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``avoidance_priority`` of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_height:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_height** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the ``height`` of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_agent_get_map:
 .. _class_NavigationServer3D_method_agent_get_map:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -461,6 +549,42 @@ Returns the navigation map :ref:`RID<class_RID>` the requested ``agent`` is curr
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_agent_get_max_neighbors:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **agent_get_max_neighbors** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the maximum number of other agents the specified ``agent`` takes into account in the navigation.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_max_speed:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_max_speed** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the maximum speed of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_neighbor_distance:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_neighbor_distance** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the maximum distance to other agents the specified ``agent`` takes into account in the navigation.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_agent_get_paused:
 .. _class_NavigationServer3D_method_agent_get_paused:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -473,6 +597,54 @@ Returns ``true`` if the specified ``agent`` is paused.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_agent_get_position:
+
+.. rst-class:: classref-method
+
+:ref:`Vector3<class_Vector3>` **agent_get_position** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the position of the specified ``agent`` in world space.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_radius:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_radius** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the radius of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_time_horizon_agents:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_time_horizon_agents** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the minimal amount of time for which the specified ``agent``'s velocities that are computed by the simulation are safe with respect to other agents.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_get_time_horizon_obstacles:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **agent_get_time_horizon_obstacles** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the minimal amount of time for which the specified ``agent``'s velocities that are computed by the simulation are safe with respect to static avoidance obstacles.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_agent_get_use_3d_avoidance:
 .. _class_NavigationServer3D_method_agent_get_use_3d_avoidance:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -485,6 +657,30 @@ Returns ``true`` if the provided ``agent`` uses avoidance in 3D space Vector3(x,
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_agent_get_velocity:
+
+.. rst-class:: classref-method
+
+:ref:`Vector3<class_Vector3>` **agent_get_velocity** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Returns the velocity of the specified ``agent``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_agent_has_avoidance_callback:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **agent_has_avoidance_callback** **(** :ref:`RID<class_RID>` agent **)** |const|
+
+Return ``true`` if the specified ``agent`` has an avoidance callback.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_agent_is_map_changed:
 .. _class_NavigationServer3D_method_agent_is_map_changed:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1367,6 +1563,30 @@ Returns ``true`` if the provided ``obstacle`` has avoidance enabled.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_obstacle_get_avoidance_layers:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **obstacle_get_avoidance_layers** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the ``avoidance_layers`` bitmask of the specified ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_obstacle_get_height:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **obstacle_get_height** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the ``height`` of the specified ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_obstacle_get_map:
 .. _class_NavigationServer3D_method_obstacle_get_map:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1391,6 +1611,30 @@ Returns ``true`` if the specified ``obstacle`` is paused.
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_obstacle_get_position:
+
+.. rst-class:: classref-method
+
+:ref:`Vector3<class_Vector3>` **obstacle_get_position** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the position of the specified ``obstacle`` in world space.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_obstacle_get_radius:
+
+.. rst-class:: classref-method
+
+:ref:`float<class_float>` **obstacle_get_radius** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the radius of the specified dynamic ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_obstacle_get_use_3d_avoidance:
 .. _class_NavigationServer3D_method_obstacle_get_use_3d_avoidance:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1403,6 +1647,30 @@ Returns ``true`` if the provided ``obstacle`` uses avoidance in 3D space Vector3
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_obstacle_get_velocity:
+
+.. rst-class:: classref-method
+
+:ref:`Vector3<class_Vector3>` **obstacle_get_velocity** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the velocity of the specified dynamic ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer3D_method_obstacle_get_vertices:
+
+.. rst-class:: classref-method
+
+:ref:`PackedVector3Array<class_PackedVector3Array>` **obstacle_get_vertices** **(** :ref:`RID<class_RID>` obstacle **)** |const|
+
+Returns the outline vertices for the specified ``obstacle``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_obstacle_set_avoidance_enabled:
 .. _class_NavigationServer3D_method_obstacle_set_avoidance_enabled:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1689,6 +1957,18 @@ If ``uniformly`` is ``false``, just a random polygon and face is picked (faster)
 
 
 ----
 ----
 
 
+.. _class_NavigationServer3D_method_region_get_transform:
+
+.. rst-class:: classref-method
+
+:ref:`Transform3D<class_Transform3D>` **region_get_transform** **(** :ref:`RID<class_RID>` region **)** |const|
+
+Returns the global transformation of this ``region``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationServer3D_method_region_get_travel_cost:
 .. _class_NavigationServer3D_method_region_get_travel_cost:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 32 - 0
classes/class_particleprocessmaterial.rst

@@ -227,6 +227,8 @@ Methods
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
+   +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`     | :ref:`get_param<class_ParticleProcessMaterial_method_get_param>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param **)** |const|                                                         |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`         | :ref:`get_param_max<class_ParticleProcessMaterial_method_get_param_max>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param **)** |const|                                                 |
    | :ref:`float<class_float>`         | :ref:`get_param_max<class_ParticleProcessMaterial_method_get_param_max>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param **)** |const|                                                 |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -236,6 +238,8 @@ Methods
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`           | :ref:`get_particle_flag<class_ParticleProcessMaterial_method_get_particle_flag>` **(** :ref:`ParticleFlags<enum_ParticleProcessMaterial_ParticleFlags>` particle_flag **)** |const|                         |
    | :ref:`bool<class_bool>`           | :ref:`get_particle_flag<class_ParticleProcessMaterial_method_get_particle_flag>` **(** :ref:`ParticleFlags<enum_ParticleProcessMaterial_ParticleFlags>` particle_flag **)** |const|                         |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                              | :ref:`set_param<class_ParticleProcessMaterial_method_set_param>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param, :ref:`Vector2<class_Vector2>` value **)**                            |
+   +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                              | :ref:`set_param_max<class_ParticleProcessMaterial_method_set_param_max>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param, :ref:`float<class_float>` value **)**                        |
    | void                              | :ref:`set_param_max<class_ParticleProcessMaterial_method_set_param_max>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param, :ref:`float<class_float>` value **)**                        |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                              | :ref:`set_param_min<class_ParticleProcessMaterial_method_set_param_min>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param, :ref:`float<class_float>` value **)**                        |
    | void                              | :ref:`set_param_min<class_ParticleProcessMaterial_method_set_param_min>` **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param, :ref:`float<class_float>` value **)**                        |
@@ -2306,6 +2310,20 @@ A pivot point used to calculate radial and orbital velocity of particles.
 Method Descriptions
 Method Descriptions
 -------------------
 -------------------
 
 
+.. _class_ParticleProcessMaterial_method_get_param:
+
+.. rst-class:: classref-method
+
+:ref:`Vector2<class_Vector2>` **get_param** **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param **)** |const|
+
+Returns the minimum and maximum values of the given ``param`` as a vector.
+
+The ``x`` component of the returned vector corresponds to minimum and the ``y`` component corresponds to maximum.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ParticleProcessMaterial_method_get_param_max:
 .. _class_ParticleProcessMaterial_method_get_param_max:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -2354,6 +2372,20 @@ Returns ``true`` if the specified particle flag is enabled. See :ref:`ParticleFl
 
 
 ----
 ----
 
 
+.. _class_ParticleProcessMaterial_method_set_param:
+
+.. rst-class:: classref-method
+
+void **set_param** **(** :ref:`Parameter<enum_ParticleProcessMaterial_Parameter>` param, :ref:`Vector2<class_Vector2>` value **)**
+
+Sets the minimum and maximum values of the given ``param``.
+
+The ``x`` component of the argument vector corresponds to minimum and the ``y`` component corresponds to maximum.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ParticleProcessMaterial_method_set_param_max:
 .. _class_ParticleProcessMaterial_method_set_param_max:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 46 - 13
classes/class_popupmenu.rst

@@ -37,19 +37,21 @@ Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`   | :ref:`allow_search<class_PopupMenu_property_allow_search>`                                         | ``true``  |
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`   | :ref:`hide_on_checkable_item_selection<class_PopupMenu_property_hide_on_checkable_item_selection>` | ``true``  |
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`   | :ref:`hide_on_item_selection<class_PopupMenu_property_hide_on_item_selection>`                     | ``true``  |
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
-   | :ref:`bool<class_bool>`   | :ref:`hide_on_state_item_selection<class_PopupMenu_property_hide_on_state_item_selection>`         | ``false`` |
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
-   | :ref:`int<class_int>`     | :ref:`item_count<class_PopupMenu_property_item_count>`                                             | ``0``     |
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
-   | :ref:`float<class_float>` | :ref:`submenu_popup_delay<class_PopupMenu_property_submenu_popup_delay>`                           | ``0.3``   |
-   +---------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`     | :ref:`allow_search<class_PopupMenu_property_allow_search>`                                         | ``true``  |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`     | :ref:`hide_on_checkable_item_selection<class_PopupMenu_property_hide_on_checkable_item_selection>` | ``true``  |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`     | :ref:`hide_on_item_selection<class_PopupMenu_property_hide_on_item_selection>`                     | ``true``  |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`     | :ref:`hide_on_state_item_selection<class_PopupMenu_property_hide_on_state_item_selection>`         | ``false`` |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`int<class_int>`       | :ref:`item_count<class_PopupMenu_property_item_count>`                                             | ``0``     |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>`   | :ref:`submenu_popup_delay<class_PopupMenu_property_submenu_popup_delay>`                           | ``0.3``   |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`String<class_String>` | :ref:`system_menu_root<class_PopupMenu_property_system_menu_root>`                                 | ``""``    |
+   +-----------------------------+----------------------------------------------------------------------------------------------------+-----------+
 
 
 .. rst-class:: classref-reftable-group
 .. rst-class:: classref-reftable-group
 
 
@@ -136,6 +138,8 @@ Methods
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                          | :ref:`is_item_shortcut_disabled<class_PopupMenu_method_is_item_shortcut_disabled>` **(** :ref:`int<class_int>` index **)** |const|                                                                                                                                              |
    | :ref:`bool<class_bool>`                          | :ref:`is_item_shortcut_disabled<class_PopupMenu_method_is_item_shortcut_disabled>` **(** :ref:`int<class_int>` index **)** |const|                                                                                                                                              |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                          | :ref:`is_system_menu<class_PopupMenu_method_is_system_menu>` **(** **)** |const|                                                                                                                                                                                                |
+   +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                             | :ref:`remove_item<class_PopupMenu_method_remove_item>` **(** :ref:`int<class_int>` index **)**                                                                                                                                                                                  |
    | void                                             | :ref:`remove_item<class_PopupMenu_method_remove_item>` **(** :ref:`int<class_int>` index **)**                                                                                                                                                                                  |
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +--------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                             | :ref:`scroll_to_item<class_PopupMenu_method_scroll_to_item>` **(** :ref:`int<class_int>` index **)**                                                                                                                                                                            |
    | void                                             | :ref:`scroll_to_item<class_PopupMenu_method_scroll_to_item>` **(** :ref:`int<class_int>` index **)**                                                                                                                                                                            |
@@ -425,6 +429,23 @@ The number of items currently in the list.
 
 
 Sets the delay time in seconds for the submenu item to popup on mouse hovering. If the popup menu is added as a child of another (acting as a submenu), it will inherit the delay time of the parent menu item.
 Sets the delay time in seconds for the submenu item to popup on mouse hovering. If the popup menu is added as a child of another (acting as a submenu), it will inherit the delay time of the parent menu item.
 
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_PopupMenu_property_system_menu_root:
+
+.. rst-class:: classref-property
+
+:ref:`String<class_String>` **system_menu_root** = ``""``
+
+.. rst-class:: classref-property-setget
+
+- void **set_system_menu_root** **(** :ref:`String<class_String>` value **)**
+- :ref:`String<class_String>` **get_system_menu_root** **(** **)**
+
+If set to one of the values returned by :ref:`DisplayServer.global_menu_get_system_menu_roots<class_DisplayServer_method_global_menu_get_system_menu_roots>`, this **PopupMenu** is bound to the special system menu. Only one **PopupMenu** can be bound to each special menu at a time.
+
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
 ----
 ----
@@ -946,6 +967,18 @@ Returns ``true`` if the specified item's shortcut is disabled.
 
 
 ----
 ----
 
 
+.. _class_PopupMenu_method_is_system_menu:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_system_menu** **(** **)** |const|
+
+Returns ``true`` if the menu is bound to the special system menu.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_PopupMenu_method_remove_item:
 .. _class_PopupMenu_method_remove_item:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 135 - 13
classes/class_renderingdevice.rst

@@ -311,13 +311,133 @@ Represents the size of the :ref:`DeviceType<enum_RenderingDevice_DeviceType>` en
 
 
 enum **DriverResource**:
 enum **DriverResource**:
 
 
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_LOGICAL_DEVICE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_LOGICAL_DEVICE** = ``0``
+
+Specific device object based on a physical device.
+
+- Vulkan: Vulkan device driver resource (``VkDevice``). (``rid`` argument doesn't apply.)
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_PHYSICAL_DEVICE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_PHYSICAL_DEVICE** = ``1``
+
+Physical device the specific logical device is based on.
+
+- Vulkan: ``VkDevice``. (``rid`` argument doesn't apply.)
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_TOPMOST_OBJECT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_TOPMOST_OBJECT** = ``2``
+
+Top-most graphics API entry object.
+
+- Vulkan: ``VkInstance``. (``rid`` argument doesn't apply.)
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_COMMAND_QUEUE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_COMMAND_QUEUE** = ``3``
+
+The main graphics-compute command queue.
+
+- Vulkan: ``VkQueue``. (``rid`` argument doesn't apply.)
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_QUEUE_FAMILY:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_QUEUE_FAMILY** = ``4``
+
+The specific family the main queue belongs to.
+
+- Vulkan: the queue family index, an ``uint32_t``. (``rid`` argument doesn't apply.)
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_TEXTURE** = ``5``
+
+- Vulkan: ``VkImage``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE_VIEW:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_TEXTURE_VIEW** = ``6``
+
+The view of an owned or shared texture.
+
+- Vulkan: ``VkImageView``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE_DATA_FORMAT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_TEXTURE_DATA_FORMAT** = ``7``
+
+The native id of the data format of the texture.
+
+- Vulkan: ``VkFormat``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_SAMPLER:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_SAMPLER** = ``8``
+
+- Vulkan: ``VkSampler``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_UNIFORM_SET:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_UNIFORM_SET** = ``9``
+
+- Vulkan: ``VkDescriptorSet``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_BUFFER:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_BUFFER** = ``10``
+
+Buffer of any kind of (storage, vertex, etc.).
+
+- Vulkan: ``VkBuffer``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_COMPUTE_PIPELINE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_COMPUTE_PIPELINE** = ``11``
+
+- Vulkan: ``VkPipeline``.
+
+.. _class_RenderingDevice_constant_DRIVER_RESOURCE_RENDER_PIPELINE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_RENDER_PIPELINE** = ``12``
+
+- Vulkan: ``VkPipeline``.
+
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_DEVICE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_DEVICE:
 
 
 .. rst-class:: classref-enumeration-constant
 .. rst-class:: classref-enumeration-constant
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_DEVICE** = ``0``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_DEVICE** = ``0``
 
 
-Vulkan device driver resource. This is a "global" resource and ignores the RID passed in
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_LOGICAL_DEVICE<class_RenderingDevice_constant_DRIVER_RESOURCE_LOGICAL_DEVICE>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_PHYSICAL_DEVICE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_PHYSICAL_DEVICE:
 
 
@@ -325,7 +445,7 @@ Vulkan device driver resource. This is a "global" resource and ignores the RID p
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_PHYSICAL_DEVICE** = ``1``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_PHYSICAL_DEVICE** = ``1``
 
 
-Physical device (graphics card) driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_PHYSICAL_DEVICE<class_RenderingDevice_constant_DRIVER_RESOURCE_PHYSICAL_DEVICE>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_INSTANCE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_INSTANCE:
 
 
@@ -333,7 +453,7 @@ Physical device (graphics card) driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_INSTANCE** = ``2``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_INSTANCE** = ``2``
 
 
-Vulkan instance driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_TOPMOST_OBJECT<class_RenderingDevice_constant_DRIVER_RESOURCE_TOPMOST_OBJECT>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_QUEUE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_QUEUE:
 
 
@@ -341,7 +461,7 @@ Vulkan instance driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_QUEUE** = ``3``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_QUEUE** = ``3``
 
 
-Vulkan queue driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_COMMAND_QUEUE<class_RenderingDevice_constant_DRIVER_RESOURCE_COMMAND_QUEUE>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_QUEUE_FAMILY_INDEX:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_QUEUE_FAMILY_INDEX:
 
 
@@ -349,7 +469,7 @@ Vulkan queue driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_QUEUE_FAMILY_INDEX** = ``4``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_QUEUE_FAMILY_INDEX** = ``4``
 
 
-Vulkan queue family index driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_QUEUE_FAMILY<class_RenderingDevice_constant_DRIVER_RESOURCE_QUEUE_FAMILY>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_IMAGE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_IMAGE:
 
 
@@ -357,7 +477,7 @@ Vulkan queue family index driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_IMAGE** = ``5``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_IMAGE** = ``5``
 
 
-Vulkan image driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_TEXTURE<class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_IMAGE_VIEW:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_IMAGE_VIEW:
 
 
@@ -365,7 +485,7 @@ Vulkan image driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_IMAGE_VIEW** = ``6``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_IMAGE_VIEW** = ``6``
 
 
-Vulkan image view driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_TEXTURE_VIEW<class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE_VIEW>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_IMAGE_NATIVE_TEXTURE_FORMAT:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_IMAGE_NATIVE_TEXTURE_FORMAT:
 
 
@@ -373,7 +493,7 @@ Vulkan image view driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_IMAGE_NATIVE_TEXTURE_FORMAT** = ``7``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_IMAGE_NATIVE_TEXTURE_FORMAT** = ``7``
 
 
-Vulkan image native texture format driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_TEXTURE_DATA_FORMAT<class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE_DATA_FORMAT>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_SAMPLER:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_SAMPLER:
 
 
@@ -381,7 +501,7 @@ Vulkan image native texture format driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_SAMPLER** = ``8``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_SAMPLER** = ``8``
 
 
-Vulkan sampler driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_SAMPLER<class_RenderingDevice_constant_DRIVER_RESOURCE_SAMPLER>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_DESCRIPTOR_SET:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_DESCRIPTOR_SET:
 
 
@@ -389,7 +509,7 @@ Vulkan sampler driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_DESCRIPTOR_SET** = ``9``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_DESCRIPTOR_SET** = ``9``
 
 
-Vulkan `descriptor set <https://vkguide.dev/docs/chapter-4/descriptors/>`__ driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_UNIFORM_SET<class_RenderingDevice_constant_DRIVER_RESOURCE_UNIFORM_SET>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_BUFFER:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_BUFFER:
 
 
@@ -397,7 +517,7 @@ Vulkan `descriptor set <https://vkguide.dev/docs/chapter-4/descriptors/>`__ driv
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_BUFFER** = ``10``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_BUFFER** = ``10``
 
 
-Vulkan buffer driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_BUFFER<class_RenderingDevice_constant_DRIVER_RESOURCE_BUFFER>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_COMPUTE_PIPELINE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_COMPUTE_PIPELINE:
 
 
@@ -405,7 +525,7 @@ Vulkan buffer driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_COMPUTE_PIPELINE** = ``11``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_COMPUTE_PIPELINE** = ``11``
 
 
-Vulkan compute pipeline driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_COMPUTE_PIPELINE<class_RenderingDevice_constant_DRIVER_RESOURCE_COMPUTE_PIPELINE>`.
 
 
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_RENDER_PIPELINE:
 .. _class_RenderingDevice_constant_DRIVER_RESOURCE_VULKAN_RENDER_PIPELINE:
 
 
@@ -413,7 +533,7 @@ Vulkan compute pipeline driver resource.
 
 
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_RENDER_PIPELINE** = ``12``
 :ref:`DriverResource<enum_RenderingDevice_DriverResource>` **DRIVER_RESOURCE_VULKAN_RENDER_PIPELINE** = ``12``
 
 
-Vulkan render pipeline driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_RENDER_PIPELINE<class_RenderingDevice_constant_DRIVER_RESOURCE_RENDER_PIPELINE>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -5486,6 +5606,8 @@ Returns the internal graphics handle for this texture object. For use when commu
 
 
 \ **Note:** This function returns a ``uint64_t`` which internally maps to a ``GLuint`` (OpenGL) or ``VkImage`` (Vulkan).
 \ **Note:** This function returns a ``uint64_t`` which internally maps to a ``GLuint`` (OpenGL) or ``VkImage`` (Vulkan).
 
 
+\ *Deprecated.* Use :ref:`get_driver_resource<class_RenderingDevice_method_get_driver_resource>` with :ref:`DRIVER_RESOURCE_TEXTURE<class_RenderingDevice_constant_DRIVER_RESOURCE_TEXTURE>` instead.
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----

+ 1 - 1
classes/class_renderingserver.rst

@@ -10389,7 +10389,7 @@ Updates the texture specified by the ``texture`` :ref:`RID<class_RID>`'s data wi
 
 
 :ref:`Format<enum_Image_Format>` **texture_get_format** **(** :ref:`RID<class_RID>` texture **)** |const|
 :ref:`Format<enum_Image_Format>` **texture_get_format** **(** :ref:`RID<class_RID>` texture **)** |const|
 
 
-Returns the :ref:`Format<enum_Image_Format>` for the texture.
+Returns the format for the texture.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 3 - 1
classes/class_resource.rst

@@ -21,10 +21,12 @@ Base class for serializable objects.
 Description
 Description
 -----------
 -----------
 
 
-Resource is the base class for all Godot-specific resource types, serving primarily as data containers. Since they inherit from :ref:`RefCounted<class_RefCounted>`, resources are reference-counted and freed when no longer in use. They can also be nested within other resources, and saved on disk. Once loaded from disk, further attempts to load a resource by :ref:`resource_path<class_Resource_property_resource_path>` returns the same reference. :ref:`PackedScene<class_PackedScene>`, one of the most common :ref:`Object<class_Object>`\ s in a Godot project, is also a resource, uniquely capable of storing and instantiating the :ref:`Node<class_Node>`\ s it contains as many times as desired.
+Resource is the base class for all Godot-specific resource types, serving primarily as data containers. Since they inherit from :ref:`RefCounted<class_RefCounted>`, resources are reference-counted and freed when no longer in use. They can also be nested within other resources, and saved on disk. :ref:`PackedScene<class_PackedScene>`, one of the most common :ref:`Object<class_Object>`\ s in a Godot project, is also a resource, uniquely capable of storing and instantiating the :ref:`Node<class_Node>`\ s it contains as many times as desired.
 
 
 In GDScript, resources can loaded from disk by their :ref:`resource_path<class_Resource_property_resource_path>` using :ref:`@GDScript.load<class_@GDScript_method_load>` or :ref:`@GDScript.preload<class_@GDScript_method_preload>`.
 In GDScript, resources can loaded from disk by their :ref:`resource_path<class_Resource_property_resource_path>` using :ref:`@GDScript.load<class_@GDScript_method_load>` or :ref:`@GDScript.preload<class_@GDScript_method_preload>`.
 
 
+The engine keeps a global cache of all loaded resources, referenced by paths (see :ref:`ResourceLoader.has_cached<class_ResourceLoader_method_has_cached>`). A resource will be cached when loaded for the first time and removed from cache once all references are released. When a resource is cached, subsequent loads using its path will return the cached reference.
+
 \ **Note:** In C#, resources will not be freed instantly after they are no longer in use. Instead, garbage collection will run periodically and will free resources that are no longer in use. This means that unused resources will linger on for a while before being removed.
 \ **Note:** In C#, resources will not be freed instantly after they are no longer in use. Instead, garbage collection will run periodically and will free resources that are no longer in use. This means that unused resources will linger on for a while before being removed.
 
 
 .. rst-class:: classref-introduction-group
 .. rst-class:: classref-introduction-group

+ 5 - 3
classes/class_resourceloader.rst

@@ -129,7 +129,7 @@ enum **CacheMode**:
 
 
 :ref:`CacheMode<enum_ResourceLoader_CacheMode>` **CACHE_MODE_IGNORE** = ``0``
 :ref:`CacheMode<enum_ResourceLoader_CacheMode>` **CACHE_MODE_IGNORE** = ``0``
 
 
-
+The resource is always loaded from disk, even if a cache entry exists for its path, and the newly loaded copy will not be cached. Instances loaded with this mode will exist independently.
 
 
 .. _class_ResourceLoader_constant_CACHE_MODE_REUSE:
 .. _class_ResourceLoader_constant_CACHE_MODE_REUSE:
 
 
@@ -137,7 +137,7 @@ enum **CacheMode**:
 
 
 :ref:`CacheMode<enum_ResourceLoader_CacheMode>` **CACHE_MODE_REUSE** = ``1``
 :ref:`CacheMode<enum_ResourceLoader_CacheMode>` **CACHE_MODE_REUSE** = ``1``
 
 
-
+If a resource is cached, returns the cached reference. Otherwise it's loaded from disk.
 
 
 .. _class_ResourceLoader_constant_CACHE_MODE_REPLACE:
 .. _class_ResourceLoader_constant_CACHE_MODE_REPLACE:
 
 
@@ -145,7 +145,7 @@ enum **CacheMode**:
 
 
 :ref:`CacheMode<enum_ResourceLoader_CacheMode>` **CACHE_MODE_REPLACE** = ``2``
 :ref:`CacheMode<enum_ResourceLoader_CacheMode>` **CACHE_MODE_REPLACE** = ``2``
 
 
-
+The resource is always loaded from disk, even if a cache entry exists for its path. The cached entry will be replaced by the newly loaded copy.
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
@@ -180,6 +180,8 @@ Returns whether a recognized resource exists for the given ``path``.
 
 
 An optional ``type_hint`` can be used to further specify the :ref:`Resource<class_Resource>` type that should be handled by the :ref:`ResourceFormatLoader<class_ResourceFormatLoader>`. Anything that inherits from :ref:`Resource<class_Resource>` can be used as a type hint, for example :ref:`Image<class_Image>`.
 An optional ``type_hint`` can be used to further specify the :ref:`Resource<class_Resource>` type that should be handled by the :ref:`ResourceFormatLoader<class_ResourceFormatLoader>`. Anything that inherits from :ref:`Resource<class_Resource>` can be used as a type hint, for example :ref:`Image<class_Image>`.
 
 
+\ **Note:** If you use :ref:`Resource.take_over_path<class_Resource_method_take_over_path>`, this method will return ``true`` for the taken path even if the resource wasn't saved (i.e. exists only in resource cache).
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----

+ 1 - 1
classes/class_richtexteffect.rst

@@ -19,7 +19,7 @@ A custom effect for a :ref:`RichTextLabel<class_RichTextLabel>`.
 Description
 Description
 -----------
 -----------
 
 
-A custom effect for a :ref:`RichTextLabel<class_RichTextLabel>`.
+A custom effect for a :ref:`RichTextLabel<class_RichTextLabel>`, which can be loaded in the :ref:`RichTextLabel<class_RichTextLabel>` inspector or using :ref:`RichTextLabel.install_effect<class_RichTextLabel_method_install_effect>`.
 
 
 \ **Note:** For a **RichTextEffect** to be usable, a BBCode tag must be defined as a member variable called ``bbcode`` in the script.
 \ **Note:** For a **RichTextEffect** to be usable, a BBCode tag must be defined as a member variable called ``bbcode`` in the script.
 
 

+ 26 - 1
classes/class_richtextlabel.rst

@@ -1305,7 +1305,32 @@ Returns the number of visible paragraphs. A paragraph is considered visible if a
 
 
 void **install_effect** **(** :ref:`Variant<class_Variant>` effect **)**
 void **install_effect** **(** :ref:`Variant<class_Variant>` effect **)**
 
 
-Installs a custom effect. ``effect`` should be a valid :ref:`RichTextEffect<class_RichTextEffect>`.
+Installs a custom effect. This can also be done in the RichTextLabel inspector using the :ref:`custom_effects<class_RichTextLabel_property_custom_effects>` property. ``effect`` should be a valid :ref:`RichTextEffect<class_RichTextEffect>`.
+
+Example RichTextEffect:
+
+::
+
+    # effect.gd
+    class_name MyCustomEffect
+    extends RichTextEffect
+    
+    var bbcode = "my_custom_effect"
+    
+    # ...
+
+Registering the above effect in RichTextLabel from script:
+
+::
+
+    # rich_text_label.gd
+    extends RichTextLabel
+    
+    func _ready():
+        install_effect(MyCustomEffect.new())
+    
+        # Alternatively, if not using `class_name` in the script that extends RichTextEffect:
+        install_effect(preload("res://effect.gd").new())
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 35 - 0
classes/class_script.rst

@@ -59,6 +59,8 @@ Methods
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Script<class_Script>`           | :ref:`get_base_script<class_Script_method_get_base_script>` **(** **)** |const|                                                            |
    | :ref:`Script<class_Script>`           | :ref:`get_base_script<class_Script_method_get_base_script>` **(** **)** |const|                                                            |
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`StringName<class_StringName>`   | :ref:`get_global_name<class_Script_method_get_global_name>` **(** **)** |const|                                                            |
+   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`StringName<class_StringName>`   | :ref:`get_instance_base_type<class_Script_method_get_instance_base_type>` **(** **)** |const|                                              |
    | :ref:`StringName<class_StringName>`   | :ref:`get_instance_base_type<class_Script_method_get_instance_base_type>` **(** **)** |const|                                              |
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Variant<class_Variant>`         | :ref:`get_property_default_value<class_Script_method_get_property_default_value>` **(** :ref:`StringName<class_StringName>` property **)** |
    | :ref:`Variant<class_Variant>`         | :ref:`get_property_default_value<class_Script_method_get_property_default_value>` **(** :ref:`StringName<class_StringName>` property **)** |
@@ -135,6 +137,39 @@ Returns ``true`` if the script can be instantiated.
 
 
 Returns the script directly inherited by this script.
 Returns the script directly inherited by this script.
 
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Script_method_get_global_name:
+
+.. rst-class:: classref-method
+
+:ref:`StringName<class_StringName>` **get_global_name** **(** **)** |const|
+
+Returns the class name associated with the script, if there is one. Returns an empty string otherwise.
+
+To give the script a global name, you can use the ``class_name`` keyword in GDScript and the ``[GlobalClass]`` attribute in C#.
+
+
+.. tabs::
+
+ .. code-tab:: gdscript
+
+    class_name MyNode
+    extends Node
+
+ .. code-tab:: csharp
+
+    using Godot;
+    
+    [GlobalClass]
+    public partial class MyNode : Node
+    {
+    }
+
+
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----

+ 16 - 0
classes/class_scriptlanguageextension.rst

@@ -113,6 +113,8 @@ Methods
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`_profiling_get_frame_data<class_ScriptLanguageExtension_private_method__profiling_get_frame_data>` **(** ScriptLanguageExtensionProfilingInfo* info_array, :ref:`int<class_int>` info_max **)** |virtual|                                                                                                                                          |
    | :ref:`int<class_int>`                             | :ref:`_profiling_get_frame_data<class_ScriptLanguageExtension_private_method__profiling_get_frame_data>` **(** ScriptLanguageExtensionProfilingInfo* info_array, :ref:`int<class_int>` info_max **)** |virtual|                                                                                                                                          |
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                              | :ref:`_profiling_set_save_native_calls<class_ScriptLanguageExtension_private_method__profiling_set_save_native_calls>` **(** :ref:`bool<class_bool>` enable **)** |virtual|                                                                                                                                                                              |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                              | :ref:`_profiling_start<class_ScriptLanguageExtension_private_method__profiling_start>` **(** **)** |virtual|                                                                                                                                                                                                                                             |
    | void                                              | :ref:`_profiling_start<class_ScriptLanguageExtension_private_method__profiling_start>` **(** **)** |virtual|                                                                                                                                                                                                                                             |
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                              | :ref:`_profiling_stop<class_ScriptLanguageExtension_private_method__profiling_stop>` **(** **)** |virtual|                                                                                                                                                                                                                                               |
    | void                                              | :ref:`_profiling_stop<class_ScriptLanguageExtension_private_method__profiling_stop>` **(** **)** |virtual|                                                                                                                                                                                                                                               |
@@ -994,6 +996,20 @@ void **_init** **(** **)** |virtual|
 
 
 ----
 ----
 
 
+.. _class_ScriptLanguageExtension_private_method__profiling_set_save_native_calls:
+
+.. rst-class:: classref-method
+
+void **_profiling_set_save_native_calls** **(** :ref:`bool<class_bool>` enable **)** |virtual|
+
+.. container:: contribute
+
+	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ScriptLanguageExtension_private_method__profiling_start:
 .. _class_ScriptLanguageExtension_private_method__profiling_start:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 0 - 2
classes/class_skeleton3d.rst

@@ -25,8 +25,6 @@ The overall transform of a bone with respect to the skeleton is determined by bo
 
 
 Note that "global pose" below refers to the overall transform of the bone with respect to skeleton, so it is not the actual global/world transform of the bone.
 Note that "global pose" below refers to the overall transform of the bone with respect to skeleton, so it is not the actual global/world transform of the bone.
 
 
-To setup different types of inverse kinematics, consider using :ref:`SkeletonIK3D<class_SkeletonIK3D>`, or add a custom IK implementation in :ref:`Node._process<class_Node_private_method__process>` as a child node.
-
 .. rst-class:: classref-introduction-group
 .. rst-class:: classref-introduction-group
 
 
 Tutorials
 Tutorials

+ 1 - 1
classes/class_slider.rst

@@ -100,7 +100,7 @@ Emitted when dragging stops. If ``value_changed`` is true, :ref:`Range.value<cla
 
 
 **drag_started** **(** **)**
 **drag_started** **(** **)**
 
 
-Emitted when dragging is started.
+Emitted when dragging is started. This is emitted before the corresponding :ref:`Range.value_changed<class_Range_signal_value_changed>` signal.
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 

+ 3 - 3
classes/class_sprite2d.rst

@@ -176,7 +176,7 @@ If ``true``, texture is flipped vertically.
 - void **set_frame** **(** :ref:`int<class_int>` value **)**
 - void **set_frame** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_frame** **(** **)**
 - :ref:`int<class_int>` **get_frame** **(** **)**
 
 
-Current frame to display from sprite sheet. :ref:`hframes<class_Sprite2D_property_hframes>` or :ref:`vframes<class_Sprite2D_property_vframes>` must be greater than 1.
+Current frame to display from sprite sheet. :ref:`hframes<class_Sprite2D_property_hframes>` or :ref:`vframes<class_Sprite2D_property_vframes>` must be greater than 1. This property is automatically adjusted when :ref:`hframes<class_Sprite2D_property_hframes>` or :ref:`vframes<class_Sprite2D_property_vframes>` are changed to keep pointing to the same visual frame (same column and row). If that's impossible, this value is reset to ``0``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -210,7 +210,7 @@ Coordinates of the frame to display from sprite sheet. This is as an alias for t
 - void **set_hframes** **(** :ref:`int<class_int>` value **)**
 - void **set_hframes** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_hframes** **(** **)**
 - :ref:`int<class_int>` **get_hframes** **(** **)**
 
 
-The number of columns in the sprite sheet.
+The number of columns in the sprite sheet. When this property is changed, :ref:`frame<class_Sprite2D_property_frame>` is adjusted so that the same visual frame is maintained (same row and column). If that's impossible, :ref:`frame<class_Sprite2D_property_frame>` is reset to ``0``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -312,7 +312,7 @@ The region of the atlas texture to display. :ref:`region_enabled<class_Sprite2D_
 - void **set_vframes** **(** :ref:`int<class_int>` value **)**
 - void **set_vframes** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_vframes** **(** **)**
 - :ref:`int<class_int>` **get_vframes** **(** **)**
 
 
-The number of rows in the sprite sheet.
+The number of rows in the sprite sheet. When this property is changed, :ref:`frame<class_Sprite2D_property_frame>` is adjusted so that the same visual frame is maintained (same row and column). If that's impossible, :ref:`frame<class_Sprite2D_property_frame>` is reset to ``0``.
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 

+ 3 - 3
classes/class_sprite3d.rst

@@ -94,7 +94,7 @@ Property Descriptions
 - void **set_frame** **(** :ref:`int<class_int>` value **)**
 - void **set_frame** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_frame** **(** **)**
 - :ref:`int<class_int>` **get_frame** **(** **)**
 
 
-Current frame to display from sprite sheet. :ref:`hframes<class_Sprite3D_property_hframes>` or :ref:`vframes<class_Sprite3D_property_vframes>` must be greater than 1.
+Current frame to display from sprite sheet. :ref:`hframes<class_Sprite3D_property_hframes>` or :ref:`vframes<class_Sprite3D_property_vframes>` must be greater than 1. This property is automatically adjusted when :ref:`hframes<class_Sprite3D_property_hframes>` or :ref:`vframes<class_Sprite3D_property_vframes>` are changed to keep pointing to the same visual frame (same column and row). If that's impossible, this value is reset to ``0``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -128,7 +128,7 @@ Coordinates of the frame to display from sprite sheet. This is as an alias for t
 - void **set_hframes** **(** :ref:`int<class_int>` value **)**
 - void **set_hframes** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_hframes** **(** **)**
 - :ref:`int<class_int>` **get_hframes** **(** **)**
 
 
-The number of columns in the sprite sheet.
+The number of columns in the sprite sheet. When this property is changed, :ref:`frame<class_Sprite3D_property_frame>` is adjusted so that the same visual frame is maintained (same row and column). If that's impossible, :ref:`frame<class_Sprite3D_property_frame>` is reset to ``0``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -196,7 +196,7 @@ The region of the atlas texture to display. :ref:`region_enabled<class_Sprite3D_
 - void **set_vframes** **(** :ref:`int<class_int>` value **)**
 - void **set_vframes** **(** :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_vframes** **(** **)**
 - :ref:`int<class_int>` **get_vframes** **(** **)**
 
 
-The number of rows in the sprite sheet.
+The number of rows in the sprite sheet. When this property is changed, :ref:`frame<class_Sprite3D_property_frame>` is adjusted so that the same visual frame is maintained (same row and column). If that's impossible, :ref:`frame<class_Sprite3D_property_frame>` is reset to ``0``.
 
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |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.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 7 - 7
classes/class_textureprogressbar.rst

@@ -224,7 +224,7 @@ If ``true``, Godot treats the bar's textures like in :ref:`NinePatchRect<class_N
 - void **set_radial_center_offset** **(** :ref:`Vector2<class_Vector2>` value **)**
 - void **set_radial_center_offset** **(** :ref:`Vector2<class_Vector2>` value **)**
 - :ref:`Vector2<class_Vector2>` **get_radial_center_offset** **(** **)**
 - :ref:`Vector2<class_Vector2>` **get_radial_center_offset** **(** **)**
 
 
-Offsets :ref:`texture_progress<class_TextureProgressBar_property_texture_progress>` if :ref:`fill_mode<class_TextureProgressBar_property_fill_mode>` is :ref:`FILL_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE>` or :ref:`FILL_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE>`.
+Offsets :ref:`texture_progress<class_TextureProgressBar_property_texture_progress>` if :ref:`fill_mode<class_TextureProgressBar_property_fill_mode>` is :ref:`FILL_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE>`, :ref:`FILL_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE>`, or :ref:`FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -241,7 +241,7 @@ Offsets :ref:`texture_progress<class_TextureProgressBar_property_texture_progres
 - void **set_fill_degrees** **(** :ref:`float<class_float>` value **)**
 - void **set_fill_degrees** **(** :ref:`float<class_float>` value **)**
 - :ref:`float<class_float>` **get_fill_degrees** **(** **)**
 - :ref:`float<class_float>` **get_fill_degrees** **(** **)**
 
 
-Upper limit for the fill of :ref:`texture_progress<class_TextureProgressBar_property_texture_progress>` if :ref:`fill_mode<class_TextureProgressBar_property_fill_mode>` is :ref:`FILL_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE>` or :ref:`FILL_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE>`. When the node's ``value`` is equal to its ``max_value``, the texture fills up to this angle.
+Upper limit for the fill of :ref:`texture_progress<class_TextureProgressBar_property_texture_progress>` if :ref:`fill_mode<class_TextureProgressBar_property_fill_mode>` is :ref:`FILL_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE>`, :ref:`FILL_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE>`, or :ref:`FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE>`. When the node's ``value`` is equal to its ``max_value``, the texture fills up to this angle.
 
 
 See :ref:`Range.value<class_Range_property_value>`, :ref:`Range.max_value<class_Range_property_max_value>`.
 See :ref:`Range.value<class_Range_property_value>`, :ref:`Range.max_value<class_Range_property_max_value>`.
 
 
@@ -260,7 +260,7 @@ See :ref:`Range.value<class_Range_property_value>`, :ref:`Range.max_value<class_
 - void **set_radial_initial_angle** **(** :ref:`float<class_float>` value **)**
 - void **set_radial_initial_angle** **(** :ref:`float<class_float>` value **)**
 - :ref:`float<class_float>` **get_radial_initial_angle** **(** **)**
 - :ref:`float<class_float>` **get_radial_initial_angle** **(** **)**
 
 
-Starting angle for the fill of :ref:`texture_progress<class_TextureProgressBar_property_texture_progress>` if :ref:`fill_mode<class_TextureProgressBar_property_fill_mode>` is :ref:`FILL_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE>` or :ref:`FILL_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE>`. When the node's ``value`` is equal to its ``min_value``, the texture doesn't show up at all. When the ``value`` increases, the texture fills and tends towards :ref:`radial_fill_degrees<class_TextureProgressBar_property_radial_fill_degrees>`.
+Starting angle for the fill of :ref:`texture_progress<class_TextureProgressBar_property_texture_progress>` if :ref:`fill_mode<class_TextureProgressBar_property_fill_mode>` is :ref:`FILL_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE>`, :ref:`FILL_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE>`, or :ref:`FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE<class_TextureProgressBar_constant_FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE>`. When the node's ``value`` is equal to its ``min_value``, the texture doesn't show up at all. When the ``value`` increases, the texture fills and tends towards :ref:`radial_fill_degrees<class_TextureProgressBar_property_radial_fill_degrees>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -277,7 +277,7 @@ Starting angle for the fill of :ref:`texture_progress<class_TextureProgressBar_p
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 
 
-The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's bottom corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders.
+The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's bottom corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders. Only effective if :ref:`nine_patch_stretch<class_TextureProgressBar_property_nine_patch_stretch>` is ``true``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -294,7 +294,7 @@ The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's botto
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 
 
-The width of the 9-patch's left column.
+The width of the 9-patch's left column. Only effective if :ref:`nine_patch_stretch<class_TextureProgressBar_property_nine_patch_stretch>` is ``true``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -311,7 +311,7 @@ The width of the 9-patch's left column.
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 
 
-The width of the 9-patch's right column.
+The width of the 9-patch's right column. Only effective if :ref:`nine_patch_stretch<class_TextureProgressBar_property_nine_patch_stretch>` is ``true``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -328,7 +328,7 @@ The width of the 9-patch's right column.
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - void **set_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`int<class_int>` value **)**
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 - :ref:`int<class_int>` **get_stretch_margin** **(** :ref:`Side<enum_@GlobalScope_Side>` margin **)** |const|
 
 
-The height of the 9-patch's top row.
+The height of the 9-patch's top row. Only effective if :ref:`nine_patch_stretch<class_TextureProgressBar_property_nine_patch_stretch>` is ``true``.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 2 - 2
classes/class_tilesetatlassource.rst

@@ -431,7 +431,7 @@ Returns how many animation frames has the tile at coordinates ``atlas_coords``.
 
 
 :ref:`TileAnimationMode<enum_TileSetAtlasSource_TileAnimationMode>` **get_tile_animation_mode** **(** :ref:`Vector2i<class_Vector2i>` atlas_coords **)** |const|
 :ref:`TileAnimationMode<enum_TileSetAtlasSource_TileAnimationMode>` **get_tile_animation_mode** **(** :ref:`Vector2i<class_Vector2i>` atlas_coords **)** |const|
 
 
-Returns the :ref:`TileAnimationMode<enum_TileSetAtlasSource_TileAnimationMode>` of the tile at ``atlas_coords``. See also :ref:`set_tile_animation_mode<class_TileSetAtlasSource_method_set_tile_animation_mode>`.
+Returns the tile animation mode of the tile at ``atlas_coords``. See also :ref:`set_tile_animation_mode<class_TileSetAtlasSource_method_set_tile_animation_mode>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -655,7 +655,7 @@ Sets how many animation frames the tile at coordinates ``atlas_coords`` has.
 
 
 void **set_tile_animation_mode** **(** :ref:`Vector2i<class_Vector2i>` atlas_coords, :ref:`TileAnimationMode<enum_TileSetAtlasSource_TileAnimationMode>` mode **)**
 void **set_tile_animation_mode** **(** :ref:`Vector2i<class_Vector2i>` atlas_coords, :ref:`TileAnimationMode<enum_TileSetAtlasSource_TileAnimationMode>` mode **)**
 
 
-Sets the :ref:`TileAnimationMode<enum_TileSetAtlasSource_TileAnimationMode>` of the tile at ``atlas_coords`` to ``mode``. See also :ref:`get_tile_animation_mode<class_TileSetAtlasSource_method_get_tile_animation_mode>`.
+Sets the tile animation mode of the tile at ``atlas_coords`` to ``mode``. See also :ref:`get_tile_animation_mode<class_TileSetAtlasSource_method_get_tile_animation_mode>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 178 - 122
classes/class_tree.rst

@@ -186,125 +186,133 @@ Theme Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`children_hl_line_color<class_Tree_theme_color_children_hl_line_color>`             | ``Color(0.27, 0.27, 0.27, 1)``    |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`custom_button_font_highlight<class_Tree_theme_color_custom_button_font_highlight>` | ``Color(0.95, 0.95, 0.95, 1)``    |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`drop_position_color<class_Tree_theme_color_drop_position_color>`                   | ``Color(1, 1, 1, 1)``             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_color<class_Tree_theme_color_font_color>`                                     | ``Color(0.7, 0.7, 0.7, 1)``       |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_Tree_theme_color_font_outline_color>`                     | ``Color(1, 1, 1, 1)``             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`font_selected_color<class_Tree_theme_color_font_selected_color>`                   | ``Color(1, 1, 1, 1)``             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`guide_color<class_Tree_theme_color_guide_color>`                                   | ``Color(0.7, 0.7, 0.7, 0.25)``    |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`parent_hl_line_color<class_Tree_theme_color_parent_hl_line_color>`                 | ``Color(0.27, 0.27, 0.27, 1)``    |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`relationship_line_color<class_Tree_theme_color_relationship_line_color>`           | ``Color(0.27, 0.27, 0.27, 1)``    |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Color<class_Color>`         | :ref:`title_button_color<class_Tree_theme_color_title_button_color>`                     | ``Color(0.875, 0.875, 0.875, 1)`` |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`button_margin<class_Tree_theme_constant_button_margin>`                            | ``4``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`children_hl_line_width<class_Tree_theme_constant_children_hl_line_width>`          | ``1``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`draw_guides<class_Tree_theme_constant_draw_guides>`                                | ``1``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`draw_relationship_lines<class_Tree_theme_constant_draw_relationship_lines>`        | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`h_separation<class_Tree_theme_constant_h_separation>`                              | ``4``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`icon_max_width<class_Tree_theme_constant_icon_max_width>`                          | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`inner_item_margin_bottom<class_Tree_theme_constant_inner_item_margin_bottom>`      | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`inner_item_margin_left<class_Tree_theme_constant_inner_item_margin_left>`          | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`inner_item_margin_right<class_Tree_theme_constant_inner_item_margin_right>`        | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`inner_item_margin_top<class_Tree_theme_constant_inner_item_margin_top>`            | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`item_margin<class_Tree_theme_constant_item_margin>`                                | ``16``                            |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`outline_size<class_Tree_theme_constant_outline_size>`                              | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`parent_hl_line_margin<class_Tree_theme_constant_parent_hl_line_margin>`            | ``0``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`parent_hl_line_width<class_Tree_theme_constant_parent_hl_line_width>`              | ``1``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`relationship_line_width<class_Tree_theme_constant_relationship_line_width>`        | ``1``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scroll_border<class_Tree_theme_constant_scroll_border>`                            | ``4``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scroll_speed<class_Tree_theme_constant_scroll_speed>`                              | ``12``                            |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scrollbar_h_separation<class_Tree_theme_constant_scrollbar_h_separation>`          | ``4``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_bottom<class_Tree_theme_constant_scrollbar_margin_bottom>`        | ``-1``                            |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_left<class_Tree_theme_constant_scrollbar_margin_left>`            | ``-1``                            |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_right<class_Tree_theme_constant_scrollbar_margin_right>`          | ``-1``                            |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_top<class_Tree_theme_constant_scrollbar_margin_top>`              | ``-1``                            |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`scrollbar_v_separation<class_Tree_theme_constant_scrollbar_v_separation>`          | ``4``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`v_separation<class_Tree_theme_constant_v_separation>`                              | ``4``                             |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`font<class_Tree_theme_font_font>`                                                  |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Font<class_Font>`           | :ref:`title_button_font<class_Tree_theme_font_title_button_font>`                        |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`font_size<class_Tree_theme_font_size_font_size>`                                   |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`int<class_int>`             | :ref:`title_button_font_size<class_Tree_theme_font_size_title_button_font_size>`         |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow<class_Tree_theme_icon_arrow>`                                                |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow_collapsed<class_Tree_theme_icon_arrow_collapsed>`                            |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow_collapsed_mirrored<class_Tree_theme_icon_arrow_collapsed_mirrored>`          |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked<class_Tree_theme_icon_checked>`                                            |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`indeterminate<class_Tree_theme_icon_indeterminate>`                                |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`select_arrow<class_Tree_theme_icon_select_arrow>`                                  |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked<class_Tree_theme_icon_unchecked>`                                        |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`Texture2D<class_Texture2D>` | :ref:`updown<class_Tree_theme_icon_updown>`                                              |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`button_pressed<class_Tree_theme_style_button_pressed>`                             |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`cursor<class_Tree_theme_style_cursor>`                                             |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`cursor_unfocused<class_Tree_theme_style_cursor_unfocused>`                         |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`custom_button<class_Tree_theme_style_custom_button>`                               |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`custom_button_hover<class_Tree_theme_style_custom_button_hover>`                   |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`custom_button_pressed<class_Tree_theme_style_custom_button_pressed>`               |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_Tree_theme_style_focus>`                                               |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`panel<class_Tree_theme_style_panel>`                                               |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`selected<class_Tree_theme_style_selected>`                                         |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`selected_focus<class_Tree_theme_style_selected_focus>`                             |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`title_button_hover<class_Tree_theme_style_title_button_hover>`                     |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`title_button_normal<class_Tree_theme_style_title_button_normal>`                   |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
-   | :ref:`StyleBox<class_StyleBox>`   | :ref:`title_button_pressed<class_Tree_theme_style_title_button_pressed>`                 |                                   |
-   +-----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------+
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`children_hl_line_color<class_Tree_theme_color_children_hl_line_color>`             | ``Color(0.27, 0.27, 0.27, 1)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`custom_button_font_highlight<class_Tree_theme_color_custom_button_font_highlight>` | ``Color(0.95, 0.95, 0.95, 1)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`drop_position_color<class_Tree_theme_color_drop_position_color>`                   | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_color<class_Tree_theme_color_font_color>`                                     | ``Color(0.7, 0.7, 0.7, 1)``         |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_disabled_color<class_Tree_theme_color_font_disabled_color>`                   | ``Color(0.875, 0.875, 0.875, 0.5)`` |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_outline_color<class_Tree_theme_color_font_outline_color>`                     | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`font_selected_color<class_Tree_theme_color_font_selected_color>`                   | ``Color(1, 1, 1, 1)``               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`guide_color<class_Tree_theme_color_guide_color>`                                   | ``Color(0.7, 0.7, 0.7, 0.25)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`parent_hl_line_color<class_Tree_theme_color_parent_hl_line_color>`                 | ``Color(0.27, 0.27, 0.27, 1)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`relationship_line_color<class_Tree_theme_color_relationship_line_color>`           | ``Color(0.27, 0.27, 0.27, 1)``      |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Color<class_Color>`         | :ref:`title_button_color<class_Tree_theme_color_title_button_color>`                     | ``Color(0.875, 0.875, 0.875, 1)``   |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`button_margin<class_Tree_theme_constant_button_margin>`                            | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`children_hl_line_width<class_Tree_theme_constant_children_hl_line_width>`          | ``1``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`draw_guides<class_Tree_theme_constant_draw_guides>`                                | ``1``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`draw_relationship_lines<class_Tree_theme_constant_draw_relationship_lines>`        | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`h_separation<class_Tree_theme_constant_h_separation>`                              | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`icon_max_width<class_Tree_theme_constant_icon_max_width>`                          | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`inner_item_margin_bottom<class_Tree_theme_constant_inner_item_margin_bottom>`      | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`inner_item_margin_left<class_Tree_theme_constant_inner_item_margin_left>`          | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`inner_item_margin_right<class_Tree_theme_constant_inner_item_margin_right>`        | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`inner_item_margin_top<class_Tree_theme_constant_inner_item_margin_top>`            | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`item_margin<class_Tree_theme_constant_item_margin>`                                | ``16``                              |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`outline_size<class_Tree_theme_constant_outline_size>`                              | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`parent_hl_line_margin<class_Tree_theme_constant_parent_hl_line_margin>`            | ``0``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`parent_hl_line_width<class_Tree_theme_constant_parent_hl_line_width>`              | ``1``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`relationship_line_width<class_Tree_theme_constant_relationship_line_width>`        | ``1``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scroll_border<class_Tree_theme_constant_scroll_border>`                            | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scroll_speed<class_Tree_theme_constant_scroll_speed>`                              | ``12``                              |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scrollbar_h_separation<class_Tree_theme_constant_scrollbar_h_separation>`          | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_bottom<class_Tree_theme_constant_scrollbar_margin_bottom>`        | ``-1``                              |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_left<class_Tree_theme_constant_scrollbar_margin_left>`            | ``-1``                              |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_right<class_Tree_theme_constant_scrollbar_margin_right>`          | ``-1``                              |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scrollbar_margin_top<class_Tree_theme_constant_scrollbar_margin_top>`              | ``-1``                              |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`scrollbar_v_separation<class_Tree_theme_constant_scrollbar_v_separation>`          | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`v_separation<class_Tree_theme_constant_v_separation>`                              | ``4``                               |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Font<class_Font>`           | :ref:`font<class_Tree_theme_font_font>`                                                  |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Font<class_Font>`           | :ref:`title_button_font<class_Tree_theme_font_title_button_font>`                        |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`font_size<class_Tree_theme_font_size_font_size>`                                   |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`title_button_font_size<class_Tree_theme_font_size_title_button_font_size>`         |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow<class_Tree_theme_icon_arrow>`                                                |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow_collapsed<class_Tree_theme_icon_arrow_collapsed>`                            |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`arrow_collapsed_mirrored<class_Tree_theme_icon_arrow_collapsed_mirrored>`          |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked<class_Tree_theme_icon_checked>`                                            |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`checked_disabled<class_Tree_theme_icon_checked_disabled>`                          |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`indeterminate<class_Tree_theme_icon_indeterminate>`                                |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`indeterminate_disabled<class_Tree_theme_icon_indeterminate_disabled>`              |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`select_arrow<class_Tree_theme_icon_select_arrow>`                                  |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked<class_Tree_theme_icon_unchecked>`                                        |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`unchecked_disabled<class_Tree_theme_icon_unchecked_disabled>`                      |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>` | :ref:`updown<class_Tree_theme_icon_updown>`                                              |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`button_pressed<class_Tree_theme_style_button_pressed>`                             |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`cursor<class_Tree_theme_style_cursor>`                                             |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`cursor_unfocused<class_Tree_theme_style_cursor_unfocused>`                         |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`custom_button<class_Tree_theme_style_custom_button>`                               |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`custom_button_hover<class_Tree_theme_style_custom_button_hover>`                   |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`custom_button_pressed<class_Tree_theme_style_custom_button_pressed>`               |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`focus<class_Tree_theme_style_focus>`                                               |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`panel<class_Tree_theme_style_panel>`                                               |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`selected<class_Tree_theme_style_selected>`                                         |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`selected_focus<class_Tree_theme_style_selected_focus>`                             |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`title_button_hover<class_Tree_theme_style_title_button_hover>`                     |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`title_button_normal<class_Tree_theme_style_title_button_normal>`                   |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
+   | :ref:`StyleBox<class_StyleBox>`   | :ref:`title_button_pressed<class_Tree_theme_style_title_button_pressed>`                 |                                     |
+   +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
@@ -1344,6 +1352,18 @@ Default text :ref:`Color<class_Color>` of the item.
 
 
 ----
 ----
 
 
+.. _class_Tree_theme_color_font_disabled_color:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Color<class_Color>` **font_disabled_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
+
+Text :ref:`Color<class_Color>` for a :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell when it's non-editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Tree_theme_color_font_outline_color:
 .. _class_Tree_theme_color_font_outline_color:
 
 
 .. rst-class:: classref-themeproperty
 .. rst-class:: classref-themeproperty
@@ -1796,7 +1816,19 @@ The arrow icon used when a foldable item is collapsed (for right-to-left layouts
 
 
 :ref:`Texture2D<class_Texture2D>` **checked**
 :ref:`Texture2D<class_Texture2D>` **checked**
 
 
-The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is checked.
+The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is checked and editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Tree_theme_icon_checked_disabled:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **checked_disabled**
+
+The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is checked and non-editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1808,7 +1840,19 @@ The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem
 
 
 :ref:`Texture2D<class_Texture2D>` **indeterminate**
 :ref:`Texture2D<class_Texture2D>` **indeterminate**
 
 
-The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is indeterminate.
+The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is indeterminate and editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Tree_theme_icon_indeterminate_disabled:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **indeterminate_disabled**
+
+The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is indeterminate and non-editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1832,7 +1876,19 @@ The arrow icon to display for the :ref:`TreeItem.CELL_MODE_RANGE<class_TreeItem_
 
 
 :ref:`Texture2D<class_Texture2D>` **unchecked**
 :ref:`Texture2D<class_Texture2D>` **unchecked**
 
 
-The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is unchecked.
+The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is unchecked and editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Tree_theme_icon_unchecked_disabled:
+
+.. rst-class:: classref-themeproperty
+
+:ref:`Texture2D<class_Texture2D>` **unchecked_disabled**
+
+The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem_constant_CELL_MODE_CHECK>` mode cell is unchecked and non-editable (see :ref:`TreeItem.set_editable<class_TreeItem_method_set_editable>`).
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 17 - 1
classes/class_viewport.rst

@@ -191,6 +191,8 @@ Methods
    +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Control<class_Control>`                                                                 | :ref:`gui_get_focus_owner<class_Viewport_method_gui_get_focus_owner>` **(** **)** |const|                                                                                                                                                                              |
    | :ref:`Control<class_Control>`                                                                 | :ref:`gui_get_focus_owner<class_Viewport_method_gui_get_focus_owner>` **(** **)** |const|                                                                                                                                                                              |
    +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Control<class_Control>`                                                                 | :ref:`gui_get_hovered_control<class_Viewport_method_gui_get_hovered_control>` **(** **)** |const|                                                                                                                                                                      |
+   +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                                                       | :ref:`gui_is_drag_successful<class_Viewport_method_gui_is_drag_successful>` **(** **)** |const|                                                                                                                                                                        |
    | :ref:`bool<class_bool>`                                                                       | :ref:`gui_is_drag_successful<class_Viewport_method_gui_is_drag_successful>` **(** **)** |const|                                                                                                                                                                        |
    +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                                                       | :ref:`gui_is_dragging<class_Viewport_method_gui_is_dragging>` **(** **)** |const|                                                                                                                                                                                      |
    | :ref:`bool<class_bool>`                                                                       | :ref:`gui_is_dragging<class_Viewport_method_gui_is_dragging>` **(** **)** |const|                                                                                                                                                                                      |
@@ -1911,7 +1913,7 @@ Returns the mouse's position in this **Viewport** using the coordinate system of
 
 
 :ref:`PositionalShadowAtlasQuadrantSubdiv<enum_Viewport_PositionalShadowAtlasQuadrantSubdiv>` **get_positional_shadow_atlas_quadrant_subdiv** **(** :ref:`int<class_int>` quadrant **)** |const|
 :ref:`PositionalShadowAtlasQuadrantSubdiv<enum_Viewport_PositionalShadowAtlasQuadrantSubdiv>` **get_positional_shadow_atlas_quadrant_subdiv** **(** :ref:`int<class_int>` quadrant **)** |const|
 
 
-Returns the :ref:`PositionalShadowAtlasQuadrantSubdiv<enum_Viewport_PositionalShadowAtlasQuadrantSubdiv>` of the specified quadrant.
+Returns the positional shadow atlas quadrant subdivision of the specified quadrant.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2009,6 +2011,20 @@ Returns the :ref:`Control<class_Control>` having the focus within this viewport.
 
 
 ----
 ----
 
 
+.. _class_Viewport_method_gui_get_hovered_control:
+
+.. rst-class:: classref-method
+
+:ref:`Control<class_Control>` **gui_get_hovered_control** **(** **)** |const|
+
+Returns the :ref:`Control<class_Control>` that the mouse is currently hovering over in this viewport. If no :ref:`Control<class_Control>` has the cursor, returns null.
+
+Typically the leaf :ref:`Control<class_Control>` node or deepest level of the subtree which claims hover. This is very useful when used together with :ref:`Node.is_ancestor_of<class_Node_method_is_ancestor_of>` to find if the mouse is within a control tree.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Viewport_method_gui_is_drag_successful:
 .. _class_Viewport_method_gui_is_drag_successful:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 1 - 1
classes/class_webrtcpeerconnection.rst

@@ -376,7 +376,7 @@ Returns the ICE :ref:`GatheringState<enum_WebRTCPeerConnection_GatheringState>`
 
 
 :ref:`SignalingState<enum_WebRTCPeerConnection_SignalingState>` **get_signaling_state** **(** **)** |const|
 :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.
+Returns the signaling state on the local end of the connection while connecting or reconnecting to another peer.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 1 - 1
classes/class_xrinterface.rst

@@ -610,7 +610,7 @@ Is ``true`` if this interface supports passthrough.
 
 
 Sets the active environment blend mode.
 Sets the active environment blend mode.
 
 
-\ ``mode`` is the :ref:`EnvironmentBlendMode<enum_XRInterface_EnvironmentBlendMode>` starting with the next frame.
+\ ``mode`` is the environment blend mode starting with the next frame.
 
 
 \ **Note:** Not all runtimes support all environment blend modes, so it is important to check this at startup. For example:
 \ **Note:** Not all runtimes support all environment blend modes, so it is important to check this at startup. For example:
 
 

+ 1 - 1
classes/class_xrinterfaceextension.rst

@@ -233,7 +233,7 @@ Returns an :ref:`PackedVector3Array<class_PackedVector3Array>` that denotes the
 
 
 :ref:`PlayAreaMode<enum_XRInterface_PlayAreaMode>` **_get_play_area_mode** **(** **)** |virtual| |const|
 :ref:`PlayAreaMode<enum_XRInterface_PlayAreaMode>` **_get_play_area_mode** **(** **)** |virtual| |const|
 
 
-Returns the :ref:`PlayAreaMode<enum_XRInterface_PlayAreaMode>` that sets up our play area.
+Returns the play area mode that sets up our play area.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator