瀏覽代碼

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 **)**
 
-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.
 

+ 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.
 
-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 **)**
 
-.. 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
 

+ 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.
 
+\ **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
 
 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.
 
+\ **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>`.
 
 .. 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 **)**
 - :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
 

+ 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_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_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:
 
 .. 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:`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_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).
     "_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
 
@@ -1818,6 +1823,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
     "_main" - Main 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
 
@@ -1845,6 +1853,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
     "_main" - Main 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
 
@@ -1874,6 +1885,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
     "_main" - Main 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
 
@@ -1901,6 +1915,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
     "_main" - Main 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
 
@@ -1932,6 +1949,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
     "_main" - Main 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
 
@@ -1961,6 +1981,9 @@ An ``accelerator`` can optionally be defined, which is a keyboard shortcut that
 
     "_main" - Main 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
 
@@ -1984,6 +2007,9 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
     "_main" - Main 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
 
@@ -2007,6 +2033,9 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
     "_main" - Main 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
 
@@ -2028,6 +2057,9 @@ Removes all items from the global menu with ID ``menu_root``.
 
     "_main" - Main 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
 
@@ -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:
 
 .. rst-class:: classref-method
@@ -3105,6 +3151,14 @@ void **tablet_set_current_driver** **(** :ref:`String<class_String>` 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.
 
 .. 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/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_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/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:`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:`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:`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:
 
 .. 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:
 
 .. 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:
 
 .. 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:`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:`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.
 
+.. 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
 
 ----
@@ -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:
 
 .. 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|
 
-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
 
@@ -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)``
 
-Color of major grid lines.
+Color of major grid lines/dots.
 
 .. 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)``
 
-Color of minor grid lines.
+Color of minor grid lines/dots.
 
 .. rst-class:: classref-item-separator
 

+ 25 - 9
classes/class_label.rst

@@ -90,15 +90,17 @@ Methods
 .. table::
    :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
 
@@ -490,6 +492,18 @@ The fraction of characters to display, relative to the total number of character
 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:
 
 .. 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:** 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
 
 ----

+ 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|
 
-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
 

+ 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|
 
-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
 

+ 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:`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:`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:`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|                                                                                                                                                                                                                                                |
    +-----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | 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:`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:`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_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:`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:`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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:`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:`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:`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:`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|                                                                                                                                                                                                                                       |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | 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:`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:`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:`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_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:`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:`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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. 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:
 
 .. rst-class:: classref-method

+ 32 - 0
classes/class_particleprocessmaterial.rst

@@ -227,6 +227,8 @@ Methods
 .. table::
    :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|                                                 |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -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|                         |
    +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | 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_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
 -------------------
 
+.. _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:
 
 .. 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:
 
 .. rst-class:: classref-method

+ 46 - 13
classes/class_popupmenu.rst

@@ -37,19 +37,21 @@ Properties
 .. table::
    :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
 
@@ -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_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:`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.
 
+.. 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
 
 ----
@@ -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:
 
 .. 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**:
 
+.. _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:
 
 .. rst-class:: classref-enumeration-constant
 
 :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:
 
@@ -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``
 
-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:
 
@@ -333,7 +453,7 @@ Physical device (graphics card) driver resource.
 
 :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:
 
@@ -341,7 +461,7 @@ Vulkan instance driver resource.
 
 :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:
 
@@ -349,7 +469,7 @@ Vulkan queue driver resource.
 
 :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:
 
@@ -357,7 +477,7 @@ Vulkan queue family index driver resource.
 
 :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:
 
@@ -365,7 +485,7 @@ Vulkan image driver resource.
 
 :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:
 
@@ -373,7 +493,7 @@ Vulkan image view driver resource.
 
 :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:
 
@@ -381,7 +501,7 @@ Vulkan image native texture format driver resource.
 
 :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:
 
@@ -389,7 +509,7 @@ Vulkan sampler driver resource.
 
 :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:
 
@@ -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``
 
-Vulkan buffer driver resource.
+*Deprecated.* Use :ref:`DRIVER_RESOURCE_BUFFER<class_RenderingDevice_constant_DRIVER_RESOURCE_BUFFER>`.
 
 .. _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``
 
-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:
 
@@ -413,7 +533,7 @@ Vulkan compute pipeline driver resource.
 
 :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
 
@@ -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).
 
+\ *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
 
 ----

+ 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|
 
-Returns the :ref:`Format<enum_Image_Format>` for the texture.
+Returns the format for the texture.
 
 .. rst-class:: classref-item-separator
 

+ 3 - 1
classes/class_resource.rst

@@ -21,10 +21,12 @@ Base class for serializable objects.
 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>`.
 
+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.
 
 .. 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``
 
-
+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:
 
@@ -137,7 +137,7 @@ enum **CacheMode**:
 
 :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:
 
@@ -145,7 +145,7 @@ enum **CacheMode**:
 
 :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
 
@@ -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>`.
 
+\ **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
 
 ----

+ 1 - 1
classes/class_richtexteffect.rst

@@ -19,7 +19,7 @@ A custom effect for a :ref:`RichTextLabel<class_RichTextLabel>`.
 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.
 

+ 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 **)**
 
-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
 

+ 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:`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:`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.
 
+.. 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
 
 ----

+ 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|                                                                                                                                          |
    +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | 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_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:
 
 .. 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.
 
-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
 
 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** **(** **)**
 
-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
 

+ 3 - 3
classes/class_sprite2d.rst

@@ -176,7 +176,7 @@ If ``true``, texture is flipped vertically.
 - void **set_frame** **(** :ref:`int<class_int>` value **)**
 - :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
 
@@ -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 **)**
 - :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
 
@@ -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 **)**
 - :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
 

+ 3 - 3
classes/class_sprite3d.rst

@@ -94,7 +94,7 @@ Property Descriptions
 - void **set_frame** **(** :ref:`int<class_int>` value **)**
 - :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
 
@@ -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 **)**
 - :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
 
@@ -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 **)**
 - :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.)`
 .. |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 **)**
 - :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
 
@@ -241,7 +241,7 @@ Offsets :ref:`texture_progress<class_TextureProgressBar_property_texture_progres
 - void **set_fill_degrees** **(** :ref:`float<class_float>` value **)**
 - :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>`.
 
@@ -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 **)**
 - :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
 
@@ -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 **)**
 - :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
 
@@ -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 **)**
 - :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
 
@@ -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 **)**
 - :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
 
@@ -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 **)**
 - :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
 

+ 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|
 
-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
 
@@ -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 **)**
 
-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
 

+ 178 - 122
classes/class_tree.rst

@@ -186,125 +186,133 @@ Theme Properties
 .. table::
    :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
 
@@ -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:
 
 .. 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**
 
-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
 
@@ -1808,7 +1840,19 @@ The check icon to display when the :ref:`TreeItem.CELL_MODE_CHECK<class_TreeItem
 
 :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
 
@@ -1832,7 +1876,19 @@ The arrow icon to display for the :ref:`TreeItem.CELL_MODE_RANGE<class_TreeItem_
 
 :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
 

+ 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_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_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|
 
-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
 
@@ -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:
 
 .. 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|
 
-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
 

+ 1 - 1
classes/class_xrinterface.rst

@@ -610,7 +610,7 @@ Is ``true`` if this interface supports passthrough.
 
 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:
 

+ 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|
 
-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