浏览代码

classref: Sync with current master branch (929333fe2)

Rémi Verschelde 2 年之前
父节点
当前提交
fc314262d1
共有 100 个文件被更改,包括 2707 次插入1727 次删除
  1. 29 26
      classes/[email protected]
  2. 9 2
      classes/[email protected]
  3. 16 17
      classes/class_aescontext.rst
  4. 28 0
      classes/class_animation.rst
  5. 58 6
      classes/class_animationnode.rst
  6. 69 11
      classes/class_animationnodeblendspace1d.rst
  7. 34 0
      classes/class_animationnodestatemachine.rst
  8. 34 48
      classes/class_animationnodetransition.rst
  9. 21 0
      classes/class_animationplayer.rst
  10. 21 16
      classes/class_animationtree.rst
  11. 38 36
      classes/class_area2d.rst
  12. 52 50
      classes/class_area3d.rst
  13. 52 42
      classes/class_array.rst
  14. 6 5
      classes/class_astar3d.rst
  15. 32 32
      classes/class_audioserver.rst
  16. 2 6
      classes/class_audiostreammp3.rst
  17. 14 0
      classes/class_audiostreamplayer.rst
  18. 14 0
      classes/class_audiostreamplayer2d.rst
  19. 14 0
      classes/class_audiostreamplayer3d.rst
  20. 2 2
      classes/class_callable.rst
  21. 49 19
      classes/class_camera2d.rst
  22. 1 0
      classes/class_canvasgroup.rst
  23. 6 8
      classes/class_color.rst
  24. 31 30
      classes/class_control.rst
  25. 16 14
      classes/class_crypto.rst
  26. 21 19
      classes/class_decal.rst
  27. 4 4
      classes/class_dictionary.rst
  28. 2 2
      classes/class_diraccess.rst
  29. 344 314
      classes/class_displayserver.rst
  30. 42 39
      classes/class_dtlsserver.rst
  31. 64 44
      classes/class_editorimportplugin.rst
  32. 20 20
      classes/class_editorinspectorplugin.rst
  33. 21 16
      classes/class_editorplugin.rst
  34. 5 2
      classes/class_editorscenepostimport.rst
  35. 1 2
      classes/class_editorscript.rst
  36. 17 1
      classes/class_editorsettings.rst
  37. 12 15
      classes/class_editortranslationparserplugin.rst
  38. 6 6
      classes/class_enetconnection.rst
  39. 5 5
      classes/class_expression.rst
  40. 2 2
      classes/class_fileaccess.rst
  41. 21 21
      classes/class_fogvolume.rst
  42. 13 31
      classes/class_fontfile.rst
  43. 5 5
      classes/class_fontvariation.rst
  44. 3 4
      classes/class_geometry2d.rst
  45. 18 18
      classes/class_gltfdocument.rst
  46. 16 16
      classes/class_gltfdocumentextension.rst
  47. 10 2
      classes/class_gltfstate.rst
  48. 8 8
      classes/class_gpuparticlesattractorbox3d.rst
  49. 7 7
      classes/class_gpuparticlesattractorvectorfield3d.rst
  50. 8 8
      classes/class_gpuparticlescollisionbox3d.rst
  51. 19 19
      classes/class_gpuparticlescollisionheightfield3d.rst
  52. 13 13
      classes/class_gpuparticlescollisionsdf3d.rst
  53. 3 2
      classes/class_graphedit.rst
  54. 12 15
      classes/class_hashingcontext.rst
  55. 9 10
      classes/class_hmaccontext.rst
  56. 12 11
      classes/class_httpclient.rst
  57. 41 27
      classes/class_httprequest.rst
  58. 133 137
      classes/class_image.rst
  59. 10 10
      classes/class_inputeventmidi.rst
  60. 65 0
      classes/class_label3d.rst
  61. 7 8
      classes/class_mainloop.rst
  62. 8 8
      classes/class_multiplayerapiextension.rst
  63. 9 9
      classes/class_mutex.rst
  64. 120 25
      classes/class_navigationagent2d.rst
  65. 105 29
      classes/class_navigationagent3d.rst
  66. 16 4
      classes/class_navigationserver2d.rst
  67. 4 4
      classes/class_navigationserver3d.rst
  68. 2 2
      classes/class_node.rst
  69. 21 17
      classes/class_noise.rst
  70. 21 0
      classes/class_noisetexture2d.rst
  71. 11 11
      classes/class_object.rst
  72. 2 0
      classes/class_omnilight3d.rst
  73. 45 3
      classes/class_openxrinterface.rst
  74. 3 3
      classes/class_os.rst
  75. 2 2
      classes/class_packedscene.rst
  76. 11 11
      classes/class_packetpeerdtls.rst
  77. 2 0
      classes/class_physicspointqueryparameters2d.rst
  78. 9 15
      classes/class_physicsserver2d.rst
  79. 13 19
      classes/class_physicsserver3d.rst
  80. 3 1
      classes/class_primitivemesh.rst
  81. 194 46
      classes/class_projectsettings.rst
  82. 0 0
      classes/class_refcounted.rst
  83. 30 28
      classes/class_reflectionprobe.rst
  84. 44 31
      classes/class_renderingdevice.rst
  85. 126 114
      classes/class_renderingserver.rst
  86. 0 0
      classes/class_resource.rst
  87. 2 2
      classes/class_resourceformatloader.rst
  88. 2 2
      classes/class_resourceformatsaver.rst
  89. 1 1
      classes/class_richtexteffect.rst
  90. 93 0
      classes/class_richtextlabel.rst
  91. 2 2
      classes/class_scenetree.rst
  92. 2 2
      classes/class_scenetreetimer.rst
  93. 9 9
      classes/class_semaphore.rst
  94. 7 1
      classes/class_signal.rst
  95. 2 0
      classes/class_spotlight3d.rst
  96. 3 3
      classes/class_sprite2d.rst
  97. 117 33
      classes/class_spritebase3d.rst
  98. 1 1
      classes/class_streampeer.rst
  99. 17 55
      classes/class_streampeertls.rst
  100. 1 1
      classes/class_string.rst

+ 29 - 26
classes/[email protected]

@@ -63,8 +63,6 @@ Methods
    +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Array<class_Array>`           | :ref:`range<class_@GDScript_method_range>` **(** ... **)** |vararg|                                                                                                 |
    +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`         | :ref:`str<class_@GDScript_method_str>` **(** ... **)** |vararg|                                                                                                     |
-   +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`type_exists<class_@GDScript_method_type_exists>` **(** :ref:`StringName<class_StringName>` type **)**                                                         |
    +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
@@ -201,15 +199,28 @@ See also :ref:`@GlobalScope.PROPERTY_HINT_DIR<class_@GlobalScope_constant_PROPER
 
 **@export_enum** **(** :ref:`String<class_String>` names, ... **)** |vararg|
 
-Export a :ref:`String<class_String>` or integer property as an enumerated list of options. If the property is an integer field, then the index of the value is stored, in the same order the values are provided. You can add specific identifiers for allowed values using a colon.
+Export an :ref:`int<class_int>` or :ref:`String<class_String>` property as an enumerated list of options. If the property is an :ref:`int<class_int>`, then the index of the value is stored, in the same order the values are provided. You can add specific identifiers for allowed values using a colon. If the property is a :ref:`String<class_String>`, then the value is stored.
 
 See also :ref:`@GlobalScope.PROPERTY_HINT_ENUM<class_@GlobalScope_constant_PROPERTY_HINT_ENUM>`.
 
 ::
 
-    @export_enum("Rebecca", "Mary", "Leah") var character_name: String
     @export_enum("Warrior", "Magician", "Thief") var character_class: int
     @export_enum("Slow:30", "Average:60", "Very Fast:200") var character_speed: int
+    @export_enum("Rebecca", "Mary", "Leah") var character_name: String
+
+If you want to set an initial value, you must specify it explicitly:
+
+::
+
+    @export_enum("Rebecca", "Mary", "Leah") var character_name: String = "Rebecca"
+
+If you want to use named GDScript enums, then use :ref:`@export<class_@GDScript_annotation_@export>` instead:
+
+::
+
+    enum CharacterName {REBECCA, MARY, LEAH}
+    @export var character_name: CharacterName
 
 .. rst-class:: classref-item-separator
 
@@ -512,7 +523,7 @@ See also :ref:`@GlobalScope.PROPERTY_HINT_PLACEHOLDER_TEXT<class_@GlobalScope_co
 
 **@export_range** **(** :ref:`float<class_float>` min, :ref:`float<class_float>` max, :ref:`float<class_float>` step=1.0, :ref:`String<class_String>` extra_hints="", ... **)** |vararg|
 
-Export a numeric property as a range value. The range must be defined by ``min`` and ``max``, as well as an optional ``step`` and a variety of extra hints. The ``step`` defaults to ``1`` for integer properties. For floating-point numbers this value depends on your ``EditorSettings.interface/inspector/default_float_step`` setting.
+Export an :ref:`int<class_int>` or :ref:`float<class_float>` property as a range value. The range must be defined by ``min`` and ``max``, as well as an optional ``step`` and a variety of extra hints. The ``step`` defaults to ``1`` for integer properties. For floating-point numbers this value depends on your ``EditorSettings.interface/inspector/default_float_step`` setting.
 
 If hints ``"or_greater"`` and ``"or_less"`` are provided, the editor widget will not cap the value at range boundaries. The ``"exp"`` hint will make the edited values on range to change exponentially. The ``"hide_slider"`` hint will hide the slider element of the editor widget.
 
@@ -579,6 +590,8 @@ Add a custom icon to the current script. The script must be registered as a glob
 
 \ **Note:** As annotations describe their subject, the ``@icon`` annotation must be placed before the class definition and inheritance.
 
+\ **Note:** Unlike other annotations, the argument of the ``@icon`` annotation must be a string literal (constant expressions are not supported).
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -603,13 +616,22 @@ Mark the following property as assigned on :ref:`Node<class_Node>`'s ready state
 
 .. rst-class:: classref-annotation
 
-**@rpc** **(** :ref:`String<class_String>` mode="", :ref:`String<class_String>` sync="", :ref:`String<class_String>` transfer_mode="", :ref:`int<class_int>` transfer_channel=0, ... **)** |vararg|
+**@rpc** **(** :ref:`String<class_String>` mode="authority", :ref:`String<class_String>` sync="call_remote", :ref:`String<class_String>` transfer_mode="unreliable", :ref:`int<class_int>` transfer_channel=0, ... **)** |vararg|
 
 Mark the following method for remote procedure calls. See :doc:`High-level multiplayer <../tutorials/networking/high_level_multiplayer>`.
 
+The order of ``mode``, ``sync`` and ``transfer_mode`` does not matter and all arguments can be omitted, but ``transfer_channel`` always has to be the last argument. The accepted values for ``mode`` are ``"any_peer"`` or ``"authority"``, for ``sync`` are ``"call_remote"`` or ``"call_local"`` and for ``transfer_mode`` are ``"unreliable"``, ``"unreliable_ordered"`` or ``"reliable"``.
+
 ::
 
-    @rpc()
+    @rpc
+    func fn(): pass
+    
+    @rpc("any_peer", "unreliable_ordered")
+    func fn_update_pos(): pass
+    
+    @rpc("authority", "call_remote", "unreliable", 0) # Equivalent to @rpc
+    func fn_default(): pass
 
 .. rst-class:: classref-item-separator
 
@@ -984,25 +1006,6 @@ Output:
 
 ----
 
-.. _class_@GDScript_method_str:
-
-.. rst-class:: classref-method
-
-:ref:`String<class_String>` **str** **(** ... **)** |vararg|
-
-Converts one or more arguments to a :ref:`String<class_String>` in the best way possible.
-
-::
-
-    var a = [10, 20, 30]
-    var b = str(a);
-    len(a) # Returns 3
-    len(b) # Returns 12
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_@GDScript_method_type_exists:
 
 .. rst-class:: classref-method

+ 9 - 2
classes/[email protected]

@@ -3417,7 +3417,7 @@ Additionally, other keywords can be included: ``"exp"`` for exponential range ed
 
 :ref:`PropertyHint<enum_@GlobalScope_PropertyHint>` **PROPERTY_HINT_ENUM** = ``2``
 
-Hints that an :ref:`int<class_int>`, :ref:`float<class_float>`, or :ref:`String<class_String>` property is an enumerated value to pick in a list specified via a hint string.
+Hints that an :ref:`int<class_int>` or :ref:`String<class_String>` property is an enumerated value to pick in a list specified via a hint string.
 
 The hint string is a comma separated list of names such as ``"Hello,Something,Else"``. Whitespaces are **not** removed from either end of a name. For integer and float properties, the first name in the list has value 0, the next 1, and so on. Explicit values can also be specified by appending ``:integer`` to the name, e.g. ``"Zero,One,Three:3,Four,Six:6"``.
 
@@ -6922,7 +6922,14 @@ Returns the position of the first non-zero digit, after the decimal point. Note
 
 :ref:`String<class_String>` **str** **(** ... **)** |vararg|
 
-Converts one or more arguments of any :ref:`Variant<class_Variant>` type to :ref:`String<class_String>` in the best way possible.
+Converts one or more arguments of any :ref:`Variant<class_Variant>` type to a :ref:`String<class_String>` in the best way possible.
+
+::
+
+    var a = [10, 20, 30]
+    var b = str(a)
+    print(len(a)) # Prints 3 (the number of elements in the array).
+    print(len(b)) # Prints 12 (the length of the string "[10, 20, 30]").
 
 .. rst-class:: classref-item-separator
 

+ 16 - 17
classes/class_aescontext.rst

@@ -59,39 +59,38 @@ This class provides access to AES encryption/decryption of raw data. Both AES-EC
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     using System.Diagnostics;
     
-    public class Example : Node
+    public partial class MyNode : Node
     {
-        public AESContext Aes = new AESContext();
+        private AesContext _aes = new AesContext();
     
         public override void _Ready()
         {
             string key = "My secret key!!!"; // Key must be either 16 or 32 bytes.
             string data = "My secret text!!"; // Data size must be multiple of 16 bytes, apply padding if needed.
             // Encrypt ECB
-            Aes.Start(AESContext.Mode.EcbEncrypt, key.ToUTF8());
-            byte[] encrypted = Aes.Update(data.ToUTF8());
-            Aes.Finish();
+            _aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8());
+            byte[] encrypted = _aes.Update(data.ToUtf8());
+            _aes.Finish();
             // Decrypt ECB
-            Aes.Start(AESContext.Mode.EcbDecrypt, key.ToUTF8());
-            byte[] decrypted = Aes.Update(encrypted);
-            Aes.Finish();
+            _aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8());
+            byte[] decrypted = _aes.Update(encrypted);
+            _aes.Finish();
             // Check ECB
-            Debug.Assert(decrypted == data.ToUTF8());
+            Debug.Assert(decrypted == data.ToUtf8());
     
             string iv = "My secret iv!!!!"; // IV must be of exactly 16 bytes.
             // Encrypt CBC
-            Aes.Start(AESContext.Mode.EcbEncrypt, key.ToUTF8(), iv.ToUTF8());
-            encrypted = Aes.Update(data.ToUTF8());
-            Aes.Finish();
+            _aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8(), iv.ToUtf8());
+            encrypted = _aes.Update(data.ToUtf8());
+            _aes.Finish();
             // Decrypt CBC
-            Aes.Start(AESContext.Mode.EcbDecrypt, key.ToUTF8(), iv.ToUTF8());
-            decrypted = Aes.Update(encrypted);
-            Aes.Finish();
+            _aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8(), iv.ToUtf8());
+            decrypted = _aes.Update(encrypted);
+            _aes.Finish();
             // Check CBC
-            Debug.Assert(decrypted == data.ToUTF8());
+            Debug.Assert(decrypted == data.ToUtf8());
         }
     }
 

+ 28 - 0
classes/class_animation.rst

@@ -98,12 +98,16 @@ Methods
    +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                                      | :ref:`audio_track_insert_key<class_Animation_method_audio_track_insert_key>` **(** :ref:`int<class_int>` track_idx, :ref:`float<class_float>` time, :ref:`Resource<class_Resource>` stream, :ref:`float<class_float>` start_offset=0, :ref:`float<class_float>` end_offset=0 **)**                         |
    +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                    | :ref:`audio_track_is_use_blend<class_Animation_method_audio_track_is_use_blend>` **(** :ref:`int<class_int>` track_idx **)** |const|                                                                                                                                                                       |
+   +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                       | :ref:`audio_track_set_key_end_offset<class_Animation_method_audio_track_set_key_end_offset>` **(** :ref:`int<class_int>` track_idx, :ref:`int<class_int>` key_idx, :ref:`float<class_float>` offset **)**                                                                                                  |
    +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                       | :ref:`audio_track_set_key_start_offset<class_Animation_method_audio_track_set_key_start_offset>` **(** :ref:`int<class_int>` track_idx, :ref:`int<class_int>` key_idx, :ref:`float<class_float>` offset **)**                                                                                              |
    +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                       | :ref:`audio_track_set_key_stream<class_Animation_method_audio_track_set_key_stream>` **(** :ref:`int<class_int>` track_idx, :ref:`int<class_int>` key_idx, :ref:`Resource<class_Resource>` stream **)**                                                                                                    |
    +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                       | :ref:`audio_track_set_use_blend<class_Animation_method_audio_track_set_use_blend>` **(** :ref:`int<class_int>` track_idx, :ref:`bool<class_bool>` enable **)**                                                                                                                                             |
+   +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector2<class_Vector2>`                              | :ref:`bezier_track_get_key_in_handle<class_Animation_method_bezier_track_get_key_in_handle>` **(** :ref:`int<class_int>` track_idx, :ref:`int<class_int>` key_idx **)** |const|                                                                                                                            |
    +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector2<class_Vector2>`                              | :ref:`bezier_track_get_key_out_handle<class_Animation_method_bezier_track_get_key_out_handle>` **(** :ref:`int<class_int>` track_idx, :ref:`int<class_int>` key_idx **)** |const|                                                                                                                          |
@@ -651,6 +655,18 @@ Inserts an Audio Track key at the given ``time`` in seconds. The ``track_idx`` m
 
 ----
 
+.. _class_Animation_method_audio_track_is_use_blend:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **audio_track_is_use_blend** **(** :ref:`int<class_int>` track_idx **)** |const|
+
+Returns ``true`` if the track at ``idx`` will be blended with other animations.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Animation_method_audio_track_set_key_end_offset:
 
 .. rst-class:: classref-method
@@ -687,6 +703,18 @@ Sets the stream of the key identified by ``key_idx`` to value ``stream``. The ``
 
 ----
 
+.. _class_Animation_method_audio_track_set_use_blend:
+
+.. rst-class:: classref-method
+
+void **audio_track_set_use_blend** **(** :ref:`int<class_int>` track_idx, :ref:`bool<class_bool>` enable **)**
+
+Sets whether the track will be blended with other animations. If ``true``, the audio playback volume changes depending on the blend value.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Animation_method_bezier_track_get_key_in_handle:
 
 .. rst-class:: classref-method

+ 58 - 6
classes/class_animationnode.rst

@@ -69,7 +69,7 @@ Methods
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                 | :ref:`_process<class_AnimationNode_method__process>` **(** :ref:`float<class_float>` time, :ref:`bool<class_bool>` seek, :ref:`bool<class_bool>` is_external_seeking **)** |virtual| |const|                                                                                                                                                                                                                |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                      | :ref:`add_input<class_AnimationNode_method_add_input>` **(** :ref:`String<class_String>` name **)**                                                                                                                                                                                                                                                                                                         |
+   | :ref:`bool<class_bool>`                   | :ref:`add_input<class_AnimationNode_method_add_input>` **(** :ref:`String<class_String>` name **)**                                                                                                                                                                                                                                                                                                         |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                      | :ref:`blend_animation<class_AnimationNode_method_blend_animation>` **(** :ref:`StringName<class_StringName>` animation, :ref:`float<class_float>` time, :ref:`float<class_float>` delta, :ref:`bool<class_bool>` seeked, :ref:`bool<class_bool>` is_external_seeking, :ref:`float<class_float>` blend, :ref:`LoopedFlag<enum_Animation_LoopedFlag>` looped_flag=0 **)**                                     |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -77,9 +77,11 @@ Methods
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                 | :ref:`blend_node<class_AnimationNode_method_blend_node>` **(** :ref:`StringName<class_StringName>` name, :ref:`AnimationNode<class_AnimationNode>` node, :ref:`float<class_float>` time, :ref:`bool<class_bool>` seek, :ref:`bool<class_bool>` is_external_seeking, :ref:`float<class_float>` blend, :ref:`FilterAction<enum_AnimationNode_FilterAction>` filter=0, :ref:`bool<class_bool>` sync=true **)** |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                     | :ref:`find_input<class_AnimationNode_method_find_input>` **(** :ref:`String<class_String>` name **)** |const|                                                                                                                                                                                                                                                                                               |
+   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                     | :ref:`get_input_count<class_AnimationNode_method_get_input_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                      |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`               | :ref:`get_input_name<class_AnimationNode_method_get_input_name>` **(** :ref:`int<class_int>` input **)**                                                                                                                                                                                                                                                                                                    |
+   | :ref:`String<class_String>`               | :ref:`get_input_name<class_AnimationNode_method_get_input_name>` **(** :ref:`int<class_int>` input **)** |const|                                                                                                                                                                                                                                                                                            |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Variant<class_Variant>`             | :ref:`get_parameter<class_AnimationNode_method_get_parameter>` **(** :ref:`StringName<class_StringName>` name **)** |const|                                                                                                                                                                                                                                                                                 |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -89,6 +91,8 @@ Methods
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                      | :ref:`set_filter_path<class_AnimationNode_method_set_filter_path>` **(** :ref:`NodePath<class_NodePath>` path, :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                         |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                   | :ref:`set_input_name<class_AnimationNode_method_set_input_name>` **(** :ref:`int<class_int>` input, :ref:`String<class_String>` name **)**                                                                                                                                                                                                                                                                  |
+   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                      | :ref:`set_parameter<class_AnimationNode_method_set_parameter>` **(** :ref:`StringName<class_StringName>` name, :ref:`Variant<class_Variant>` value **)**                                                                                                                                                                                                                                                    |
    +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
@@ -101,13 +105,37 @@ Methods
 Signals
 -------
 
+.. _class_AnimationNode_signal_animation_node_removed:
+
+.. rst-class:: classref-signal
+
+**animation_node_removed** **(** :ref:`int<class_int>` object_id, :ref:`String<class_String>` name **)**
+
+Emitted by nodes that inherit from this class and that have an internal tree when one of their nodes removes. The nodes that emit this signal are :ref:`AnimationNodeBlendSpace1D<class_AnimationNodeBlendSpace1D>`, :ref:`AnimationNodeBlendSpace2D<class_AnimationNodeBlendSpace2D>`, :ref:`AnimationNodeStateMachine<class_AnimationNodeStateMachine>`, and :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AnimationNode_signal_animation_node_renamed:
+
+.. rst-class:: classref-signal
+
+**animation_node_renamed** **(** :ref:`int<class_int>` object_id, :ref:`String<class_String>` old_name, :ref:`String<class_String>` new_name **)**
+
+Emitted by nodes that inherit from this class and that have an internal tree when one of their node names changes. The nodes that emit this signal are :ref:`AnimationNodeBlendSpace1D<class_AnimationNodeBlendSpace1D>`, :ref:`AnimationNodeBlendSpace2D<class_AnimationNodeBlendSpace2D>`, :ref:`AnimationNodeStateMachine<class_AnimationNodeStateMachine>`, and :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNode_signal_tree_changed:
 
 .. rst-class:: classref-signal
 
 **tree_changed** **(** **)**
 
-Emitted by nodes that inherit from this class and that have an internal tree when one of their nodes changes. The nodes that emit this signal are :ref:`AnimationNodeBlendSpace1D<class_AnimationNodeBlendSpace1D>`, :ref:`AnimationNodeBlendSpace2D<class_AnimationNodeBlendSpace2D>`, :ref:`AnimationNodeStateMachine<class_AnimationNodeStateMachine>`, and :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`.
+Emitted by nodes that inherit from this class and that have an internal tree when one of their nodes changes. The nodes that emit this signal are :ref:`AnimationNodeBlendSpace1D<class_AnimationNodeBlendSpace1D>`, :ref:`AnimationNodeBlendSpace2D<class_AnimationNodeBlendSpace2D>`, :ref:`AnimationNodeStateMachine<class_AnimationNodeStateMachine>`, :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>` and :ref:`AnimationNodeTransition<class_AnimationNodeTransition>`.
 
 .. rst-class:: classref-section-separator
 
@@ -291,9 +319,9 @@ This function should return the time left for the current animation to finish (i
 
 .. rst-class:: classref-method
 
-void **add_input** **(** :ref:`String<class_String>` name **)**
+:ref:`bool<class_bool>` **add_input** **(** :ref:`String<class_String>` name **)**
 
-Adds an input to the node. This is only useful for nodes created for use in an :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`.
+Adds an input to the node. This is only useful for nodes created for use in an :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`. If the addition fails, returns ``false``.
 
 .. rst-class:: classref-item-separator
 
@@ -337,6 +365,18 @@ Blend another animation node (in case this node contains children animation node
 
 ----
 
+.. _class_AnimationNode_method_find_input:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **find_input** **(** :ref:`String<class_String>` name **)** |const|
+
+Returns the input index which corresponds to ``name``. If not found, returns ``-1``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNode_method_get_input_count:
 
 .. rst-class:: classref-method
@@ -353,7 +393,7 @@ Amount of inputs in this node, only useful for nodes that go into :ref:`Animatio
 
 .. rst-class:: classref-method
 
-:ref:`String<class_String>` **get_input_name** **(** :ref:`int<class_int>` input **)**
+:ref:`String<class_String>` **get_input_name** **(** :ref:`int<class_int>` input **)** |const|
 
 Gets the name of an input by index.
 
@@ -409,6 +449,18 @@ Adds or removes a path for the filter.
 
 ----
 
+.. _class_AnimationNode_method_set_input_name:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **set_input_name** **(** :ref:`int<class_int>` input, :ref:`String<class_String>` name **)**
+
+Sets the name of the input at the given ``input`` index. If the setting fails, returns ``false``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNode_method_set_parameter:
 
 .. rst-class:: classref-method

+ 69 - 11
classes/class_animationnodeblendspace1d.rst

@@ -42,17 +42,19 @@ Properties
 .. table::
    :widths: auto
 
-   +-----------------------------+--------------------------------------------------------------------------+-------------+
-   | :ref:`float<class_float>`   | :ref:`max_space<class_AnimationNodeBlendSpace1D_property_max_space>`     | ``1.0``     |
-   +-----------------------------+--------------------------------------------------------------------------+-------------+
-   | :ref:`float<class_float>`   | :ref:`min_space<class_AnimationNodeBlendSpace1D_property_min_space>`     | ``-1.0``    |
-   +-----------------------------+--------------------------------------------------------------------------+-------------+
-   | :ref:`float<class_float>`   | :ref:`snap<class_AnimationNodeBlendSpace1D_property_snap>`               | ``0.1``     |
-   +-----------------------------+--------------------------------------------------------------------------+-------------+
-   | :ref:`bool<class_bool>`     | :ref:`sync<class_AnimationNodeBlendSpace1D_property_sync>`               | ``false``   |
-   +-----------------------------+--------------------------------------------------------------------------+-------------+
-   | :ref:`String<class_String>` | :ref:`value_label<class_AnimationNodeBlendSpace1D_property_value_label>` | ``"value"`` |
-   +-----------------------------+--------------------------------------------------------------------------+-------------+
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
+   | :ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` | :ref:`blend_mode<class_AnimationNodeBlendSpace1D_property_blend_mode>`   | ``0``       |
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
+   | :ref:`float<class_float>`                                  | :ref:`max_space<class_AnimationNodeBlendSpace1D_property_max_space>`     | ``1.0``     |
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
+   | :ref:`float<class_float>`                                  | :ref:`min_space<class_AnimationNodeBlendSpace1D_property_min_space>`     | ``-1.0``    |
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
+   | :ref:`float<class_float>`                                  | :ref:`snap<class_AnimationNodeBlendSpace1D_property_snap>`               | ``0.1``     |
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
+   | :ref:`bool<class_bool>`                                    | :ref:`sync<class_AnimationNodeBlendSpace1D_property_sync>`               | ``false``   |
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
+   | :ref:`String<class_String>`                                | :ref:`value_label<class_AnimationNodeBlendSpace1D_property_value_label>` | ``"value"`` |
+   +------------------------------------------------------------+--------------------------------------------------------------------------+-------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -84,9 +86,65 @@ Methods
 
 .. rst-class:: classref-descriptions-group
 
+Enumerations
+------------
+
+.. _enum_AnimationNodeBlendSpace1D_BlendMode:
+
+.. rst-class:: classref-enumeration
+
+enum **BlendMode**:
+
+.. _class_AnimationNodeBlendSpace1D_constant_BLEND_MODE_INTERPOLATED:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` **BLEND_MODE_INTERPOLATED** = ``0``
+
+The interpolation between animations is linear.
+
+.. _class_AnimationNodeBlendSpace1D_constant_BLEND_MODE_DISCRETE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` **BLEND_MODE_DISCRETE** = ``1``
+
+The blend space plays the animation of the node the blending position is closest to. Useful for frame-by-frame 2D animations.
+
+.. _class_AnimationNodeBlendSpace1D_constant_BLEND_MODE_DISCRETE_CARRY:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` **BLEND_MODE_DISCRETE_CARRY** = ``2``
+
+Similar to :ref:`BLEND_MODE_DISCRETE<class_AnimationNodeBlendSpace1D_constant_BLEND_MODE_DISCRETE>`, but starts the new animation at the last animation's playback position.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Property Descriptions
 ---------------------
 
+.. _class_AnimationNodeBlendSpace1D_property_blend_mode:
+
+.. rst-class:: classref-property
+
+:ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` **blend_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_blend_mode** **(** :ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` value **)**
+- :ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` **get_blend_mode** **(** **)**
+
+Controls the interpolation between animations. See :ref:`BlendMode<enum_AnimationNodeBlendSpace1D_BlendMode>` constants.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNodeBlendSpace1D_property_max_space:
 
 .. rst-class:: classref-property

+ 34 - 0
classes/class_animationnodestatemachine.rst

@@ -47,6 +47,18 @@ Tutorials
 
 .. rst-class:: classref-reftable-group
 
+Properties
+----------
+
+.. table::
+   :widths: auto
+
+   +-------------------------+----------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>` | :ref:`allow_transition_to_self<class_AnimationNodeStateMachine_property_allow_transition_to_self>` | ``false`` |
+   +-------------------------+----------------------------------------------------------------------------------------------------+-----------+
+
+.. rst-class:: classref-reftable-group
+
 Methods
 -------
 
@@ -99,6 +111,28 @@ Methods
 
 .. rst-class:: classref-descriptions-group
 
+Property Descriptions
+---------------------
+
+.. _class_AnimationNodeStateMachine_property_allow_transition_to_self:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **allow_transition_to_self** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_allow_transition_to_self** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **is_allow_transition_to_self** **(** **)**
+
+If ``true``, allows teleport to the self state with :ref:`AnimationNodeStateMachinePlayback.travel<class_AnimationNodeStateMachinePlayback_method_travel>`. When the reset option is enabled in :ref:`AnimationNodeStateMachinePlayback.travel<class_AnimationNodeStateMachinePlayback_method_travel>`, the animation is restarted. If ``false``, nothing happens on the teleportation to the self state.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Method Descriptions
 -------------------
 

+ 34 - 48
classes/class_animationnodetransition.rst

@@ -40,15 +40,15 @@ Properties
 .. table::
    :widths: auto
 
-   +---------------------------+------------------------------------------------------------------------------+----------+
-   | :ref:`int<class_int>`     | :ref:`enabled_inputs<class_AnimationNodeTransition_property_enabled_inputs>` | ``0``    |
-   +---------------------------+------------------------------------------------------------------------------+----------+
-   | :ref:`bool<class_bool>`   | :ref:`reset<class_AnimationNodeTransition_property_reset>`                   | ``true`` |
-   +---------------------------+------------------------------------------------------------------------------+----------+
-   | :ref:`Curve<class_Curve>` | :ref:`xfade_curve<class_AnimationNodeTransition_property_xfade_curve>`       |          |
-   +---------------------------+------------------------------------------------------------------------------+----------+
-   | :ref:`float<class_float>` | :ref:`xfade_time<class_AnimationNodeTransition_property_xfade_time>`         | ``0.0``  |
-   +---------------------------+------------------------------------------------------------------------------+----------+
+   +---------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`   | :ref:`allow_transition_to_self<class_AnimationNodeTransition_property_allow_transition_to_self>` | ``false`` |
+   +---------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`int<class_int>`     | :ref:`input_count<class_AnimationNodeTransition_property_input_count>`                           | ``0``     |
+   +---------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`Curve<class_Curve>` | :ref:`xfade_curve<class_AnimationNodeTransition_property_xfade_curve>`                           |           |
+   +---------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>` | :ref:`xfade_time<class_AnimationNodeTransition_property_xfade_time>`                             | ``0.0``   |
+   +---------------------------+--------------------------------------------------------------------------------------------------+-----------+
 
 .. rst-class:: classref-reftable-group
 
@@ -58,17 +58,15 @@ Methods
 .. table::
    :widths: auto
 
-   +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`       | :ref:`find_input_caption<class_AnimationNodeTransition_method_find_input_caption>` **(** :ref:`String<class_String>` caption **)** |const|                               |
-   +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>` | :ref:`get_input_caption<class_AnimationNodeTransition_method_get_input_caption>` **(** :ref:`int<class_int>` input **)** |const|                                         |
-   +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`     | :ref:`is_input_set_as_auto_advance<class_AnimationNodeTransition_method_is_input_set_as_auto_advance>` **(** :ref:`int<class_int>` input **)** |const|                   |
-   +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                        | :ref:`set_input_as_auto_advance<class_AnimationNodeTransition_method_set_input_as_auto_advance>` **(** :ref:`int<class_int>` input, :ref:`bool<class_bool>` enable **)** |
-   +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                        | :ref:`set_input_caption<class_AnimationNodeTransition_method_set_input_caption>` **(** :ref:`int<class_int>` input, :ref:`String<class_String>` caption **)**            |
-   +-----------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`is_input_reset<class_AnimationNodeTransition_method_is_input_reset>` **(** :ref:`int<class_int>` input **)** |const|                                               |
+   +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`is_input_set_as_auto_advance<class_AnimationNodeTransition_method_is_input_set_as_auto_advance>` **(** :ref:`int<class_int>` input **)** |const|                   |
+   +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`set_input_as_auto_advance<class_AnimationNodeTransition_method_set_input_as_auto_advance>` **(** :ref:`int<class_int>` input, :ref:`bool<class_bool>` enable **)** |
+   +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`set_input_reset<class_AnimationNodeTransition_method_set_input_reset>` **(** :ref:`int<class_int>` input, :ref:`bool<class_bool>` enable **)**                     |
+   +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -79,35 +77,35 @@ Methods
 Property Descriptions
 ---------------------
 
-.. _class_AnimationNodeTransition_property_enabled_inputs:
+.. _class_AnimationNodeTransition_property_allow_transition_to_self:
 
 .. rst-class:: classref-property
 
-:ref:`int<class_int>` **enabled_inputs** = ``0``
+:ref:`bool<class_bool>` **allow_transition_to_self** = ``false``
 
 .. rst-class:: classref-property-setget
 
-- void **set_enabled_inputs** **(** :ref:`int<class_int>` value **)**
-- :ref:`int<class_int>` **get_enabled_inputs** **(** **)**
+- void **set_allow_transition_to_self** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **is_allow_transition_to_self** **(** **)**
 
-The number of enabled input ports for this node. The maximum is ``31``.
+If ``true``, allows transition to the self state. When the reset option is enabled in input, the animation is restarted. If ``false``, nothing happens on the transition to the self state.
 
 .. rst-class:: classref-item-separator
 
 ----
 
-.. _class_AnimationNodeTransition_property_reset:
+.. _class_AnimationNodeTransition_property_input_count:
 
 .. rst-class:: classref-property
 
-:ref:`bool<class_bool>` **reset** = ``true``
+:ref:`int<class_int>` **input_count** = ``0``
 
 .. rst-class:: classref-property-setget
 
-- void **set_reset** **(** :ref:`bool<class_bool>` value **)**
-- :ref:`bool<class_bool>` **is_reset** **(** **)**
+- void **set_input_count** **(** :ref:`int<class_int>` value **)**
+- :ref:`int<class_int>` **get_input_count** **(** **)**
 
-If ``true``, the destination animation is played back from the beginning when switched.
+The number of enabled input ports for this node.
 
 .. rst-class:: classref-item-separator
 
@@ -152,25 +150,13 @@ Cross-fading time (in seconds) between each animation connected to the inputs.
 Method Descriptions
 -------------------
 
-.. _class_AnimationNodeTransition_method_find_input_caption:
+.. _class_AnimationNodeTransition_method_is_input_reset:
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **find_input_caption** **(** :ref:`String<class_String>` caption **)** |const|
+:ref:`bool<class_bool>` **is_input_reset** **(** :ref:`int<class_int>` input **)** |const|
 
-Returns the input index which corresponds to ``caption``. If not found, returns ``-1``.
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_AnimationNodeTransition_method_get_input_caption:
-
-.. rst-class:: classref-method
-
-:ref:`String<class_String>` **get_input_caption** **(** :ref:`int<class_int>` input **)** |const|
-
-Returns the name of the input at the given ``input`` index. This name is displayed in the editor next to the node input.
+Returns whether the animation restarts when the animation transitions from the other animation.
 
 .. rst-class:: classref-item-separator
 
@@ -200,13 +186,13 @@ Enables or disables auto-advance for the given ``input`` index. If enabled, stat
 
 ----
 
-.. _class_AnimationNodeTransition_method_set_input_caption:
+.. _class_AnimationNodeTransition_method_set_input_reset:
 
 .. rst-class:: classref-method
 
-void **set_input_caption** **(** :ref:`int<class_int>` input, :ref:`String<class_String>` caption **)**
+void **set_input_reset** **(** :ref:`int<class_int>` input, :ref:`bool<class_bool>` enable **)**
 
-Sets the name of the input at the given ``input`` index. This name is displayed in the editor next to the node input.
+If ``true``, the destination animation is restarted when the animation transitions.
 
 .. |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.)`

+ 21 - 0
classes/class_animationplayer.rst

@@ -49,6 +49,8 @@ Properties
    +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+--------------------+
    | :ref:`String<class_String>`                                                    | :ref:`assigned_animation<class_AnimationPlayer_property_assigned_animation>`                   |                    |
    +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+--------------------+
+   | :ref:`int<class_int>`                                                          | :ref:`audio_max_polyphony<class_AnimationPlayer_property_audio_max_polyphony>`                 | ``32``             |
+   +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+--------------------+
    | :ref:`String<class_String>`                                                    | :ref:`autoplay<class_AnimationPlayer_property_autoplay>`                                       | ``""``             |
    +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+--------------------+
    | :ref:`String<class_String>`                                                    | :ref:`current_animation<class_AnimationPlayer_property_current_animation>`                     | ``""``             |
@@ -312,6 +314,25 @@ If playing, the the current animation's key, otherwise, the animation last playe
 
 ----
 
+.. _class_AnimationPlayer_property_audio_max_polyphony:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **audio_max_polyphony** = ``32``
+
+.. rst-class:: classref-property-setget
+
+- void **set_audio_max_polyphony** **(** :ref:`int<class_int>` value **)**
+- :ref:`int<class_int>` **get_audio_max_polyphony** **(** **)**
+
+The number of possible simultaneous sounds for each of the assigned AudioStreamPlayers.
+
+For example, if this value is ``32`` and the animation has two audio tracks, the two :ref:`AudioStreamPlayer<class_AudioStreamPlayer>`\ s assigned can play simultaneously up to ``32`` voices each.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationPlayer_property_autoplay:
 
 .. rst-class:: classref-property

+ 21 - 16
classes/class_animationtree.rst

@@ -47,6 +47,8 @@ Properties
    +------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------+
    | :ref:`NodePath<class_NodePath>`                                              | :ref:`anim_player<class_AnimationTree_property_anim_player>`                                   | ``NodePath("")``  |
    +------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------+
+   | :ref:`int<class_int>`                                                        | :ref:`audio_max_polyphony<class_AnimationTree_property_audio_max_polyphony>`                   | ``32``            |
+   +------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------+
    | :ref:`AnimationProcessCallback<enum_AnimationTree_AnimationProcessCallback>` | :ref:`process_callback<class_AnimationTree_property_process_callback>`                         | ``1``             |
    +------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+-------------------+
    | :ref:`NodePath<class_NodePath>`                                              | :ref:`root_motion_track<class_AnimationTree_property_root_motion_track>`                       | ``NodePath("")``  |
@@ -73,8 +75,6 @@ Methods
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector3<class_Vector3>`       | :ref:`get_root_motion_scale<class_AnimationTree_method_get_root_motion_scale>` **(** **)** |const|                                                                                                                                                                                                   |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`rename_parameter<class_AnimationTree_method_rename_parameter>` **(** :ref:`String<class_String>` old_name, :ref:`String<class_String>` new_name **)**                                                                                                                                          |
-   +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -220,6 +220,25 @@ The path to the :ref:`AnimationPlayer<class_AnimationPlayer>` used for animating
 
 ----
 
+.. _class_AnimationTree_property_audio_max_polyphony:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **audio_max_polyphony** = ``32``
+
+.. rst-class:: classref-property-setget
+
+- void **set_audio_max_polyphony** **(** :ref:`int<class_int>` value **)**
+- :ref:`int<class_int>` **get_audio_max_polyphony** **(** **)**
+
+The number of possible simultaneous sounds for each of the assigned AudioStreamPlayers.
+
+For example, if this value is ``32`` and the animation has two audio tracks, the two :ref:`AudioStreamPlayer<class_AudioStreamPlayer>`\ s assigned can play simultaneously up to ``32`` voices each.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationTree_property_process_callback:
 
 .. rst-class:: classref-property
@@ -399,20 +418,6 @@ The most basic example is applying scale to :ref:`CharacterBody3D<class_Characte
 
 
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_AnimationTree_method_rename_parameter:
-
-.. rst-class:: classref-method
-
-void **rename_parameter** **(** :ref:`String<class_String>` old_name, :ref:`String<class_String>` new_name **)**
-
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
-
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 38 - 36
classes/class_area2d.rst

@@ -46,37 +46,37 @@ Properties
 .. table::
    :widths: auto
 
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                       | :ref:`angular_damp<class_Area2D_property_angular_damp>`                                 | ``1.0``           |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`SpaceOverride<enum_Area2D_SpaceOverride>` | :ref:`angular_damp_space_override<class_Area2D_property_angular_damp_space_override>`   | ``0``             |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`StringName<class_StringName>`             | :ref:`audio_bus_name<class_Area2D_property_audio_bus_name>`                             | ``&"Master"``     |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`audio_bus_override<class_Area2D_property_audio_bus_override>`                     | ``false``         |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                       | :ref:`gravity<class_Area2D_property_gravity>`                                           | ``980.0``         |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                   | :ref:`gravity_direction<class_Area2D_property_gravity_direction>`                       | ``Vector2(0, 1)`` |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`gravity_point<class_Area2D_property_gravity_point>`                               | ``false``         |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                   | :ref:`gravity_point_center<class_Area2D_property_gravity_point_center>`                 | ``Vector2(0, 1)`` |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                       | :ref:`gravity_point_distance_scale<class_Area2D_property_gravity_point_distance_scale>` | ``0.0``           |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`SpaceOverride<enum_Area2D_SpaceOverride>` | :ref:`gravity_space_override<class_Area2D_property_gravity_space_override>`             | ``0``             |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                       | :ref:`linear_damp<class_Area2D_property_linear_damp>`                                   | ``0.1``           |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`SpaceOverride<enum_Area2D_SpaceOverride>` | :ref:`linear_damp_space_override<class_Area2D_property_linear_damp_space_override>`     | ``0``             |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`monitorable<class_Area2D_property_monitorable>`                                   | ``true``          |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`monitoring<class_Area2D_property_monitoring>`                                     | ``true``          |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                       | :ref:`priority<class_Area2D_property_priority>`                                         | ``0.0``           |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-------------------+
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`float<class_float>`                       | :ref:`angular_damp<class_Area2D_property_angular_damp>`                               | ``1.0``           |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`SpaceOverride<enum_Area2D_SpaceOverride>` | :ref:`angular_damp_space_override<class_Area2D_property_angular_damp_space_override>` | ``0``             |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`StringName<class_StringName>`             | :ref:`audio_bus_name<class_Area2D_property_audio_bus_name>`                           | ``&"Master"``     |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`audio_bus_override<class_Area2D_property_audio_bus_override>`                   | ``false``         |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`float<class_float>`                       | :ref:`gravity<class_Area2D_property_gravity>`                                         | ``980.0``         |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`Vector2<class_Vector2>`                   | :ref:`gravity_direction<class_Area2D_property_gravity_direction>`                     | ``Vector2(0, 1)`` |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`gravity_point<class_Area2D_property_gravity_point>`                             | ``false``         |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`Vector2<class_Vector2>`                   | :ref:`gravity_point_center<class_Area2D_property_gravity_point_center>`               | ``Vector2(0, 1)`` |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`float<class_float>`                       | :ref:`gravity_point_unit_distance<class_Area2D_property_gravity_point_unit_distance>` | ``0.0``           |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`SpaceOverride<enum_Area2D_SpaceOverride>` | :ref:`gravity_space_override<class_Area2D_property_gravity_space_override>`           | ``0``             |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`float<class_float>`                       | :ref:`linear_damp<class_Area2D_property_linear_damp>`                                 | ``0.1``           |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`SpaceOverride<enum_Area2D_SpaceOverride>` | :ref:`linear_damp_space_override<class_Area2D_property_linear_damp_space_override>`   | ``0``             |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`monitorable<class_Area2D_property_monitorable>`                                 | ``true``          |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`monitoring<class_Area2D_property_monitoring>`                                   | ``true``          |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`float<class_float>`                       | :ref:`priority<class_Area2D_property_priority>`                                       | ``0.0``           |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -441,18 +441,20 @@ If gravity is a point (see :ref:`gravity_point<class_Area2D_property_gravity_poi
 
 ----
 
-.. _class_Area2D_property_gravity_point_distance_scale:
+.. _class_Area2D_property_gravity_point_unit_distance:
 
 .. rst-class:: classref-property
 
-:ref:`float<class_float>` **gravity_point_distance_scale** = ``0.0``
+:ref:`float<class_float>` **gravity_point_unit_distance** = ``0.0``
 
 .. rst-class:: classref-property-setget
 
-- void **set_gravity_point_distance_scale** **(** :ref:`float<class_float>` value **)**
-- :ref:`float<class_float>` **get_gravity_point_distance_scale** **(** **)**
+- void **set_gravity_point_unit_distance** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_gravity_point_unit_distance** **(** **)**
 
-The falloff factor for point gravity. The greater the value, the faster gravity decreases with distance.
+The distance at which the gravity strength is equal to :ref:`gravity<class_Area2D_property_gravity>`. For example, on a planet 100 pixels in radius with a surface gravity of 4.0 px/s², set the :ref:`gravity<class_Area2D_property_gravity>` to 4.0 and the unit distance to 100.0. The gravity will have falloff according to the inverse square law, so in the example, at 200 pixels from the center the gravity will be 1.0 px/s² (twice the distance, 1/4th the gravity), at 50 pixels it will be 16.0 px/s² (half the distance, 4x the gravity), and so on.
+
+The above is true only when the unit distance is a positive number. When this is set to 0.0, the gravity will be constant regardless of distance.
 
 .. rst-class:: classref-item-separator
 

+ 52 - 50
classes/class_area3d.rst

@@ -44,51 +44,51 @@ Properties
 .. table::
    :widths: auto
 
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`angular_damp<class_Area3D_property_angular_damp>`                                 | ``0.1``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`SpaceOverride<enum_Area3D_SpaceOverride>` | :ref:`angular_damp_space_override<class_Area3D_property_angular_damp_space_override>`   | ``0``                 |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`StringName<class_StringName>`             | :ref:`audio_bus_name<class_Area3D_property_audio_bus_name>`                             | ``&"Master"``         |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`audio_bus_override<class_Area3D_property_audio_bus_override>`                     | ``false``             |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`gravity<class_Area3D_property_gravity>`                                           | ``9.8``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`Vector3<class_Vector3>`                   | :ref:`gravity_direction<class_Area3D_property_gravity_direction>`                       | ``Vector3(0, -1, 0)`` |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`gravity_point<class_Area3D_property_gravity_point>`                               | ``false``             |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`Vector3<class_Vector3>`                   | :ref:`gravity_point_center<class_Area3D_property_gravity_point_center>`                 | ``Vector3(0, -1, 0)`` |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`gravity_point_distance_scale<class_Area3D_property_gravity_point_distance_scale>` | ``0.0``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`SpaceOverride<enum_Area3D_SpaceOverride>` | :ref:`gravity_space_override<class_Area3D_property_gravity_space_override>`             | ``0``                 |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`linear_damp<class_Area3D_property_linear_damp>`                                   | ``0.1``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`SpaceOverride<enum_Area3D_SpaceOverride>` | :ref:`linear_damp_space_override<class_Area3D_property_linear_damp_space_override>`     | ``0``                 |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`monitorable<class_Area3D_property_monitorable>`                                   | ``true``              |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`monitoring<class_Area3D_property_monitoring>`                                     | ``true``              |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`priority<class_Area3D_property_priority>`                                         | ``0.0``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`reverb_bus_amount<class_Area3D_property_reverb_bus_amount>`                       | ``0.0``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                         | :ref:`reverb_bus_enabled<class_Area3D_property_reverb_bus_enabled>`                     | ``false``             |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`StringName<class_StringName>`             | :ref:`reverb_bus_name<class_Area3D_property_reverb_bus_name>`                           | ``&"Master"``         |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`reverb_bus_uniformity<class_Area3D_property_reverb_bus_uniformity>`               | ``0.0``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`wind_attenuation_factor<class_Area3D_property_wind_attenuation_factor>`           | ``0.0``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                       | :ref:`wind_force_magnitude<class_Area3D_property_wind_force_magnitude>`                 | ``0.0``               |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
-   | :ref:`NodePath<class_NodePath>`                 | :ref:`wind_source_path<class_Area3D_property_wind_source_path>`                         | ``NodePath("")``      |
-   +-------------------------------------------------+-----------------------------------------------------------------------------------------+-----------------------+
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`angular_damp<class_Area3D_property_angular_damp>`                               | ``0.1``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`SpaceOverride<enum_Area3D_SpaceOverride>` | :ref:`angular_damp_space_override<class_Area3D_property_angular_damp_space_override>` | ``0``                 |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`StringName<class_StringName>`             | :ref:`audio_bus_name<class_Area3D_property_audio_bus_name>`                           | ``&"Master"``         |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`audio_bus_override<class_Area3D_property_audio_bus_override>`                   | ``false``             |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`gravity<class_Area3D_property_gravity>`                                         | ``9.8``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Vector3<class_Vector3>`                   | :ref:`gravity_direction<class_Area3D_property_gravity_direction>`                     | ``Vector3(0, -1, 0)`` |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`gravity_point<class_Area3D_property_gravity_point>`                             | ``false``             |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Vector3<class_Vector3>`                   | :ref:`gravity_point_center<class_Area3D_property_gravity_point_center>`               | ``Vector3(0, -1, 0)`` |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`gravity_point_unit_distance<class_Area3D_property_gravity_point_unit_distance>` | ``0.0``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`SpaceOverride<enum_Area3D_SpaceOverride>` | :ref:`gravity_space_override<class_Area3D_property_gravity_space_override>`           | ``0``                 |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`linear_damp<class_Area3D_property_linear_damp>`                                 | ``0.1``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`SpaceOverride<enum_Area3D_SpaceOverride>` | :ref:`linear_damp_space_override<class_Area3D_property_linear_damp_space_override>`   | ``0``                 |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`monitorable<class_Area3D_property_monitorable>`                                 | ``true``              |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`monitoring<class_Area3D_property_monitoring>`                                   | ``true``              |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`priority<class_Area3D_property_priority>`                                       | ``0.0``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`reverb_bus_amount<class_Area3D_property_reverb_bus_amount>`                     | ``0.0``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                         | :ref:`reverb_bus_enabled<class_Area3D_property_reverb_bus_enabled>`                   | ``false``             |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`StringName<class_StringName>`             | :ref:`reverb_bus_name<class_Area3D_property_reverb_bus_name>`                         | ``&"Master"``         |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`reverb_bus_uniformity<class_Area3D_property_reverb_bus_uniformity>`             | ``0.0``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`wind_attenuation_factor<class_Area3D_property_wind_attenuation_factor>`         | ``0.0``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                       | :ref:`wind_force_magnitude<class_Area3D_property_wind_force_magnitude>`               | ``0.0``               |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`NodePath<class_NodePath>`                 | :ref:`wind_source_path<class_Area3D_property_wind_source_path>`                       | ``NodePath("")``      |
+   +-------------------------------------------------+---------------------------------------------------------------------------------------+-----------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -453,18 +453,20 @@ If gravity is a point (see :ref:`gravity_point<class_Area3D_property_gravity_poi
 
 ----
 
-.. _class_Area3D_property_gravity_point_distance_scale:
+.. _class_Area3D_property_gravity_point_unit_distance:
 
 .. rst-class:: classref-property
 
-:ref:`float<class_float>` **gravity_point_distance_scale** = ``0.0``
+:ref:`float<class_float>` **gravity_point_unit_distance** = ``0.0``
 
 .. rst-class:: classref-property-setget
 
-- void **set_gravity_point_distance_scale** **(** :ref:`float<class_float>` value **)**
-- :ref:`float<class_float>` **get_gravity_point_distance_scale** **(** **)**
+- void **set_gravity_point_unit_distance** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_gravity_point_unit_distance** **(** **)**
 
-The falloff factor for point gravity. The greater the value, the faster gravity decreases with distance.
+The distance at which the gravity strength is equal to :ref:`gravity<class_Area3D_property_gravity>`. For example, on a planet 100 meters in radius with a surface gravity of 4.0 m/s², set the :ref:`gravity<class_Area3D_property_gravity>` to 4.0 and the unit distance to 100.0. The gravity will have falloff according to the inverse square law, so in the example, at 200 meters from the center the gravity will be 1.0 m/s² (twice the distance, 1/4th the gravity), at 50 meters it will be 16.0 m/s² (half the distance, 4x the gravity), and so on.
+
+The above is true only when the unit distance is a positive number. When this is set to 0.0, the gravity will be constant regardless of distance.
 
 .. rst-class:: classref-item-separator
 

+ 52 - 42
classes/class_array.rst

@@ -123,11 +123,13 @@ Methods
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`append_array<class_Array_method_append_array>` **(** :ref:`Array<class_Array>` array **)**                                                                                               |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`assign<class_Array_method_assign>` **(** :ref:`Array<class_Array>` array **)**                                                                                                           |
+   +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Variant<class_Variant>`       | :ref:`back<class_Array_method_back>` **(** **)** |const|                                                                                                                                       |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`bsearch<class_Array_method_bsearch>` **(** :ref:`Variant<class_Variant>` value, :ref:`bool<class_bool>` before=true **)**                                                                |
+   | :ref:`int<class_int>`               | :ref:`bsearch<class_Array_method_bsearch>` **(** :ref:`Variant<class_Variant>` value, :ref:`bool<class_bool>` before=true **)** |const|                                                        |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`               | :ref:`bsearch_custom<class_Array_method_bsearch_custom>` **(** :ref:`Variant<class_Variant>` value, :ref:`Callable<class_Callable>` func, :ref:`bool<class_bool>` before=true **)**            |
+   | :ref:`int<class_int>`               | :ref:`bsearch_custom<class_Array_method_bsearch_custom>` **(** :ref:`Variant<class_Variant>` value, :ref:`Callable<class_Callable>` func, :ref:`bool<class_bool>` before=true **)** |const|    |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`clear<class_Array_method_clear>` **(** **)**                                                                                                                                             |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -161,6 +163,8 @@ Methods
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`is_read_only<class_Array_method_is_read_only>` **(** **)** |const|                                                                                                                       |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`             | :ref:`is_same_typed<class_Array_method_is_same_typed>` **(** :ref:`Array<class_Array>` array **)** |const|                                                                                     |
+   +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`is_typed<class_Array_method_is_typed>` **(** **)** |const|                                                                                                                               |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`make_read_only<class_Array_method_make_read_only>` **(** **)**                                                                                                                           |
@@ -193,8 +197,6 @@ Methods
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`               | :ref:`rfind<class_Array_method_rfind>` **(** :ref:`Variant<class_Variant>` what, :ref:`int<class_int>` from=-1 **)** |const|                                                                   |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                | :ref:`set_typed<class_Array_method_set_typed>` **(** :ref:`int<class_int>` type, :ref:`StringName<class_StringName>` class_name, :ref:`Variant<class_Variant>` script **)**                    |
-   +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`shuffle<class_Array_method_shuffle>` **(** **)**                                                                                                                                         |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`               | :ref:`size<class_Array_method_size>` **(** **)** |const|                                                                                                                                       |
@@ -205,8 +207,6 @@ Methods
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`sort_custom<class_Array_method_sort_custom>` **(** :ref:`Callable<class_Callable>` func **)**                                                                                            |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`             | :ref:`typed_assign<class_Array_method_typed_assign>` **(** :ref:`Array<class_Array>` array **)**                                                                                               |
-   +-------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -259,7 +259,7 @@ Constructs an empty **Array**.
 
 :ref:`Array<class_Array>` **Array** **(** :ref:`Array<class_Array>` base, :ref:`int<class_int>` type, :ref:`StringName<class_StringName>` class_name, :ref:`Variant<class_Variant>` script **)**
 
-Creates a typed array from the ``base`` array. The base array can't be already typed. See :ref:`set_typed<class_Array_method_set_typed>` for more details.
+Creates a typed array from the ``base`` array.
 
 .. rst-class:: classref-item-separator
 
@@ -269,7 +269,7 @@ Creates a typed array from the ``base`` array. The base array can't be already t
 
 :ref:`Array<class_Array>` **Array** **(** :ref:`Array<class_Array>` from **)**
 
-Constructs an **Array** as a copy of the given **Array**.
+Returns the same array as ``from``. If you need a copy of the array, use :ref:`duplicate<class_Array_method_duplicate>`.
 
 .. rst-class:: classref-item-separator
 
@@ -467,6 +467,18 @@ Appends another array at the end of this array.
 
 ----
 
+.. _class_Array_method_assign:
+
+.. rst-class:: classref-method
+
+void **assign** **(** :ref:`Array<class_Array>` array **)**
+
+Assigns elements of another ``array`` into the array. Resizes the array to match ``array``. Performs type conversions if the array is typed.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Array_method_back:
 
 .. rst-class:: classref-method
@@ -485,7 +497,7 @@ Returns the last element of the array. Prints an error and returns ``null`` if t
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **bsearch** **(** :ref:`Variant<class_Variant>` value, :ref:`bool<class_bool>` before=true **)**
+:ref:`int<class_int>` **bsearch** **(** :ref:`Variant<class_Variant>` value, :ref:`bool<class_bool>` before=true **)** |const|
 
 Finds the index of an existing value (or the insertion index that maintains sorting order, if the value is not yet present in the array) using binary search. Optionally, a ``before`` specifier can be passed. If ``false``, the returned index comes after all existing entries of the value in the array.
 
@@ -499,7 +511,7 @@ Finds the index of an existing value (or the insertion index that maintains sort
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **bsearch_custom** **(** :ref:`Variant<class_Variant>` value, :ref:`Callable<class_Callable>` func, :ref:`bool<class_bool>` before=true **)**
+:ref:`int<class_int>` **bsearch_custom** **(** :ref:`Variant<class_Variant>` value, :ref:`Callable<class_Callable>` func, :ref:`bool<class_bool>` before=true **)** |const|
 
 Finds the index of an existing value (or the insertion index that maintains sorting order, if the value is not yet present in the array) using binary search and a custom comparison method. Optionally, a ``before`` specifier can be passed. If ``false``, the returned index comes after all existing entries of the value in the array. The custom method receives two arguments (an element from the array and the value searched for) and must return ``true`` if the first argument is less than the second, and return ``false`` otherwise.
 
@@ -584,7 +596,7 @@ Assigns the given value to all elements in the array. This can typically be used
 
  .. code-tab:: csharp
 
-    var array = new Godot.Collections.Array{};
+    var array = new Godot.Collections.Array();
     array.Resize(10);
     array.Fill(0); // Initialize the 10 elements to 0.
 
@@ -703,7 +715,7 @@ Returns ``true`` if the array contains the given value.
 
  .. code-tab:: csharp
 
-    var arr = new Godot.Collections.Array{"inside", 7};
+    var arr = new Godot.Collections.Array { "inside", 7 };
     // has is renamed to Contains
     GD.Print(arr.Contains("inside")); // True
     GD.Print(arr.Contains("outside")); // False
@@ -726,7 +738,7 @@ Returns ``true`` if the array contains the given value.
  .. code-tab:: csharp
 
     // As there is no "in" keyword in C#, you have to use Contains
-    var array = new Godot.Collections.Array{2, 4, 6, 8};
+    var array = new Godot.Collections.Array { 2, 4, 6, 8 };
     if (array.Contains(2))
     {
         GD.Print("Contains!");
@@ -792,6 +804,18 @@ Returns ``true`` if the array is read-only. See :ref:`make_read_only<class_Array
 
 ----
 
+.. _class_Array_method_is_same_typed:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_same_typed** **(** :ref:`Array<class_Array>` array **)** |const|
+
+Returns ``true`` if the array is typed the same as ``array``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Array_method_is_typed:
 
 .. rst-class:: classref-method
@@ -873,11 +897,21 @@ Returns the minimum value contained in the array if all elements are of comparab
 
 Returns a random value from the target array.
 
-::
+
+.. tabs::
+
+ .. code-tab:: gdscript
 
     var array: Array[int] = [1, 2, 3, 4]
     print(array.pick_random())  # Prints either of the four numbers.
 
+ .. code-tab:: csharp
+
+    var array = new Godot.Collections.Array { 1, 2, 3, 4 };
+    GD.Print(array.PickRandom()); // Prints either of the four numbers.
+
+
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -1025,20 +1059,6 @@ Searches the array in reverse order. Optionally, a start search index can be pas
 
 ----
 
-.. _class_Array_method_set_typed:
-
-.. rst-class:: classref-method
-
-void **set_typed** **(** :ref:`int<class_int>` type, :ref:`StringName<class_StringName>` class_name, :ref:`Variant<class_Variant>` script **)**
-
-Makes the **Array** typed. The ``type`` should be one of the :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` constants. ``class_name`` is optional and can only be provided for :ref:`@GlobalScope.TYPE_OBJECT<class_@GlobalScope_constant_TYPE_OBJECT>`. ``script`` can only be provided if ``class_name`` is not empty.
-
-The method fails if an array is already typed.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_Array_method_shuffle:
 
 .. rst-class:: classref-method
@@ -1075,7 +1095,7 @@ The absolute value of ``begin`` and ``end`` will be clamped to the array size, s
 
 If either ``begin`` or ``end`` are negative, they will be relative to the end of the array (i.e. ``arr.slice(0, -2)`` is a shorthand for ``arr.slice(0, arr.size() - 2)``).
 
-If specified, ``step`` is the relative index between source elements. It can be negative, then ``begin`` must be higher than ``end``. For example, ``[0, 1, 2, 3, 4, 5].slice(5, 1, -2)`` returns ``[5, 3]``).
+If specified, ``step`` is the relative index between source elements. It can be negative, then ``begin`` must be higher than ``end``. For example, ``[0, 1, 2, 3, 4, 5].slice(5, 1, -2)`` returns ``[5, 3]``.
 
 If ``deep`` is true, each element will be copied by value rather than by reference.
 
@@ -1106,7 +1126,9 @@ Sorts the array.
 
  .. code-tab:: csharp
 
-    // There is no sort support for Godot.Collections.Array
+    var strings = new Godot.Collections.Array { "string1", "string2", "string10", "string11" };
+    strings.Sort();
+    GD.Print(strings); // Prints [string1, string10, string11, string2]
 
 
 
@@ -1159,18 +1181,6 @@ Sorts the array using a custom method. The custom method receives two arguments
 
 
 
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_Array_method_typed_assign:
-
-.. rst-class:: classref-method
-
-:ref:`bool<class_bool>` **typed_assign** **(** :ref:`Array<class_Array>` array **)**
-
-Assigns a different **Array** to this array reference. It the array is typed, the new array's type must be compatible and its elements will be automatically converted.
-
 .. rst-class:: classref-section-separator
 
 ----

+ 6 - 5
classes/class_astar3d.rst

@@ -41,15 +41,16 @@ It is also possible to use non-Euclidean distances. To do so, create a class tha
 
  .. code-tab:: csharp
 
-    public class MyAStar : AStar3D
+    public partial class MyAStar : AStar3D
     {
-        public override float _ComputeCost(int u, int v)
+        public override float _ComputeCost(long fromId, long toId)
         {
-            return Mathf.Abs(u - v);
+            return Mathf.Abs((int)(fromId - toId));
         }
-        public override float _EstimateCost(int u, int v)
+    
+        public override float _EstimateCost(long fromId, long toId)
         {
-            return Mathf.Min(0, Mathf.Abs(u - v) - 1);
+            return Mathf.Min(0, Mathf.Abs((int)(fromId - toId)) - 1);
         }
     }
 

+ 32 - 32
classes/class_audioserver.rst

@@ -45,9 +45,9 @@ Properties
    +-----------------------------+------------------------------------------------------------------------------+---------------+
    | :ref:`int<class_int>`       | :ref:`bus_count<class_AudioServer_property_bus_count>`                       | ``1``         |
    +-----------------------------+------------------------------------------------------------------------------+---------------+
-   | :ref:`String<class_String>` | :ref:`capture_device<class_AudioServer_property_capture_device>`             | ``"Default"`` |
+   | :ref:`String<class_String>` | :ref:`input_device<class_AudioServer_property_input_device>`                 | ``"Default"`` |
    +-----------------------------+------------------------------------------------------------------------------+---------------+
-   | :ref:`String<class_String>` | :ref:`device<class_AudioServer_property_device>`                             | ``"Default"`` |
+   | :ref:`String<class_String>` | :ref:`output_device<class_AudioServer_property_output_device>`               | ``"Default"`` |
    +-----------------------------+------------------------------------------------------------------------------+---------------+
    | :ref:`float<class_float>`   | :ref:`playback_speed_scale<class_AudioServer_property_playback_speed_scale>` | ``1.0``       |
    +-----------------------------+------------------------------------------------------------------------------+---------------+
@@ -65,8 +65,6 @@ Methods
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`add_bus_effect<class_AudioServer_method_add_bus_effect>` **(** :ref:`int<class_int>` bus_idx, :ref:`AudioEffect<class_AudioEffect>` effect, :ref:`int<class_int>` at_position=-1 **)**  |
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedStringArray<class_PackedStringArray>`     | :ref:`capture_get_device_list<class_AudioServer_method_capture_get_device_list>` **(** **)**                                                                                                  |
-   +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`AudioBusLayout<class_AudioBusLayout>`           | :ref:`generate_bus_layout<class_AudioServer_method_generate_bus_layout>` **(** **)** |const|                                                                                                  |
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                                 | :ref:`get_bus_channels<class_AudioServer_method_get_bus_channels>` **(** :ref:`int<class_int>` bus_idx **)** |const|                                                                          |
@@ -89,10 +87,12 @@ Methods
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                             | :ref:`get_bus_volume_db<class_AudioServer_method_get_bus_volume_db>` **(** :ref:`int<class_int>` bus_idx **)** |const|                                                                        |
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedStringArray<class_PackedStringArray>`     | :ref:`get_device_list<class_AudioServer_method_get_device_list>` **(** **)**                                                                                                                  |
+   | :ref:`PackedStringArray<class_PackedStringArray>`     | :ref:`get_input_device_list<class_AudioServer_method_get_input_device_list>` **(** **)**                                                                                                      |
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                             | :ref:`get_mix_rate<class_AudioServer_method_get_mix_rate>` **(** **)** |const|                                                                                                                |
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedStringArray<class_PackedStringArray>`     | :ref:`get_output_device_list<class_AudioServer_method_get_output_device_list>` **(** **)**                                                                                                    |
+   +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                             | :ref:`get_output_latency<class_AudioServer_method_get_output_latency>` **(** **)** |const|                                                                                                    |
    +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`SpeakerMode<enum_AudioServer_SpeakerMode>`      | :ref:`get_speaker_mode<class_AudioServer_method_get_speaker_mode>` **(** **)** |const|                                                                                                        |
@@ -230,18 +230,18 @@ Number of available audio buses.
 
 ----
 
-.. _class_AudioServer_property_capture_device:
+.. _class_AudioServer_property_input_device:
 
 .. rst-class:: classref-property
 
-:ref:`String<class_String>` **capture_device** = ``"Default"``
+:ref:`String<class_String>` **input_device** = ``"Default"``
 
 .. rst-class:: classref-property-setget
 
-- void **capture_set_device** **(** :ref:`String<class_String>` value **)**
-- :ref:`String<class_String>` **capture_get_device** **(** **)**
+- void **set_input_device** **(** :ref:`String<class_String>` value **)**
+- :ref:`String<class_String>` **get_input_device** **(** **)**
 
-Name of the current device for audio input (see :ref:`capture_get_device_list<class_AudioServer_method_capture_get_device_list>`). On systems with multiple audio inputs (such as analog, USB and HDMI audio), this can be used to select the audio input device. The value ``"Default"`` will record audio on the system-wide default audio input. If an invalid device name is set, the value will be reverted back to ``"Default"``.
+Name of the current device for audio input (see :ref:`get_input_device_list<class_AudioServer_method_get_input_device_list>`). On systems with multiple audio inputs (such as analog, USB and HDMI audio), this can be used to select the audio input device. The value ``"Default"`` will record audio on the system-wide default audio input. If an invalid device name is set, the value will be reverted back to ``"Default"``.
 
 \ **Note:** :ref:`ProjectSettings.audio/driver/enable_input<class_ProjectSettings_property_audio/driver/enable_input>` must be ``true`` for audio input to work. See also that setting's description for caveats related to permissions and operating system privacy settings.
 
@@ -249,18 +249,18 @@ Name of the current device for audio input (see :ref:`capture_get_device_list<cl
 
 ----
 
-.. _class_AudioServer_property_device:
+.. _class_AudioServer_property_output_device:
 
 .. rst-class:: classref-property
 
-:ref:`String<class_String>` **device** = ``"Default"``
+:ref:`String<class_String>` **output_device** = ``"Default"``
 
 .. rst-class:: classref-property-setget
 
-- void **set_device** **(** :ref:`String<class_String>` value **)**
-- :ref:`String<class_String>` **get_device** **(** **)**
+- void **set_output_device** **(** :ref:`String<class_String>` value **)**
+- :ref:`String<class_String>` **get_output_device** **(** **)**
 
-Name of the current device for audio output (see :ref:`get_device_list<class_AudioServer_method_get_device_list>`). On systems with multiple audio outputs (such as analog, USB and HDMI audio), this can be used to select the audio output device. The value ``"Default"`` will play audio on the system-wide default audio output. If an invalid device name is set, the value will be reverted back to ``"Default"``.
+Name of the current device for audio output (see :ref:`get_output_device_list<class_AudioServer_method_get_output_device_list>`). On systems with multiple audio outputs (such as analog, USB and HDMI audio), this can be used to select the audio output device. The value ``"Default"`` will play audio on the system-wide default audio output. If an invalid device name is set, the value will be reverted back to ``"Default"``.
 
 .. rst-class:: classref-item-separator
 
@@ -312,20 +312,6 @@ Adds an :ref:`AudioEffect<class_AudioEffect>` effect to the bus ``bus_idx`` at `
 
 ----
 
-.. _class_AudioServer_method_capture_get_device_list:
-
-.. rst-class:: classref-method
-
-:ref:`PackedStringArray<class_PackedStringArray>` **capture_get_device_list** **(** **)**
-
-Returns the names of all audio input devices detected on the system.
-
-\ **Note:** :ref:`ProjectSettings.audio/driver/enable_input<class_ProjectSettings_property_audio/driver/enable_input>` must be ``true`` for audio input to work. See also that setting's description for caveats related to permissions and operating system privacy settings.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_AudioServer_method_generate_bus_layout:
 
 .. rst-class:: classref-method
@@ -458,13 +444,15 @@ Returns the volume of the bus at index ``bus_idx`` in dB.
 
 ----
 
-.. _class_AudioServer_method_get_device_list:
+.. _class_AudioServer_method_get_input_device_list:
 
 .. rst-class:: classref-method
 
-:ref:`PackedStringArray<class_PackedStringArray>` **get_device_list** **(** **)**
+:ref:`PackedStringArray<class_PackedStringArray>` **get_input_device_list** **(** **)**
+
+Returns the names of all audio input devices detected on the system.
 
-Returns the names of all audio devices detected on the system.
+\ **Note:** :ref:`ProjectSettings.audio/driver/enable_input<class_ProjectSettings_property_audio/driver/enable_input>` must be ``true`` for audio input to work. See also that setting's description for caveats related to permissions and operating system privacy settings.
 
 .. rst-class:: classref-item-separator
 
@@ -482,6 +470,18 @@ Returns the sample rate at the output of the **AudioServer**.
 
 ----
 
+.. _class_AudioServer_method_get_output_device_list:
+
+.. rst-class:: classref-method
+
+:ref:`PackedStringArray<class_PackedStringArray>` **get_output_device_list** **(** **)**
+
+Returns the names of all audio output devices detected on the system.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AudioServer_method_get_output_latency:
 
 .. rst-class:: classref-method

+ 2 - 6
classes/class_audiostreammp3.rst

@@ -130,22 +130,18 @@ You can load a file without having to import it beforehand using the code snippe
  .. code-tab:: gdscript
 
     func load_mp3(path):
-        var file = File.new()
-        file.open(path, File.READ)
+        var file = FileAccess.open(path, FileAccess.READ)
         var sound = AudioStreamMP3.new()
         sound.data = file.get_buffer(file.get_length())
-        file.close()
         return sound
 
  .. code-tab:: csharp
 
     public AudioStreamMP3 LoadMP3(string path)
     {
-        var file = new File();
-        file.Open(path, File.READ);
+        using var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);
         var sound = new AudioStreamMP3();
         sound.Data = file.GetBuffer(file.GetLength());
-        file.Close();
         return sound;
     }
 

+ 14 - 0
classes/class_audiostreamplayer.rst

@@ -81,6 +81,8 @@ Methods
    +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------+
    | :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`get_stream_playback<class_AudioStreamPlayer_method_get_stream_playback>` **(** **)**               |
    +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                               | :ref:`has_stream_playback<class_AudioStreamPlayer_method_has_stream_playback>` **(** **)**               |
+   +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`play<class_AudioStreamPlayer_method_play>` **(** :ref:`float<class_float>` from_position=0.0 **)** |
    +-------------------------------------------------------+----------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`seek<class_AudioStreamPlayer_method_seek>` **(** :ref:`float<class_float>` to_position **)**       |
@@ -336,6 +338,18 @@ Returns the :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` object associa
 
 ----
 
+.. _class_AudioStreamPlayer_method_has_stream_playback:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **has_stream_playback** **(** **)**
+
+Returns whether the **AudioStreamPlayer** can return the :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` object or not.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AudioStreamPlayer_method_play:
 
 .. rst-class:: classref-method

+ 14 - 0
classes/class_audiostreamplayer2d.rst

@@ -81,6 +81,8 @@ Methods
    +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
    | :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`get_stream_playback<class_AudioStreamPlayer2D_method_get_stream_playback>` **(** **)**               |
    +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                               | :ref:`has_stream_playback<class_AudioStreamPlayer2D_method_has_stream_playback>` **(** **)**               |
+   +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`play<class_AudioStreamPlayer2D_method_play>` **(** :ref:`float<class_float>` from_position=0.0 **)** |
    +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`seek<class_AudioStreamPlayer2D_method_seek>` **(** :ref:`float<class_float>` to_position **)**       |
@@ -348,6 +350,18 @@ Returns the :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` object associa
 
 ----
 
+.. _class_AudioStreamPlayer2D_method_has_stream_playback:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **has_stream_playback** **(** **)**
+
+Returns whether the :ref:`AudioStreamPlayer<class_AudioStreamPlayer>` can return the :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` object or not.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AudioStreamPlayer2D_method_play:
 
 .. rst-class:: classref-method

+ 14 - 0
classes/class_audiostreamplayer3d.rst

@@ -97,6 +97,8 @@ Methods
    +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
    | :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` | :ref:`get_stream_playback<class_AudioStreamPlayer3D_method_get_stream_playback>` **(** **)**               |
    +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                               | :ref:`has_stream_playback<class_AudioStreamPlayer3D_method_has_stream_playback>` **(** **)**               |
+   +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`play<class_AudioStreamPlayer3D_method_play>` **(** :ref:`float<class_float>` from_position=0.0 **)** |
    +-------------------------------------------------------+------------------------------------------------------------------------------------------------------------+
    | void                                                  | :ref:`seek<class_AudioStreamPlayer3D_method_seek>` **(** :ref:`float<class_float>` to_position **)**       |
@@ -581,6 +583,18 @@ Returns the :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` object associa
 
 ----
 
+.. _class_AudioStreamPlayer3D_method_has_stream_playback:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **has_stream_playback** **(** **)**
+
+Returns whether the :ref:`AudioStreamPlayer<class_AudioStreamPlayer>` can return the :ref:`AudioStreamPlayback<class_AudioStreamPlayback>` object or not.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AudioStreamPlayer3D_method_play:
 
 .. rst-class:: classref-method

+ 2 - 2
classes/class_callable.rst

@@ -383,7 +383,7 @@ Returns ``true`` if the callable's object exists and has a valid method name ass
 
 void **rpc** **(** ... **)** |vararg| |const|
 
-Perform an RPC (Remote Procedure Call). This is used for multiplayer and is normally not available, unless the function being called has been marked as *RPC*. Calling this method on unsupported functions will result in an error.
+Perform an RPC (Remote Procedure Call). This is used for multiplayer and is normally not available, unless the function being called has been marked as *RPC*. Calling this method on unsupported functions will result in an error. See :ref:`Node.rpc<class_Node_method_rpc>`.
 
 .. rst-class:: classref-item-separator
 
@@ -395,7 +395,7 @@ Perform an RPC (Remote Procedure Call). This is used for multiplayer and is norm
 
 void **rpc_id** **(** :ref:`int<class_int>` peer_id, ... **)** |vararg| |const|
 
-Perform an RPC (Remote Procedure Call) on a specific peer ID (see multiplayer documentation for reference). This is used for multiplayer and is normally not available unless the function being called has been marked as *RPC*. Calling this method on unsupported functions will result in an error.
+Perform an RPC (Remote Procedure Call) on a specific peer ID (see multiplayer documentation for reference). This is used for multiplayer and is normally not available unless the function being called has been marked as *RPC*. Calling this method on unsupported functions will result in an error. See :ref:`Node.rpc_id<class_Node_method_rpc_id>`.
 
 .. rst-class:: classref-item-separator
 

+ 49 - 19
classes/class_camera2d.rst

@@ -49,8 +49,6 @@ Properties
    +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
    | :ref:`AnchorMode<enum_Camera2D_AnchorMode>`                           | :ref:`anchor_mode<class_Camera2D_property_anchor_mode>`                               | ``1``             |
    +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                                               | :ref:`current<class_Camera2D_property_current>`                                       | ``false``         |
-   +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
    | :ref:`Node<class_Node>`                                               | :ref:`custom_viewport<class_Camera2D_property_custom_viewport>`                       |                   |
    +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
    | :ref:`float<class_float>`                                             | :ref:`drag_bottom_margin<class_Camera2D_property_drag_bottom_margin>`                 | ``0.2``           |
@@ -75,6 +73,8 @@ Properties
    +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
    | :ref:`bool<class_bool>`                                               | :ref:`editor_draw_screen<class_Camera2D_property_editor_draw_screen>`                 | ``true``          |
    +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
+   | :ref:`bool<class_bool>`                                               | :ref:`enabled<class_Camera2D_property_enabled>`                                       | ``true``          |
+   +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
    | :ref:`bool<class_bool>`                                               | :ref:`ignore_rotation<class_Camera2D_property_ignore_rotation>`                       | ``true``          |
    +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------+-------------------+
    | :ref:`int<class_int>`                                                 | :ref:`limit_bottom<class_Camera2D_property_limit_bottom>`                             | ``10000000``      |
@@ -123,6 +123,10 @@ Methods
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Vector2<class_Vector2>` | :ref:`get_target_position<class_Camera2D_method_get_target_position>` **(** **)** |const|                                                                   |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`       | :ref:`is_current<class_Camera2D_method_is_current>` **(** **)** |const|                                                                                     |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                          | :ref:`make_current<class_Camera2D_method_make_current>` **(** **)**                                                                                         |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                          | :ref:`reset_smoothing<class_Camera2D_method_reset_smoothing>` **(** **)**                                                                                   |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                          | :ref:`set_drag_margin<class_Camera2D_method_set_drag_margin>` **(** :ref:`Side<enum_@GlobalScope_Side>` margin, :ref:`float<class_float>` drag_margin **)** |
@@ -213,23 +217,6 @@ The Camera2D's anchor point. See :ref:`AnchorMode<enum_Camera2D_AnchorMode>` con
 
 ----
 
-.. _class_Camera2D_property_current:
-
-.. rst-class:: classref-property
-
-:ref:`bool<class_bool>` **current** = ``false``
-
-.. rst-class:: classref-property-setget
-
-- void **set_current** **(** :ref:`bool<class_bool>` value **)**
-- :ref:`bool<class_bool>` **is_current** **(** **)**
-
-If ``true``, the camera acts as the active camera for its :ref:`Viewport<class_Viewport>` ancestor. Only one camera can be current in a given viewport, so setting a different camera in the same viewport ``current`` will disable whatever camera was already active in that viewport.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_Camera2D_property_custom_viewport:
 
 .. rst-class:: classref-property
@@ -438,6 +425,25 @@ If ``true``, draws the camera's screen rectangle in the editor.
 
 ----
 
+.. _class_Camera2D_property_enabled:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **enabled** = ``true``
+
+.. rst-class:: classref-property-setget
+
+- void **set_enabled** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **is_enabled** **(** **)**
+
+Controls whether the camera can be active or not. If ``true``, the **Camera2D** will become the main camera when it enters the scene tree and there is no active camera currently (see :ref:`Viewport.get_camera_2d<class_Viewport_method_get_camera_2d>`).
+
+When the camera is currently active and :ref:`enabled<class_Camera2D_property_enabled>` is set to ``false``, the next enabled **Camera2D** in the scene tree will become active.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Camera2D_property_ignore_rotation:
 
 .. rst-class:: classref-property
@@ -746,6 +752,30 @@ Returns this camera's target position, in global coordinates.
 
 ----
 
+.. _class_Camera2D_method_is_current:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_current** **(** **)** |const|
+
+Returns ``true`` if this **Camera2D** is the active camera (see :ref:`Viewport.get_camera_2d<class_Viewport_method_get_camera_2d>`).
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Camera2D_method_make_current:
+
+.. rst-class:: classref-method
+
+void **make_current** **(** **)**
+
+Forces this **Camera2D** to become the current active one. :ref:`enabled<class_Camera2D_property_enabled>` must be ``true``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Camera2D_method_reset_smoothing:
 
 .. rst-class:: classref-method

+ 1 - 0
classes/class_canvasgroup.rst

@@ -26,6 +26,7 @@ Child :ref:`CanvasItem<class_CanvasItem>` nodes of a **CanvasGroup** are drawn a
 ::
 
     shader_type canvas_item;
+    render_mode unshaded;
     
     uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, filter_nearest;
     

+ 6 - 8
classes/class_color.rst

@@ -1840,8 +1840,6 @@ Returns a new color from ``rgba``, an HTML hexadecimal color string. ``rgba`` is
 
 \ ``rgba`` must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If ``rgba`` does not contain an alpha channel value, an alpha channel value of 1.0 is applied. If ``rgba`` is invalid, returns an empty color.
 
-\ **Note:** In C#, this method is not implemented. The same functionality is provided by the Color constructor.
-
 
 .. tabs::
 
@@ -1886,13 +1884,13 @@ Returns ``true`` if ``color`` is a valid HTML hexadecimal color string. The stri
 
  .. code-tab:: csharp
 
-    Color.IsHtmlValid("#55AAFF");   // Returns true
-    Color.IsHtmlValid("#55AAFF20"); // Returns true
-    Color.IsHtmlValid("55AAFF");    // Returns true
-    Color.IsHtmlValid("#F2C");      // Returns true
+    Color.HtmlIsValid("#55AAFF");   // Returns true
+    Color.HtmlIsValid("#55AAFF20"); // Returns true
+    Color.HtmlIsValid("55AAFF");    // Returns true
+    Color.HtmlIsValid("#F2C");      // Returns true
     
-    Color.IsHtmlValid("#AABBC");    // Returns false
-    Color.IsHtmlValid("#55aaFF5");  // Returns false
+    Color.HtmlIsValid("#AABBC");    // Returns false
+    Color.HtmlIsValid("#55aaFF5");  // Returns false
 
 
 

+ 31 - 30
classes/class_control.rst

@@ -161,7 +161,7 @@ Methods
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                         | :ref:`_gui_input<class_Control_method__gui_input>` **(** :ref:`InputEvent<class_InputEvent>` event **)** |virtual|                                                                                                                                                 |
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                      | :ref:`_has_point<class_Control_method__has_point>` **(** :ref:`Vector2<class_Vector2>` position **)** |virtual| |const|                                                                                                                                            |
+   | :ref:`bool<class_bool>`                      | :ref:`_has_point<class_Control_method__has_point>` **(** :ref:`Vector2<class_Vector2>` point **)** |virtual| |const|                                                                                                                                               |
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Object<class_Object>`                  | :ref:`_make_custom_tooltip<class_Control_method__make_custom_tooltip>` **(** :ref:`String<class_String>` for_text **)** |virtual| |const|                                                                                                                          |
    +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -1888,11 +1888,11 @@ This method should only be used to test the data. Process the data in :ref:`_dro
 
  .. code-tab:: csharp
 
-    public override bool CanDropData(Vector2 position, object data)
+    public override bool _CanDropData(Vector2 atPosition, Variant data)
     {
         // Check position if it is relevant to you
         // Otherwise, just check data
-        return data is Godot.Collections.Dictionary && (data as Godot.Collections.Dictionary).Contains("expected");
+        return data.VariantType == Variant.Type.Dictionary && data.AsGodotDictionary().Contains("expected");
     }
 
 
@@ -1916,18 +1916,20 @@ Godot calls this method to pass you the ``data`` from a control's :ref:`_get_dra
 
     func _can_drop_data(position, data):
         return typeof(data) == TYPE_DICTIONARY and data.has("color")
+    
     func _drop_data(position, data):
         var color = data["color"]
 
  .. code-tab:: csharp
 
-    public override bool CanDropData(Vector2 position, object data)
+    public override bool _CanDropData(Vector2 atPosition, Variant data)
     {
-        return data is Godot.Collections.Dictionary && (data as Godot.Collections.Dictionary).Contains("color");
+        return data.VariantType == Variant.Type.Dictionary && dict.AsGodotDictionary().Contains("color");
     }
-    public override void DropData(Vector2 position, object data)
+    
+    public override void _DropData(Vector2 atPosition, Variant data)
     {
-        Color color = (Color)(data as Godot.Collections.Dictionary)["color"];
+        Color color = data.AsGodotDictionary()["color"].AsColor();
     }
 
 
@@ -1958,11 +1960,11 @@ A preview that will follow the mouse that should represent the data can be set w
 
  .. code-tab:: csharp
 
-    public override object GetDragData(Vector2 position)
+    public override Variant _GetDragData(Vector2 atPosition)
     {
-        object mydata = MakeData(); // This is your custom method generating the drag data.
-        SetDragPreview(MakePreview(mydata)); // This is your custom method generating the preview of the drag data.
-        return mydata;
+        var myData = MakeData(); // This is your custom method generating the drag data.
+        SetDragPreview(MakePreview(myData)); // This is your custom method generating the preview of the drag data.
+        return myData;
     }
 
 
@@ -2011,10 +2013,9 @@ Virtual method to be implemented by the user. Use this method to process and acc
 
     public override void _GuiInput(InputEvent @event)
     {
-        if (@event is InputEventMouseButton)
+        if (@event is InputEventMouseButton mb)
         {
-            var mb = @event as InputEventMouseButton;
-            if (mb.ButtonIndex == (int)ButtonList.Left && mb.Pressed)
+            if (mb.ButtonIndex == MouseButton.Left && mb.Pressed)
             {
                 GD.Print("I've been clicked D:");
             }
@@ -2045,13 +2046,13 @@ The event won't trigger if:
 
 .. rst-class:: classref-method
 
-:ref:`bool<class_bool>` **_has_point** **(** :ref:`Vector2<class_Vector2>` position **)** |virtual| |const|
+:ref:`bool<class_bool>` **_has_point** **(** :ref:`Vector2<class_Vector2>` point **)** |virtual| |const|
 
-Virtual method to be implemented by the user. Returns whether the given ``position`` is inside this control.
+Virtual method to be implemented by the user. Returns whether the given ``point`` is inside this control.
 
 If not overridden, default behavior is checking if the point is within control's Rect.
 
-\ **Note:** If you want to check if a point is inside the control, you can use ``get_rect().has_point(point)``.
+\ **Note:** If you want to check if a point is inside the control, you can use ``Rect2(Vector2.ZERO, size).has_point(point)``.
 
 .. rst-class:: classref-item-separator
 
@@ -2087,7 +2088,7 @@ The returned node will be added as child to a :ref:`PopupPanel<class_PopupPanel>
 
  .. code-tab:: csharp
 
-    public override Godot.Control _MakeCustomTooltip(String forText)
+    public override Control _MakeCustomTooltip(string forText)
     {
         var label = new Label();
         label.Text = forText;
@@ -2110,7 +2111,7 @@ The returned node will be added as child to a :ref:`PopupPanel<class_PopupPanel>
 
  .. code-tab:: csharp
 
-    public override Godot.Control _MakeCustomTooltip(String forText)
+    public override Control _MakeCustomTooltip(string forText)
     {
         Node tooltip = ResourceLoader.Load<PackedScene>("res://some_tooltip_scene.tscn").Instantiate();
         tooltip.GetNode<Label>("Label").Text = forText;
@@ -2176,11 +2177,11 @@ See also :ref:`get_theme_color<class_Control_method_get_theme_color>`.
  .. code-tab:: csharp
 
     // Given the child Label node "MyLabel", override its font color with a custom value.
-    GetNode<Label>("MyLabel").AddThemeColorOverride("font_color", new Color(1, 0.5f, 0))
+    GetNode<Label>("MyLabel").AddThemeColorOverride("font_color", new Color(1, 0.5f, 0));
     // Reset the font color of the child label.
-    GetNode<Label>("MyLabel").RemoveThemeColorOverride("font_color")
+    GetNode<Label>("MyLabel").RemoveThemeColorOverride("font_color");
     // Alternatively it can be overridden with the default value from the Label type.
-    GetNode<Label>("MyLabel").AddThemeColorOverride("font_color", GetThemeColor("font_color", "Label"))
+    GetNode<Label>("MyLabel").AddThemeColorOverride("font_color", GetThemeColor("font_color", "Label"));
 
 
 
@@ -2702,13 +2703,13 @@ Creates an :ref:`InputEventMouseButton<class_InputEventMouseButton>` that attemp
  .. code-tab:: gdscript
 
     func _process(delta):
-        grab_click_focus() #when clicking another Control node, this node will be clicked instead
+        grab_click_focus() # When clicking another Control node, this node will be clicked instead.
 
  .. code-tab:: csharp
 
-    public override void _Process(float delta)
+    public override void _Process(double delta)
     {
-        GrabClickFocus(); //when clicking another Control node, this node will be clicked instead
+        GrabClickFocus(); // When clicking another Control node, this node will be clicked instead.
     }
 
 
@@ -3141,16 +3142,16 @@ Shows the given control at the mouse pointer. A good time to call this method is
  .. code-tab:: csharp
 
     [Export]
-    public Color Color = new Color(1, 0, 0, 1);
+    private Color _color = new Color(1, 0, 0, 1);
     
-    public override object GetDragData(Vector2 position)
+    public override Variant _GetDragData(Vector2 atPosition)
     {
         // Use a control that is not in the tree
         var cpb = new ColorPickerButton();
-        cpb.Color = Color;
-        cpb.RectSize = new Vector2(50, 50);
+        cpb.Color = _color;
+        cpb.Size = new Vector2(50, 50);
         SetDragPreview(cpb);
-        return Color;
+        return _color;
     }
 
 

+ 16 - 14
classes/class_crypto.rst

@@ -29,9 +29,11 @@ For now, this includes generating cryptographically secure random bytes, RSA key
  .. code-tab:: gdscript
 
     extends Node
+    
     var crypto = Crypto.new()
     var key = CryptoKey.new()
     var cert = X509Certificate.new()
+    
     func _ready():
         # Generate new RSA key.
         key = crypto.generate_rsa(4096)
@@ -56,35 +58,35 @@ For now, this includes generating cryptographically secure random bytes, RSA key
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     using System.Diagnostics;
     
-    public class CryptoNode : Node
+    public partial class MyNode : Node
     {
-        public Crypto Crypto = new Crypto();
-        public CryptoKey Key = new CryptoKey();
-        public X509Certificate Cert = new X509Certificate();
+        private Crypto _crypto = new Crypto();
+        private CryptoKey _key = new CryptoKey();
+        private X509Certificate _cert = new X509Certificate();
+    
         public override void _Ready()
         {
             // Generate new RSA key.
-            Key = Crypto.GenerateRsa(4096);
+            _key = _crypto.GenerateRsa(4096);
             // Generate new self-signed certificate with the given key.
-            Cert = Crypto.GenerateSelfSignedCertificate(Key, "CN=mydomain.com,O=My Game Company,C=IT");
+            _cert = _crypto.GenerateSelfSignedCertificate(_key, "CN=mydomain.com,O=My Game Company,C=IT");
             // Save key and certificate in the user folder.
-            Key.Save("user://generated.key");
-            Cert.Save("user://generated.crt");
+            _key.Save("user://generated.key");
+            _cert.Save("user://generated.crt");
             // Encryption
             string data = "Some data";
-            byte[] encrypted = Crypto.Encrypt(Key, data.ToUTF8());
+            byte[] encrypted = _crypto.Encrypt(_key, data.ToUtf8());
             // Decryption
-            byte[] decrypted = Crypto.Decrypt(Key, encrypted);
+            byte[] decrypted = _crypto.Decrypt(_key, encrypted);
             // Signing
-            byte[] signature = Crypto.Sign(HashingContext.HashType.Sha256, Data.SHA256Buffer(), Key);
+            byte[] signature = _crypto.Sign(HashingContext.HashType.Sha256, Data.Sha256Buffer(), _key);
             // Verifying
-            bool verified = Crypto.Verify(HashingContext.HashType.Sha256, Data.SHA256Buffer(), signature, Key);
+            bool verified = _crypto.Verify(HashingContext.HashType.Sha256, Data.Sha256Buffer(), signature, _key);
             // Checks
             Debug.Assert(verified);
-            Debug.Assert(data.ToUTF8() == decrypted);
+            Debug.Assert(data.ToUtf8() == decrypted);
         }
     }
 

+ 21 - 19
classes/class_decal.rst

@@ -27,6 +27,8 @@ The :ref:`Texture2D<class_Texture2D>`\ s associated with the Decal are automatic
 
 \ **Note:** Decals cannot affect an underlying material's transparency, regardless of its transparency mode (alpha blend, alpha scissor, alpha hash, opaque pre-pass). This means translucent or transparent areas of a material will remain translucent or transparent even if an opaque decal is applied on them.
 
+\ **Note:** When using the Mobile rendering method, decals will only correctly affect meshes whose visibility AABB intersects with the decal's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, :ref:`GeometryInstance3D.extra_cull_margin<class_GeometryInstance3D_property_extra_cull_margin>` must be increased on the mesh. Otherwise, the decal may not be visible on the mesh.
+
 .. rst-class:: classref-reftable-group
 
 Properties
@@ -48,14 +50,14 @@ Properties
    +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
    | :ref:`float<class_float>`         | :ref:`emission_energy<class_Decal_property_emission_energy>`             | ``1.0``               |
    +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
-   | :ref:`Vector3<class_Vector3>`     | :ref:`extents<class_Decal_property_extents>`                             | ``Vector3(1, 1, 1)``  |
-   +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
    | :ref:`float<class_float>`         | :ref:`lower_fade<class_Decal_property_lower_fade>`                       | ``0.3``               |
    +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
    | :ref:`Color<class_Color>`         | :ref:`modulate<class_Decal_property_modulate>`                           | ``Color(1, 1, 1, 1)`` |
    +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
    | :ref:`float<class_float>`         | :ref:`normal_fade<class_Decal_property_normal_fade>`                     | ``0.0``               |
    +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
+   | :ref:`Vector3<class_Vector3>`     | :ref:`size<class_Decal_property_size>`                                   | ``Vector3(2, 2, 2)``  |
+   +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
    | :ref:`Texture2D<class_Texture2D>` | :ref:`texture_albedo<class_Decal_property_texture_albedo>`               |                       |
    +-----------------------------------+--------------------------------------------------------------------------+-----------------------+
    | :ref:`Texture2D<class_Texture2D>` | :ref:`texture_emission<class_Decal_property_texture_emission>`           |                       |
@@ -247,23 +249,6 @@ Energy multiplier for the emission texture. This will make the decal emit light
 
 ----
 
-.. _class_Decal_property_extents:
-
-.. rst-class:: classref-property
-
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
-
-.. rst-class:: classref-property-setget
-
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
-
-Sets the size of the :ref:`AABB<class_AABB>` used by the decal. The AABB goes from ``-extents`` to ``extents``.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_Decal_property_lower_fade:
 
 .. rst-class:: classref-property
@@ -317,6 +302,23 @@ Fades the Decal if the angle between the Decal's :ref:`AABB<class_AABB>` and the
 
 ----
 
+.. _class_Decal_property_size:
+
+.. rst-class:: classref-property
+
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
+
+.. rst-class:: classref-property-setget
+
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
+
+Sets the size of the :ref:`AABB<class_AABB>` used by the decal. The AABB goes from ``-size/2`` to ``size/2``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Decal_property_texture_albedo:
 
 .. rst-class:: classref-property

+ 4 - 4
classes/class_dictionary.rst

@@ -78,7 +78,7 @@ You can access a dictionary's value by referencing its corresponding key. In the
 
     [Export(PropertyHint.Enum, "White,Yellow,Orange")]
     public string MyColor { get; set; }
-    public Godot.Collections.Dictionary pointsDict = new Godot.Collections.Dictionary
+    private Godot.Collections.Dictionary _pointsDict = new Godot.Collections.Dictionary
     {
         {"White", 50},
         {"Yellow", 75},
@@ -87,7 +87,7 @@ You can access a dictionary's value by referencing its corresponding key. In the
     
     public override void _Ready()
     {
-        int points = (int)pointsDict[MyColor];
+        int points = (int)_pointsDict[MyColor];
     }
 
 
@@ -297,7 +297,7 @@ Constructs an empty **Dictionary**.
 
 :ref:`Dictionary<class_Dictionary>` **Dictionary** **(** :ref:`Dictionary<class_Dictionary>` from **)**
 
-Returns the same array as ``from``. If you need a copy of the array, use :ref:`duplicate<class_Dictionary_method_duplicate>`.
+Returns the same dictionary as ``from``. If you need a copy of the dictionary, use :ref:`duplicate<class_Dictionary_method_duplicate>`.
 
 .. rst-class:: classref-section-separator
 
@@ -516,7 +516,7 @@ Returns the list of keys in the dictionary.
 
 void **make_read_only** **(** **)**
 
-Makes the dictionary read-only, i.e. disabled modifying of the dictionary's contents. Does not apply to nested content, e.g. content of nested dicitonaries.
+Makes the dictionary read-only, i.e. disables modification of the dictionary's contents. Does not apply to nested content, e.g. content of nested dictionaries.
 
 .. rst-class:: classref-item-separator
 

+ 2 - 2
classes/class_diraccess.rst

@@ -69,11 +69,11 @@ Here is an example on how to iterate through the files of a directory:
             {
                 if (dir.CurrentIsDir())
                 {
-                    GD.Print("Found directory: " + fileName);
+                    GD.Print($"Found directory: {fileName}");
                 }
                 else
                 {
-                    GD.Print("Found file: " + fileName);
+                    GD.Print($"Found file: {fileName}");
                 }
                 fileName = dir.GetNext();
             }

+ 344 - 314
classes/class_displayserver.rst

@@ -31,317 +31,317 @@ Methods
 .. table::
    :widths: auto
 
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`clipboard_get<class_DisplayServer_method_clipboard_get>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`clipboard_get_primary<class_DisplayServer_method_clipboard_get_primary>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`clipboard_has<class_DisplayServer_method_clipboard_has>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`clipboard_set<class_DisplayServer_method_clipboard_set>` **(** :ref:`String<class_String>` clipboard **)**                                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`clipboard_set_primary<class_DisplayServer_method_clipboard_set_primary>` **(** :ref:`String<class_String>` clipboard_primary **)**                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`CursorShape<enum_DisplayServer_CursorShape>`             | :ref:`cursor_get_shape<class_DisplayServer_method_cursor_get_shape>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`cursor_set_custom_image<class_DisplayServer_method_cursor_set_custom_image>` **(** :ref:`Resource<class_Resource>` cursor, :ref:`CursorShape<enum_DisplayServer_CursorShape>` shape=0, :ref:`Vector2<class_Vector2>` hotspot=Vector2(0, 0) **)**                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`cursor_set_shape<class_DisplayServer_method_cursor_set_shape>` **(** :ref:`CursorShape<enum_DisplayServer_CursorShape>` shape **)**                                                                                                                                                                                                                                                                                                                                      |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`                          | :ref:`dialog_input_text<class_DisplayServer_method_dialog_input_text>` **(** :ref:`String<class_String>` title, :ref:`String<class_String>` description, :ref:`String<class_String>` existing_text, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`                          | :ref:`dialog_show<class_DisplayServer_method_dialog_show>` **(** :ref:`String<class_String>` title, :ref:`String<class_String>` description, :ref:`PackedStringArray<class_PackedStringArray>` buttons, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`enable_for_stealing_focus<class_DisplayServer_method_enable_for_stealing_focus>` **(** :ref:`int<class_int>` process_id **)**                                                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`force_process_and_drop_events<class_DisplayServer_method_force_process_and_drop_events>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Color<class_Color>`                                      | :ref:`get_accent_color<class_DisplayServer_method_get_accent_color>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Rect2[]<class_Rect2>`                                    | :ref:`get_display_cutouts<class_DisplayServer_method_get_display_cutouts>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Rect2i<class_Rect2i>`                                    | :ref:`get_display_safe_area<class_DisplayServer_method_get_display_safe_area>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`get_name<class_DisplayServer_method_get_name>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`get_primary_screen<class_DisplayServer_method_get_primary_screen>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`get_screen_count<class_DisplayServer_method_get_screen_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`get_screen_from_rect<class_DisplayServer_method_get_screen_from_rect>` **(** :ref:`Rect2<class_Rect2>` rect **)** |const|                                                                                                                                                                                                                                                                                                                                                |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`get_swap_cancel_ok<class_DisplayServer_method_get_swap_cancel_ok>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`get_window_at_screen_position<class_DisplayServer_method_get_window_at_screen_position>` **(** :ref:`Vector2i<class_Vector2i>` position **)** |const|                                                                                                                                                                                                                                                                                                                    |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedInt32Array<class_PackedInt32Array>`                | :ref:`get_window_list<class_DisplayServer_method_get_window_list>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_check_item<class_DisplayServer_method_global_menu_add_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_icon_check_item<class_DisplayServer_method_global_menu_add_icon_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`Texture2D<class_Texture2D>` icon, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_icon_item<class_DisplayServer_method_global_menu_add_icon_item>` **(** :ref:`String<class_String>` menu_root, :ref:`Texture2D<class_Texture2D>` icon, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_icon_radio_check_item<class_DisplayServer_method_global_menu_add_icon_radio_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`Texture2D<class_Texture2D>` icon, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_item<class_DisplayServer_method_global_menu_add_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_multistate_item<class_DisplayServer_method_global_menu_add_multistate_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` labe, :ref:`int<class_int>` max_states, :ref:`int<class_int>` default_state, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)** |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_radio_check_item<class_DisplayServer_method_global_menu_add_radio_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_separator<class_DisplayServer_method_global_menu_add_separator>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` index=-1 **)**                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_submenu_item<class_DisplayServer_method_global_menu_add_submenu_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`String<class_String>` submenu, :ref:`int<class_int>` index=-1 **)**                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_clear<class_DisplayServer_method_global_menu_clear>` **(** :ref:`String<class_String>` menu_root **)**                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Key<enum_@GlobalScope_Key>`                              | :ref:`global_menu_get_item_accelerator<class_DisplayServer_method_global_menu_get_item_accelerator>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                      |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Callable<class_Callable>`                                | :ref:`global_menu_get_item_callback<class_DisplayServer_method_global_menu_get_item_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_count<class_DisplayServer_method_global_menu_get_item_count>` **(** :ref:`String<class_String>` menu_root **)** |const|                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Texture2D<class_Texture2D>`                              | :ref:`global_menu_get_item_icon<class_DisplayServer_method_global_menu_get_item_icon>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                    |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_indentation_level<class_DisplayServer_method_global_menu_get_item_indentation_level>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                          |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_index_from_tag<class_DisplayServer_method_global_menu_get_item_index_from_tag>` **(** :ref:`String<class_String>` menu_root, :ref:`Variant<class_Variant>` tag **)** |const|                                                                                                                                                                                                                                                                        |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_index_from_text<class_DisplayServer_method_global_menu_get_item_index_from_text>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` text **)** |const|                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Callable<class_Callable>`                                | :ref:`global_menu_get_item_key_callback<class_DisplayServer_method_global_menu_get_item_key_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                    |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_max_states<class_DisplayServer_method_global_menu_get_item_max_states>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                        |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_state<class_DisplayServer_method_global_menu_get_item_state>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                  |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`global_menu_get_item_submenu<class_DisplayServer_method_global_menu_get_item_submenu>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Variant<class_Variant>`                                  | :ref:`global_menu_get_item_tag<class_DisplayServer_method_global_menu_get_item_tag>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                      |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`global_menu_get_item_text<class_DisplayServer_method_global_menu_get_item_text>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                    |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`global_menu_get_item_tooltip<class_DisplayServer_method_global_menu_get_item_tooltip>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_checkable<class_DisplayServer_method_global_menu_is_item_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_checked<class_DisplayServer_method_global_menu_is_item_checked>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_disabled<class_DisplayServer_method_global_menu_is_item_disabled>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_radio_checkable<class_DisplayServer_method_global_menu_is_item_radio_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_remove_item<class_DisplayServer_method_global_menu_remove_item>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_accelerator<class_DisplayServer_method_global_menu_set_item_accelerator>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Key<enum_@GlobalScope_Key>` keycode **)**                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_callback<class_DisplayServer_method_global_menu_set_item_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                                                                                          |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_checkable<class_DisplayServer_method_global_menu_set_item_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` checkable **)**                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_checked<class_DisplayServer_method_global_menu_set_item_checked>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` checked **)**                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_disabled<class_DisplayServer_method_global_menu_set_item_disabled>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` disabled **)**                                                                                                                                                                                                                                                                  |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_icon<class_DisplayServer_method_global_menu_set_item_icon>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Texture2D<class_Texture2D>` icon **)**                                                                                                                                                                                                                                                                    |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_indentation_level<class_DisplayServer_method_global_menu_set_item_indentation_level>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`int<class_int>` level **)**                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_key_callback<class_DisplayServer_method_global_menu_set_item_key_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Callable<class_Callable>` key_callback **)**                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_max_states<class_DisplayServer_method_global_menu_set_item_max_states>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`int<class_int>` max_states **)**                                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_radio_checkable<class_DisplayServer_method_global_menu_set_item_radio_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` checkable **)**                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_state<class_DisplayServer_method_global_menu_set_item_state>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`int<class_int>` state **)**                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_submenu<class_DisplayServer_method_global_menu_set_item_submenu>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`String<class_String>` submenu **)**                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_tag<class_DisplayServer_method_global_menu_set_item_tag>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Variant<class_Variant>` tag **)**                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_text<class_DisplayServer_method_global_menu_set_item_text>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`String<class_String>` text **)**                                                                                                                                                                                                                                                                          |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`global_menu_set_item_tooltip<class_DisplayServer_method_global_menu_set_item_tooltip>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`String<class_String>` tooltip **)**                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`has_feature<class_DisplayServer_method_has_feature>` **(** :ref:`Feature<enum_DisplayServer_Feature>` feature **)** |const|                                                                                                                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`ime_get_selection<class_DisplayServer_method_ime_get_selection>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`ime_get_text<class_DisplayServer_method_ime_get_text>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`is_dark_mode<class_DisplayServer_method_is_dark_mode>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`is_dark_mode_supported<class_DisplayServer_method_is_dark_mode_supported>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`is_touchscreen_available<class_DisplayServer_method_is_touchscreen_available>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`keyboard_get_current_layout<class_DisplayServer_method_keyboard_get_current_layout>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Key<enum_@GlobalScope_Key>`                              | :ref:`keyboard_get_keycode_from_physical<class_DisplayServer_method_keyboard_get_keycode_from_physical>` **(** :ref:`Key<enum_@GlobalScope_Key>` keycode **)** |const|                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`keyboard_get_layout_count<class_DisplayServer_method_keyboard_get_layout_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`keyboard_get_layout_language<class_DisplayServer_method_keyboard_get_layout_language>` **(** :ref:`int<class_int>` index **)** |const|                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`keyboard_get_layout_name<class_DisplayServer_method_keyboard_get_layout_name>` **(** :ref:`int<class_int>` index **)** |const|                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`keyboard_set_current_layout<class_DisplayServer_method_keyboard_set_current_layout>` **(** :ref:`int<class_int>` index **)**                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`MouseButtonMask<enum_@GlobalScope_MouseButtonMask>`      | :ref:`mouse_get_button_state<class_DisplayServer_method_mouse_get_button_state>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`MouseMode<enum_DisplayServer_MouseMode>`                 | :ref:`mouse_get_mode<class_DisplayServer_method_mouse_get_mode>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`mouse_get_position<class_DisplayServer_method_mouse_get_position>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`mouse_set_mode<class_DisplayServer_method_mouse_set_mode>` **(** :ref:`MouseMode<enum_DisplayServer_MouseMode>` mouse_mode **)**                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`process_events<class_DisplayServer_method_process_events>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`screen_get_dpi<class_DisplayServer_method_screen_get_dpi>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                                      | :ref:`screen_get_max_scale<class_DisplayServer_method_screen_get_max_scale>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`ScreenOrientation<enum_DisplayServer_ScreenOrientation>` | :ref:`screen_get_orientation<class_DisplayServer_method_screen_get_orientation>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`screen_get_position<class_DisplayServer_method_screen_get_position>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                                      | :ref:`screen_get_refresh_rate<class_DisplayServer_method_screen_get_refresh_rate>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                                      | :ref:`screen_get_scale<class_DisplayServer_method_screen_get_scale>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`screen_get_size<class_DisplayServer_method_screen_get_size>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Rect2i<class_Rect2i>`                                    | :ref:`screen_get_usable_rect<class_DisplayServer_method_screen_get_usable_rect>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`screen_is_kept_on<class_DisplayServer_method_screen_is_kept_on>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`screen_set_keep_on<class_DisplayServer_method_screen_set_keep_on>` **(** :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`screen_set_orientation<class_DisplayServer_method_screen_set_orientation>` **(** :ref:`ScreenOrientation<enum_DisplayServer_ScreenOrientation>` orientation, :ref:`int<class_int>` screen=-1 **)**                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`set_icon<class_DisplayServer_method_set_icon>` **(** :ref:`Image<class_Image>` image **)**                                                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`set_native_icon<class_DisplayServer_method_set_native_icon>` **(** :ref:`String<class_String>` filename **)**                                                                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`tablet_get_current_driver<class_DisplayServer_method_tablet_get_current_driver>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`tablet_get_driver_count<class_DisplayServer_method_tablet_get_driver_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                                    | :ref:`tablet_get_driver_name<class_DisplayServer_method_tablet_get_driver_name>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`tablet_set_current_driver<class_DisplayServer_method_tablet_set_current_driver>` **(** :ref:`String<class_String>` name **)**                                                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Dictionary[]<class_Dictionary>`                          | :ref:`tts_get_voices<class_DisplayServer_method_tts_get_voices>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedStringArray<class_PackedStringArray>`              | :ref:`tts_get_voices_for_language<class_DisplayServer_method_tts_get_voices_for_language>` **(** :ref:`String<class_String>` language **)** |const|                                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`tts_is_paused<class_DisplayServer_method_tts_is_paused>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`tts_is_speaking<class_DisplayServer_method_tts_is_speaking>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`tts_pause<class_DisplayServer_method_tts_pause>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`tts_resume<class_DisplayServer_method_tts_resume>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`tts_set_utterance_callback<class_DisplayServer_method_tts_set_utterance_callback>` **(** :ref:`TTSUtteranceEvent<enum_DisplayServer_TTSUtteranceEvent>` event, :ref:`Callable<class_Callable>` callable **)**                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`tts_speak<class_DisplayServer_method_tts_speak>` **(** :ref:`String<class_String>` text, :ref:`String<class_String>` voice, :ref:`int<class_int>` volume=50, :ref:`float<class_float>` pitch=1.0, :ref:`float<class_float>` rate=1.0, :ref:`int<class_int>` utterance_id=0, :ref:`bool<class_bool>` interrupt=false **)**                                                                                                                                                |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`tts_stop<class_DisplayServer_method_tts_stop>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`virtual_keyboard_get_height<class_DisplayServer_method_virtual_keyboard_get_height>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`virtual_keyboard_hide<class_DisplayServer_method_virtual_keyboard_hide>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`virtual_keyboard_show<class_DisplayServer_method_virtual_keyboard_show>` **(** :ref:`String<class_String>` existing_text, :ref:`Rect2<class_Rect2>` position=Rect2(0, 0, 0, 0), :ref:`VirtualKeyboardType<enum_DisplayServer_VirtualKeyboardType>` type=0, :ref:`int<class_int>` max_length=-1, :ref:`int<class_int>` cursor_start=-1, :ref:`int<class_int>` cursor_end=-1 **)**                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`warp_mouse<class_DisplayServer_method_warp_mouse>` **(** :ref:`Vector2i<class_Vector2i>` position **)**                                                                                                                                                                                                                                                                                                                                                                  |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`window_can_draw<class_DisplayServer_method_window_can_draw>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`window_get_active_popup<class_DisplayServer_method_window_get_active_popup>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`window_get_attached_instance_id<class_DisplayServer_method_window_get_attached_instance_id>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`window_get_current_screen<class_DisplayServer_method_window_get_current_screen>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`window_get_flag<class_DisplayServer_method_window_get_flag>` **(** :ref:`WindowFlags<enum_DisplayServer_WindowFlags>` flag, :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                              |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_max_size<class_DisplayServer_method_window_get_max_size>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_min_size<class_DisplayServer_method_window_get_min_size>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`WindowMode<enum_DisplayServer_WindowMode>`               | :ref:`window_get_mode<class_DisplayServer_method_window_get_mode>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                                          | :ref:`window_get_native_handle<class_DisplayServer_method_window_get_native_handle>` **(** :ref:`HandleType<enum_DisplayServer_HandleType>` handle_type, :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Rect2i<class_Rect2i>`                                    | :ref:`window_get_popup_safe_rect<class_DisplayServer_method_window_get_popup_safe_rect>` **(** :ref:`int<class_int>` window **)** |const|                                                                                                                                                                                                                                                                                                                                      |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_position<class_DisplayServer_method_window_get_position>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_position_with_decorations<class_DisplayServer_method_window_get_position_with_decorations>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector3i<class_Vector3i>`                                | :ref:`window_get_safe_title_margins<class_DisplayServer_method_window_get_safe_title_margins>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_size<class_DisplayServer_method_window_get_size>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_size_with_decorations<class_DisplayServer_method_window_get_size_with_decorations>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`VSyncMode<enum_DisplayServer_VSyncMode>`                 | :ref:`window_get_vsync_mode<class_DisplayServer_method_window_get_vsync_mode>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`window_is_maximize_allowed<class_DisplayServer_method_window_is_maximize_allowed>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                 |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`window_maximize_on_title_dbl_click<class_DisplayServer_method_window_maximize_on_title_dbl_click>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                                        | :ref:`window_minimize_on_title_dbl_click<class_DisplayServer_method_window_minimize_on_title_dbl_click>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_move_to_foreground<class_DisplayServer_method_window_move_to_foreground>` **(** :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                                           |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_request_attention<class_DisplayServer_method_window_request_attention>` **(** :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_current_screen<class_DisplayServer_method_window_set_current_screen>` **(** :ref:`int<class_int>` screen, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_drop_files_callback<class_DisplayServer_method_window_set_drop_files_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_exclusive<class_DisplayServer_method_window_set_exclusive>` **(** :ref:`int<class_int>` window_id, :ref:`bool<class_bool>` exclusive **)**                                                                                                                                                                                                                                                                                                                    |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_flag<class_DisplayServer_method_window_set_flag>` **(** :ref:`WindowFlags<enum_DisplayServer_WindowFlags>` flag, :ref:`bool<class_bool>` enabled, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_ime_active<class_DisplayServer_method_window_set_ime_active>` **(** :ref:`bool<class_bool>` active, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_ime_position<class_DisplayServer_method_window_set_ime_position>` **(** :ref:`Vector2i<class_Vector2i>` position, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_input_event_callback<class_DisplayServer_method_window_set_input_event_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_input_text_callback<class_DisplayServer_method_window_set_input_text_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                       |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_max_size<class_DisplayServer_method_window_set_max_size>` **(** :ref:`Vector2i<class_Vector2i>` max_size, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_min_size<class_DisplayServer_method_window_set_min_size>` **(** :ref:`Vector2i<class_Vector2i>` min_size, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_mode<class_DisplayServer_method_window_set_mode>` **(** :ref:`WindowMode<enum_DisplayServer_WindowMode>` mode, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                        |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_mouse_passthrough<class_DisplayServer_method_window_set_mouse_passthrough>` **(** :ref:`PackedVector2Array<class_PackedVector2Array>` region, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_popup_safe_rect<class_DisplayServer_method_window_set_popup_safe_rect>` **(** :ref:`int<class_int>` window, :ref:`Rect2i<class_Rect2i>` rect **)**                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_position<class_DisplayServer_method_window_set_position>` **(** :ref:`Vector2i<class_Vector2i>` position, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_rect_changed_callback<class_DisplayServer_method_window_set_rect_changed_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_size<class_DisplayServer_method_window_set_size>` **(** :ref:`Vector2i<class_Vector2i>` size, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                         |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_title<class_DisplayServer_method_window_set_title>` **(** :ref:`String<class_String>` title, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                          |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_transient<class_DisplayServer_method_window_set_transient>` **(** :ref:`int<class_int>` window_id, :ref:`int<class_int>` parent_window_id **)**                                                                                                                                                                                                                                                                                                               |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_vsync_mode<class_DisplayServer_method_window_set_vsync_mode>` **(** :ref:`VSyncMode<enum_DisplayServer_VSyncMode>` vsync_mode, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                        |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_window_buttons_offset<class_DisplayServer_method_window_set_window_buttons_offset>` **(** :ref:`Vector2i<class_Vector2i>` offset, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                     |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                           | :ref:`window_set_window_event_callback<class_DisplayServer_method_window_set_window_event_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                   |
-   +----------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`clipboard_get<class_DisplayServer_method_clipboard_get>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`clipboard_get_primary<class_DisplayServer_method_clipboard_get_primary>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`clipboard_has<class_DisplayServer_method_clipboard_has>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`clipboard_set<class_DisplayServer_method_clipboard_set>` **(** :ref:`String<class_String>` clipboard **)**                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`clipboard_set_primary<class_DisplayServer_method_clipboard_set_primary>` **(** :ref:`String<class_String>` clipboard_primary **)**                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`CursorShape<enum_DisplayServer_CursorShape>`             | :ref:`cursor_get_shape<class_DisplayServer_method_cursor_get_shape>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`cursor_set_custom_image<class_DisplayServer_method_cursor_set_custom_image>` **(** :ref:`Resource<class_Resource>` cursor, :ref:`CursorShape<enum_DisplayServer_CursorShape>` shape=0, :ref:`Vector2<class_Vector2>` hotspot=Vector2(0, 0) **)**                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`cursor_set_shape<class_DisplayServer_method_cursor_set_shape>` **(** :ref:`CursorShape<enum_DisplayServer_CursorShape>` shape **)**                                                                                                                                                                                                                                                                                                                                       |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`                          | :ref:`dialog_input_text<class_DisplayServer_method_dialog_input_text>` **(** :ref:`String<class_String>` title, :ref:`String<class_String>` description, :ref:`String<class_String>` existing_text, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`                          | :ref:`dialog_show<class_DisplayServer_method_dialog_show>` **(** :ref:`String<class_String>` title, :ref:`String<class_String>` description, :ref:`PackedStringArray<class_PackedStringArray>` buttons, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`enable_for_stealing_focus<class_DisplayServer_method_enable_for_stealing_focus>` **(** :ref:`int<class_int>` process_id **)**                                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`force_process_and_drop_events<class_DisplayServer_method_force_process_and_drop_events>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Color<class_Color>`                                      | :ref:`get_accent_color<class_DisplayServer_method_get_accent_color>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Rect2[]<class_Rect2>`                                    | :ref:`get_display_cutouts<class_DisplayServer_method_get_display_cutouts>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Rect2i<class_Rect2i>`                                    | :ref:`get_display_safe_area<class_DisplayServer_method_get_display_safe_area>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`get_name<class_DisplayServer_method_get_name>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`get_primary_screen<class_DisplayServer_method_get_primary_screen>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`get_screen_count<class_DisplayServer_method_get_screen_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`get_screen_from_rect<class_DisplayServer_method_get_screen_from_rect>` **(** :ref:`Rect2<class_Rect2>` rect **)** |const|                                                                                                                                                                                                                                                                                                                                                 |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`get_swap_cancel_ok<class_DisplayServer_method_get_swap_cancel_ok>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`get_window_at_screen_position<class_DisplayServer_method_get_window_at_screen_position>` **(** :ref:`Vector2i<class_Vector2i>` position **)** |const|                                                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedInt32Array<class_PackedInt32Array>`                | :ref:`get_window_list<class_DisplayServer_method_get_window_list>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_check_item<class_DisplayServer_method_global_menu_add_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_icon_check_item<class_DisplayServer_method_global_menu_add_icon_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`Texture2D<class_Texture2D>` icon, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_icon_item<class_DisplayServer_method_global_menu_add_icon_item>` **(** :ref:`String<class_String>` menu_root, :ref:`Texture2D<class_Texture2D>` icon, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_icon_radio_check_item<class_DisplayServer_method_global_menu_add_icon_radio_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`Texture2D<class_Texture2D>` icon, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_item<class_DisplayServer_method_global_menu_add_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_multistate_item<class_DisplayServer_method_global_menu_add_multistate_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`int<class_int>` max_states, :ref:`int<class_int>` default_state, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)** |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_radio_check_item<class_DisplayServer_method_global_menu_add_radio_check_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_separator<class_DisplayServer_method_global_menu_add_separator>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` index=-1 **)**                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_add_submenu_item<class_DisplayServer_method_global_menu_add_submenu_item>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`String<class_String>` submenu, :ref:`int<class_int>` index=-1 **)**                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_clear<class_DisplayServer_method_global_menu_clear>` **(** :ref:`String<class_String>` menu_root **)**                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Key<enum_@GlobalScope_Key>`                              | :ref:`global_menu_get_item_accelerator<class_DisplayServer_method_global_menu_get_item_accelerator>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                       |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Callable<class_Callable>`                                | :ref:`global_menu_get_item_callback<class_DisplayServer_method_global_menu_get_item_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_count<class_DisplayServer_method_global_menu_get_item_count>` **(** :ref:`String<class_String>` menu_root **)** |const|                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Texture2D<class_Texture2D>`                              | :ref:`global_menu_get_item_icon<class_DisplayServer_method_global_menu_get_item_icon>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_indentation_level<class_DisplayServer_method_global_menu_get_item_indentation_level>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                           |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_index_from_tag<class_DisplayServer_method_global_menu_get_item_index_from_tag>` **(** :ref:`String<class_String>` menu_root, :ref:`Variant<class_Variant>` tag **)** |const|                                                                                                                                                                                                                                                                         |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_index_from_text<class_DisplayServer_method_global_menu_get_item_index_from_text>` **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` text **)** |const|                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Callable<class_Callable>`                                | :ref:`global_menu_get_item_key_callback<class_DisplayServer_method_global_menu_get_item_key_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_max_states<class_DisplayServer_method_global_menu_get_item_max_states>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                         |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`global_menu_get_item_state<class_DisplayServer_method_global_menu_get_item_state>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                   |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`global_menu_get_item_submenu<class_DisplayServer_method_global_menu_get_item_submenu>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Variant<class_Variant>`                                  | :ref:`global_menu_get_item_tag<class_DisplayServer_method_global_menu_get_item_tag>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                       |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`global_menu_get_item_text<class_DisplayServer_method_global_menu_get_item_text>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`global_menu_get_item_tooltip<class_DisplayServer_method_global_menu_get_item_tooltip>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_checkable<class_DisplayServer_method_global_menu_is_item_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_checked<class_DisplayServer_method_global_menu_is_item_checked>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                 |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_disabled<class_DisplayServer_method_global_menu_is_item_disabled>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`global_menu_is_item_radio_checkable<class_DisplayServer_method_global_menu_is_item_radio_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                 |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_remove_item<class_DisplayServer_method_global_menu_remove_item>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx **)**                                                                                                                                                                                                                                                                                                                 |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_accelerator<class_DisplayServer_method_global_menu_set_item_accelerator>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Key<enum_@GlobalScope_Key>` keycode **)**                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_callback<class_DisplayServer_method_global_menu_set_item_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Callable<class_Callable>` callback **)**                                                                                                                                                                                                                                                           |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_checkable<class_DisplayServer_method_global_menu_set_item_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` checkable **)**                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_checked<class_DisplayServer_method_global_menu_set_item_checked>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` checked **)**                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_disabled<class_DisplayServer_method_global_menu_set_item_disabled>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` disabled **)**                                                                                                                                                                                                                                                                   |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_icon<class_DisplayServer_method_global_menu_set_item_icon>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Texture2D<class_Texture2D>` icon **)**                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_indentation_level<class_DisplayServer_method_global_menu_set_item_indentation_level>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`int<class_int>` level **)**                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_key_callback<class_DisplayServer_method_global_menu_set_item_key_callback>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Callable<class_Callable>` key_callback **)**                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_max_states<class_DisplayServer_method_global_menu_set_item_max_states>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`int<class_int>` max_states **)**                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_radio_checkable<class_DisplayServer_method_global_menu_set_item_radio_checkable>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`bool<class_bool>` checkable **)**                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_state<class_DisplayServer_method_global_menu_set_item_state>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`int<class_int>` state **)**                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_submenu<class_DisplayServer_method_global_menu_set_item_submenu>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`String<class_String>` submenu **)**                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_tag<class_DisplayServer_method_global_menu_set_item_tag>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`Variant<class_Variant>` tag **)**                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_text<class_DisplayServer_method_global_menu_set_item_text>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`String<class_String>` text **)**                                                                                                                                                                                                                                                                           |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`global_menu_set_item_tooltip<class_DisplayServer_method_global_menu_set_item_tooltip>` **(** :ref:`String<class_String>` menu_root, :ref:`int<class_int>` idx, :ref:`String<class_String>` tooltip **)**                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`has_feature<class_DisplayServer_method_has_feature>` **(** :ref:`Feature<enum_DisplayServer_Feature>` feature **)** |const|                                                                                                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`ime_get_selection<class_DisplayServer_method_ime_get_selection>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`ime_get_text<class_DisplayServer_method_ime_get_text>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`is_dark_mode<class_DisplayServer_method_is_dark_mode>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`is_dark_mode_supported<class_DisplayServer_method_is_dark_mode_supported>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`is_touchscreen_available<class_DisplayServer_method_is_touchscreen_available>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`keyboard_get_current_layout<class_DisplayServer_method_keyboard_get_current_layout>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Key<enum_@GlobalScope_Key>`                              | :ref:`keyboard_get_keycode_from_physical<class_DisplayServer_method_keyboard_get_keycode_from_physical>` **(** :ref:`Key<enum_@GlobalScope_Key>` keycode **)** |const|                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`keyboard_get_layout_count<class_DisplayServer_method_keyboard_get_layout_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`keyboard_get_layout_language<class_DisplayServer_method_keyboard_get_layout_language>` **(** :ref:`int<class_int>` index **)** |const|                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`keyboard_get_layout_name<class_DisplayServer_method_keyboard_get_layout_name>` **(** :ref:`int<class_int>` index **)** |const|                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`keyboard_set_current_layout<class_DisplayServer_method_keyboard_set_current_layout>` **(** :ref:`int<class_int>` index **)**                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`MouseButtonMask<enum_@GlobalScope_MouseButtonMask>`      | :ref:`mouse_get_button_state<class_DisplayServer_method_mouse_get_button_state>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`MouseMode<enum_DisplayServer_MouseMode>`                 | :ref:`mouse_get_mode<class_DisplayServer_method_mouse_get_mode>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`mouse_get_position<class_DisplayServer_method_mouse_get_position>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`mouse_set_mode<class_DisplayServer_method_mouse_set_mode>` **(** :ref:`MouseMode<enum_DisplayServer_MouseMode>` mouse_mode **)**                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`process_events<class_DisplayServer_method_process_events>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`screen_get_dpi<class_DisplayServer_method_screen_get_dpi>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                      | :ref:`screen_get_max_scale<class_DisplayServer_method_screen_get_max_scale>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`ScreenOrientation<enum_DisplayServer_ScreenOrientation>` | :ref:`screen_get_orientation<class_DisplayServer_method_screen_get_orientation>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`screen_get_position<class_DisplayServer_method_screen_get_position>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                      | :ref:`screen_get_refresh_rate<class_DisplayServer_method_screen_get_refresh_rate>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                      | :ref:`screen_get_scale<class_DisplayServer_method_screen_get_scale>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`screen_get_size<class_DisplayServer_method_screen_get_size>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Rect2i<class_Rect2i>`                                    | :ref:`screen_get_usable_rect<class_DisplayServer_method_screen_get_usable_rect>` **(** :ref:`int<class_int>` screen=-1 **)** |const|                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`screen_is_kept_on<class_DisplayServer_method_screen_is_kept_on>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`screen_set_keep_on<class_DisplayServer_method_screen_set_keep_on>` **(** :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`screen_set_orientation<class_DisplayServer_method_screen_set_orientation>` **(** :ref:`ScreenOrientation<enum_DisplayServer_ScreenOrientation>` orientation, :ref:`int<class_int>` screen=-1 **)**                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`set_icon<class_DisplayServer_method_set_icon>` **(** :ref:`Image<class_Image>` image **)**                                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`set_native_icon<class_DisplayServer_method_set_native_icon>` **(** :ref:`String<class_String>` filename **)**                                                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`tablet_get_current_driver<class_DisplayServer_method_tablet_get_current_driver>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`tablet_get_driver_count<class_DisplayServer_method_tablet_get_driver_count>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                    | :ref:`tablet_get_driver_name<class_DisplayServer_method_tablet_get_driver_name>` **(** :ref:`int<class_int>` idx **)** |const|                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`tablet_set_current_driver<class_DisplayServer_method_tablet_set_current_driver>` **(** :ref:`String<class_String>` name **)**                                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary[]<class_Dictionary>`                          | :ref:`tts_get_voices<class_DisplayServer_method_tts_get_voices>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedStringArray<class_PackedStringArray>`              | :ref:`tts_get_voices_for_language<class_DisplayServer_method_tts_get_voices_for_language>` **(** :ref:`String<class_String>` language **)** |const|                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`tts_is_paused<class_DisplayServer_method_tts_is_paused>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`tts_is_speaking<class_DisplayServer_method_tts_is_speaking>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`tts_pause<class_DisplayServer_method_tts_pause>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`tts_resume<class_DisplayServer_method_tts_resume>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`tts_set_utterance_callback<class_DisplayServer_method_tts_set_utterance_callback>` **(** :ref:`TTSUtteranceEvent<enum_DisplayServer_TTSUtteranceEvent>` event, :ref:`Callable<class_Callable>` callable **)**                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`tts_speak<class_DisplayServer_method_tts_speak>` **(** :ref:`String<class_String>` text, :ref:`String<class_String>` voice, :ref:`int<class_int>` volume=50, :ref:`float<class_float>` pitch=1.0, :ref:`float<class_float>` rate=1.0, :ref:`int<class_int>` utterance_id=0, :ref:`bool<class_bool>` interrupt=false **)**                                                                                                                                                 |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`tts_stop<class_DisplayServer_method_tts_stop>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`virtual_keyboard_get_height<class_DisplayServer_method_virtual_keyboard_get_height>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`virtual_keyboard_hide<class_DisplayServer_method_virtual_keyboard_hide>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`virtual_keyboard_show<class_DisplayServer_method_virtual_keyboard_show>` **(** :ref:`String<class_String>` existing_text, :ref:`Rect2<class_Rect2>` position=Rect2(0, 0, 0, 0), :ref:`VirtualKeyboardType<enum_DisplayServer_VirtualKeyboardType>` type=0, :ref:`int<class_int>` max_length=-1, :ref:`int<class_int>` cursor_start=-1, :ref:`int<class_int>` cursor_end=-1 **)**                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`warp_mouse<class_DisplayServer_method_warp_mouse>` **(** :ref:`Vector2i<class_Vector2i>` position **)**                                                                                                                                                                                                                                                                                                                                                                   |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`window_can_draw<class_DisplayServer_method_window_can_draw>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`window_get_active_popup<class_DisplayServer_method_window_get_active_popup>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`window_get_attached_instance_id<class_DisplayServer_method_window_get_attached_instance_id>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`window_get_current_screen<class_DisplayServer_method_window_get_current_screen>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`window_get_flag<class_DisplayServer_method_window_get_flag>` **(** :ref:`WindowFlags<enum_DisplayServer_WindowFlags>` flag, :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_max_size<class_DisplayServer_method_window_get_max_size>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_min_size<class_DisplayServer_method_window_get_min_size>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`WindowMode<enum_DisplayServer_WindowMode>`               | :ref:`window_get_mode<class_DisplayServer_method_window_get_mode>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                          | :ref:`window_get_native_handle<class_DisplayServer_method_window_get_native_handle>` **(** :ref:`HandleType<enum_DisplayServer_HandleType>` handle_type, :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Rect2i<class_Rect2i>`                                    | :ref:`window_get_popup_safe_rect<class_DisplayServer_method_window_get_popup_safe_rect>` **(** :ref:`int<class_int>` window **)** |const|                                                                                                                                                                                                                                                                                                                                       |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_position<class_DisplayServer_method_window_get_position>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_position_with_decorations<class_DisplayServer_method_window_get_position_with_decorations>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector3i<class_Vector3i>`                                | :ref:`window_get_safe_title_margins<class_DisplayServer_method_window_get_safe_title_margins>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_size<class_DisplayServer_method_window_get_size>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`                                | :ref:`window_get_size_with_decorations<class_DisplayServer_method_window_get_size_with_decorations>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`VSyncMode<enum_DisplayServer_VSyncMode>`                 | :ref:`window_get_vsync_mode<class_DisplayServer_method_window_get_vsync_mode>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`window_is_maximize_allowed<class_DisplayServer_method_window_is_maximize_allowed>` **(** :ref:`int<class_int>` window_id=0 **)** |const|                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`window_maximize_on_title_dbl_click<class_DisplayServer_method_window_maximize_on_title_dbl_click>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                        | :ref:`window_minimize_on_title_dbl_click<class_DisplayServer_method_window_minimize_on_title_dbl_click>` **(** **)** |const|                                                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_move_to_foreground<class_DisplayServer_method_window_move_to_foreground>` **(** :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                                            |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_request_attention<class_DisplayServer_method_window_request_attention>` **(** :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_current_screen<class_DisplayServer_method_window_set_current_screen>` **(** :ref:`int<class_int>` screen, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_drop_files_callback<class_DisplayServer_method_window_set_drop_files_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_exclusive<class_DisplayServer_method_window_set_exclusive>` **(** :ref:`int<class_int>` window_id, :ref:`bool<class_bool>` exclusive **)**                                                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_flag<class_DisplayServer_method_window_set_flag>` **(** :ref:`WindowFlags<enum_DisplayServer_WindowFlags>` flag, :ref:`bool<class_bool>` enabled, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_ime_active<class_DisplayServer_method_window_set_ime_active>` **(** :ref:`bool<class_bool>` active, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_ime_position<class_DisplayServer_method_window_set_ime_position>` **(** :ref:`Vector2i<class_Vector2i>` position, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_input_event_callback<class_DisplayServer_method_window_set_input_event_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_input_text_callback<class_DisplayServer_method_window_set_input_text_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_max_size<class_DisplayServer_method_window_set_max_size>` **(** :ref:`Vector2i<class_Vector2i>` max_size, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_min_size<class_DisplayServer_method_window_set_min_size>` **(** :ref:`Vector2i<class_Vector2i>` min_size, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_mode<class_DisplayServer_method_window_set_mode>` **(** :ref:`WindowMode<enum_DisplayServer_WindowMode>` mode, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                         |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_mouse_passthrough<class_DisplayServer_method_window_set_mouse_passthrough>` **(** :ref:`PackedVector2Array<class_PackedVector2Array>` region, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_popup_safe_rect<class_DisplayServer_method_window_set_popup_safe_rect>` **(** :ref:`int<class_int>` window, :ref:`Rect2i<class_Rect2i>` rect **)**                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_position<class_DisplayServer_method_window_set_position>` **(** :ref:`Vector2i<class_Vector2i>` position, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_rect_changed_callback<class_DisplayServer_method_window_set_rect_changed_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_size<class_DisplayServer_method_window_set_size>` **(** :ref:`Vector2i<class_Vector2i>` size, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                          |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_title<class_DisplayServer_method_window_set_title>` **(** :ref:`String<class_String>` title, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                                                           |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_transient<class_DisplayServer_method_window_set_transient>` **(** :ref:`int<class_int>` window_id, :ref:`int<class_int>` parent_window_id **)**                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_vsync_mode<class_DisplayServer_method_window_set_vsync_mode>` **(** :ref:`VSyncMode<enum_DisplayServer_VSyncMode>` vsync_mode, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                         |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_window_buttons_offset<class_DisplayServer_method_window_set_window_buttons_offset>` **(** :ref:`Vector2i<class_Vector2i>` offset, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                           | :ref:`window_set_window_event_callback<class_DisplayServer_method_window_set_window_event_callback>` **(** :ref:`Callable<class_Callable>` callback, :ref:`int<class_int>` window_id=0 **)**                                                                                                                                                                                                                                                                                    |
+   +----------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -1613,6 +1613,8 @@ Adds a new checkable item with text ``label`` to the global menu with ID ``menu_
 
 Returns index of the inserted item, it's not guaranteed to be the same as ``index`` value.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -1636,6 +1638,8 @@ Adds a new checkable item with text ``label`` and icon ``icon`` to the global me
 
 Returns index of the inserted item, it's not guaranteed to be the same as ``index`` value.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -1659,6 +1663,8 @@ Adds a new item with text ``label`` and icon ``icon`` to the global menu with ID
 
 Returns index of the inserted item, it's not guaranteed to be the same as ``index`` value.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -1684,6 +1690,8 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
 \ **Note:** Radio-checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See :ref:`global_menu_set_item_checked<class_DisplayServer_method_global_menu_set_item_checked>` for more info on how to control it.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -1707,6 +1715,8 @@ Adds a new item with text ``label`` to the global menu with ID ``menu_root``.
 
 Returns index of the inserted item, it's not guaranteed to be the same as ``index`` value.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -1724,9 +1734,9 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **global_menu_add_multistate_item** **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` labe, :ref:`int<class_int>` max_states, :ref:`int<class_int>` default_state, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**
+:ref:`int<class_int>` **global_menu_add_multistate_item** **(** :ref:`String<class_String>` menu_root, :ref:`String<class_String>` label, :ref:`int<class_int>` max_states, :ref:`int<class_int>` default_state, :ref:`Callable<class_Callable>` callback, :ref:`Callable<class_Callable>` key_callback, :ref:`Variant<class_Variant>` tag=null, :ref:`Key<enum_@GlobalScope_Key>` accelerator=0, :ref:`int<class_int>` index=-1 **)**
 
-Adds a new item with text ``labe`` to the global menu with ID ``menu_root``.
+Adds a new item with text ``label`` to the global menu with ID ``menu_root``.
 
 Contrarily to normal binary items, multistate items can have more than two states, as defined by ``max_states``. Each press or activate of the item will increase the state by one. The default value is defined by ``default_state``.
 
@@ -1734,6 +1744,8 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
 \ **Note:** By default, there's no indication of the current item state, it should be changed manually.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -1759,6 +1771,8 @@ Returns index of the inserted item, it's not guaranteed to be the same as ``inde
 
 \ **Note:** Radio-checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See :ref:`global_menu_set_item_checked<class_DisplayServer_method_global_menu_set_item_checked>` for more info on how to control it.
 
+\ **Note:** The ``callback`` and ``key_callback`` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to ``tag``.
+
 \ **Note:** This method is implemented on macOS.
 
 \ **Supported system menu IDs:**\ 
@@ -2133,6 +2147,8 @@ void **global_menu_set_item_callback** **(** :ref:`String<class_String>` menu_ro
 
 Sets the callback of the item at index ``idx``. Callback is emitted when an item is pressed.
 
+\ **Note:** The ``callback`` Callable needs to accept exactly one Variant parameter, the parameter passed to the Callable will be the value passed to the tag parameter when the menu item was created.
+
 \ **Note:** This method is implemented on macOS.
 
 .. rst-class:: classref-item-separator
@@ -2219,6 +2235,8 @@ void **global_menu_set_item_key_callback** **(** :ref:`String<class_String>` men
 
 Sets the callback of the item at index ``idx``. Callback is emitted when its accelerator is activated.
 
+\ **Note:** The ``key_callback`` Callable needs to accept exactly one Variant parameter, the parameter passed to the Callable will be the value passed to the tag parameter when the menu item was created.
+
 \ **Note:** This method is implemented on macOS.
 
 .. rst-class:: classref-item-separator
@@ -3393,6 +3411,8 @@ void **window_set_max_size** **(** :ref:`Vector2i<class_Vector2i>` max_size, :re
 
 Sets the maximum size of the window specified by ``window_id`` in pixels. Normally, the user will not be able to drag the window to make it smaller than the specified size. See also :ref:`window_get_max_size<class_DisplayServer_method_window_get_max_size>`.
 
+\ **Note:** It's recommended to change this value using :ref:`Window.max_size<class_Window_property_max_size>` instead.
+
 \ **Note:** Using third-party tools, it is possible for users to disable window geometry restrictions and therefore bypass this limit.
 
 .. rst-class:: classref-item-separator
@@ -3407,6 +3427,8 @@ void **window_set_min_size** **(** :ref:`Vector2i<class_Vector2i>` min_size, :re
 
 Sets the minimum size for the given window to ``min_size`` (in pixels). Normally, the user will not be able to drag the window to make it larger than the specified size. See also :ref:`window_get_min_size<class_DisplayServer_method_window_get_min_size>`.
 
+\ **Note:** It's recommended to change this value using :ref:`Window.min_size<class_Window_property_min_size>` instead.
+
 \ **Note:** By default, the main window has a minimum size of ``Vector2i(64, 64)``. This prevents issues that can arise when the window is resized to a near-zero size.
 
 \ **Note:** Using third-party tools, it is possible for users to disable window geometry restrictions and therefore bypass this limit.
@@ -3505,6 +3527,8 @@ Sets the position of the given window to ``position``. On multi-monitor setups,
 
 See also :ref:`window_get_position<class_DisplayServer_method_window_get_position>` and :ref:`window_set_size<class_DisplayServer_method_window_set_size>`.
 
+\ **Note:** It's recommended to change this value using :ref:`Window.position<class_Window_property_position>` instead.
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -3529,6 +3553,8 @@ void **window_set_size** **(** :ref:`Vector2i<class_Vector2i>` size, :ref:`int<c
 
 Sets the size of the given window to ``size`` (in pixels). See also :ref:`window_get_size<class_DisplayServer_method_window_get_size>` and :ref:`window_get_position<class_DisplayServer_method_window_get_position>`.
 
+\ **Note:** It's recommended to change this value using :ref:`Window.size<class_Window_property_size>` instead.
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -3541,6 +3567,8 @@ void **window_set_title** **(** :ref:`String<class_String>` title, :ref:`int<cla
 
 Sets the title of the given window to ``title``.
 
+\ **Note:** It's recommended to change this value using :ref:`Window.title<class_Window_property_title>` instead.
+
 \ **Note:** Avoid changing the window title every frame, as this can cause performance issues on certain window managers. Try to change the window title only a few times per second at most.
 
 .. rst-class:: classref-item-separator
@@ -3555,7 +3583,9 @@ void **window_set_transient** **(** :ref:`int<class_int>` window_id, :ref:`int<c
 
 Sets window transient parent. Transient window is will be destroyed with its transient parent and will return focus to their parent when closed. The transient window is displayed on top of a non-exclusive full-screen parent window. Transient windows can't enter full-screen mode.
 
-Note that behavior might be different depending on the platform.
+\ **Note:** It's recommended to change this value using :ref:`Window.transient<class_Window_property_transient>` instead.
+
+\ **Note:** The behavior might be different depending on the platform.
 
 .. rst-class:: classref-item-separator
 

+ 42 - 39
classes/class_dtlsserver.rst

@@ -59,45 +59,46 @@ Below a small example of how to use it:
 
  .. code-tab:: csharp
 
-    using Godot;
-    using System;
     // ServerNode.cs
-    public class ServerNode : Node
+    using Godot;
+    
+    public partial class ServerNode : Node
     {
-        public DTLSServer Dtls = new DTLSServer();
-        public UDPServer Server = new UDPServer();
-        public Godot.Collections.Array<PacketPeerDTLS> Peers = new Godot.Collections.Array<PacketPeerDTLS>();
+        private DtlsServer _dtls = new DtlsServer();
+        private UdpServer _server = new UdpServer();
+        private Godot.Collections.Array<PacketPeerDTLS> _peers = new Godot.Collections.Array<PacketPeerDTLS>();
+    
         public override void _Ready()
         {
-            Server.Listen(4242);
+            _server.Listen(4242);
             var key = GD.Load<CryptoKey>("key.key"); // Your private key.
             var cert = GD.Load<X509Certificate>("cert.crt"); // Your X509 certificate.
-            Dtls.Setup(key, cert);
+            _dtls.Setup(key, cert);
         }
     
-        public override void _Process(float delta)
+        public override void _Process(double delta)
         {
             while (Server.IsConnectionAvailable())
             {
-                PacketPeerUDP peer = Server.TakeConnection();
-                PacketPeerDTLS dtlsPeer = Dtls.TakeConnection(peer);
-                if (dtlsPeer.GetStatus() != PacketPeerDTLS.Status.Handshaking)
+                PacketPeerUDP peer = _server.TakeConnection();
+                PacketPeerDTLS dtlsPeer = _dtls.TakeConnection(peer);
+                if (dtlsPeer.GetStatus() != PacketPeerDtls.Status.Handshaking)
                 {
                     continue; // It is normal that 50% of the connections fails due to cookie exchange.
                 }
                 GD.Print("Peer connected!");
-                Peers.Add(dtlsPeer);
+                _peers.Add(dtlsPeer);
             }
     
-            foreach (var p in Peers)
+            foreach (var p in _peers)
             {
                 p.Poll(); // Must poll to update the state.
-                if (p.GetStatus() == PacketPeerDTLS.Status.Connected)
+                if (p.GetStatus() == PacketPeerDtls.Status.Connected)
                 {
                     while (p.GetAvailablePacketCount() > 0)
                     {
-                        GD.Print("Received Message From Client: " + p.GetPacket().GetStringFromUTF8());
-                        p.PutPacket("Hello Dtls Client".ToUTF8());
+                        GD.Print($"Received Message From Client: {p.GetPacket().GetStringFromUtf8()}");
+                        p.PutPacket("Hello DTLS Client".ToUtf8());
                     }
                 }
             }
@@ -134,34 +135,36 @@ Below a small example of how to use it:
 
  .. code-tab:: csharp
 
+    // ClientNode.cs
     using Godot;
     using System.Text;
-    // ClientNode.cs
-    public class ClientNode : Node
+    
+    public partial class ClientNode : Node
     {
-        public PacketPeerDTLS Dtls = new PacketPeerDTLS();
-        public PacketPeerUDP Udp = new PacketPeerUDP();
-        public bool Connected = false;
+        private PacketPeerDtls _dtls = new PacketPeerDtls();
+        private PacketPeerUdp _udp = new PacketPeerUdp();
+        private bool _connected = false;
+    
         public override void _Ready()
         {
-            Udp.ConnectToHost("127.0.0.1", 4242);
-            Dtls.ConnectToPeer(Udp, false); // Use true in production for certificate validation!
+            _udp.ConnectToHost("127.0.0.1", 4242);
+            _dtls.ConnectToPeer(_udp, validateCerts: false); // Use true in production for certificate validation!
         }
     
-        public override void _Process(float delta)
+        public override void _Process(double delta)
         {
-            Dtls.Poll();
-            if (Dtls.GetStatus() == PacketPeerDTLS.Status.Connected)
+            _dtls.Poll();
+            if (_dtls.GetStatus() == PacketPeerDtls.Status.Connected)
             {
-                if (!Connected)
+                if (!_connected)
                 {
                     // Try to contact server
-                    Dtls.PutPacket("The Answer Is..42!".ToUTF8());
+                    _dtls.PutPacket("The Answer Is..42!".ToUtf8());
                 }
-                while (Dtls.GetAvailablePacketCount() > 0)
+                while (_dtls.GetAvailablePacketCount() > 0)
                 {
-                    GD.Print("Connected: " + Dtls.GetPacket().GetStringFromUTF8());
-                    Connected = true;
+                    GD.Print($"Connected: {_dtls.GetPacket().GetStringFromUtf8()}");
+                    _connected = true;
                 }
             }
         }
@@ -177,11 +180,11 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`       | :ref:`setup<class_DTLSServer_method_setup>` **(** :ref:`CryptoKey<class_CryptoKey>` key, :ref:`X509Certificate<class_X509Certificate>` certificate, :ref:`X509Certificate<class_X509Certificate>` chain=null **)** |
-   +---------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PacketPeerDTLS<class_PacketPeerDTLS>` | :ref:`take_connection<class_DTLSServer_method_take_connection>` **(** :ref:`PacketPeerUDP<class_PacketPeerUDP>` udp_peer **)**                                                                                     |
-   +---------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +---------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`       | :ref:`setup<class_DTLSServer_method_setup>` **(** :ref:`TLSOptions<class_TLSOptions>` server_options **)**                     |
+   +---------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PacketPeerDTLS<class_PacketPeerDTLS>` | :ref:`take_connection<class_DTLSServer_method_take_connection>` **(** :ref:`PacketPeerUDP<class_PacketPeerUDP>` udp_peer **)** |
+   +---------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -196,9 +199,9 @@ Method Descriptions
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **setup** **(** :ref:`CryptoKey<class_CryptoKey>` key, :ref:`X509Certificate<class_X509Certificate>` certificate, :ref:`X509Certificate<class_X509Certificate>` chain=null **)**
+:ref:`Error<enum_@GlobalScope_Error>` **setup** **(** :ref:`TLSOptions<class_TLSOptions>` server_options **)**
 
-Setup the DTLS server to use the given ``key`` and provide the given ``certificate`` to clients. You can pass the optional ``chain`` parameter to provide additional CA chain information along with the certificate.
+Setup the DTLS server to use the given ``server_options``. See :ref:`TLSOptions.server<class_TLSOptions_method_server>`.
 
 .. rst-class:: classref-item-separator
 

+ 64 - 44
classes/class_editorimportplugin.rst

@@ -58,8 +58,8 @@ Below is an example EditorImportPlugin that imports a :ref:`Mesh<class_Mesh>` fr
         return [{"name": "my_option", "default_value": false}]
     
     func _import(source_file, save_path, options, platform_variants, gen_files):
-        var file = File.new()
-        if file.open(source_file, File.READ) != OK:
+        var file = FileAccess.open(source_file, FileAccess.READ)
+        if file == null:
             return FAILED
         var mesh = ArrayMesh.new()
         # Fill the Mesh with data read in "file", left as an exercise to the reader.
@@ -70,61 +70,67 @@ Below is an example EditorImportPlugin that imports a :ref:`Mesh<class_Mesh>` fr
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     
-    public class MySpecialPlugin : EditorImportPlugin
+    public partial class MySpecialPlugin : EditorImportPlugin
     {
-        public override String GetImporterName()
+        public override string _GetImporterName()
         {
             return "my.special.plugin";
         }
     
-        public override String GetVisibleName()
+        public override string _GetVisibleName()
         {
             return "Special Mesh";
         }
     
-        public override Godot.Collections.Array GetRecognizedExtensions()
+        public override string[] _GetRecognizedExtensions()
         {
-            return new Godot.Collections.Array{"special", "spec"};
+            return new string[] { "special", "spec" };
         }
     
-        public override String GetSaveExtension()
+        public override string _GetSaveExtension()
         {
             return "mesh";
         }
     
-        public override String GetResourceType()
+        public override string _GetResourceType()
         {
             return "Mesh";
         }
     
-        public override int GetPresetCount()
+        public override int _GetPresetCount()
         {
             return 1;
         }
     
-        public override String GetPresetName(int i)
+        public override string _GetPresetName(int presetIndex)
         {
             return "Default";
         }
     
-        public override Godot.Collections.Array GetImportOptions(int i)
+        public override Godot.Collections.Array<Godot.Collections.Dictionary> _GetImportOptions(string path, int presetIndex)
         {
-            return new Godot.Collections.Array{new Godot.Collections.Dictionary{{"name", "myOption"}, {"defaultValue", false}}};
+            return new Godot.Collections.Array<Godot.Collections.Dictionary>
+            {
+                new Godot.Collections.Dictionary
+                {
+                    { "name", "myOption" },
+                    { "defaultValue", false },
+                }
+            };
         }
     
-        public override int Import(String sourceFile, String savePath, Godot.Collections.Dictionary options, Godot.Collections.Array platformVariants, Godot.Collections.Array genFiles)
+        public override int _Import(string sourceFile, string savePath, Godot.Collections.Dictionary options, Godot.Collections.Array<string> platformVariants, Godot.Collections.Array<string> genFiles)
         {
-            var file = new File();
-            if (file.Open(sourceFile, File.ModeFlags.Read) != Error.Ok)
+            using var file = FileAccess.Open(sourceFile, FileAccess.ModeFlags.Read);
+            if (file.GetError() != Error.Ok)
             {
                 return (int)Error.Failed;
             }
     
             var mesh = new ArrayMesh();
             // Fill the Mesh with data read in "file", left as an exercise to the reader.
-            String filename = savePath + "." + GetSaveExtension();
+            string filename = $"{savePath}.{_GetSaveExtension()}";
             return (int)ResourceSaver.Save(mesh, filename);
         }
     }
@@ -148,31 +154,33 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Dictionary[]<class_Dictionary>`             | :ref:`_get_import_options<class_EditorImportPlugin_method__get_import_options>` **(** :ref:`String<class_String>` path, :ref:`int<class_int>` preset_index **)** |virtual| |const|                                                                                                                          |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_get_import_order<class_EditorImportPlugin_method__get_import_order>` **(** **)** |virtual| |const|                                                                                                                                                                                                   |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                       | :ref:`_get_importer_name<class_EditorImportPlugin_method__get_importer_name>` **(** **)** |virtual| |const|                                                                                                                                                                                                 |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                           | :ref:`_get_option_visibility<class_EditorImportPlugin_method__get_option_visibility>` **(** :ref:`String<class_String>` path, :ref:`StringName<class_StringName>` option_name, :ref:`Dictionary<class_Dictionary>` options **)** |virtual| |const|                                                          |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_get_preset_count<class_EditorImportPlugin_method__get_preset_count>` **(** **)** |virtual| |const|                                                                                                                                                                                                   |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                       | :ref:`_get_preset_name<class_EditorImportPlugin_method__get_preset_name>` **(** :ref:`int<class_int>` preset_index **)** |virtual| |const|                                                                                                                                                                  |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>`                         | :ref:`_get_priority<class_EditorImportPlugin_method__get_priority>` **(** **)** |virtual| |const|                                                                                                                                                                                                           |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`_get_recognized_extensions<class_EditorImportPlugin_method__get_recognized_extensions>` **(** **)** |virtual| |const|                                                                                                                                                                                 |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                       | :ref:`_get_resource_type<class_EditorImportPlugin_method__get_resource_type>` **(** **)** |virtual| |const|                                                                                                                                                                                                 |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                       | :ref:`_get_save_extension<class_EditorImportPlugin_method__get_save_extension>` **(** **)** |virtual| |const|                                                                                                                                                                                               |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`String<class_String>`                       | :ref:`_get_visible_name<class_EditorImportPlugin_method__get_visible_name>` **(** **)** |virtual| |const|                                                                                                                                                                                                   |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_import<class_EditorImportPlugin_method__import>` **(** :ref:`String<class_String>` source_file, :ref:`String<class_String>` save_path, :ref:`Dictionary<class_Dictionary>` options, :ref:`String[]<class_String>` platform_variants, :ref:`String[]<class_String>` gen_files **)** |virtual| |const| |
-   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary[]<class_Dictionary>`             | :ref:`_get_import_options<class_EditorImportPlugin_method__get_import_options>` **(** :ref:`String<class_String>` path, :ref:`int<class_int>` preset_index **)** |virtual| |const|                                                                                                                                   |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`_get_import_order<class_EditorImportPlugin_method__get_import_order>` **(** **)** |virtual| |const|                                                                                                                                                                                                            |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                       | :ref:`_get_importer_name<class_EditorImportPlugin_method__get_importer_name>` **(** **)** |virtual| |const|                                                                                                                                                                                                          |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`_get_option_visibility<class_EditorImportPlugin_method__get_option_visibility>` **(** :ref:`String<class_String>` path, :ref:`StringName<class_StringName>` option_name, :ref:`Dictionary<class_Dictionary>` options **)** |virtual| |const|                                                                   |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`_get_preset_count<class_EditorImportPlugin_method__get_preset_count>` **(** **)** |virtual| |const|                                                                                                                                                                                                            |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                       | :ref:`_get_preset_name<class_EditorImportPlugin_method__get_preset_name>` **(** :ref:`int<class_int>` preset_index **)** |virtual| |const|                                                                                                                                                                           |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                         | :ref:`_get_priority<class_EditorImportPlugin_method__get_priority>` **(** **)** |virtual| |const|                                                                                                                                                                                                                    |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`_get_recognized_extensions<class_EditorImportPlugin_method__get_recognized_extensions>` **(** **)** |virtual| |const|                                                                                                                                                                                          |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                       | :ref:`_get_resource_type<class_EditorImportPlugin_method__get_resource_type>` **(** **)** |virtual| |const|                                                                                                                                                                                                          |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                       | :ref:`_get_save_extension<class_EditorImportPlugin_method__get_save_extension>` **(** **)** |virtual| |const|                                                                                                                                                                                                        |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                       | :ref:`_get_visible_name<class_EditorImportPlugin_method__get_visible_name>` **(** **)** |virtual| |const|                                                                                                                                                                                                            |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_import<class_EditorImportPlugin_method__import>` **(** :ref:`String<class_String>` source_file, :ref:`String<class_String>` save_path, :ref:`Dictionary<class_Dictionary>` options, :ref:`String[]<class_String>` platform_variants, :ref:`String[]<class_String>` gen_files **)** |virtual| |const|          |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`append_import_external_resource<class_EditorImportPlugin_method_append_import_external_resource>` **(** :ref:`String<class_String>` path, :ref:`Dictionary<class_Dictionary>` custom_options={}, :ref:`String<class_String>` custom_importer="", :ref:`Variant<class_Variant>` generator_parameters=null **)** |
+   +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -348,12 +356,24 @@ Gets the name to display in the import window. You should choose this name as a
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_import** **(** :ref:`String<class_String>` source_file, :ref:`String<class_String>` save_path, :ref:`Dictionary<class_Dictionary>` options, :ref:`String[]<class_String>` platform_variants, :ref:`String[]<class_String>` gen_files **)** |virtual| |const|
+:ref:`Error<enum_@GlobalScope_Error>` **_import** **(** :ref:`String<class_String>` source_file, :ref:`String<class_String>` save_path, :ref:`Dictionary<class_Dictionary>` options, :ref:`String[]<class_String>` platform_variants, :ref:`String[]<class_String>` gen_files **)** |virtual| |const|
 
 Imports ``source_file`` into ``save_path`` with the import ``options`` specified. The ``platform_variants`` and ``gen_files`` arrays will be modified by this function.
 
 This method must be overridden to do the actual importing work. See this class' description for an example of overriding this method.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_EditorImportPlugin_method_append_import_external_resource:
+
+.. rst-class:: classref-method
+
+:ref:`Error<enum_@GlobalScope_Error>` **append_import_external_resource** **(** :ref:`String<class_String>` path, :ref:`Dictionary<class_Dictionary>` custom_options={}, :ref:`String<class_String>` custom_importer="", :ref:`Variant<class_Variant>` generator_parameters=null **)**
+
+This function can only be called during the :ref:`_import<class_EditorImportPlugin_method__import>` callback and it allows manually importing resources from it. This is useful when the imported file generates external resources that require importing (as example, images). Custom parameters for the ".import" file can be passed via the ``custom_options``. Additionally, in cases where multiple importers can handle a file, the ``custom_importer`` ca be specified to force a specific one. This function performs a resource import and returns immediately with a success or error code. ``generator_parameters`` defines optional extra metadata which will be stored as ``generator_parameters`` in the ``remap`` section of the ``.import`` file, for example to store a md5 hash of the source data.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 20 - 20
classes/class_editorinspectorplugin.rst

@@ -48,25 +48,25 @@ Methods
 .. table::
    :widths: auto
 
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>` | :ref:`_can_handle<class_EditorInspectorPlugin_method__can_handle>` **(** :ref:`Variant<class_Variant>` object **)** |virtual| |const|                                                                                                                                                                                                        |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`_parse_begin<class_EditorInspectorPlugin_method__parse_begin>` **(** :ref:`Object<class_Object>` object **)** |virtual|                                                                                                                                                                                                                |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`_parse_category<class_EditorInspectorPlugin_method__parse_category>` **(** :ref:`Object<class_Object>` object, :ref:`String<class_String>` category **)** |virtual|                                                                                                                                                                    |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`_parse_end<class_EditorInspectorPlugin_method__parse_end>` **(** :ref:`Object<class_Object>` object **)** |virtual|                                                                                                                                                                                                                    |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`_parse_group<class_EditorInspectorPlugin_method__parse_group>` **(** :ref:`Object<class_Object>` object, :ref:`String<class_String>` group **)** |virtual|                                                                                                                                                                             |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>` | :ref:`_parse_property<class_EditorInspectorPlugin_method__parse_property>` **(** :ref:`Object<class_Object>` object, :ref:`int<class_int>` type, :ref:`String<class_String>` name, :ref:`int<class_int>` hint_type, :ref:`String<class_String>` hint_string, :ref:`int<class_int>` usage_flags, :ref:`bool<class_bool>` wide **)** |virtual| |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`add_custom_control<class_EditorInspectorPlugin_method_add_custom_control>` **(** :ref:`Control<class_Control>` control **)**                                                                                                                                                                                                           |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`add_property_editor<class_EditorInspectorPlugin_method_add_property_editor>` **(** :ref:`String<class_String>` property, :ref:`Control<class_Control>` editor, :ref:`bool<class_bool>` add_to_end=false **)**                                                                                                                          |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                    | :ref:`add_property_editor_for_multiple_properties<class_EditorInspectorPlugin_method_add_property_editor_for_multiple_properties>` **(** :ref:`String<class_String>` label, :ref:`PackedStringArray<class_PackedStringArray>` properties, :ref:`Control<class_Control>` editor **)**                                                         |
-   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`_can_handle<class_EditorInspectorPlugin_method__can_handle>` **(** :ref:`Variant<class_Variant>` object **)** |virtual| |const|                                                                                                                                                                                                                                                                                                              |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`_parse_begin<class_EditorInspectorPlugin_method__parse_begin>` **(** :ref:`Object<class_Object>` object **)** |virtual|                                                                                                                                                                                                                                                                                                                      |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`_parse_category<class_EditorInspectorPlugin_method__parse_category>` **(** :ref:`Object<class_Object>` object, :ref:`String<class_String>` category **)** |virtual|                                                                                                                                                                                                                                                                          |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`_parse_end<class_EditorInspectorPlugin_method__parse_end>` **(** :ref:`Object<class_Object>` object **)** |virtual|                                                                                                                                                                                                                                                                                                                          |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`_parse_group<class_EditorInspectorPlugin_method__parse_group>` **(** :ref:`Object<class_Object>` object, :ref:`String<class_String>` group **)** |virtual|                                                                                                                                                                                                                                                                                   |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`_parse_property<class_EditorInspectorPlugin_method__parse_property>` **(** :ref:`Object<class_Object>` object, :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` type, :ref:`String<class_String>` name, :ref:`PropertyHint<enum_@GlobalScope_PropertyHint>` hint_type, :ref:`String<class_String>` hint_string, :ref:`PropertyUsageFlags<enum_@GlobalScope_PropertyUsageFlags>` usage_flags, :ref:`bool<class_bool>` wide **)** |virtual| |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`add_custom_control<class_EditorInspectorPlugin_method_add_custom_control>` **(** :ref:`Control<class_Control>` control **)**                                                                                                                                                                                                                                                                                                                 |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`add_property_editor<class_EditorInspectorPlugin_method_add_property_editor>` **(** :ref:`String<class_String>` property, :ref:`Control<class_Control>` editor, :ref:`bool<class_bool>` add_to_end=false **)**                                                                                                                                                                                                                                |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                    | :ref:`add_property_editor_for_multiple_properties<class_EditorInspectorPlugin_method_add_property_editor_for_multiple_properties>` **(** :ref:`String<class_String>` label, :ref:`PackedStringArray<class_PackedStringArray>` properties, :ref:`Control<class_Control>` editor **)**                                                                                                                                                               |
+   +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -141,7 +141,7 @@ Called to allow adding controls at the beginning of a group or a sub-group in th
 
 .. rst-class:: classref-method
 
-:ref:`bool<class_bool>` **_parse_property** **(** :ref:`Object<class_Object>` object, :ref:`int<class_int>` type, :ref:`String<class_String>` name, :ref:`int<class_int>` hint_type, :ref:`String<class_String>` hint_string, :ref:`int<class_int>` usage_flags, :ref:`bool<class_bool>` wide **)** |virtual|
+:ref:`bool<class_bool>` **_parse_property** **(** :ref:`Object<class_Object>` object, :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` type, :ref:`String<class_String>` name, :ref:`PropertyHint<enum_@GlobalScope_PropertyHint>` hint_type, :ref:`String<class_String>` hint_string, :ref:`PropertyUsageFlags<enum_@GlobalScope_PropertyUsageFlags>` usage_flags, :ref:`bool<class_bool>` wide **)** |virtual|
 
 Called to allow adding property-specific editors to the property list for ``object``. The added editor control must extend :ref:`EditorProperty<class_EditorProperty>`. Returning ``true`` removes the built-in editor for this property, otherwise allows to insert a custom editor before the built-in one.
 

+ 21 - 16
classes/class_editorplugin.rst

@@ -575,21 +575,22 @@ Called by the engine when the 3D editor's viewport is updated. Use the ``overlay
 
  .. code-tab:: csharp
 
-    public override void _Forward3dDrawOverViewport(Godot.Control overlay)
+    public override void _Forward3DDrawOverViewport(Control viewportControl)
     {
         // Draw a circle at cursor position.
-        overlay.DrawCircle(overlay.GetLocalMousePosition(), 64, Colors.White);
+        viewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, Colors.White);
     }
     
-    public override EditorPlugin.AfterGUIInput _Forward3dGuiInput(Godot.Camera3D camera, InputEvent @event)
+    public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D viewportCamera, InputEvent @event)
     {
         if (@event is InputEventMouseMotion)
         {
             // Redraw viewport when cursor is moved.
             UpdateOverlays();
-            return EditorPlugin.AFTER_GUI_INPUT_STOP;
+            return EditorPlugin.AfterGuiInput.Stop;
         }
-        return EditorPlugin.AFTER_GUI_INPUT_PASS;
+        return EditorPlugin.AfterGuiInput.Pass;
+    }
 
 
 
@@ -633,9 +634,9 @@ Called when there is a root node in the current edited scene, :ref:`_handles<cla
  .. code-tab:: csharp
 
     // Prevents the InputEvent from reaching other Editor classes.
-    public override EditorPlugin.AfterGUIInput _Forward3dGuiInput(Camera3D camera, InputEvent @event)
+    public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D camera, InputEvent @event)
     {
-        return EditorPlugin.AFTER_GUI_INPUT_STOP;
+        return EditorPlugin.AfterGuiInput.Stop;
     }
 
 
@@ -656,9 +657,9 @@ Must ``return EditorPlugin.AFTER_GUI_INPUT_PASS`` in order to forward the :ref:`
  .. code-tab:: csharp
 
     // Consumes InputEventMouseMotion and forwards other InputEvent types.
-    public override EditorPlugin.AfterGUIInput _Forward3dGuiInput(Camera3D camera, InputEvent @event)
+    public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D camera, InputEvent @event)
     {
-        return @event is InputEventMouseMotion ? EditorPlugin.AFTER_GUI_INPUT_STOP : EditorPlugin.AFTER_GUI_INPUT_PASS;
+        return @event is InputEventMouseMotion ? EditorPlugin.AfterGuiInput.Stop : EditorPlugin.AfterGuiInput.Pass;
     }
 
 
@@ -693,13 +694,13 @@ Called by the engine when the 2D editor's viewport is updated. Use the ``overlay
 
  .. code-tab:: csharp
 
-    public override void ForwardCanvasDrawOverViewport(Godot.Control overlay)
+    public override void _ForwardCanvasDrawOverViewport(Control viewportControl)
     {
         // Draw a circle at cursor position.
-        overlay.DrawCircle(overlay.GetLocalMousePosition(), 64, Colors.White);
+        viewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, Colors.White);
     }
     
-    public override bool ForwardCanvasGuiInput(InputEvent @event)
+    public override bool _ForwardCanvasGuiInput(InputEvent @event)
     {
         if (@event is InputEventMouseMotion)
         {
@@ -708,6 +709,7 @@ Called by the engine when the 2D editor's viewport is updated. Use the ``overlay
             return true;
         }
         return false;
+    }
 
 
 
@@ -776,12 +778,13 @@ Must ``return false`` in order to forward the :ref:`InputEvent<class_InputEvent>
  .. code-tab:: csharp
 
     // Consumes InputEventMouseMotion and forwards other InputEvent types.
-    public override bool ForwardCanvasGuiInput(InputEvent @event)
+    public override bool _ForwardCanvasGuiInput(InputEvent @event)
     {
-        if (@event is InputEventMouseMotion) {
+        if (@event is InputEventMouseMotion)
+        {
             return true;
         }
-        return false
+        return false;
     }
 
 
@@ -827,7 +830,7 @@ Ideally, the plugin icon should be white with a transparent background and 16x16
 
  .. code-tab:: csharp
 
-    public override Texture2D GetPluginIcon()
+    public override Texture2D _GetPluginIcon()
     {
         // You can use a custom icon:
         return ResourceLoader.Load<Texture2D>("res://addons/my_plugin/my_plugin_icon.svg");
@@ -1078,6 +1081,8 @@ Adds a custom type, which will appear in the list of nodes or resources. An icon
 
 When a given node or resource is selected, the base type will be instantiated (e.g. "Node3D", "Control", "Resource"), then the script will be loaded and set to this object.
 
+\ **Note:** The base type is the base engine class which this type's class hierarchy inherits, not any custom type parent classes.
+
 You can use the virtual method :ref:`_handles<class_EditorPlugin_method__handles>` to check if your custom object is being edited by checking the script or using the ``is`` keyword.
 
 During run-time, this will be a simple object with a script so this function does not need to be called then.

+ 5 - 2
classes/class_editorscenepostimport.rst

@@ -30,12 +30,14 @@ The :ref:`_post_import<class_EditorScenePostImport_method__post_import>` callbac
 
     @tool # Needed so it runs in editor.
     extends EditorScenePostImport
+    
     # This sample changes all node names.
     # Called right after the scene is imported and gets the root node.
     func _post_import(scene):
         # Change all node names to "modified_[oldnodename]"
         iterate(scene)
         return scene # Remember to return the imported scene
+    
     func iterate(node):
         if node != null:
             node.name = "modified_" + node.name
@@ -51,17 +53,18 @@ The :ref:`_post_import<class_EditorScenePostImport_method__post_import>` callbac
     [Tool]
     public partial class NodeRenamer : EditorScenePostImport
     {
-        public override Object _PostImport(Node scene)
+        public override GodotObject _PostImport(Node scene)
         {
             // Change all node names to "modified_[oldnodename]"
             Iterate(scene);
             return scene; // Remember to return the imported scene
         }
+    
         public void Iterate(Node node)
         {
             if (node != null)
             {
-                node.Name = "modified_" + node.Name;
+                node.Name = $"modified_{node.Name}";
                 foreach (Node child in node.GetChildren())
                 {
                     Iterate(child);

+ 1 - 2
classes/class_editorscript.rst

@@ -39,10 +39,9 @@ Scripts extending this class and implementing its :ref:`_run<class_EditorScript_
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     
     [Tool]
-    public class HelloEditor : EditorScript
+    public partial class HelloEditor : EditorScript
     {
         public override void _Run()
         {

+ 17 - 1
classes/class_editorsettings.rst

@@ -44,7 +44,7 @@ Accessing the settings can be done using the following methods, such as:
     settings.SetSetting("some/property", Value);
     // `settings.get("some/property", value)` also works as this class overrides `_get()` internally.
     settings.GetSetting("some/property");
-    Godot.Collections.Array listOfSettings = settings.GetPropertyList();
+    Godot.Collections.Array<Godot.Collections.Dictionary> listOfSettings = settings.GetPropertyList();
 
 
 
@@ -315,6 +315,8 @@ Properties
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`       | :ref:`interface/theme/draw_extra_borders<class_EditorSettings_property_interface/theme/draw_extra_borders>`                                                                         |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`       | :ref:`interface/theme/enable_touchscreen_touch_area<class_EditorSettings_property_interface/theme/enable_touchscreen_touch_area>`                                                   |
+   +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`         | :ref:`interface/theme/icon_and_font_color<class_EditorSettings_property_interface/theme/icon_and_font_color>`                                                                       |
    +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`     | :ref:`interface/theme/icon_saturation<class_EditorSettings_property_interface/theme/icon_saturation>`                                                                               |
@@ -2227,6 +2229,20 @@ If ``true``, draws additional borders around interactive UI elements in the edit
 
 ----
 
+.. _class_EditorSettings_property_interface/theme/enable_touchscreen_touch_area:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **interface/theme/enable_touchscreen_touch_area**
+
+If ``true``, increases the touch area for the UI elements to improve usability on touchscreen devices.
+
+\ **Note:** Defaults to ``true`` on touchscreen devices.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorSettings_property_interface/theme/icon_and_font_color:
 
 .. rst-class:: classref-property

+ 12 - 15
classes/class_editortranslationparserplugin.rst

@@ -38,8 +38,7 @@ Below shows an example of a custom parser that extracts strings from a CSV file
     extends EditorTranslationParserPlugin
     
     func _parse_file(path, msgids, msgids_context_plural):
-        var file = File.new()
-        file.open(path, File.READ)
+        var file = FileAccess.open(path, FileAccess.READ)
         var text = file.get_as_text()
         var split_strs = text.split(",", false)
         for s in split_strs:
@@ -52,27 +51,25 @@ Below shows an example of a custom parser that extracts strings from a CSV file
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     
     [Tool]
-    public class CustomParser : EditorTranslationParserPlugin
+    public partial class CustomParser : EditorTranslationParserPlugin
     {
-        public override void ParseFile(string path, Godot.Collections.Array msgids, Godot.Collections.Array msgidsContextPlural)
+        public override void _ParseFile(string path, Godot.Collections.Array<string> msgids, Godot.Collections.Array<Godot.Collections.Array> msgidsContextPlural)
         {
-            var file = new File();
-            file.Open(path, File.ModeFlags.Read);
+            using var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);
             string text = file.GetAsText();
-            string[] splitStrs = text.Split(",", false);
-            foreach (var s in splitStrs)
+            string[] splitStrs = text.Split(",", allowEmpty: false);
+            foreach (string s in splitStrs)
             {
                 msgids.Add(s);
-                //GD.Print("Extracted string: " + s)
+                //GD.Print($"Extracted string: {s}");
             }
         }
     
-        public override Godot.Collections.Array GetRecognizedExtensions()
+        public override string[] _GetRecognizedExtensions()
         {
-            return new Godot.Collections.Array{"csv"};
+            return new string[] { "csv" };
         }
     }
 
@@ -122,16 +119,16 @@ For example:
 
  .. code-tab:: csharp
 
-    public override void ParseFile(string path, Godot.Collections.Array msgids, Godot.Collections.Array msgidsContextPlural)
+    public override void _ParseFile(string path, Godot.Collections.Array<string> msgids, Godot.Collections.Array<Godot.Collections.Array> msgidsContextPlural)
     {
         var res = ResourceLoader.Load<Script>(path, "Script");
         string text = res.SourceCode;
         // Parsing logic.
     }
     
-    public override Godot.Collections.Array GetRecognizedExtensions()
+    public override string[] _GetRecognizedExtensions()
     {
-        return new Godot.Collections.Array{"gd"};
+        return new string[] { "gd" };
     }
 
 

+ 6 - 6
classes/class_enetconnection.rst

@@ -53,9 +53,9 @@ Methods
    +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                          | :ref:`destroy<class_ENetConnection_method_destroy>` **(** **)**                                                                                                                                                                                                                                                      |
    +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`dtls_client_setup<class_ENetConnection_method_dtls_client_setup>` **(** :ref:`X509Certificate<class_X509Certificate>` certificate, :ref:`String<class_String>` hostname, :ref:`bool<class_bool>` verify=true **)**                                                                                             |
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`dtls_client_setup<class_ENetConnection_method_dtls_client_setup>` **(** :ref:`String<class_String>` hostname, :ref:`TLSOptions<class_TLSOptions>` client_options=null **)**                                                                                                                                    |
    +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`dtls_server_setup<class_ENetConnection_method_dtls_server_setup>` **(** :ref:`CryptoKey<class_CryptoKey>` key, :ref:`X509Certificate<class_X509Certificate>` certificate **)**                                                                                                                                 |
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`dtls_server_setup<class_ENetConnection_method_dtls_server_setup>` **(** :ref:`TLSOptions<class_TLSOptions>` server_options **)**                                                                                                                                                                               |
    +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                          | :ref:`flush<class_ENetConnection_method_flush>` **(** **)**                                                                                                                                                                                                                                                          |
    +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -334,9 +334,9 @@ Destroys the host and all resources associated with it.
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **dtls_client_setup** **(** :ref:`X509Certificate<class_X509Certificate>` certificate, :ref:`String<class_String>` hostname, :ref:`bool<class_bool>` verify=true **)**
+:ref:`Error<enum_@GlobalScope_Error>` **dtls_client_setup** **(** :ref:`String<class_String>` hostname, :ref:`TLSOptions<class_TLSOptions>` client_options=null **)**
 
-Configure this ENetHost to use the custom Godot extension allowing DTLS encryption for ENet clients. Call this before :ref:`connect_to_host<class_ENetConnection_method_connect_to_host>` to have ENet connect using DTLS with ``certificate`` and ``hostname`` verification. Verification can be optionally turned off via the ``verify`` parameter.
+Configure this ENetHost to use the custom Godot extension allowing DTLS encryption for ENet clients. Call this before :ref:`connect_to_host<class_ENetConnection_method_connect_to_host>` to have ENet connect using DTLS validating the server certificate against ``hostname``. You can pass the optional ``client_options`` parameter to customize the trusted certification authorities, or disable the common name verification. See :ref:`TLSOptions.client<class_TLSOptions_method_client>` and :ref:`TLSOptions.client_unsafe<class_TLSOptions_method_client_unsafe>`.
 
 .. rst-class:: classref-item-separator
 
@@ -346,9 +346,9 @@ Configure this ENetHost to use the custom Godot extension allowing DTLS encrypti
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **dtls_server_setup** **(** :ref:`CryptoKey<class_CryptoKey>` key, :ref:`X509Certificate<class_X509Certificate>` certificate **)**
+:ref:`Error<enum_@GlobalScope_Error>` **dtls_server_setup** **(** :ref:`TLSOptions<class_TLSOptions>` server_options **)**
 
-Configure this ENetHost to use the custom Godot extension allowing DTLS encryption for ENet servers. Call this right after :ref:`create_host_bound<class_ENetConnection_method_create_host_bound>` to have ENet expect peers to connect using DTLS.
+Configure this ENetHost to use the custom Godot extension allowing DTLS encryption for ENet servers. Call this right after :ref:`create_host_bound<class_ENetConnection_method_create_host_bound>` to have ENet expect peers to connect using DTLS. See :ref:`TLSOptions.server<class_TLSOptions_method_server>`.
 
 .. rst-class:: classref-item-separator
 

+ 5 - 5
classes/class_expression.rst

@@ -46,7 +46,7 @@ In the following example we use a :ref:`LineEdit<class_LineEdit>` node to write
 
  .. code-tab:: csharp
 
-    public Expression expression = new Expression();
+    private Expression _expression = new Expression();
     
     public override void _Ready()
     {
@@ -55,14 +55,14 @@ In the following example we use a :ref:`LineEdit<class_LineEdit>` node to write
     
     private void OnTextEntered(string command)
     {
-        Error error = expression.Parse(command);
+        Error error = _expression.Parse(command);
         if (error != Error.Ok)
         {
-            GD.Print(expression.GetErrorText());
+            GD.Print(_expression.GetErrorText());
             return;
         }
-        object result = expression.Execute();
-        if (!expression.HasExecuteFailed())
+        Variant result = _expression.Execute();
+        if (!_expression.HasExecuteFailed())
         {
             GetNode<LineEdit>("LineEdit").Text = result.ToString();
         }

+ 2 - 2
classes/class_fileaccess.rst

@@ -836,8 +836,8 @@ To store a signed integer, use :ref:`store_64<class_FileAccess_method_store_64>`
         f.Seek(0); // Go back to start to read the stored value.
         ushort read1 = f.Get16(); // 65494
         ushort read2 = f.Get16(); // 121
-        short converted1 = BitConverter.ToInt16(BitConverter.GetBytes(read1), 0); // -42
-        short converted2 = BitConverter.ToInt16(BitConverter.GetBytes(read2), 0); // 121
+        short converted1 = (short)read1; // -42
+        short converted2 = (short)read2; // 121
     }
 
 

+ 21 - 21
classes/class_fogvolume.rst

@@ -33,13 +33,13 @@ Properties
 .. table::
    :widths: auto
 
-   +------------------------------------------------------------+----------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>`                              | :ref:`extents<class_FogVolume_property_extents>`   | ``Vector3(1, 1, 1)`` |
    +------------------------------------------------------------+----------------------------------------------------+----------------------+
    | :ref:`Material<class_Material>`                            | :ref:`material<class_FogVolume_property_material>` |                      |
    +------------------------------------------------------------+----------------------------------------------------+----------------------+
    | :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` | :ref:`shape<class_FogVolume_property_shape>`       | ``3``                |
    +------------------------------------------------------------+----------------------------------------------------+----------------------+
+   | :ref:`Vector3<class_Vector3>`                              | :ref:`size<class_FogVolume_property_size>`         | ``Vector3(2, 2, 2)`` |
+   +------------------------------------------------------------+----------------------------------------------------+----------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -50,56 +50,56 @@ Properties
 Property Descriptions
 ---------------------
 
-.. _class_FogVolume_property_extents:
+.. _class_FogVolume_property_material:
 
 .. rst-class:: classref-property
 
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
+:ref:`Material<class_Material>` **material**
 
 .. rst-class:: classref-property-setget
 
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
-
-The size of the **FogVolume** when :ref:`shape<class_FogVolume_property_shape>` is :ref:`RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>`.
-
-\ **Note:** Thin fog volumes may appear to flicker when the camera moves or rotates. This can be alleviated by increasing :ref:`ProjectSettings.rendering/environment/volumetric_fog/volume_depth<class_ProjectSettings_property_rendering/environment/volumetric_fog/volume_depth>` (at a performance cost) or by decreasing :ref:`Environment.volumetric_fog_length<class_Environment_property_volumetric_fog_length>` (at no performance cost, but at the cost of lower fog range). Alternatively, the **FogVolume** can be made thicker and use a lower density in the :ref:`material<class_FogVolume_property_material>`.
+- void **set_material** **(** :ref:`Material<class_Material>` value **)**
+- :ref:`Material<class_Material>` **get_material** **(** **)**
 
-\ **Note:** If :ref:`shape<class_FogVolume_property_shape>` is :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>`, the cone/cylinder will be adjusted to fit within the extents. Non-uniform scaling of cone/cylinder shapes via the :ref:`extents<class_FogVolume_property_extents>` property is not supported, but you can scale the **FogVolume** node instead.
+The :ref:`Material<class_Material>` used by the **FogVolume**. Can be either a built-in :ref:`FogMaterial<class_FogMaterial>` or a custom :ref:`ShaderMaterial<class_ShaderMaterial>`.
 
 .. rst-class:: classref-item-separator
 
 ----
 
-.. _class_FogVolume_property_material:
+.. _class_FogVolume_property_shape:
 
 .. rst-class:: classref-property
 
-:ref:`Material<class_Material>` **material**
+:ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` **shape** = ``3``
 
 .. rst-class:: classref-property-setget
 
-- void **set_material** **(** :ref:`Material<class_Material>` value **)**
-- :ref:`Material<class_Material>` **get_material** **(** **)**
+- void **set_shape** **(** :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` value **)**
+- :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` **get_shape** **(** **)**
 
-The :ref:`Material<class_Material>` used by the **FogVolume**. Can be either a built-in :ref:`FogMaterial<class_FogMaterial>` or a custom :ref:`ShaderMaterial<class_ShaderMaterial>`.
+The shape of the **FogVolume**. This can be set to either :ref:`RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_WORLD<class_RenderingServer_constant_FOG_VOLUME_SHAPE_WORLD>`.
 
 .. rst-class:: classref-item-separator
 
 ----
 
-.. _class_FogVolume_property_shape:
+.. _class_FogVolume_property_size:
 
 .. rst-class:: classref-property
 
-:ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` **shape** = ``3``
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
 
 .. rst-class:: classref-property-setget
 
-- void **set_shape** **(** :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` value **)**
-- :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` **get_shape** **(** **)**
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
 
-The shape of the **FogVolume**. This can be set to either :ref:`RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_WORLD<class_RenderingServer_constant_FOG_VOLUME_SHAPE_WORLD>`.
+The size of the **FogVolume** when :ref:`shape<class_FogVolume_property_shape>` is :ref:`RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>`.
+
+\ **Note:** Thin fog volumes may appear to flicker when the camera moves or rotates. This can be alleviated by increasing :ref:`ProjectSettings.rendering/environment/volumetric_fog/volume_depth<class_ProjectSettings_property_rendering/environment/volumetric_fog/volume_depth>` (at a performance cost) or by decreasing :ref:`Environment.volumetric_fog_length<class_Environment_property_volumetric_fog_length>` (at no performance cost, but at the cost of lower fog range). Alternatively, the **FogVolume** can be made thicker and use a lower density in the :ref:`material<class_FogVolume_property_material>`.
+
+\ **Note:** If :ref:`shape<class_FogVolume_property_shape>` is :ref:`RenderingServer.FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>` or :ref:`RenderingServer.FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>`, the cone/cylinder will be adjusted to fit within the size. Non-uniform scaling of cone/cylinder shapes via the :ref:`size<class_FogVolume_property_size>` property is not supported, but you can scale the **FogVolume** node instead.
 
 .. |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.)`

+ 13 - 31
classes/class_fontfile.rst

@@ -45,14 +45,14 @@ Supported font formats:
  .. code-tab:: gdscript
 
     var f = load("res://BarlowCondensed-Bold.ttf")
-    $"Label".set("custom_fonts/font", f)
-    $"Label".set("custom_fonts/font_size", 64)
+    $Label.add_theme_font_override("font", f)
+    $Label.add_theme_font_size_override("font_size", 64)
 
  .. code-tab:: csharp
 
     var f = ResourceLoader.Load<FontFile>("res://BarlowCondensed-Bold.ttf");
-    GetNode("Label").Set("custom_fonts/font", f);
-    GetNode("Label").Set("custom_font_sizes/font_size", 64);
+    GetNode("Label").AddThemeFontOverride("font", f);
+    GetNode("Label").AddThemeFontSizeOverride("font_size", 64);
 
 
 
@@ -673,9 +673,7 @@ Returns number of the font cache entries.
 
 :ref:`float<class_float>` **get_cache_descent** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size **)** |const|
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Returns the font descent (number of pixels below the baseline).
 
 .. rst-class:: classref-item-separator
 
@@ -687,9 +685,7 @@ Returns number of the font cache entries.
 
 :ref:`float<class_float>` **get_cache_scale** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size **)** |const|
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Returns scaling factor of the color bitmap font.
 
 .. rst-class:: classref-item-separator
 
@@ -701,9 +697,7 @@ Returns number of the font cache entries.
 
 :ref:`float<class_float>` **get_cache_underline_position** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size **)** |const|
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Returns pixel offset of the underline below the baseline.
 
 .. rst-class:: classref-item-separator
 
@@ -715,9 +709,7 @@ Returns number of the font cache entries.
 
 :ref:`float<class_float>` **get_cache_underline_thickness** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size **)** |const|
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Returns thickness of the underline in pixels.
 
 .. rst-class:: classref-item-separator
 
@@ -1123,9 +1115,7 @@ Renders the range of characters to the font cache texture.
 
 void **set_cache_ascent** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size, :ref:`float<class_float>` ascent **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the font ascent (number of pixels above the baseline).
 
 .. rst-class:: classref-item-separator
 
@@ -1137,9 +1127,7 @@ void **set_cache_ascent** **(** :ref:`int<class_int>` cache_index, :ref:`int<cla
 
 void **set_cache_descent** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size, :ref:`float<class_float>` descent **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the font descent (number of pixels below the baseline).
 
 .. rst-class:: classref-item-separator
 
@@ -1151,9 +1139,7 @@ void **set_cache_descent** **(** :ref:`int<class_int>` cache_index, :ref:`int<cl
 
 void **set_cache_scale** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size, :ref:`float<class_float>` scale **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets scaling factor of the color bitmap font.
 
 .. rst-class:: classref-item-separator
 
@@ -1165,9 +1151,7 @@ void **set_cache_scale** **(** :ref:`int<class_int>` cache_index, :ref:`int<clas
 
 void **set_cache_underline_position** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size, :ref:`float<class_float>` underline_position **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets pixel offset of the underline below the baseline.
 
 .. rst-class:: classref-item-separator
 
@@ -1179,9 +1163,7 @@ void **set_cache_underline_position** **(** :ref:`int<class_int>` cache_index, :
 
 void **set_cache_underline_thickness** **(** :ref:`int<class_int>` cache_index, :ref:`int<class_int>` size, :ref:`float<class_float>` underline_thickness **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets thickness of the underline in pixels.
 
 .. rst-class:: classref-item-separator
 

+ 5 - 5
classes/class_fontvariation.rst

@@ -30,17 +30,17 @@ To use simulated bold font variant:
 
     var fv = FontVariation.new()
     fv.set_base_font(load("res://BarlowCondensed-Regular.ttf"))
-    fv.set_variation_embolden(1.2);
-    $"Label".set("custom_fonts/font", fv)
-    $"Label".set("custom_fonts/font_size", 64)
+    fv.set_variation_embolden(1.2)
+    $Label.add_theme_font_override("font", fv)
+    $Label.add_theme_font_size_override("font_size", 64)
 
  .. code-tab:: csharp
 
     var fv = new FontVariation();
     fv.SetBaseFont(ResourceLoader.Load<FontFile>("res://BarlowCondensed-Regular.ttf"));
     fv.SetVariationEmbolden(1.2);
-    GetNode("Label").Set("custom_fonts/font", fv);
-    GetNode("Label").Set("custom_font_sizes/font_size", 64);
+    GetNode("Label").AddThemeFontOverride("font", fv);
+    GetNode("Label").AddThemeFontSizeOverride("font_size", 64);
 
 
 

+ 3 - 4
classes/class_geometry2d.rst

@@ -441,15 +441,14 @@ The operation may result in an outer polygon (boundary) and inner polygon (hole)
     var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), Vector2(100, 100), Vector2(0, 100)])
     var offset = Vector2(50, 50)
     polygon = Transform2D(0, offset) * polygon
-    print(polygon) # prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, 150), Vector2(50, 150)]
+    print(polygon) # prints [(50, 50), (150, 50), (150, 150), (50, 150)]
 
  .. code-tab:: csharp
 
     var polygon = new Vector2[] { new Vector2(0, 0), new Vector2(100, 0), new Vector2(100, 100), new Vector2(0, 100) };
     var offset = new Vector2(50, 50);
-    // TODO: This code is not valid right now. Ping @aaronfranke about it before Godot 4.0 is out.
-    //polygon = (Vector2[]) new Transform2D(0, offset).Xform(polygon);
-    //GD.Print(polygon); // prints [Vector2(50, 50), Vector2(150, 50), Vector2(150, 150), Vector2(50, 150)]
+    polygon = new Transform2D(0, offset) * polygon;
+    GD.Print((Variant)polygon); // prints [(50, 50), (150, 50), (150, 150), (50, 150)]
 
 
 

+ 18 - 18
classes/class_gltfdocument.rst

@@ -27,23 +27,23 @@ Methods
 .. table::
    :widths: auto
 
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`append_from_buffer<class_GLTFDocument_method_append_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` bytes, :ref:`String<class_String>` base_path, :ref:`GLTFState<class_GLTFState>` state, :ref:`int<class_int>` flags=0 **)** |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`append_from_file<class_GLTFDocument_method_append_from_file>` **(** :ref:`String<class_String>` path, :ref:`GLTFState<class_GLTFState>` state, :ref:`int<class_int>` flags=0, :ref:`String<class_String>` base_path="" **)**                     |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`append_from_scene<class_GLTFDocument_method_append_from_scene>` **(** :ref:`Node<class_Node>` node, :ref:`GLTFState<class_GLTFState>` state, :ref:`int<class_int>` flags=0 **)**                                                                 |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`generate_buffer<class_GLTFDocument_method_generate_buffer>` **(** :ref:`GLTFState<class_GLTFState>` state **)**                                                                                                                                  |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Node<class_Node>`                       | :ref:`generate_scene<class_GLTFDocument_method_generate_scene>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`float<class_float>` bake_fps=30, :ref:`bool<class_bool>` trimming=false **)**                                                     |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`register_gltf_document_extension<class_GLTFDocument_method_register_gltf_document_extension>` **(** :ref:`GLTFDocumentExtension<class_GLTFDocumentExtension>` extension, :ref:`bool<class_bool>` first_priority=false **)** |static|             |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`unregister_gltf_document_extension<class_GLTFDocument_method_unregister_gltf_document_extension>` **(** :ref:`GLTFDocumentExtension<class_GLTFDocumentExtension>` extension **)** |static|                                                       |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`write_to_filesystem<class_GLTFDocument_method_write_to_filesystem>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`String<class_String>` path **)**                                                                                        |
-   +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`append_from_buffer<class_GLTFDocument_method_append_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` bytes, :ref:`String<class_String>` base_path, :ref:`GLTFState<class_GLTFState>` state, :ref:`int<class_int>` flags=0 **)**   |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`append_from_file<class_GLTFDocument_method_append_from_file>` **(** :ref:`String<class_String>` path, :ref:`GLTFState<class_GLTFState>` state, :ref:`int<class_int>` flags=0, :ref:`String<class_String>` base_path="" **)**                       |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`append_from_scene<class_GLTFDocument_method_append_from_scene>` **(** :ref:`Node<class_Node>` node, :ref:`GLTFState<class_GLTFState>` state, :ref:`int<class_int>` flags=0 **)**                                                                   |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`generate_buffer<class_GLTFDocument_method_generate_buffer>` **(** :ref:`GLTFState<class_GLTFState>` state **)**                                                                                                                                    |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Node<class_Node>`                       | :ref:`generate_scene<class_GLTFDocument_method_generate_scene>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`float<class_float>` bake_fps=30, :ref:`bool<class_bool>` trimming=false, :ref:`bool<class_bool>` remove_immutable_tracks=true **)** |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`register_gltf_document_extension<class_GLTFDocument_method_register_gltf_document_extension>` **(** :ref:`GLTFDocumentExtension<class_GLTFDocumentExtension>` extension, :ref:`bool<class_bool>` first_priority=false **)** |static|               |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`unregister_gltf_document_extension<class_GLTFDocument_method_unregister_gltf_document_extension>` **(** :ref:`GLTFDocumentExtension<class_GLTFDocumentExtension>` extension **)** |static|                                                         |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`write_to_filesystem<class_GLTFDocument_method_write_to_filesystem>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`String<class_String>` path **)**                                                                                          |
+   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -110,7 +110,7 @@ Takes a :ref:`GLTFState<class_GLTFState>` object through the ``state`` parameter
 
 .. rst-class:: classref-method
 
-:ref:`Node<class_Node>` **generate_scene** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`float<class_float>` bake_fps=30, :ref:`bool<class_bool>` trimming=false **)**
+:ref:`Node<class_Node>` **generate_scene** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`float<class_float>` bake_fps=30, :ref:`bool<class_bool>` trimming=false, :ref:`bool<class_bool>` remove_immutable_tracks=true **)**
 
 Takes a :ref:`GLTFState<class_GLTFState>` object through the ``state`` parameter and returns a Godot Engine scene node.
 

+ 16 - 16
classes/class_gltfdocumentextension.rst

@@ -38,25 +38,25 @@ Methods
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                              | :ref:`_convert_scene_node<class_GLTFDocumentExtension_method__convert_scene_node>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Node<class_Node>` scene_node **)** |virtual|                       |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_export_node<class_GLTFDocumentExtension_method__export_node>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual| |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_export_node<class_GLTFDocumentExtension_method__export_node>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual| |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_export_post<class_GLTFDocumentExtension_method__export_post>` **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|                                                                                                                    |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_export_post<class_GLTFDocumentExtension_method__export_post>` **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|                                                                                                                    |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_export_preflight<class_GLTFDocumentExtension_method__export_preflight>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|                                                                            |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_export_preflight<class_GLTFDocumentExtension_method__export_preflight>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|                                                                            |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Node3D<class_Node3D>`                       | :ref:`_generate_scene_node<class_GLTFDocumentExtension_method__generate_scene_node>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Node<class_Node>` scene_parent **)** |virtual|                   |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`_get_supported_extensions<class_GLTFDocumentExtension_method__get_supported_extensions>` **(** **)** |virtual|                                                                                                                                  |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_import_node<class_GLTFDocumentExtension_method__import_node>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual| |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_import_node<class_GLTFDocumentExtension_method__import_node>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual| |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_import_post<class_GLTFDocumentExtension_method__import_post>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|                                                                                      |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_import_post<class_GLTFDocumentExtension_method__import_post>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|                                                                                      |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_import_post_parse<class_GLTFDocumentExtension_method__import_post_parse>` **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|                                                                                                        |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_import_post_parse<class_GLTFDocumentExtension_method__import_post_parse>` **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|                                                                                                        |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_import_preflight<class_GLTFDocumentExtension_method__import_preflight>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`PackedStringArray<class_PackedStringArray>` extensions **)** |virtual|                                            |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_import_preflight<class_GLTFDocumentExtension_method__import_preflight>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`PackedStringArray<class_PackedStringArray>` extensions **)** |virtual|                                            |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_parse_node_extensions<class_GLTFDocumentExtension_method__parse_node_extensions>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` extensions **)** |virtual|     |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_parse_node_extensions<class_GLTFDocumentExtension_method__parse_node_extensions>` **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` extensions **)** |virtual|     |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
@@ -86,7 +86,7 @@ Runs when converting the data from a Godot scene node. This method can be used t
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_export_node** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_export_node** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual|
 
 Part of the export process. This method is run after :ref:`_convert_scene_node<class_GLTFDocumentExtension_method__convert_scene_node>` and before :ref:`_export_post<class_GLTFDocumentExtension_method__export_post>`.
 
@@ -100,7 +100,7 @@ This method can be used to modify the final JSON of each node.
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_export_post** **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_export_post** **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|
 
 Part of the export process. This method is run last, after all other parts of the export process.
 
@@ -114,7 +114,7 @@ This method can be used to modify the final JSON of the generated GLTF file.
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_export_preflight** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_export_preflight** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|
 
 Part of the export process. This method is run first, before all other parts of the export process.
 
@@ -156,7 +156,7 @@ Returns an array of the GLTF extensions supported by this GLTFDocumentExtension
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_import_node** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_import_node** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` json, :ref:`Node<class_Node>` node **)** |virtual|
 
 Part of the import process. This method is run after :ref:`_import_post_parse<class_GLTFDocumentExtension_method__import_post_parse>` and before :ref:`_import_post<class_GLTFDocumentExtension_method__import_post>`.
 
@@ -170,7 +170,7 @@ This method can be used to make modifications to each of the generated Godot sce
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_import_post** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_import_post** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`Node<class_Node>` root **)** |virtual|
 
 Part of the import process. This method is run last, after all other parts of the import process.
 
@@ -184,7 +184,7 @@ This method can be used to modify the final Godot scene generated by the import
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_import_post_parse** **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_import_post_parse** **(** :ref:`GLTFState<class_GLTFState>` state **)** |virtual|
 
 Part of the import process. This method is run after :ref:`_generate_scene_node<class_GLTFDocumentExtension_method__generate_scene_node>` and before :ref:`_import_node<class_GLTFDocumentExtension_method__import_node>`.
 
@@ -198,7 +198,7 @@ This method can be used to modify any of the data imported so far, including any
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_import_preflight** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`PackedStringArray<class_PackedStringArray>` extensions **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_import_preflight** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`PackedStringArray<class_PackedStringArray>` extensions **)** |virtual|
 
 Part of the import process. This method is run first, before all other parts of the import process.
 
@@ -212,7 +212,7 @@ The return value is used to determine if this **GLTFDocumentExtension** instance
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_parse_node_extensions** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` extensions **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_parse_node_extensions** **(** :ref:`GLTFState<class_GLTFState>` state, :ref:`GLTFNode<class_GLTFNode>` gltf_node, :ref:`Dictionary<class_Dictionary>` extensions **)** |virtual|
 
 Part of the import process. This method is run after :ref:`_get_supported_extensions<class_GLTFDocumentExtension_method__get_supported_extensions>` and before :ref:`_generate_scene_node<class_GLTFDocumentExtension_method__generate_scene_node>`.
 

+ 10 - 2
classes/class_gltfstate.rst

@@ -151,7 +151,7 @@ Constants
 
 **HANDLE_BINARY_DISCARD_TEXTURES** = ``0``
 
-
+Discards all embedded textures and uses untextured materials.
 
 .. _class_GLTFState_constant_HANDLE_BINARY_EXTRACT_TEXTURES:
 
@@ -159,7 +159,7 @@ Constants
 
 **HANDLE_BINARY_EXTRACT_TEXTURES** = ``1``
 
-
+Extracts embedded textures to be reimported and compressed. Editor only. Acts as uncompressed at runtime.
 
 .. _class_GLTFState_constant_HANDLE_BINARY_EMBED_AS_BASISU:
 
@@ -167,7 +167,15 @@ Constants
 
 **HANDLE_BINARY_EMBED_AS_BASISU** = ``2``
 
+Embeds textures VRAM compressed with Basis Universal into the generated scene.
+
+.. _class_GLTFState_constant_HANDLE_BINARY_EMBED_AS_UNCOMPRESSED:
+
+.. rst-class:: classref-constant
+
+**HANDLE_BINARY_EMBED_AS_UNCOMPRESSED** = ``3``
 
+Embeds textures compressed losslessly into the generated scene, matching old behavior.
 
 .. rst-class:: classref-section-separator
 

+ 8 - 8
classes/class_gpuparticlesattractorbox3d.rst

@@ -31,9 +31,9 @@ Properties
 .. table::
    :widths: auto
 
-   +-------------------------------+-------------------------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>` | :ref:`extents<class_GPUParticlesAttractorBox3D_property_extents>` | ``Vector3(1, 1, 1)`` |
-   +-------------------------------+-------------------------------------------------------------------+----------------------+
+   +-------------------------------+-------------------------------------------------------------+----------------------+
+   | :ref:`Vector3<class_Vector3>` | :ref:`size<class_GPUParticlesAttractorBox3D_property_size>` | ``Vector3(2, 2, 2)`` |
+   +-------------------------------+-------------------------------------------------------------+----------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -44,18 +44,18 @@ Properties
 Property Descriptions
 ---------------------
 
-.. _class_GPUParticlesAttractorBox3D_property_extents:
+.. _class_GPUParticlesAttractorBox3D_property_size:
 
 .. rst-class:: classref-property
 
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
 
 .. rst-class:: classref-property-setget
 
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
 
-The attractor box's extents in 3D units.
+The attractor box's size in 3D units.
 
 .. |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_gpuparticlesattractorvectorfield3d.rst

@@ -34,7 +34,7 @@ Properties
    :widths: auto
 
    +-----------------------------------+---------------------------------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>`     | :ref:`extents<class_GPUParticlesAttractorVectorField3D_property_extents>` | ``Vector3(1, 1, 1)`` |
+   | :ref:`Vector3<class_Vector3>`     | :ref:`size<class_GPUParticlesAttractorVectorField3D_property_size>`       | ``Vector3(2, 2, 2)`` |
    +-----------------------------------+---------------------------------------------------------------------------+----------------------+
    | :ref:`Texture3D<class_Texture3D>` | :ref:`texture<class_GPUParticlesAttractorVectorField3D_property_texture>` |                      |
    +-----------------------------------+---------------------------------------------------------------------------+----------------------+
@@ -48,18 +48,18 @@ Properties
 Property Descriptions
 ---------------------
 
-.. _class_GPUParticlesAttractorVectorField3D_property_extents:
+.. _class_GPUParticlesAttractorVectorField3D_property_size:
 
 .. rst-class:: classref-property
 
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
 
 .. rst-class:: classref-property-setget
 
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
 
-The extents of the vector field box in 3D units.
+The size of the vector field box in 3D units.
 
 .. rst-class:: classref-item-separator
 
@@ -78,7 +78,7 @@ The extents of the vector field box in 3D units.
 
 The 3D texture to be used. Values are linearly interpolated between the texture's pixels.
 
-\ **Note:** To get better performance, the 3D texture's resolution should reflect the :ref:`extents<class_GPUParticlesAttractorVectorField3D_property_extents>` of the attractor. Since particle attraction is usually low-frequency data, the texture can be kept at a low resolution such as 64×64×64.
+\ **Note:** To get better performance, the 3D texture's resolution should reflect the :ref:`size<class_GPUParticlesAttractorVectorField3D_property_size>` of the attractor. Since particle attraction is usually low-frequency data, the texture can be kept at a low resolution such as 64×64×64.
 
 .. |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.)`

+ 8 - 8
classes/class_gpuparticlescollisionbox3d.rst

@@ -33,9 +33,9 @@ Properties
 .. table::
    :widths: auto
 
-   +-------------------------------+-------------------------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>` | :ref:`extents<class_GPUParticlesCollisionBox3D_property_extents>` | ``Vector3(1, 1, 1)`` |
-   +-------------------------------+-------------------------------------------------------------------+----------------------+
+   +-------------------------------+-------------------------------------------------------------+----------------------+
+   | :ref:`Vector3<class_Vector3>` | :ref:`size<class_GPUParticlesCollisionBox3D_property_size>` | ``Vector3(2, 2, 2)`` |
+   +-------------------------------+-------------------------------------------------------------+----------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -46,18 +46,18 @@ Properties
 Property Descriptions
 ---------------------
 
-.. _class_GPUParticlesCollisionBox3D_property_extents:
+.. _class_GPUParticlesCollisionBox3D_property_size:
 
 .. rst-class:: classref-property
 
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
 
 .. rst-class:: classref-property-setget
 
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
 
-The collision box's extents in 3D units.
+The collision box's size in 3D units.
 
 .. |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.)`

+ 19 - 19
classes/class_gpuparticlescollisionheightfield3d.rst

@@ -37,13 +37,13 @@ Properties
 .. table::
    :widths: auto
 
-   +-----------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>`                                         | :ref:`extents<class_GPUParticlesCollisionHeightField3D_property_extents>`                             | ``Vector3(1, 1, 1)`` |
    +-----------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+----------------------+
    | :ref:`bool<class_bool>`                                               | :ref:`follow_camera_enabled<class_GPUParticlesCollisionHeightField3D_property_follow_camera_enabled>` | ``false``            |
    +-----------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+----------------------+
    | :ref:`Resolution<enum_GPUParticlesCollisionHeightField3D_Resolution>` | :ref:`resolution<class_GPUParticlesCollisionHeightField3D_property_resolution>`                       | ``2``                |
    +-----------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+----------------------+
+   | :ref:`Vector3<class_Vector3>`                                         | :ref:`size<class_GPUParticlesCollisionHeightField3D_property_size>`                                   | ``Vector3(2, 2, 2)`` |
+   +-----------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+----------------------+
    | :ref:`UpdateMode<enum_GPUParticlesCollisionHeightField3D_UpdateMode>` | :ref:`update_mode<class_GPUParticlesCollisionHeightField3D_property_update_mode>`                     | ``0``                |
    +-----------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+----------------------+
 
@@ -153,23 +153,6 @@ Update the heightmap every frame. This has a significant performance cost. This
 Property Descriptions
 ---------------------
 
-.. _class_GPUParticlesCollisionHeightField3D_property_extents:
-
-.. rst-class:: classref-property
-
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
-
-.. rst-class:: classref-property-setget
-
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
-
-The collision heightmap's extents in 3D units. To improve heightmap quality, :ref:`extents<class_GPUParticlesCollisionHeightField3D_property_extents>` should be set as small as possible while covering the parts of the scene you need.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_GPUParticlesCollisionHeightField3D_property_follow_camera_enabled:
 
 .. rst-class:: classref-property
@@ -206,6 +189,23 @@ Higher resolutions can represent small details more accurately in large scenes,
 
 ----
 
+.. _class_GPUParticlesCollisionHeightField3D_property_size:
+
+.. rst-class:: classref-property
+
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
+
+.. rst-class:: classref-property-setget
+
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
+
+The collision heightmap's size in 3D units. To improve heightmap quality, :ref:`size<class_GPUParticlesCollisionHeightField3D_property_size>` should be set as small as possible while covering the parts of the scene you need.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_GPUParticlesCollisionHeightField3D_property_update_mode:
 
 .. rst-class:: classref-property

+ 13 - 13
classes/class_gpuparticlescollisionsdf3d.rst

@@ -23,7 +23,7 @@ Baked signed distance field 3D particle attractor affecting :ref:`GPUParticles3D
 
 Signed distance fields (SDF) allow for efficiently representing approximate collision shapes for convex and concave objects of any shape. This is more flexible than :ref:`GPUParticlesCollisionHeightField3D<class_GPUParticlesCollisionHeightField3D>`, but it requires a baking step.
 
-\ **Baking:** The signed distance field texture can be baked by selecting the **GPUParticlesCollisionSDF3D** node in the editor, then clicking **Bake SDF** at the top of the 3D viewport. Any *visible* :ref:`MeshInstance3D<class_MeshInstance3D>`\ s touching the :ref:`extents<class_GPUParticlesCollisionSDF3D_property_extents>` will be taken into account for baking, regardless of their :ref:`GeometryInstance3D.gi_mode<class_GeometryInstance3D_property_gi_mode>`.
+\ **Baking:** The signed distance field texture can be baked by selecting the **GPUParticlesCollisionSDF3D** node in the editor, then clicking **Bake SDF** at the top of the 3D viewport. Any *visible* :ref:`MeshInstance3D<class_MeshInstance3D>`\ s within the :ref:`size<class_GPUParticlesCollisionSDF3D_property_size>` will be taken into account for baking, regardless of their :ref:`GeometryInstance3D.gi_mode<class_GeometryInstance3D_property_gi_mode>`.
 
 \ **Note:** Baking a **GPUParticlesCollisionSDF3D**'s :ref:`texture<class_GPUParticlesCollisionSDF3D_property_texture>` is only possible within the editor, as there is no bake method exposed for use in exported projects. However, it's still possible to load pre-baked :ref:`Texture3D<class_Texture3D>`\ s into its :ref:`texture<class_GPUParticlesCollisionSDF3D_property_texture>` property in an exported project.
 
@@ -42,10 +42,10 @@ Properties
    +---------------------------------------------------------------+-------------------------------------------------------------------------+----------------------+
    | :ref:`int<class_int>`                                         | :ref:`bake_mask<class_GPUParticlesCollisionSDF3D_property_bake_mask>`   | ``4294967295``       |
    +---------------------------------------------------------------+-------------------------------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>`                                 | :ref:`extents<class_GPUParticlesCollisionSDF3D_property_extents>`       | ``Vector3(1, 1, 1)`` |
-   +---------------------------------------------------------------+-------------------------------------------------------------------------+----------------------+
    | :ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` | :ref:`resolution<class_GPUParticlesCollisionSDF3D_property_resolution>` | ``2``                |
    +---------------------------------------------------------------+-------------------------------------------------------------------------+----------------------+
+   | :ref:`Vector3<class_Vector3>`                                 | :ref:`size<class_GPUParticlesCollisionSDF3D_property_size>`             | ``Vector3(2, 2, 2)`` |
+   +---------------------------------------------------------------+-------------------------------------------------------------------------+----------------------+
    | :ref:`Texture3D<class_Texture3D>`                             | :ref:`texture<class_GPUParticlesCollisionSDF3D_property_texture>`       |                      |
    +---------------------------------------------------------------+-------------------------------------------------------------------------+----------------------+
    | :ref:`float<class_float>`                                     | :ref:`thickness<class_GPUParticlesCollisionSDF3D_property_thickness>`   | ``1.0``              |
@@ -162,35 +162,35 @@ The visual layers to account for when baking the particle collision SDF. Only :r
 
 ----
 
-.. _class_GPUParticlesCollisionSDF3D_property_extents:
+.. _class_GPUParticlesCollisionSDF3D_property_resolution:
 
 .. rst-class:: classref-property
 
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(1, 1, 1)``
+:ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` **resolution** = ``2``
 
 .. rst-class:: classref-property-setget
 
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
+- void **set_resolution** **(** :ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` value **)**
+- :ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` **get_resolution** **(** **)**
 
-The collision SDF's extents in 3D units. To improve SDF quality, the :ref:`extents<class_GPUParticlesCollisionSDF3D_property_extents>` should be set as small as possible while covering the parts of the scene you need.
+The bake resolution to use for the signed distance field :ref:`texture<class_GPUParticlesCollisionSDF3D_property_texture>`. The texture must be baked again for changes to the :ref:`resolution<class_GPUParticlesCollisionSDF3D_property_resolution>` property to be effective. Higher resolutions have a greater performance cost and take more time to bake. Higher resolutions also result in larger baked textures, leading to increased VRAM and storage space requirements. To improve performance and reduce bake times, use the lowest resolution possible for the object you're representing the collision of.
 
 .. rst-class:: classref-item-separator
 
 ----
 
-.. _class_GPUParticlesCollisionSDF3D_property_resolution:
+.. _class_GPUParticlesCollisionSDF3D_property_size:
 
 .. rst-class:: classref-property
 
-:ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` **resolution** = ``2``
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(2, 2, 2)``
 
 .. rst-class:: classref-property-setget
 
-- void **set_resolution** **(** :ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` value **)**
-- :ref:`Resolution<enum_GPUParticlesCollisionSDF3D_Resolution>` **get_resolution** **(** **)**
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
 
-The bake resolution to use for the signed distance field :ref:`texture<class_GPUParticlesCollisionSDF3D_property_texture>`. The texture must be baked again for changes to the :ref:`resolution<class_GPUParticlesCollisionSDF3D_property_resolution>` property to be effective. Higher resolutions have a greater performance cost and take more time to bake. Higher resolutions also result in larger baked textures, leading to increased VRAM and storage space requirements. To improve performance and reduce bake times, use the lowest resolution possible for the object you're representing the collision of.
+The collision SDF's size in 3D units. To improve SDF quality, the :ref:`size<class_GPUParticlesCollisionSDF3D_property_size>` should be set as small as possible while covering the parts of the scene you need.
 
 .. rst-class:: classref-item-separator
 

+ 3 - 2
classes/class_graphedit.rst

@@ -780,8 +780,9 @@ In this example a connection to same node is suppressed:
 
  .. code-tab:: csharp
 
-    public override bool _IsNodeHoverValid(String from, int fromSlot, String to, int toSlot) {
-        return from != to;
+    public override bool _IsNodeHoverValid(StringName fromNode, int fromPort, StringName toNode, int toPort)
+    {
+        return fromNode != toNode;
     }
 
 

+ 12 - 15
classes/class_hashingcontext.rst

@@ -28,18 +28,17 @@ The :ref:`HashType<enum_HashingContext_HashType>` enum shows the supported hashi
 
  .. code-tab:: gdscript
 
-    const CHUNK_SIZE = 102
+    const CHUNK_SIZE = 1024
     
     func hash_file(path):
-        var ctx = HashingContext.new()
-        var file = File.new()
-        # Start a SHA-256 context.
-        ctx.start(HashingContext.HASH_SHA256)
         # Check that file exists.
-        if not file.file_exists(path):
+        if not FileAccess.file_exists(path):
             return
+        # Start a SHA-256 context.
+        var ctx = HashingContext.new()
+        ctx.start(HashingContext.HASH_SHA256)
         # Open the file to hash.
-        file.open(path, File.READ)
+        var file = FileAccess.open(path, FileAccess.READ)
         # Update the context after reading each chunk.
         while not file.eof_reached():
             ctx.update(file.get_buffer(CHUNK_SIZE))
@@ -54,17 +53,16 @@ The :ref:`HashType<enum_HashingContext_HashType>` enum shows the supported hashi
     
     public void HashFile(string path)
     {
-        var ctx = new HashingContext();
-        var file = new File();
-        // Start a SHA-256 context.
-        ctx.Start(HashingContext.HashType.Sha256);
         // Check that file exists.
-        if (!file.FileExists(path))
+        if (!FileAccess.FileExists(path))
         {
             return;
         }
+        // Start a SHA-256 context.
+        var ctx = new HashingContext();
+        ctx.Start(HashingContext.HashType.Sha256);
         // Open the file to hash.
-        file.Open(path, File.ModeFlags.Read);
+        using var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);
         // Update the context after reading each chunk.
         while (!file.EofReached())
         {
@@ -73,8 +71,7 @@ The :ref:`HashType<enum_HashingContext_HashType>` enum shows the supported hashi
         // Get the computed hash.
         byte[] res = ctx.Finish();
         // Print the result as hex string and array.
-    
-        GD.PrintT(res.HexEncode(), res);
+        GD.PrintT(res.HexEncode(), (Variant)res);
     }
 
 

+ 9 - 10
classes/class_hmaccontext.rst

@@ -46,25 +46,24 @@ The HMACContext class is useful for advanced HMAC use cases, such as streaming t
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     using System.Diagnostics;
     
-    public class CryptoNode : Node
+    public partial class MyNode : Node
     {
-        private HMACContext ctx = new HMACContext();
+        private HmacContext _ctx = new HmacContext();
     
         public override void _Ready()
         {
-            byte[] key = "supersecret".ToUTF8();
-            Error err = ctx.Start(HashingContext.HashType.Sha256, key);
+            byte[] key = "supersecret".ToUtf8();
+            Error err = _ctx.Start(HashingContext.HashType.Sha256, key);
             Debug.Assert(err == Error.Ok);
-            byte[] msg1 = "this is ".ToUTF8();
-            byte[] msg2 = "super duper secret".ToUTF8();
-            err = ctx.Update(msg1);
+            byte[] msg1 = "this is ".ToUtf8();
+            byte[] msg2 = "super duper secret".ToUtf8();
+            err = _ctx.Update(msg1);
             Debug.Assert(err == Error.Ok);
-            err = ctx.Update(msg2);
+            err = _ctx.Update(msg2);
             Debug.Assert(err == Error.Ok);
-            byte[] hmac = ctx.Finish();
+            byte[] hmac = _ctx.Finish();
             GD.Print(hmac.HexEncode());
         }
     }

+ 12 - 11
classes/class_httpclient.rst

@@ -75,7 +75,7 @@ Methods
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                              | :ref:`close<class_HTTPClient_method_close>` **(** **)**                                                                                                                                                                                                          |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`connect_to_host<class_HTTPClient_method_connect_to_host>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port=-1, :ref:`bool<class_bool>` use_tls=false, :ref:`bool<class_bool>` verify_host=true **)**                                     |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`connect_to_host<class_HTTPClient_method_connect_to_host>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port=-1, :ref:`TLSOptions<class_TLSOptions>` tls_options=null **)**                                                                |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`get_response_body_length<class_HTTPClient_method_get_response_body_length>` **(** **)** |const|                                                                                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -870,15 +870,11 @@ Closes the current connection, allowing reuse of this **HTTPClient**.
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **connect_to_host** **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port=-1, :ref:`bool<class_bool>` use_tls=false, :ref:`bool<class_bool>` verify_host=true **)**
+:ref:`Error<enum_@GlobalScope_Error>` **connect_to_host** **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port=-1, :ref:`TLSOptions<class_TLSOptions>` tls_options=null **)**
 
 Connects to a host. This needs to be done before any requests are sent.
 
-The host should not have http:// prepended but will strip the protocol identifier if provided.
-
-If no ``port`` is specified (or ``-1`` is used), it is automatically set to 80 for HTTP and 443 for HTTPS (if ``use_tls`` is enabled).
-
-\ ``verify_host`` will check the TLS identity of the host if set to ``true``.
+If no ``port`` is specified (or ``-1`` is used), it is automatically set to 80 for HTTP and 443 for HTTPS. You can pass the optional ``tls_options`` parameter to customize the trusted certification authorities, or the common name verification when using HTTPS. See :ref:`TLSOptions.client<class_TLSOptions_method_client>` and :ref:`TLSOptions.client_unsafe<class_TLSOptions_method_client_unsafe>`.
 
 .. rst-class:: classref-item-separator
 
@@ -1011,7 +1007,7 @@ Generates a GET/POST application/x-www-form-urlencoded style query string from a
  .. code-tab:: csharp
 
     var fields = new Godot.Collections.Dictionary { { "username", "user" }, { "password", "pass" } };
-    string queryString = new HTTPClient().QueryStringFromDict(fields);
+    string queryString = httpClient.QueryStringFromDict(fields);
     // Returns "username=user&password=pass"
 
 
@@ -1029,8 +1025,13 @@ Furthermore, if a key has a ``null`` value, only the key itself is added, withou
 
  .. code-tab:: csharp
 
-    var fields = new Godot.Collections.Dictionary{{"single", 123}, {"notValued", null}, {"multiple", new Godot.Collections.Array{22, 33, 44}}};
-    string queryString = new HTTPClient().QueryStringFromDict(fields);
+    var fields = new Godot.Collections.Dictionary
+    {
+        { "single", 123 },
+        { "notValued", default },
+        { "multiple", new Godot.Collections.Array { 22, 33, 44 } },
+    };
+    string queryString = httpClient.QueryStringFromDict(fields);
     // Returns "single=123&not_valued&multiple=22&multiple=33&multiple=44"
 
 
@@ -1079,7 +1080,7 @@ To create a POST request with query strings to push to the server, do:
 
     var fields = new Godot.Collections.Dictionary { { "username", "user" }, { "password", "pass" } };
     string queryString = new HTTPClient().QueryStringFromDict(fields);
-    string[] headers = {"Content-Type: application/x-www-form-urlencoded", "Content-Length: " + queryString.Length};
+    string[] headers = { "Content-Type: application/x-www-form-urlencoded", $"Content-Length: {queryString.Length}" };
     var result = new HTTPClient().Request(HTTPClient.Method.Post, "index.php", headers, queryString);
 
 

+ 41 - 27
classes/class_httprequest.rst

@@ -81,7 +81,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
         // Perform a POST request. The URL below returns JSON as of writing.
         // Note: Don't make simultaneous requests using a single HTTPRequest node.
         // The snippet below is provided for reference only.
-        string body = new JSON().Stringify(new Godot.Collections.Dictionary
+        string body = new Json().Stringify(new Godot.Collections.Dictionary
         {
             { "name", "Godette" }
         });
@@ -93,14 +93,14 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
     }
     
     // Called when the HTTP request is completed.
-    private void HttpRequestCompleted(int result, int responseCode, string[] headers, byte[] body)
+    private void HttpRequestCompleted(long result, long responseCode, string[] headers, byte[] body)
     {
-        var json = new JSON();
-        json.Parse(body.GetStringFromUTF8());
-        var response = json.GetData() as Godot.Collections.Dictionary;
+        var json = new Json();
+        json.Parse(body.GetStringFromUtf8());
+        var response = json.GetData().AsGodotDictionary();
     
         // Will print the user agent string used by the HTTPRequest node (as recognized by httpbin.org).
-        GD.Print((response["headers"] as Godot.Collections.Dictionary)["User-Agent"]);
+        GD.Print((response["headers"].AsGodotDictionary())["User-Agent"]);
     }
 
 
@@ -158,9 +158,9 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
     }
     
     // Called when the HTTP request is completed.
-    private void HttpRequestCompleted(int result, int responseCode, string[] headers, byte[] body)
+    private void HttpRequestCompleted(long result, long responseCode, string[] headers, byte[] body)
     {
-        if (result != (int)HTTPRequest.Result.Success)
+        if (result != (long)HTTPRequest.Result.Success)
         {
             GD.PushError("Image couldn't be downloaded. Try a different image.");
         }
@@ -225,23 +225,25 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                  | :ref:`cancel_request<class_HTTPRequest_method_cancel_request>` **(** **)**                                                                                                                                                                                                                                                                                                     |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                 | :ref:`get_body_size<class_HTTPRequest_method_get_body_size>` **(** **)** |const|                                                                                                                                                                                                                                                                                               |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                 | :ref:`get_downloaded_bytes<class_HTTPRequest_method_get_downloaded_bytes>` **(** **)** |const|                                                                                                                                                                                                                                                                                 |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Status<enum_HTTPClient_Status>` | :ref:`get_http_client_status<class_HTTPRequest_method_get_http_client_status>` **(** **)** |const|                                                                                                                                                                                                                                                                             |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`request<class_HTTPRequest_method_request>` **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`bool<class_bool>` tls_validate_domain=true, :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`String<class_String>` request_data="" **)**                                              |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`request_raw<class_HTTPRequest_method_request_raw>` **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`bool<class_bool>` tls_validate_domain=true, :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`PackedByteArray<class_PackedByteArray>` request_data_raw=PackedByteArray() **)** |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                  | :ref:`set_http_proxy<class_HTTPRequest_method_set_http_proxy>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                        |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                  | :ref:`set_https_proxy<class_HTTPRequest_method_set_https_proxy>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)**                                                                                                                                                                                                                                      |
-   +---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                  | :ref:`cancel_request<class_HTTPRequest_method_cancel_request>` **(** **)**                                                                                                                                                                                                                                                   |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                 | :ref:`get_body_size<class_HTTPRequest_method_get_body_size>` **(** **)** |const|                                                                                                                                                                                                                                             |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                 | :ref:`get_downloaded_bytes<class_HTTPRequest_method_get_downloaded_bytes>` **(** **)** |const|                                                                                                                                                                                                                               |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Status<enum_HTTPClient_Status>` | :ref:`get_http_client_status<class_HTTPRequest_method_get_http_client_status>` **(** **)** |const|                                                                                                                                                                                                                           |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`request<class_HTTPRequest_method_request>` **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`String<class_String>` request_data="" **)**                                              |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`request_raw<class_HTTPRequest_method_request_raw>` **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`PackedByteArray<class_PackedByteArray>` request_data_raw=PackedByteArray() **)** |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                  | :ref:`set_http_proxy<class_HTTPRequest_method_set_http_proxy>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)**                                                                                                                                                                                      |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                  | :ref:`set_https_proxy<class_HTTPRequest_method_set_https_proxy>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)**                                                                                                                                                                                    |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                  | :ref:`set_tls_options<class_HTTPRequest_method_set_tls_options>` **(** :ref:`TLSOptions<class_TLSOptions>` client_options **)**                                                                                                                                                                                              |
+   +---------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -582,7 +584,7 @@ Returns the current status of the underlying :ref:`HTTPClient<class_HTTPClient>`
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **request** **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`bool<class_bool>` tls_validate_domain=true, :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`String<class_String>` request_data="" **)**
+:ref:`Error<enum_@GlobalScope_Error>` **request** **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`String<class_String>` request_data="" **)**
 
 Creates request on the underlying :ref:`HTTPClient<class_HTTPClient>`. If there is no configuration errors, it tries to connect using :ref:`HTTPClient.connect_to_host<class_HTTPClient_method_connect_to_host>` and passes parameters onto :ref:`HTTPClient.request<class_HTTPClient_method_request>`.
 
@@ -600,7 +602,7 @@ Returns :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` if request is suc
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **request_raw** **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`bool<class_bool>` tls_validate_domain=true, :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`PackedByteArray<class_PackedByteArray>` request_data_raw=PackedByteArray() **)**
+:ref:`Error<enum_@GlobalScope_Error>` **request_raw** **(** :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray(), :ref:`Method<enum_HTTPClient_Method>` method=0, :ref:`PackedByteArray<class_PackedByteArray>` request_data_raw=PackedByteArray() **)**
 
 Creates request on the underlying :ref:`HTTPClient<class_HTTPClient>` using a raw array of bytes for the request body. If there is no configuration errors, it tries to connect using :ref:`HTTPClient.connect_to_host<class_HTTPClient_method_connect_to_host>` and passes parameters onto :ref:`HTTPClient.request<class_HTTPClient_method_request>`.
 
@@ -634,6 +636,18 @@ Sets the proxy server for HTTPS requests.
 
 The proxy server is unset if ``host`` is empty or ``port`` is -1.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_HTTPRequest_method_set_tls_options:
+
+.. rst-class:: classref-method
+
+void **set_tls_options** **(** :ref:`TLSOptions<class_TLSOptions>` client_options **)**
+
+Sets the :ref:`TLSOptions<class_TLSOptions>` to be used when connecting to an HTTPS server. See :ref:`TLSOptions.client<class_TLSOptions_method_client>`.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 133 - 137
classes/class_image.rst

@@ -52,137 +52,137 @@ Methods
 .. table::
    :widths: auto
 
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`adjust_bcs<class_Image_method_adjust_bcs>` **(** :ref:`float<class_float>` brightness, :ref:`float<class_float>` contrast, :ref:`float<class_float>` saturation **)**                                                                                                                        |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`blend_rect<class_Image_method_blend_rect>` **(** :ref:`Image<class_Image>` src, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                                                                              |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`blend_rect_mask<class_Image_method_blend_rect_mask>` **(** :ref:`Image<class_Image>` src, :ref:`Image<class_Image>` mask, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                                    |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`blit_rect<class_Image_method_blit_rect>` **(** :ref:`Image<class_Image>` src, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                                                                                |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`blit_rect_mask<class_Image_method_blit_rect_mask>` **(** :ref:`Image<class_Image>` src, :ref:`Image<class_Image>` mask, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                                      |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`bump_map_to_normal_map<class_Image_method_bump_map_to_normal_map>` **(** :ref:`float<class_float>` bump_scale=1.0 **)**                                                                                                                                                                      |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`clear_mipmaps<class_Image_method_clear_mipmaps>` **(** **)**                                                                                                                                                                                                                                 |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`compress<class_Image_method_compress>` **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`CompressSource<enum_Image_CompressSource>` source=0, :ref:`float<class_float>` lossy_quality=0.7, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`compress_from_channels<class_Image_method_compress_from_channels>` **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`UsedChannels<enum_Image_UsedChannels>` channels, :ref:`float<class_float>` lossy_quality=0.7, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)** |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Dictionary<class_Dictionary>`           | :ref:`compute_image_metrics<class_Image_method_compute_image_metrics>` **(** :ref:`Image<class_Image>` compared_image, :ref:`bool<class_bool>` use_luma **)**                                                                                                                                      |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`convert<class_Image_method_convert>` **(** :ref:`Format<enum_Image_Format>` format **)**                                                                                                                                                                                                     |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`copy_from<class_Image_method_copy_from>` **(** :ref:`Image<class_Image>` src **)**                                                                                                                                                                                                           |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>`                     | :ref:`create<class_Image_method_create>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` use_mipmaps, :ref:`Format<enum_Image_Format>` format **)** |static|                                                                                              |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>`                     | :ref:`create_from_data<class_Image_method_create_from_data>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` use_mipmaps, :ref:`Format<enum_Image_Format>` format, :ref:`PackedByteArray<class_PackedByteArray>` data **)** |static|                      |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`crop<class_Image_method_crop>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height **)**                                                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`decompress<class_Image_method_decompress>` **(** **)**                                                                                                                                                                                                                                       |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`AlphaMode<enum_Image_AlphaMode>`        | :ref:`detect_alpha<class_Image_method_detect_alpha>` **(** **)** |const|                                                                                                                                                                                                                           |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`UsedChannels<enum_Image_UsedChannels>`  | :ref:`detect_used_channels<class_Image_method_detect_used_channels>` **(** :ref:`CompressSource<enum_Image_CompressSource>` source=0 **)** |const|                                                                                                                                                 |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`fill<class_Image_method_fill>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                   |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`fill_rect<class_Image_method_fill_rect>` **(** :ref:`Rect2i<class_Rect2i>` rect, :ref:`Color<class_Color>` color **)**                                                                                                                                                                       |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`fix_alpha_edges<class_Image_method_fix_alpha_edges>` **(** **)**                                                                                                                                                                                                                             |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`flip_x<class_Image_method_flip_x>` **(** **)**                                                                                                                                                                                                                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`flip_y<class_Image_method_flip_y>` **(** **)**                                                                                                                                                                                                                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`generate_mipmaps<class_Image_method_generate_mipmaps>` **(** :ref:`bool<class_bool>` renormalize=false **)**                                                                                                                                                                                 |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`get_data<class_Image_method_get_data>` **(** **)** |const|                                                                                                                                                                                                                                   |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Format<enum_Image_Format>`              | :ref:`get_format<class_Image_method_get_format>` **(** **)** |const|                                                                                                                                                                                                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                         | :ref:`get_height<class_Image_method_get_height>` **(** **)** |const|                                                                                                                                                                                                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                         | :ref:`get_mipmap_offset<class_Image_method_get_mipmap_offset>` **(** :ref:`int<class_int>` mipmap **)** |const|                                                                                                                                                                                    |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Color<class_Color>`                     | :ref:`get_pixel<class_Image_method_get_pixel>` **(** :ref:`int<class_int>` x, :ref:`int<class_int>` y **)** |const|                                                                                                                                                                                |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Color<class_Color>`                     | :ref:`get_pixelv<class_Image_method_get_pixelv>` **(** :ref:`Vector2i<class_Vector2i>` point **)** |const|                                                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>`                     | :ref:`get_region<class_Image_method_get_region>` **(** :ref:`Rect2i<class_Rect2i>` region **)** |const|                                                                                                                                                                                            |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Vector2i<class_Vector2i>`               | :ref:`get_size<class_Image_method_get_size>` **(** **)** |const|                                                                                                                                                                                                                                   |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Rect2i<class_Rect2i>`                   | :ref:`get_used_rect<class_Image_method_get_used_rect>` **(** **)** |const|                                                                                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                         | :ref:`get_width<class_Image_method_get_width>` **(** **)** |const|                                                                                                                                                                                                                                 |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                       | :ref:`has_mipmaps<class_Image_method_has_mipmaps>` **(** **)** |const|                                                                                                                                                                                                                             |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                       | :ref:`is_compressed<class_Image_method_is_compressed>` **(** **)** |const|                                                                                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                       | :ref:`is_empty<class_Image_method_is_empty>` **(** **)** |const|                                                                                                                                                                                                                                   |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                       | :ref:`is_invisible<class_Image_method_is_invisible>` **(** **)** |const|                                                                                                                                                                                                                           |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load<class_Image_method_load>` **(** :ref:`String<class_String>` path **)**                                                                                                                                                                                                                  |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_bmp_from_buffer<class_Image_method_load_bmp_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                                              |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>`                     | :ref:`load_from_file<class_Image_method_load_from_file>` **(** :ref:`String<class_String>` path **)** |static|                                                                                                                                                                                     |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_jpg_from_buffer<class_Image_method_load_jpg_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                                              |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_png_from_buffer<class_Image_method_load_png_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                                              |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_tga_from_buffer<class_Image_method_load_tga_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                                              |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_webp_from_buffer<class_Image_method_load_webp_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                                            |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`normal_map_to_xy<class_Image_method_normal_map_to_xy>` **(** **)**                                                                                                                                                                                                                           |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`premultiply_alpha<class_Image_method_premultiply_alpha>` **(** **)**                                                                                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`resize<class_Image_method_resize>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`Interpolation<enum_Image_Interpolation>` interpolation=1 **)**                                                                                                                     |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`resize_to_po2<class_Image_method_resize_to_po2>` **(** :ref:`bool<class_bool>` square=false, :ref:`Interpolation<enum_Image_Interpolation>` interpolation=1 **)**                                                                                                                            |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>`                     | :ref:`rgbe_to_srgb<class_Image_method_rgbe_to_srgb>` **(** **)**                                                                                                                                                                                                                                   |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`rotate_180<class_Image_method_rotate_180>` **(** **)**                                                                                                                                                                                                                                       |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`rotate_90<class_Image_method_rotate_90>` **(** :ref:`ClockDirection<enum_@GlobalScope_ClockDirection>` direction **)**                                                                                                                                                                       |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_exr<class_Image_method_save_exr>` **(** :ref:`String<class_String>` path, :ref:`bool<class_bool>` grayscale=false **)** |const|                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_exr_to_buffer<class_Image_method_save_exr_to_buffer>` **(** :ref:`bool<class_bool>` grayscale=false **)** |const|                                                                                                                                                                       |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_jpg<class_Image_method_save_jpg>` **(** :ref:`String<class_String>` path, :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                                                                          |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_jpg_to_buffer<class_Image_method_save_jpg_to_buffer>` **(** :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                                                                                        |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_png<class_Image_method_save_png>` **(** :ref:`String<class_String>` path **)** |const|                                                                                                                                                                                                  |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_png_to_buffer<class_Image_method_save_png_to_buffer>` **(** **)** |const|                                                                                                                                                                                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_webp<class_Image_method_save_webp>` **(** :ref:`String<class_String>` path, :ref:`bool<class_bool>` lossy=false, :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                                   |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_webp_to_buffer<class_Image_method_save_webp_to_buffer>` **(** :ref:`bool<class_bool>` lossy=false, :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                                                 |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`set_data<class_Image_method_set_data>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` use_mipmaps, :ref:`Format<enum_Image_Format>` format, :ref:`PackedByteArray<class_PackedByteArray>` data **)**                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`set_pixel<class_Image_method_set_pixel>` **(** :ref:`int<class_int>` x, :ref:`int<class_int>` y, :ref:`Color<class_Color>` color **)**                                                                                                                                                       |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`set_pixelv<class_Image_method_set_pixelv>` **(** :ref:`Vector2i<class_Vector2i>` point, :ref:`Color<class_Color>` color **)**                                                                                                                                                                |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`shrink_x2<class_Image_method_shrink_x2>` **(** **)**                                                                                                                                                                                                                                         |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                          | :ref:`srgb_to_linear<class_Image_method_srgb_to_linear>` **(** **)**                                                                                                                                                                                                                               |
-   +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`adjust_bcs<class_Image_method_adjust_bcs>` **(** :ref:`float<class_float>` brightness, :ref:`float<class_float>` contrast, :ref:`float<class_float>` saturation **)**                                                                                                   |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`blend_rect<class_Image_method_blend_rect>` **(** :ref:`Image<class_Image>` src, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                                                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`blend_rect_mask<class_Image_method_blend_rect_mask>` **(** :ref:`Image<class_Image>` src, :ref:`Image<class_Image>` mask, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                               |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`blit_rect<class_Image_method_blit_rect>` **(** :ref:`Image<class_Image>` src, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                                                           |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`blit_rect_mask<class_Image_method_blit_rect_mask>` **(** :ref:`Image<class_Image>` src, :ref:`Image<class_Image>` mask, :ref:`Rect2i<class_Rect2i>` src_rect, :ref:`Vector2i<class_Vector2i>` dst **)**                                                                 |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`bump_map_to_normal_map<class_Image_method_bump_map_to_normal_map>` **(** :ref:`float<class_float>` bump_scale=1.0 **)**                                                                                                                                                 |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`clear_mipmaps<class_Image_method_clear_mipmaps>` **(** **)**                                                                                                                                                                                                            |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`compress<class_Image_method_compress>` **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`CompressSource<enum_Image_CompressSource>` source=0, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**                                                 |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`compress_from_channels<class_Image_method_compress_from_channels>` **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`UsedChannels<enum_Image_UsedChannels>` channels, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary<class_Dictionary>`           | :ref:`compute_image_metrics<class_Image_method_compute_image_metrics>` **(** :ref:`Image<class_Image>` compared_image, :ref:`bool<class_bool>` use_luma **)**                                                                                                                 |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`convert<class_Image_method_convert>` **(** :ref:`Format<enum_Image_Format>` format **)**                                                                                                                                                                                |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`copy_from<class_Image_method_copy_from>` **(** :ref:`Image<class_Image>` src **)**                                                                                                                                                                                      |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>`                     | :ref:`create<class_Image_method_create>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` use_mipmaps, :ref:`Format<enum_Image_Format>` format **)** |static|                                                                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>`                     | :ref:`create_from_data<class_Image_method_create_from_data>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` use_mipmaps, :ref:`Format<enum_Image_Format>` format, :ref:`PackedByteArray<class_PackedByteArray>` data **)** |static| |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`crop<class_Image_method_crop>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height **)**                                                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`decompress<class_Image_method_decompress>` **(** **)**                                                                                                                                                                                                                  |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`AlphaMode<enum_Image_AlphaMode>`        | :ref:`detect_alpha<class_Image_method_detect_alpha>` **(** **)** |const|                                                                                                                                                                                                      |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`UsedChannels<enum_Image_UsedChannels>`  | :ref:`detect_used_channels<class_Image_method_detect_used_channels>` **(** :ref:`CompressSource<enum_Image_CompressSource>` source=0 **)** |const|                                                                                                                            |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`fill<class_Image_method_fill>` **(** :ref:`Color<class_Color>` color **)**                                                                                                                                                                                              |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`fill_rect<class_Image_method_fill_rect>` **(** :ref:`Rect2i<class_Rect2i>` rect, :ref:`Color<class_Color>` color **)**                                                                                                                                                  |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`fix_alpha_edges<class_Image_method_fix_alpha_edges>` **(** **)**                                                                                                                                                                                                        |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`flip_x<class_Image_method_flip_x>` **(** **)**                                                                                                                                                                                                                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`flip_y<class_Image_method_flip_y>` **(** **)**                                                                                                                                                                                                                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`generate_mipmaps<class_Image_method_generate_mipmaps>` **(** :ref:`bool<class_bool>` renormalize=false **)**                                                                                                                                                            |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`get_data<class_Image_method_get_data>` **(** **)** |const|                                                                                                                                                                                                              |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Format<enum_Image_Format>`              | :ref:`get_format<class_Image_method_get_format>` **(** **)** |const|                                                                                                                                                                                                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                         | :ref:`get_height<class_Image_method_get_height>` **(** **)** |const|                                                                                                                                                                                                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                         | :ref:`get_mipmap_offset<class_Image_method_get_mipmap_offset>` **(** :ref:`int<class_int>` mipmap **)** |const|                                                                                                                                                               |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Color<class_Color>`                     | :ref:`get_pixel<class_Image_method_get_pixel>` **(** :ref:`int<class_int>` x, :ref:`int<class_int>` y **)** |const|                                                                                                                                                           |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Color<class_Color>`                     | :ref:`get_pixelv<class_Image_method_get_pixelv>` **(** :ref:`Vector2i<class_Vector2i>` point **)** |const|                                                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>`                     | :ref:`get_region<class_Image_method_get_region>` **(** :ref:`Rect2i<class_Rect2i>` region **)** |const|                                                                                                                                                                       |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Vector2i<class_Vector2i>`               | :ref:`get_size<class_Image_method_get_size>` **(** **)** |const|                                                                                                                                                                                                              |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Rect2i<class_Rect2i>`                   | :ref:`get_used_rect<class_Image_method_get_used_rect>` **(** **)** |const|                                                                                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                         | :ref:`get_width<class_Image_method_get_width>` **(** **)** |const|                                                                                                                                                                                                            |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                       | :ref:`has_mipmaps<class_Image_method_has_mipmaps>` **(** **)** |const|                                                                                                                                                                                                        |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                       | :ref:`is_compressed<class_Image_method_is_compressed>` **(** **)** |const|                                                                                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                       | :ref:`is_empty<class_Image_method_is_empty>` **(** **)** |const|                                                                                                                                                                                                              |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                       | :ref:`is_invisible<class_Image_method_is_invisible>` **(** **)** |const|                                                                                                                                                                                                      |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load<class_Image_method_load>` **(** :ref:`String<class_String>` path **)**                                                                                                                                                                                             |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_bmp_from_buffer<class_Image_method_load_bmp_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>`                     | :ref:`load_from_file<class_Image_method_load_from_file>` **(** :ref:`String<class_String>` path **)** |static|                                                                                                                                                                |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_jpg_from_buffer<class_Image_method_load_jpg_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_png_from_buffer<class_Image_method_load_png_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_tga_from_buffer<class_Image_method_load_tga_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                         |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`load_webp_from_buffer<class_Image_method_load_webp_from_buffer>` **(** :ref:`PackedByteArray<class_PackedByteArray>` buffer **)**                                                                                                                                       |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`normal_map_to_xy<class_Image_method_normal_map_to_xy>` **(** **)**                                                                                                                                                                                                      |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`premultiply_alpha<class_Image_method_premultiply_alpha>` **(** **)**                                                                                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`resize<class_Image_method_resize>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`Interpolation<enum_Image_Interpolation>` interpolation=1 **)**                                                                                                |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`resize_to_po2<class_Image_method_resize_to_po2>` **(** :ref:`bool<class_bool>` square=false, :ref:`Interpolation<enum_Image_Interpolation>` interpolation=1 **)**                                                                                                       |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>`                     | :ref:`rgbe_to_srgb<class_Image_method_rgbe_to_srgb>` **(** **)**                                                                                                                                                                                                              |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`rotate_180<class_Image_method_rotate_180>` **(** **)**                                                                                                                                                                                                                  |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`rotate_90<class_Image_method_rotate_90>` **(** :ref:`ClockDirection<enum_@GlobalScope_ClockDirection>` direction **)**                                                                                                                                                  |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_exr<class_Image_method_save_exr>` **(** :ref:`String<class_String>` path, :ref:`bool<class_bool>` grayscale=false **)** |const|                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_exr_to_buffer<class_Image_method_save_exr_to_buffer>` **(** :ref:`bool<class_bool>` grayscale=false **)** |const|                                                                                                                                                  |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_jpg<class_Image_method_save_jpg>` **(** :ref:`String<class_String>` path, :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                                                     |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_jpg_to_buffer<class_Image_method_save_jpg_to_buffer>` **(** :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                                                                   |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_png<class_Image_method_save_png>` **(** :ref:`String<class_String>` path **)** |const|                                                                                                                                                                             |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_png_to_buffer<class_Image_method_save_png_to_buffer>` **(** **)** |const|                                                                                                                                                                                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`         | :ref:`save_webp<class_Image_method_save_webp>` **(** :ref:`String<class_String>` path, :ref:`bool<class_bool>` lossy=false, :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                              |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`save_webp_to_buffer<class_Image_method_save_webp_to_buffer>` **(** :ref:`bool<class_bool>` lossy=false, :ref:`float<class_float>` quality=0.75 **)** |const|                                                                                                            |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`set_data<class_Image_method_set_data>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` use_mipmaps, :ref:`Format<enum_Image_Format>` format, :ref:`PackedByteArray<class_PackedByteArray>` data **)**                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`set_pixel<class_Image_method_set_pixel>` **(** :ref:`int<class_int>` x, :ref:`int<class_int>` y, :ref:`Color<class_Color>` color **)**                                                                                                                                  |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`set_pixelv<class_Image_method_set_pixelv>` **(** :ref:`Vector2i<class_Vector2i>` point, :ref:`Color<class_Color>` color **)**                                                                                                                                           |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`shrink_x2<class_Image_method_shrink_x2>` **(** **)**                                                                                                                                                                                                                    |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                          | :ref:`srgb_to_linear<class_Image_method_srgb_to_linear>` **(** **)**                                                                                                                                                                                                          |
+   +-----------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -930,14 +930,12 @@ Removes the image's mipmaps.
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **compress** **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`CompressSource<enum_Image_CompressSource>` source=0, :ref:`float<class_float>` lossy_quality=0.7, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**
+:ref:`Error<enum_@GlobalScope_Error>` **compress** **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`CompressSource<enum_Image_CompressSource>` source=0, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**
 
 Compresses the image to use less memory. Can not directly access pixel data while the image is compressed. Returns error if the chosen compression mode is not available.
 
 The ``mode`` parameter helps to pick the best compression method for DXT and ETC2 formats. It is ignored for ASTC compression.
 
-The ``lossy_quality`` parameter is optional for compressors that support it.
-
 For ASTC compression, the ``astc_format`` parameter must be supplied.
 
 .. rst-class:: classref-item-separator
@@ -948,14 +946,12 @@ For ASTC compression, the ``astc_format`` parameter must be supplied.
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **compress_from_channels** **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`UsedChannels<enum_Image_UsedChannels>` channels, :ref:`float<class_float>` lossy_quality=0.7, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**
+:ref:`Error<enum_@GlobalScope_Error>` **compress_from_channels** **(** :ref:`CompressMode<enum_Image_CompressMode>` mode, :ref:`UsedChannels<enum_Image_UsedChannels>` channels, :ref:`ASTCFormat<enum_Image_ASTCFormat>` astc_format=0 **)**
 
 Compresses the image to use less memory. Can not directly access pixel data while the image is compressed. Returns error if the chosen compression mode is not available.
 
 This is an alternative to :ref:`compress<class_Image_method_compress>` that lets the user supply the channels used in order for the compressor to pick the best DXT and ETC2 formats. For other formats (non DXT or ETC2), this argument is ignored.
 
-The ``lossy_quality`` parameter is optional for compressors that support it.
-
 For ASTC compression, the ``astc_format`` parameter must be supplied.
 
 .. rst-class:: classref-item-separator

+ 10 - 10
classes/class_inputeventmidi.rst

@@ -57,9 +57,9 @@ To receive input events from MIDI devices, you need to call :ref:`OS.open_midi_i
         GD.Print(OS.GetConnectedMidiInputs());
     }
     
-    public override void _Input(InputEvent inputEvent)
+    public override void _Input(InputEvent @event)
     {
-        if (inputEvent is InputEventMIDI midiEvent)
+        if (@event is InputEventMIDI midiEvent)
         {
             PrintMIDIInfo(midiEvent);
         }
@@ -68,14 +68,14 @@ To receive input events from MIDI devices, you need to call :ref:`OS.open_midi_i
     private void PrintMIDIInfo(InputEventMIDI midiEvent)
     {
         GD.Print(midiEvent);
-        GD.Print("Channel " + midiEvent.Channel);
-        GD.Print("Message " + midiEvent.Message);
-        GD.Print("Pitch " + midiEvent.Pitch);
-        GD.Print("Velocity " + midiEvent.Velocity);
-        GD.Print("Instrument " + midiEvent.Instrument);
-        GD.Print("Pressure " + midiEvent.Pressure);
-        GD.Print("Controller number: " + midiEvent.ControllerNumber);
-        GD.Print("Controller value: " + midiEvent.ControllerValue);
+        GD.Print($"Channel {midiEvent.Channel}");
+        GD.Print($"Message {midiEvent.Message}");
+        GD.Print($"Pitch {midiEvent.Pitch}");
+        GD.Print($"Velocity {midiEvent.Velocity}");
+        GD.Print($"Instrument {midiEvent.Instrument}");
+        GD.Print($"Pressure {midiEvent.Pressure}");
+        GD.Print($"Controller number: {midiEvent.ControllerNumber}");
+        GD.Print($"Controller value: {midiEvent.ControllerValue}");
     }
 
 

+ 65 - 0
classes/class_label3d.rst

@@ -29,9 +29,15 @@ Properties
 .. table::
    :widths: auto
 
+   +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                                 | :ref:`alpha_antialiasing_edge<class_Label3D_property_alpha_antialiasing_edge>`                             | ``0.0``                                                                                    |
+   +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
+   | :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>`           | :ref:`alpha_antialiasing_mode<class_Label3D_property_alpha_antialiasing_mode>`                             | ``0``                                                                                      |
    +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
    | :ref:`AlphaCutMode<enum_Label3D_AlphaCutMode>`                            | :ref:`alpha_cut<class_Label3D_property_alpha_cut>`                                                         | ``0``                                                                                      |
    +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                                 | :ref:`alpha_hash_scale<class_Label3D_property_alpha_hash_scale>`                                           | ``1.0``                                                                                    |
+   +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                                                 | :ref:`alpha_scissor_threshold<class_Label3D_property_alpha_scissor_threshold>`                             | ``0.5``                                                                                    |
    +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
    | :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`                         | :ref:`autowrap_mode<class_Label3D_property_autowrap_mode>`                                                 | ``0``                                                                                      |
@@ -202,6 +208,14 @@ This mode draws fully opaque pixels in the depth prepass. This is slower than :r
 
 \ **Note:** When using text with overlapping glyphs (e.g., cursive scripts), this mode might have transparency sorting issues between the main text and the outline.
 
+.. _class_Label3D_constant_ALPHA_CUT_HASH:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`AlphaCutMode<enum_Label3D_AlphaCutMode>` **ALPHA_CUT_HASH** = ``3``
+
+This mode draws cuts off all values below a spatially-deterministic threshold, the rest will remain opaque.
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -211,6 +225,40 @@ This mode draws fully opaque pixels in the depth prepass. This is slower than :r
 Property Descriptions
 ---------------------
 
+.. _class_Label3D_property_alpha_antialiasing_edge:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **alpha_antialiasing_edge** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_antialiasing_edge** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_alpha_antialiasing_edge** **(** **)**
+
+Threshold at which antialiasing will be applied on the alpha channel.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Label3D_property_alpha_antialiasing_mode:
+
+.. rst-class:: classref-property
+
+:ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **alpha_antialiasing_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_antialiasing** **(** :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` value **)**
+- :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **get_alpha_antialiasing** **(** **)**
+
+The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Label3D_property_alpha_cut:
 
 .. rst-class:: classref-property
@@ -228,6 +276,23 @@ The alpha cutting mode to use for the sprite. See :ref:`AlphaCutMode<enum_Label3
 
 ----
 
+.. _class_Label3D_property_alpha_hash_scale:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **alpha_hash_scale** = ``1.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_hash_scale** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_alpha_hash_scale** **(** **)**
+
+The hashing scale for Alpha Hash. Recommended values between ``0`` and ``2``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Label3D_property_alpha_scissor_threshold:
 
 .. rst-class:: classref-property

+ 7 - 8
classes/class_mainloop.rst

@@ -53,29 +53,28 @@ Here is an example script implementing a simple **MainLoop**:
  .. code-tab:: csharp
 
     using Godot;
-    using System;
     
-    public class CustomMainLoop : MainLoop
+    public partial class CustomMainLoop : MainLoop
     {
-        public float TimeElapsed = 0;
+        private double _timeElapsed = 0;
     
         public override void _Initialize()
         {
             GD.Print("Initialized:");
-            GD.Print($"  Starting Time: {TimeElapsed}");
+            GD.Print($"  Starting Time: {_timeElapsed}");
         }
     
-        public override bool _Process(float delta)
+        public override bool _Process(double delta)
         {
-            TimeElapsed += delta;
+            _timeElapsed += delta;
             // Return true to end the main loop.
-            return Input.GetMouseButtonMask() != 0 || Input.IsKeyPressed((int)KeyList.Escape);
+            return Input.GetMouseButtonMask() != 0 || Input.IsKeyPressed(Key.Escape);
         }
     
         private void _Finalize()
         {
             GD.Print("Finalized:");
-            GD.Print($"  End Time: {TimeElapsed}");
+            GD.Print($"  End Time: {_timeElapsed}");
         }
     }
 

+ 8 - 8
classes/class_multiplayerapiextension.rst

@@ -114,13 +114,13 @@ Methods
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                           | :ref:`_get_unique_id<class_MultiplayerAPIExtension_method__get_unique_id>` **(** **)** |virtual| |const|                                                                                                                |
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                           | :ref:`_object_configuration_add<class_MultiplayerAPIExtension_method__object_configuration_add>` **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|                  |
+   | :ref:`Error<enum_@GlobalScope_Error>`           | :ref:`_object_configuration_add<class_MultiplayerAPIExtension_method__object_configuration_add>` **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|                  |
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                           | :ref:`_object_configuration_remove<class_MultiplayerAPIExtension_method__object_configuration_remove>` **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|            |
+   | :ref:`Error<enum_@GlobalScope_Error>`           | :ref:`_object_configuration_remove<class_MultiplayerAPIExtension_method__object_configuration_remove>` **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|            |
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                           | :ref:`_poll<class_MultiplayerAPIExtension_method__poll>` **(** **)** |virtual|                                                                                                                                          |
+   | :ref:`Error<enum_@GlobalScope_Error>`           | :ref:`_poll<class_MultiplayerAPIExtension_method__poll>` **(** **)** |virtual|                                                                                                                                          |
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                           | :ref:`_rpc<class_MultiplayerAPIExtension_method__rpc>` **(** :ref:`int<class_int>` peer, :ref:`Object<class_Object>` object, :ref:`StringName<class_StringName>` method, :ref:`Array<class_Array>` args **)** |virtual| |
+   | :ref:`Error<enum_@GlobalScope_Error>`           | :ref:`_rpc<class_MultiplayerAPIExtension_method__rpc>` **(** :ref:`int<class_int>` peer, :ref:`Object<class_Object>` object, :ref:`StringName<class_StringName>` method, :ref:`Array<class_Array>` args **)** |virtual| |
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                            | :ref:`_set_multiplayer_peer<class_MultiplayerAPIExtension_method__set_multiplayer_peer>` **(** :ref:`MultiplayerPeer<class_MultiplayerPeer>` multiplayer_peer **)** |virtual|                                           |
    +-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -186,7 +186,7 @@ Callback for :ref:`MultiplayerAPI.get_unique_id<class_MultiplayerAPI_method_get_
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_object_configuration_add** **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_object_configuration_add** **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|
 
 Callback for :ref:`MultiplayerAPI.object_configuration_add<class_MultiplayerAPI_method_object_configuration_add>`.
 
@@ -198,7 +198,7 @@ Callback for :ref:`MultiplayerAPI.object_configuration_add<class_MultiplayerAPI_
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_object_configuration_remove** **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_object_configuration_remove** **(** :ref:`Object<class_Object>` object, :ref:`Variant<class_Variant>` configuration **)** |virtual|
 
 Callback for :ref:`MultiplayerAPI.object_configuration_remove<class_MultiplayerAPI_method_object_configuration_remove>`.
 
@@ -210,7 +210,7 @@ Callback for :ref:`MultiplayerAPI.object_configuration_remove<class_MultiplayerA
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_poll** **(** **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_poll** **(** **)** |virtual|
 
 Callback for :ref:`MultiplayerAPI.poll<class_MultiplayerAPI_method_poll>`.
 
@@ -222,7 +222,7 @@ Callback for :ref:`MultiplayerAPI.poll<class_MultiplayerAPI_method_poll>`.
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_rpc** **(** :ref:`int<class_int>` peer, :ref:`Object<class_Object>` object, :ref:`StringName<class_StringName>` method, :ref:`Array<class_Array>` args **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_rpc** **(** :ref:`int<class_int>` peer, :ref:`Object<class_Object>` object, :ref:`StringName<class_StringName>` method, :ref:`Array<class_Array>` args **)** |virtual|
 
 Callback for :ref:`MultiplayerAPI.rpc<class_MultiplayerAPI_method_rpc>`.
 

+ 9 - 9
classes/class_mutex.rst

@@ -36,13 +36,13 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------------------+----------------------------------------------------------+
-   | void                                  | :ref:`lock<class_Mutex_method_lock>` **(** **)**         |
-   +---------------------------------------+----------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`try_lock<class_Mutex_method_try_lock>` **(** **)** |
-   +---------------------------------------+----------------------------------------------------------+
-   | void                                  | :ref:`unlock<class_Mutex_method_unlock>` **(** **)**     |
-   +---------------------------------------+----------------------------------------------------------+
+   +-------------------------+----------------------------------------------------------+
+   | void                    | :ref:`lock<class_Mutex_method_lock>` **(** **)**         |
+   +-------------------------+----------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`try_lock<class_Mutex_method_try_lock>` **(** **)** |
+   +-------------------------+----------------------------------------------------------+
+   | void                    | :ref:`unlock<class_Mutex_method_unlock>` **(** **)**     |
+   +-------------------------+----------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -71,9 +71,9 @@ Locks this **Mutex**, blocks until it is unlocked by the current owner.
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **try_lock** **(** **)**
+:ref:`bool<class_bool>` **try_lock** **(** **)**
 
-Tries locking this **Mutex**, but does not block. Returns :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` on success, :ref:`@GlobalScope.ERR_BUSY<class_@GlobalScope_constant_ERR_BUSY>` otherwise.
+Tries locking this **Mutex**, but does not block. Returns ``true`` on success, ``false`` otherwise.
 
 \ **Note:** This function returns :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` if the thread already has ownership of the mutex.
 

+ 120 - 25
classes/class_navigationagent2d.rst

@@ -38,31 +38,41 @@ Properties
 .. table::
    :widths: auto
 
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                                                          | :ref:`avoidance_enabled<class_NavigationAgent2D_property_avoidance_enabled>`             | ``false``         |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`int<class_int>`                                                            | :ref:`max_neighbors<class_NavigationAgent2D_property_max_neighbors>`                     | ``10``            |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`max_speed<class_NavigationAgent2D_property_max_speed>`                             | ``100.0``         |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`int<class_int>`                                                            | :ref:`navigation_layers<class_NavigationAgent2D_property_navigation_layers>`             | ``1``             |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`neighbor_distance<class_NavigationAgent2D_property_neighbor_distance>`             | ``500.0``         |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`path_desired_distance<class_NavigationAgent2D_property_path_desired_distance>`     | ``20.0``          |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`path_max_distance<class_NavigationAgent2D_property_path_max_distance>`             | ``100.0``         |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` | :ref:`path_metadata_flags<class_NavigationAgent2D_property_path_metadata_flags>`         | ``7``             |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`radius<class_NavigationAgent2D_property_radius>`                                   | ``10.0``          |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`target_desired_distance<class_NavigationAgent2D_property_target_desired_distance>` | ``10.0``          |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                                                    | :ref:`target_position<class_NavigationAgent2D_property_target_position>`                 | ``Vector2(0, 0)`` |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`time_horizon<class_NavigationAgent2D_property_time_horizon>`                       | ``1.0``           |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+-------------------+
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`avoidance_enabled<class_NavigationAgent2D_property_avoidance_enabled>`                       | ``false``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`debug_enabled<class_NavigationAgent2D_property_debug_enabled>`                               | ``false``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Color<class_Color>`                                                        | :ref:`debug_path_custom_color<class_NavigationAgent2D_property_debug_path_custom_color>`           | ``Color(1, 1, 1, 1)`` |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`debug_path_custom_line_width<class_NavigationAgent2D_property_debug_path_custom_line_width>` | ``1.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`debug_path_custom_point_size<class_NavigationAgent2D_property_debug_path_custom_point_size>` | ``4.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`debug_use_custom<class_NavigationAgent2D_property_debug_use_custom>`                         | ``false``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`int<class_int>`                                                            | :ref:`max_neighbors<class_NavigationAgent2D_property_max_neighbors>`                               | ``10``                |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`max_speed<class_NavigationAgent2D_property_max_speed>`                                       | ``100.0``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`int<class_int>`                                                            | :ref:`navigation_layers<class_NavigationAgent2D_property_navigation_layers>`                       | ``1``                 |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`neighbor_distance<class_NavigationAgent2D_property_neighbor_distance>`                       | ``500.0``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`path_desired_distance<class_NavigationAgent2D_property_path_desired_distance>`               | ``20.0``              |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`path_max_distance<class_NavigationAgent2D_property_path_max_distance>`                       | ``100.0``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` | :ref:`path_metadata_flags<class_NavigationAgent2D_property_path_metadata_flags>`                   | ``7``                 |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`radius<class_NavigationAgent2D_property_radius>`                                             | ``10.0``              |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`target_desired_distance<class_NavigationAgent2D_property_target_desired_distance>`           | ``10.0``              |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Vector2<class_Vector2>`                                                    | :ref:`target_position<class_NavigationAgent2D_property_target_position>`                           | ``Vector2(0, 0)``     |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`time_horizon<class_NavigationAgent2D_property_time_horizon>`                                 | ``1.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -227,6 +237,91 @@ If ``true`` the agent is registered for an RVO avoidance callback on the :ref:`N
 
 ----
 
+.. _class_NavigationAgent2D_property_debug_enabled:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug_enabled** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_enabled** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **get_debug_enabled** **(** **)**
+
+If ``true`` shows debug visuals for this agent.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent2D_property_debug_path_custom_color:
+
+.. rst-class:: classref-property
+
+:ref:`Color<class_Color>` **debug_path_custom_color** = ``Color(1, 1, 1, 1)``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_path_custom_color** **(** :ref:`Color<class_Color>` value **)**
+- :ref:`Color<class_Color>` **get_debug_path_custom_color** **(** **)**
+
+If :ref:`debug_use_custom<class_NavigationAgent2D_property_debug_use_custom>` is ``true`` uses this color for this agent instead of global color.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent2D_property_debug_path_custom_line_width:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **debug_path_custom_line_width** = ``1.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_path_custom_line_width** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_debug_path_custom_line_width** **(** **)**
+
+If :ref:`debug_use_custom<class_NavigationAgent2D_property_debug_use_custom>` is ``true`` uses this line width for rendering paths for this agent instead of global line width.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent2D_property_debug_path_custom_point_size:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **debug_path_custom_point_size** = ``4.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_path_custom_point_size** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_debug_path_custom_point_size** **(** **)**
+
+If :ref:`debug_use_custom<class_NavigationAgent2D_property_debug_use_custom>` is ``true`` uses this rasterized point size for rendering path points for this agent instead of global point size.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent2D_property_debug_use_custom:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug_use_custom** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_use_custom** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **get_debug_use_custom** **(** **)**
+
+If ``true`` uses the defined :ref:`debug_path_custom_color<class_NavigationAgent2D_property_debug_path_custom_color>` for this agent instead of global color.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationAgent2D_property_max_neighbors:
 
 .. rst-class:: classref-property

+ 105 - 29
classes/class_navigationagent3d.rst

@@ -38,35 +38,43 @@ Properties
 .. table::
    :widths: auto
 
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`agent_height_offset<class_NavigationAgent3D_property_agent_height_offset>`         | ``0.0``              |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`bool<class_bool>`                                                          | :ref:`avoidance_enabled<class_NavigationAgent3D_property_avoidance_enabled>`             | ``false``            |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`bool<class_bool>`                                                          | :ref:`ignore_y<class_NavigationAgent3D_property_ignore_y>`                               | ``true``             |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`int<class_int>`                                                            | :ref:`max_neighbors<class_NavigationAgent3D_property_max_neighbors>`                     | ``10``               |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`max_speed<class_NavigationAgent3D_property_max_speed>`                             | ``10.0``             |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`int<class_int>`                                                            | :ref:`navigation_layers<class_NavigationAgent3D_property_navigation_layers>`             | ``1``                |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`neighbor_distance<class_NavigationAgent3D_property_neighbor_distance>`             | ``50.0``             |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`path_desired_distance<class_NavigationAgent3D_property_path_desired_distance>`     | ``1.0``              |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`path_max_distance<class_NavigationAgent3D_property_path_max_distance>`             | ``3.0``              |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` | :ref:`path_metadata_flags<class_NavigationAgent3D_property_path_metadata_flags>`         | ``7``                |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`radius<class_NavigationAgent3D_property_radius>`                                   | ``1.0``              |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`target_desired_distance<class_NavigationAgent3D_property_target_desired_distance>` | ``1.0``              |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`Vector3<class_Vector3>`                                                    | :ref:`target_position<class_NavigationAgent3D_property_target_position>`                 | ``Vector3(0, 0, 0)`` |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
-   | :ref:`float<class_float>`                                                        | :ref:`time_horizon<class_NavigationAgent3D_property_time_horizon>`                       | ``5.0``              |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------+----------------------+
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`agent_height_offset<class_NavigationAgent3D_property_agent_height_offset>`                   | ``0.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`avoidance_enabled<class_NavigationAgent3D_property_avoidance_enabled>`                       | ``false``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`debug_enabled<class_NavigationAgent3D_property_debug_enabled>`                               | ``false``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Color<class_Color>`                                                        | :ref:`debug_path_custom_color<class_NavigationAgent3D_property_debug_path_custom_color>`           | ``Color(1, 1, 1, 1)`` |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`debug_path_custom_point_size<class_NavigationAgent3D_property_debug_path_custom_point_size>` | ``4.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`debug_use_custom<class_NavigationAgent3D_property_debug_use_custom>`                         | ``false``             |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                                          | :ref:`ignore_y<class_NavigationAgent3D_property_ignore_y>`                                         | ``true``              |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`int<class_int>`                                                            | :ref:`max_neighbors<class_NavigationAgent3D_property_max_neighbors>`                               | ``10``                |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`max_speed<class_NavigationAgent3D_property_max_speed>`                                       | ``10.0``              |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`int<class_int>`                                                            | :ref:`navigation_layers<class_NavigationAgent3D_property_navigation_layers>`                       | ``1``                 |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`neighbor_distance<class_NavigationAgent3D_property_neighbor_distance>`                       | ``50.0``              |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`path_desired_distance<class_NavigationAgent3D_property_path_desired_distance>`               | ``1.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`path_max_distance<class_NavigationAgent3D_property_path_max_distance>`                       | ``3.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` | :ref:`path_metadata_flags<class_NavigationAgent3D_property_path_metadata_flags>`                   | ``7``                 |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`radius<class_NavigationAgent3D_property_radius>`                                             | ``1.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`target_desired_distance<class_NavigationAgent3D_property_target_desired_distance>`           | ``1.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Vector3<class_Vector3>`                                                    | :ref:`target_position<class_NavigationAgent3D_property_target_position>`                           | ``Vector3(0, 0, 0)``  |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                                        | :ref:`time_horizon<class_NavigationAgent3D_property_time_horizon>`                                 | ``5.0``               |
+   +----------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-----------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -248,6 +256,74 @@ If ``true`` the agent is registered for an RVO avoidance callback on the :ref:`N
 
 ----
 
+.. _class_NavigationAgent3D_property_debug_enabled:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug_enabled** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_enabled** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **get_debug_enabled** **(** **)**
+
+If ``true`` shows debug visuals for this agent.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent3D_property_debug_path_custom_color:
+
+.. rst-class:: classref-property
+
+:ref:`Color<class_Color>` **debug_path_custom_color** = ``Color(1, 1, 1, 1)``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_path_custom_color** **(** :ref:`Color<class_Color>` value **)**
+- :ref:`Color<class_Color>` **get_debug_path_custom_color** **(** **)**
+
+If :ref:`debug_use_custom<class_NavigationAgent3D_property_debug_use_custom>` is ``true`` uses this color for this agent instead of global color.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent3D_property_debug_path_custom_point_size:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **debug_path_custom_point_size** = ``4.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_path_custom_point_size** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_debug_path_custom_point_size** **(** **)**
+
+If :ref:`debug_use_custom<class_NavigationAgent3D_property_debug_use_custom>` is ``true`` uses this rasterized point size for rendering path points for this agent instead of global point size.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationAgent3D_property_debug_use_custom:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug_use_custom** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- void **set_debug_use_custom** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **get_debug_use_custom** **(** **)**
+
+If ``true`` uses the defined :ref:`debug_path_custom_color<class_NavigationAgent3D_property_debug_path_custom_color>` for this agent instead of global color.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NavigationAgent3D_property_ignore_y:
 
 .. rst-class:: classref-property

+ 16 - 4
classes/class_navigationserver2d.rst

@@ -59,7 +59,7 @@ Methods
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :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_callback<class_NavigationServer2D_method_agent_set_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` object_id, :ref:`StringName<class_StringName>` method, :ref:`Variant<class_Variant>` userdata=null **)**                               |
+   | void                                                | :ref:`agent_set_callback<class_NavigationServer2D_method_agent_set_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                               |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`agent_set_map<class_NavigationServer2D_method_agent_set_map>` **(** :ref:`RID<class_RID>` agent, :ref:`RID<class_RID>` map **)**                                                                                                                                        |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -203,6 +203,18 @@ Signals
 
 Emitted when a navigation map is updated, when a region moves or is modified.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_NavigationServer2D_signal_navigation_debug_changed:
+
+.. rst-class:: classref-signal
+
+**navigation_debug_changed** **(** **)**
+
+Emitted when navigation debug settings are changed. Only available in debug builds.
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -252,11 +264,11 @@ Returns true if the map got changed the previous frame.
 
 .. rst-class:: classref-method
 
-void **agent_set_callback** **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` object_id, :ref:`StringName<class_StringName>` method, :ref:`Variant<class_Variant>` userdata=null **)**
+void **agent_set_callback** **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**
 
-Sets the callback ``object_id`` and ``method`` that gets called after each avoidance processing step for the ``agent``. The calculated ``safe_velocity`` will be dispatched with a signal to the object just before the physics calculations.
+Sets the callback that gets called after each avoidance processing step for the ``agent``. The calculated ``safe_velocity`` will be passed as the first parameter just before the physics calculations.
 
-\ **Note:** Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use :ref:`agent_set_callback<class_NavigationServer2D_method_agent_set_callback>` again with a ``0`` ObjectID as the ``object_id``.
+\ **Note:** Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use :ref:`agent_set_callback<class_NavigationServer2D_method_agent_set_callback>` again with an empty :ref:`Callable<class_Callable>`.
 
 .. rst-class:: classref-item-separator
 

+ 4 - 4
classes/class_navigationserver3d.rst

@@ -59,7 +59,7 @@ Methods
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :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_callback<class_NavigationServer3D_method_agent_set_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` object_id, :ref:`StringName<class_StringName>` method, :ref:`Variant<class_Variant>` userdata=null **)**                               |
+   | void                                                | :ref:`agent_set_callback<class_NavigationServer3D_method_agent_set_callback>` **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**                                                                                                               |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                | :ref:`agent_set_map<class_NavigationServer3D_method_agent_set_map>` **(** :ref:`RID<class_RID>` agent, :ref:`RID<class_RID>` map **)**                                                                                                                                        |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -367,11 +367,11 @@ Returns true if the map got changed the previous frame.
 
 .. rst-class:: classref-method
 
-void **agent_set_callback** **(** :ref:`RID<class_RID>` agent, :ref:`int<class_int>` object_id, :ref:`StringName<class_StringName>` method, :ref:`Variant<class_Variant>` userdata=null **)**
+void **agent_set_callback** **(** :ref:`RID<class_RID>` agent, :ref:`Callable<class_Callable>` callback **)**
 
-Sets the callback ``object_id`` and ``method`` that gets called after each avoidance processing step for the ``agent``. The calculated ``safe_velocity`` will be dispatched with a signal to the object just before the physics calculations.
+Sets the callback that gets called after each avoidance processing step for the ``agent``. The calculated ``safe_velocity`` will be passed as the first parameter just before the physics calculations.
 
-\ **Note:** Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use :ref:`agent_set_callback<class_NavigationServer3D_method_agent_set_callback>` again with a ``0`` ObjectID as the ``object_id``.
+\ **Note:** Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use :ref:`agent_set_callback<class_NavigationServer3D_method_agent_set_callback>` again with an empty :ref:`Callable<class_Callable>`.
 
 .. rst-class:: classref-item-separator
 

+ 2 - 2
classes/class_node.rst

@@ -2104,7 +2104,7 @@ Requests that ``_ready`` be called again. Note that the method won't be called i
 
 :ref:`Error<enum_@GlobalScope_Error>` **rpc** **(** :ref:`StringName<class_StringName>` method, ... **)** |vararg|
 
-Sends a remote procedure call request for the given ``method`` to peers on the network (and locally), optionally sending all additional arguments as arguments to the method called by the RPC. The call request will only be received by nodes with the same :ref:`NodePath<class_NodePath>`, including the exact same node name. Behavior depends on the RPC configuration for the given method, see :ref:`rpc_config<class_Node_method_rpc_config>`. Methods are not exposed to RPCs by default. Returns ``null``.
+Sends a remote procedure call request for the given ``method`` to peers on the network (and locally), optionally sending all additional arguments as arguments to the method called by the RPC. The call request will only be received by nodes with the same :ref:`NodePath<class_NodePath>`, including the exact same node name. Behavior depends on the RPC configuration for the given method, see :ref:`rpc_config<class_Node_method_rpc_config>` and :ref:`@GDScript.@rpc<class_@GDScript_annotation_@rpc>`. Methods are not exposed to RPCs by default. Returns ``null``.
 
 \ **Note:** You can only safely use RPCs on clients after you received the ``connected_to_server`` signal from the :ref:`MultiplayerAPI<class_MultiplayerAPI>`. You also need to keep track of the connection state, either by the :ref:`MultiplayerAPI<class_MultiplayerAPI>` signals like ``server_disconnected`` or by checking ``get_multiplayer().peer.get_connection_status() == CONNECTION_CONNECTED``.
 
@@ -2129,7 +2129,7 @@ Changes the RPC mode for the given ``method`` with the given ``config`` which sh
         channel = 0,
     }
 
-See :ref:`RPCMode<enum_MultiplayerAPI_RPCMode>` and :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>`. An alternative is annotating methods and properties with the corresponding annotation (``@rpc("any")``, ``@rpc("authority")``). By default, methods are not exposed to networking (and RPCs).
+See :ref:`RPCMode<enum_MultiplayerAPI_RPCMode>` and :ref:`TransferMode<enum_MultiplayerPeer_TransferMode>`. An alternative is annotating methods and properties with the corresponding :ref:`@GDScript.@rpc<class_@GDScript_annotation_@rpc>` annotation (``@rpc("any_peer")``, ``@rpc("authority")``). By default, methods are not exposed to networking (and RPCs).
 
 .. rst-class:: classref-item-separator
 

+ 21 - 17
classes/class_noise.rst

@@ -35,21 +35,21 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>` | :ref:`get_image<class_Noise_method_get_image>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false **)** |const|                                                        |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>` | :ref:`get_noise_1d<class_Noise_method_get_noise_1d>` **(** :ref:`float<class_float>` x **)** |const|                                                                                                                                                                 |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>` | :ref:`get_noise_2d<class_Noise_method_get_noise_2d>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)** |const|                                                                                                                                    |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>` | :ref:`get_noise_2dv<class_Noise_method_get_noise_2dv>` **(** :ref:`Vector2<class_Vector2>` v **)** |const|                                                                                                                                                           |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>` | :ref:`get_noise_3d<class_Noise_method_get_noise_3d>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y, :ref:`float<class_float>` z **)** |const|                                                                                                       |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`float<class_float>` | :ref:`get_noise_3dv<class_Noise_method_get_noise_3dv>` **(** :ref:`Vector3<class_Vector3>` v **)** |const|                                                                                                                                                           |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Image<class_Image>` | :ref:`get_seamless_image<class_Noise_method_get_seamless_image>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false, :ref:`float<class_float>` skirt=0.1 **)** |const| |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>` | :ref:`get_image<class_Noise_method_get_image>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false, :ref:`bool<class_bool>` normalize=true **)** |const|                                                        |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>` | :ref:`get_noise_1d<class_Noise_method_get_noise_1d>` **(** :ref:`float<class_float>` x **)** |const|                                                                                                                                                                                                         |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>` | :ref:`get_noise_2d<class_Noise_method_get_noise_2d>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)** |const|                                                                                                                                                                            |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>` | :ref:`get_noise_2dv<class_Noise_method_get_noise_2dv>` **(** :ref:`Vector2<class_Vector2>` v **)** |const|                                                                                                                                                                                                   |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>` | :ref:`get_noise_3d<class_Noise_method_get_noise_3d>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y, :ref:`float<class_float>` z **)** |const|                                                                                                                                               |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>` | :ref:`get_noise_3dv<class_Noise_method_get_noise_3dv>` **(** :ref:`Vector3<class_Vector3>` v **)** |const|                                                                                                                                                                                                   |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Image<class_Image>` | :ref:`get_seamless_image<class_Noise_method_get_seamless_image>` **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false, :ref:`float<class_float>` skirt=0.1, :ref:`bool<class_bool>` normalize=true **)** |const| |
+   +---------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -64,10 +64,12 @@ Method Descriptions
 
 .. rst-class:: classref-method
 
-:ref:`Image<class_Image>` **get_image** **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false **)** |const|
+:ref:`Image<class_Image>` **get_image** **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false, :ref:`bool<class_bool>` normalize=true **)** |const|
 
 Returns a 2D :ref:`Image<class_Image>` noise image.
 
+Note: With ``normalize`` set to ``false`` the default implementation expects the noise generator to return values in the range ``-1.0`` to ``1.0``.
+
 .. rst-class:: classref-item-separator
 
 ----
@@ -136,10 +138,12 @@ Returns the 3D noise value at the given position.
 
 .. rst-class:: classref-method
 
-:ref:`Image<class_Image>` **get_seamless_image** **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false, :ref:`float<class_float>` skirt=0.1 **)** |const|
+:ref:`Image<class_Image>` **get_seamless_image** **(** :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`bool<class_bool>` invert=false, :ref:`bool<class_bool>` in_3d_space=false, :ref:`float<class_float>` skirt=0.1, :ref:`bool<class_bool>` normalize=true **)** |const|
 
 Returns a seamless 2D :ref:`Image<class_Image>` noise image.
 
+Note: With ``normalize`` set to ``false`` the default implementation expects the noise generator to return values in the range ``-1.0`` to ``1.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.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 21 - 0
classes/class_noisetexture2d.rst

@@ -58,6 +58,8 @@ Properties
    +---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
    | :ref:`Noise<class_Noise>`       | :ref:`noise<class_NoiseTexture2D_property_noise>`                               |                                                                                        |
    +---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`         | :ref:`normalize<class_NoiseTexture2D_property_normalize>`                       | ``true``                                                                               |
+   +---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`         | resource_local_to_scene                                                         | ``false`` (overrides :ref:`Resource<class_Resource_property_resource_local_to_scene>`) |
    +---------------------------------+---------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`         | :ref:`seamless<class_NoiseTexture2D_property_seamless>`                         | ``false``                                                                              |
@@ -216,6 +218,25 @@ The instance of the :ref:`Noise<class_Noise>` object.
 
 ----
 
+.. _class_NoiseTexture2D_property_normalize:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **normalize** = ``true``
+
+.. rst-class:: classref-property-setget
+
+- void **set_normalize** **(** :ref:`bool<class_bool>` value **)**
+- :ref:`bool<class_bool>` **is_normalized** **(** **)**
+
+If ``true``, the noise image coming from the noise generator is normalized to the range ``0.0`` to ``1.0``.
+
+Turning normalization off can affect the contrast and allows you to generate non repeating tileable noise textures.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NoiseTexture2D_property_seamless:
 
 .. rst-class:: classref-property

+ 11 - 11
classes/class_object.rst

@@ -388,7 +388,7 @@ The example below displays ``hammer_type`` in the Inspector dock, only if ``hold
  .. code-tab:: csharp
 
     [Tool]
-    public class MyNode2D : Node2D
+    public partial class MyNode2D : Node2D
     {
         private bool _holdingHammer;
     
@@ -826,9 +826,9 @@ As seen above, the recommended method to connect signals is not :ref:`connect<cl
         var button = new Button();
         // Option 1: In C#, we can use signals as events and connect with this idiomatic syntax:
         button.ButtonDown += OnButtonDown;
-        // Option 2: Object.Connect() with a constructed Callable from a method group.
+        // Option 2: GodotObject.Connect() with a constructed Callable from a method group.
         button.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown));
-        // Option 3: Object.Connect() with a constructed Callable using a target object and method name.
+        // Option 3: GodotObject.Connect() with a constructed Callable using a target object and method name.
         button.Connect(Button.SignalName.ButtonDown, new Callable(this, MethodName.OnButtonDown));
     }
     
@@ -1158,7 +1158,7 @@ Returns an :ref:`Array<class_Array>` of connections for the given ``signal`` nam
 
 - ``signal`` is a reference to the :ref:`Signal<class_Signal>`;
 
-- ``callable`` is a reference to the :ref:`Callable<class_Callable>`;
+- ``callable`` is a reference to the connected :ref:`Callable<class_Callable>`;
 
 - ``flags`` is a combination of :ref:`ConnectFlags<enum_Object_ConnectFlags>`.
 
@@ -1266,10 +1266,10 @@ Returns ``true`` if the object inherits from the given ``class``. See also :ref:
 
  .. code-tab:: csharp
 
-    var sprite2d = new Sprite2D();
-    sprite2d.IsClass("Sprite2D"); // Returns true
-    sprite2d.IsClass("Node");     // Returns true
-    sprite2d.IsClass("Node3D");   // Returns false
+    var sprite2D = new Sprite2D();
+    sprite2D.IsClass("Sprite2D"); // Returns true
+    sprite2D.IsClass("Node");     // Returns true
+    sprite2D.IsClass("Node3D");   // Returns false
 
 
 
@@ -1335,10 +1335,10 @@ If ``reversed`` is ``true``, the call order is reversed.
     player.SetScript(GD.Load("res://player.gd"));
     
     player.Notification(NotificationEnterTree);
-    // The call order is Object -> Node -> Node2D -> player.gd.
+    // The call order is GodotObject -> Node -> Node2D -> player.gd.
     
-    player.notification(NotificationEnterTree, true);
-    // The call order is player.gd -> Node2D -> Node -> Object.
+    player.Notification(NotificationEnterTree, true);
+    // The call order is player.gd -> Node2D -> Node -> GodotObject.
 
 
 

+ 2 - 0
classes/class_omnilight3d.rst

@@ -21,6 +21,8 @@ Description
 
 An Omnidirectional light is a type of :ref:`Light3D<class_Light3D>` that emits light in all directions. The light is attenuated by distance and this attenuation can be configured by changing its energy, radius, and attenuation parameters.
 
+\ **Note:** When using the Mobile or Compatibility rendering methods, omni lights will only correctly affect meshes whose visibility AABB intersects with the light's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, :ref:`GeometryInstance3D.extra_cull_margin<class_GeometryInstance3D_property_extra_cull_margin>` must be increased on the mesh. Otherwise, the light may not be visible on the mesh.
+
 .. rst-class:: classref-introduction-group
 
 Tutorials

+ 45 - 3
classes/class_openxrinterface.rst

@@ -50,9 +50,15 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Array<class_Array>` | :ref:`get_available_display_refresh_rates<class_OpenXRInterface_method_get_available_display_refresh_rates>` **(** **)** |const| |
-   +---------------------------+----------------------------------------------------------------------------------------------------------------------------------+
+   +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Array<class_Array>` | :ref:`get_action_sets<class_OpenXRInterface_method_get_action_sets>` **(** **)** |const|                                                                      |
+   +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Array<class_Array>` | :ref:`get_available_display_refresh_rates<class_OpenXRInterface_method_get_available_display_refresh_rates>` **(** **)** |const|                              |
+   +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`   | :ref:`is_action_set_active<class_OpenXRInterface_method_is_action_set_active>` **(** :ref:`String<class_String>` name **)** |const|                           |
+   +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                      | :ref:`set_action_set_active<class_OpenXRInterface_method_set_action_set_active>` **(** :ref:`String<class_String>` name, :ref:`bool<class_bool>` active **)** |
+   +---------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -150,6 +156,18 @@ The display refresh rate for the current HMD. Only functional if this feature is
 Method Descriptions
 -------------------
 
+.. _class_OpenXRInterface_method_get_action_sets:
+
+.. rst-class:: classref-method
+
+:ref:`Array<class_Array>` **get_action_sets** **(** **)** |const|
+
+Returns a list of action sets registered with Godot (loaded from the action map at runtime).
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_OpenXRInterface_method_get_available_display_refresh_rates:
 
 .. rst-class:: classref-method
@@ -158,6 +176,30 @@ Method Descriptions
 
 Returns display refresh rates supported by the current HMD. Only returned if this feature is supported by the OpenXR runtime and after the interface has been initialized.
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_OpenXRInterface_method_is_action_set_active:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_action_set_active** **(** :ref:`String<class_String>` name **)** |const|
+
+Returns ``true`` if the given action set is active.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_OpenXRInterface_method_set_action_set_active:
+
+.. rst-class:: classref-method
+
+void **set_action_set_active** **(** :ref:`String<class_String>` name, :ref:`bool<class_bool>` active **)**
+
+Sets the given action set as active or inactive.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 3 - 3
classes/class_os.rst

@@ -1155,7 +1155,7 @@ Returns ``true`` if the Godot binary used to run the project is a *debug* export
 
 Returns ``false`` if the Godot binary used to run the project is a *release* export template.
 
-To check whether the Godot binary used to run the project is an export template (debug or release), use ``OS.has_feature("standalone")`` instead.
+To check whether the Godot binary used to run the project is an export template (debug or release), use ``OS.has_feature("template")`` instead.
 
 .. rst-class:: classref-item-separator
 
@@ -1258,12 +1258,12 @@ The method takes only global paths, so you may need to use :ref:`ProjectSettings
 
  .. code-tab:: gdscript
 
-    var file_to_remove = "user://slot1.sav"
+    var file_to_remove = "user://slot1.save"
     OS.move_to_trash(ProjectSettings.globalize_path(file_to_remove))
 
  .. code-tab:: csharp
 
-    var fileToRemove = "user://slot1.sav";
+    var fileToRemove = "user://slot1.save";
     OS.MoveToTrash(ProjectSettings.GlobalizePath(fileToRemove));
 
 

+ 2 - 2
classes/class_packedscene.rst

@@ -117,7 +117,7 @@ Properties
    :widths: auto
 
    +-------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Dictionary<class_Dictionary>` | :ref:`_bundled<class_PackedScene_property__bundled>` | ``{ "conn_count": 0, "conns": PackedInt32Array(), "editable_instances": [], "names": PackedStringArray(), "node_count": 0, "node_paths": [], "nodes": PackedInt32Array(), "variants": [], "version": 2 }`` |
+   | :ref:`Dictionary<class_Dictionary>` | :ref:`_bundled<class_PackedScene_property__bundled>` | ``{ "conn_count": 0, "conns": PackedInt32Array(), "editable_instances": [], "names": PackedStringArray(), "node_count": 0, "node_paths": [], "nodes": PackedInt32Array(), "variants": [], "version": 3 }`` |
    +-------------------------------------+------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-reftable-group
@@ -204,7 +204,7 @@ Property Descriptions
 
 .. rst-class:: classref-property
 
-:ref:`Dictionary<class_Dictionary>` **_bundled** = ``{ "conn_count": 0, "conns": PackedInt32Array(), "editable_instances": [], "names": PackedStringArray(), "node_count": 0, "node_paths": [], "nodes": PackedInt32Array(), "variants": [], "version": 2 }``
+:ref:`Dictionary<class_Dictionary>` **_bundled** = ``{ "conn_count": 0, "conns": PackedInt32Array(), "editable_instances": [], "names": PackedStringArray(), "node_count": 0, "node_paths": [], "nodes": PackedInt32Array(), "variants": [], "version": 3 }``
 
 A dictionary representation of the scene contents.
 

+ 11 - 11
classes/class_packetpeerdtls.rst

@@ -33,15 +33,15 @@ Methods
 .. table::
    :widths: auto
 
-   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`     | :ref:`connect_to_peer<class_PacketPeerDTLS_method_connect_to_peer>` **(** :ref:`PacketPeerUDP<class_PacketPeerUDP>` packet_peer, :ref:`bool<class_bool>` validate_certs=true, :ref:`String<class_String>` for_hostname="", :ref:`X509Certificate<class_X509Certificate>` valid_certificate=null **)** |
-   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                      | :ref:`disconnect_from_peer<class_PacketPeerDTLS_method_disconnect_from_peer>` **(** **)**                                                                                                                                                                                                             |
-   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Status<enum_PacketPeerDTLS_Status>` | :ref:`get_status<class_PacketPeerDTLS_method_get_status>` **(** **)** |const|                                                                                                                                                                                                                         |
-   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                      | :ref:`poll<class_PacketPeerDTLS_method_poll>` **(** **)**                                                                                                                                                                                                                                             |
-   +-------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`     | :ref:`connect_to_peer<class_PacketPeerDTLS_method_connect_to_peer>` **(** :ref:`PacketPeerUDP<class_PacketPeerUDP>` packet_peer, :ref:`String<class_String>` hostname, :ref:`TLSOptions<class_TLSOptions>` client_options=null **)** |
+   +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                      | :ref:`disconnect_from_peer<class_PacketPeerDTLS_method_disconnect_from_peer>` **(** **)**                                                                                                                                            |
+   +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Status<enum_PacketPeerDTLS_Status>` | :ref:`get_status<class_PacketPeerDTLS_method_get_status>` **(** **)** |const|                                                                                                                                                        |
+   +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                      | :ref:`poll<class_PacketPeerDTLS_method_poll>` **(** **)**                                                                                                                                                                            |
+   +-------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -111,9 +111,9 @@ Method Descriptions
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **connect_to_peer** **(** :ref:`PacketPeerUDP<class_PacketPeerUDP>` packet_peer, :ref:`bool<class_bool>` validate_certs=true, :ref:`String<class_String>` for_hostname="", :ref:`X509Certificate<class_X509Certificate>` valid_certificate=null **)**
+:ref:`Error<enum_@GlobalScope_Error>` **connect_to_peer** **(** :ref:`PacketPeerUDP<class_PacketPeerUDP>` packet_peer, :ref:`String<class_String>` hostname, :ref:`TLSOptions<class_TLSOptions>` client_options=null **)**
 
-Connects a ``packet_peer`` beginning the DTLS handshake using the underlying :ref:`PacketPeerUDP<class_PacketPeerUDP>` which must be connected (see :ref:`PacketPeerUDP.connect_to_host<class_PacketPeerUDP_method_connect_to_host>`). If ``validate_certs`` is ``true``, **PacketPeerDTLS** will validate that the certificate presented by the remote peer and match it with the ``for_hostname`` argument. You can specify a custom :ref:`X509Certificate<class_X509Certificate>` to use for validation via the ``valid_certificate`` argument.
+Connects a ``packet_peer`` beginning the DTLS handshake using the underlying :ref:`PacketPeerUDP<class_PacketPeerUDP>` which must be connected (see :ref:`PacketPeerUDP.connect_to_host<class_PacketPeerUDP_method_connect_to_host>`). You can optionally specify the ``client_options`` to be used while verifying the TLS connections. See :ref:`TLSOptions.client<class_TLSOptions_method_client>` and :ref:`TLSOptions.client_unsafe<class_TLSOptions_method_client_unsafe>`.
 
 .. rst-class:: classref-item-separator
 

+ 2 - 0
classes/class_physicspointqueryparameters2d.rst

@@ -65,6 +65,8 @@ Property Descriptions
 
 If different from ``0``, restricts the query to a specific canvas layer specified by its instance ID. See :ref:`Object.get_instance_id<class_Object_method_get_instance_id>`.
 
+If ``0``, restricts the query to the Viewport's default canvas layer.
+
 .. rst-class:: classref-item-separator
 
 ----

+ 9 - 15
classes/class_physicsserver2d.rst

@@ -476,27 +476,21 @@ Constant to set/get gravity vector/center in an area.
 
 Constant to set/get whether the gravity vector of an area is a direction, or a center point.
 
-.. _class_PhysicsServer2D_constant_AREA_PARAM_GRAVITY_DISTANCE_SCALE:
+.. _class_PhysicsServer2D_constant_AREA_PARAM_GRAVITY_POINT_UNIT_DISTANCE:
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_GRAVITY_DISTANCE_SCALE** = ``4``
+:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_GRAVITY_POINT_UNIT_DISTANCE** = ``4``
 
-Constant to set/get the falloff factor for point gravity of an area. The greater this value is, the faster the strength of gravity decreases with the square of distance.
+Constant to set/get the distance at which the gravity strength is equal to the gravity controlled by :ref:`AREA_PARAM_GRAVITY<class_PhysicsServer2D_constant_AREA_PARAM_GRAVITY>`. For example, on a planet 100 pixels in radius with a surface gravity of 4.0 px/s², set the gravity to 4.0 and the unit distance to 100.0. The gravity will have falloff according to the inverse square law, so in the example, at 200 pixels from the center the gravity will be 1.0 px/s² (twice the distance, 1/4th the gravity), at 50 pixels it will be 16.0 px/s² (half the distance, 4x the gravity), and so on.
 
-.. _class_PhysicsServer2D_constant_AREA_PARAM_GRAVITY_POINT_ATTENUATION:
-
-.. rst-class:: classref-enumeration-constant
-
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_GRAVITY_POINT_ATTENUATION** = ``5``
-
-This constant was used to set/get the falloff factor for point gravity. It has been superseded by :ref:`AREA_PARAM_GRAVITY_DISTANCE_SCALE<class_PhysicsServer2D_constant_AREA_PARAM_GRAVITY_DISTANCE_SCALE>`.
+The above is true only when the unit distance is a positive number. When the unit distance is set to 0.0, the gravity will be constant regardless of distance.
 
 .. _class_PhysicsServer2D_constant_AREA_PARAM_LINEAR_DAMP_OVERRIDE_MODE:
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP_OVERRIDE_MODE** = ``6``
+:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP_OVERRIDE_MODE** = ``5``
 
 Constant to set/get linear damping override mode in an area. See :ref:`AreaSpaceOverrideMode<enum_PhysicsServer2D_AreaSpaceOverrideMode>` for possible values.
 
@@ -504,7 +498,7 @@ Constant to set/get linear damping override mode in an area. See :ref:`AreaSpace
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP** = ``7``
+:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP** = ``6``
 
 Constant to set/get the linear damping factor of an area.
 
@@ -512,7 +506,7 @@ Constant to set/get the linear damping factor of an area.
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP_OVERRIDE_MODE** = ``8``
+:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP_OVERRIDE_MODE** = ``7``
 
 Constant to set/get angular damping override mode in an area. See :ref:`AreaSpaceOverrideMode<enum_PhysicsServer2D_AreaSpaceOverrideMode>` for possible values.
 
@@ -520,7 +514,7 @@ Constant to set/get angular damping override mode in an area. See :ref:`AreaSpac
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP** = ``9``
+:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP** = ``8``
 
 Constant to set/get the angular damping factor of an area.
 
@@ -528,7 +522,7 @@ Constant to set/get the angular damping factor of an area.
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_PRIORITY** = ``10``
+:ref:`AreaParameter<enum_PhysicsServer2D_AreaParameter>` **AREA_PARAM_PRIORITY** = ``9``
 
 Constant to set/get the priority (order of processing) of an area.
 

+ 13 - 19
classes/class_physicsserver3d.rst

@@ -1076,27 +1076,21 @@ Constant to set/get gravity vector/center in an area.
 
 Constant to set/get whether the gravity vector of an area is a direction, or a center point.
 
-.. _class_PhysicsServer3D_constant_AREA_PARAM_GRAVITY_DISTANCE_SCALE:
+.. _class_PhysicsServer3D_constant_AREA_PARAM_GRAVITY_POINT_UNIT_DISTANCE:
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_GRAVITY_DISTANCE_SCALE** = ``4``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_GRAVITY_POINT_UNIT_DISTANCE** = ``4``
 
-Constant to set/get the falloff factor for point gravity of an area. The greater this value is, the faster the strength of gravity decreases with the square of distance.
+Constant to set/get the distance at which the gravity strength is equal to the gravity controlled by :ref:`AREA_PARAM_GRAVITY<class_PhysicsServer3D_constant_AREA_PARAM_GRAVITY>`. For example, on a planet 100 meters in radius with a surface gravity of 4.0 m/s², set the gravity to 4.0 and the unit distance to 100.0. The gravity will have falloff according to the inverse square law, so in the example, at 200 meters from the center the gravity will be 1.0 m/s² (twice the distance, 1/4th the gravity), at 50 meters it will be 16.0 m/s² (half the distance, 4x the gravity), and so on.
 
-.. _class_PhysicsServer3D_constant_AREA_PARAM_GRAVITY_POINT_ATTENUATION:
-
-.. rst-class:: classref-enumeration-constant
-
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_GRAVITY_POINT_ATTENUATION** = ``5``
-
-This constant was used to set/get the falloff factor for point gravity. It has been superseded by :ref:`AREA_PARAM_GRAVITY_DISTANCE_SCALE<class_PhysicsServer3D_constant_AREA_PARAM_GRAVITY_DISTANCE_SCALE>`.
+The above is true only when the unit distance is a positive number. When this is set to 0.0, the gravity will be constant regardless of distance.
 
 .. _class_PhysicsServer3D_constant_AREA_PARAM_LINEAR_DAMP_OVERRIDE_MODE:
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP_OVERRIDE_MODE** = ``6``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP_OVERRIDE_MODE** = ``5``
 
 Constant to set/get linear damping override mode in an area. See :ref:`AreaSpaceOverrideMode<enum_PhysicsServer3D_AreaSpaceOverrideMode>` for possible values.
 
@@ -1104,7 +1098,7 @@ Constant to set/get linear damping override mode in an area. See :ref:`AreaSpace
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP** = ``7``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_LINEAR_DAMP** = ``6``
 
 Constant to set/get the linear damping factor of an area.
 
@@ -1112,7 +1106,7 @@ Constant to set/get the linear damping factor of an area.
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP_OVERRIDE_MODE** = ``8``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP_OVERRIDE_MODE** = ``7``
 
 Constant to set/get angular damping override mode in an area. See :ref:`AreaSpaceOverrideMode<enum_PhysicsServer3D_AreaSpaceOverrideMode>` for possible values.
 
@@ -1120,7 +1114,7 @@ Constant to set/get angular damping override mode in an area. See :ref:`AreaSpac
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP** = ``9``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_ANGULAR_DAMP** = ``8``
 
 Constant to set/get the angular damping factor of an area.
 
@@ -1128,7 +1122,7 @@ Constant to set/get the angular damping factor of an area.
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_PRIORITY** = ``10``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_PRIORITY** = ``9``
 
 Constant to set/get the priority (order of processing) of an area.
 
@@ -1136,7 +1130,7 @@ Constant to set/get the priority (order of processing) of an area.
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_FORCE_MAGNITUDE** = ``11``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_FORCE_MAGNITUDE** = ``10``
 
 Constant to set/get the magnitude of area-specific wind force.
 
@@ -1144,7 +1138,7 @@ Constant to set/get the magnitude of area-specific wind force.
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_SOURCE** = ``12``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_SOURCE** = ``11``
 
 Constant to set/get the 3D vector that specifies the origin from which an area-specific wind blows.
 
@@ -1152,7 +1146,7 @@ Constant to set/get the 3D vector that specifies the origin from which an area-s
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_DIRECTION** = ``13``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_DIRECTION** = ``12``
 
 Constant to set/get the 3D vector that specifies the direction in which an area-specific wind blows.
 
@@ -1160,7 +1154,7 @@ Constant to set/get the 3D vector that specifies the direction in which an area-
 
 .. rst-class:: classref-enumeration-constant
 
-:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_ATTENUATION_FACTOR** = ``14``
+:ref:`AreaParameter<enum_PhysicsServer3D_AreaParameter>` **AREA_PARAM_WIND_ATTENUATION_FACTOR** = ``13``
 
 Constant to set/get the exponential rate at which wind force decreases with distance from its origin.
 

+ 3 - 1
classes/class_primitivemesh.rst

@@ -147,7 +147,9 @@ The current :ref:`Material<class_Material>` of the primitive mesh.
 - void **set_uv2_padding** **(** :ref:`float<class_float>` value **)**
 - :ref:`float<class_float>` **get_uv2_padding** **(** **)**
 
-If :ref:`add_uv2<class_PrimitiveMesh_property_add_uv2>` is set, specifies the padding in pixels applied along seams of the mesh. If at generation the size of the lightmap texture can't be determined, the UVs are calculated assuming a texture size of 1024x1024.
+If :ref:`add_uv2<class_PrimitiveMesh_property_add_uv2>` is set, specifies the padding in pixels applied along seams of the mesh. Lower padding values allow making better use of the lightmap texture (resulting in higher texel density), but may introduce visible lightmap bleeding along edges.
+
+If the size of the lightmap texture can't be determined when generating the mesh, UV2 is calculated assuming a texture size of 1024x1024.
 
 .. rst-class:: classref-section-separator
 

+ 194 - 46
classes/class_projectsettings.rst

@@ -159,18 +159,30 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/function_used_as_property<class_ProjectSettings_property_debug/gdscript/warnings/function_used_as_property>`                                                                 | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/get_node_default_without_onready<class_ProjectSettings_property_debug/gdscript/warnings/get_node_default_without_onready>`                                                   | ``2``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/incompatible_ternary<class_ProjectSettings_property_debug/gdscript/warnings/incompatible_ternary>`                                                                           | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/int_assigned_to_enum<class_ProjectSettings_property_debug/gdscript/warnings/int_assigned_to_enum>`                                                                           | ``1``                                                                                            |
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/inference_on_variant<class_ProjectSettings_property_debug/gdscript/warnings/inference_on_variant>`                                                                           | ``2``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/int_as_enum_without_cast<class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_cast>`                                                                   | ``1``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/int_as_enum_without_match<class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_match>`                                                                 | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/integer_division<class_ProjectSettings_property_debug/gdscript/warnings/integer_division>`                                                                                   | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/narrowing_conversion<class_ProjectSettings_property_debug/gdscript/warnings/narrowing_conversion>`                                                                           | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/native_method_override<class_ProjectSettings_property_debug/gdscript/warnings/native_method_override>`                                                                       | ``2``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/onready_with_export<class_ProjectSettings_property_debug/gdscript/warnings/onready_with_export>`                                                                             | ``2``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/property_used_as_function<class_ProjectSettings_property_debug/gdscript/warnings/property_used_as_function>`                                                                 | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/redundant_await<class_ProjectSettings_property_debug/gdscript/warnings/redundant_await>`                                                                                     | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`debug/gdscript/warnings/renamed_in_godot_4_hint<class_ProjectSettings_property_debug/gdscript/warnings/renamed_in_godot_4_hint>`                                                                     | ``1``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/return_value_discarded<class_ProjectSettings_property_debug/gdscript/warnings/return_value_discarded>`                                                                       | ``0``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/shadowed_global_identifier<class_ProjectSettings_property_debug/gdscript/warnings/shadowed_global_identifier>`                                                               | ``1``                                                                                            |
@@ -203,6 +215,8 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/unsafe_property_access<class_ProjectSettings_property_debug/gdscript/warnings/unsafe_property_access>`                                                                       | ``0``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/unsafe_void_return<class_ProjectSettings_property_debug/gdscript/warnings/unsafe_void_return>`                                                                               | ``1``                                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/unused_local_constant<class_ProjectSettings_property_debug/gdscript/warnings/unused_local_constant>`                                                                         | ``1``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`debug/gdscript/warnings/unused_parameter<class_ProjectSettings_property_debug/gdscript/warnings/unused_parameter>`                                                                                   | ``1``                                                                                            |
@@ -235,8 +249,16 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`Color<class_Color>`                         | :ref:`debug/shapes/collision/shape_color<class_ProjectSettings_property_debug/shapes/collision/shape_color>`                                                                                               | ``Color(0, 0.6, 0.7, 0.42)``                                                                     |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`Color<class_Color>`                         | :ref:`debug/shapes/navigation/agent_path_color<class_ProjectSettings_property_debug/shapes/navigation/agent_path_color>`                                                                                   | ``Color(1, 0, 0, 1)``                                                                            |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                         | :ref:`debug/shapes/navigation/agent_path_point_size<class_ProjectSettings_property_debug/shapes/navigation/agent_path_point_size>`                                                                         | ``4.0``                                                                                          |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`Color<class_Color>`                         | :ref:`debug/shapes/navigation/edge_connection_color<class_ProjectSettings_property_debug/shapes/navigation/edge_connection_color>`                                                                         | ``Color(1, 0, 1, 1)``                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`debug/shapes/navigation/enable_agent_paths<class_ProjectSettings_property_debug/shapes/navigation/enable_agent_paths>`                                                                               | ``true``                                                                                         |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`debug/shapes/navigation/enable_agent_paths_xray<class_ProjectSettings_property_debug/shapes/navigation/enable_agent_paths_xray>`                                                                     | ``true``                                                                                         |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`debug/shapes/navigation/enable_edge_connections<class_ProjectSettings_property_debug/shapes/navigation/enable_edge_connections>`                                                                     | ``true``                                                                                         |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`debug/shapes/navigation/enable_edge_connections_xray<class_ProjectSettings_property_debug/shapes/navigation/enable_edge_connections_xray>`                                                           | ``true``                                                                                         |
@@ -1299,13 +1321,9 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/lossless_compression/force_png<class_ProjectSettings_property_rendering/textures/lossless_compression/force_png>`                                                                 | ``false``                                                                                        |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/vram_compression/import_bptc<class_ProjectSettings_property_rendering/textures/vram_compression/import_bptc>`                                                                     | ``false``                                                                                        |
-   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/vram_compression/import_etc<class_ProjectSettings_property_rendering/textures/vram_compression/import_etc>`                                                                       | ``false``                                                                                        |
-   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/vram_compression/import_etc2<class_ProjectSettings_property_rendering/textures/vram_compression/import_etc2>`                                                                     | ``true``                                                                                         |
+   | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/vram_compression/import_etc2_astc<class_ProjectSettings_property_rendering/textures/vram_compression/import_etc2_astc>`                                                           | ``false``                                                                                        |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/vram_compression/import_s3tc<class_ProjectSettings_property_rendering/textures/vram_compression/import_s3tc>`                                                                     | ``true``                                                                                         |
+   | :ref:`bool<class_bool>`                           | :ref:`rendering/textures/vram_compression/import_s3tc_bptc<class_ProjectSettings_property_rendering/textures/vram_compression/import_s3tc_bptc>`                                                           | ``true``                                                                                         |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`rendering/textures/webp_compression/compression_method<class_ProjectSettings_property_rendering/textures/webp_compression/compression_method>`                                                       | ``2``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
@@ -1351,6 +1369,8 @@ Methods
    +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                  | :ref:`clear<class_ProjectSettings_method_clear>` **(** :ref:`String<class_String>` name **)**                                                                                                       |
    +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary[]<class_Dictionary>` | :ref:`get_global_class_list<class_ProjectSettings_method_get_global_class_list>` **(** **)**                                                                                                        |
+   +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                 | :ref:`get_order<class_ProjectSettings_method_get_order>` **(** :ref:`String<class_String>` name **)** |const|                                                                                       |
    +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Variant<class_Variant>`         | :ref:`get_setting<class_ProjectSettings_method_get_setting>` **(** :ref:`String<class_String>` name, :ref:`Variant<class_Variant>` default_value=null **)** |const|                                 |
@@ -2113,6 +2133,18 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w
 
 ----
 
+.. _class_ProjectSettings_property_debug/gdscript/warnings/get_node_default_without_onready:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/get_node_default_without_onready** = ``2``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when :ref:`Node.get_node<class_Node_method_get_node>` (or the shorthand ``$``) is used as default value of a class variable without the ``@onready`` annotation.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/gdscript/warnings/incompatible_ternary:
 
 .. rst-class:: classref-property
@@ -2125,13 +2157,37 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w
 
 ----
 
-.. _class_ProjectSettings_property_debug/gdscript/warnings/int_assigned_to_enum:
+.. _class_ProjectSettings_property_debug/gdscript/warnings/inference_on_variant:
 
 .. rst-class:: classref-property
 
-:ref:`int<class_int>` **debug/gdscript/warnings/int_assigned_to_enum** = ``1``
+:ref:`int<class_int>` **debug/gdscript/warnings/inference_on_variant** = ``2``
 
-When set to ``warn`` or ``error``, produces a warning or an error respectively when trying to assign an integer to a variable that expects an enum value.
+When set to ``warn`` or ``error``, produces a warning or an error respectively when a static inferred type uses a :ref:`Variant<class_Variant>` as initial value, which makes the static type to also be Variant.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_cast:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/int_as_enum_without_cast** = ``1``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when trying to use an integer as an enum without an explicit cast.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ProjectSettings_property_debug/gdscript/warnings/int_as_enum_without_match:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/int_as_enum_without_match** = ``1``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when trying to use an integer as an enum when there is no matching enum member for that numeric value.
 
 .. rst-class:: classref-item-separator
 
@@ -2161,6 +2217,30 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w
 
 ----
 
+.. _class_ProjectSettings_property_debug/gdscript/warnings/native_method_override:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/native_method_override** = ``2``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when a method in the script overrides a native method, because it may not behave as expected.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ProjectSettings_property_debug/gdscript/warnings/onready_with_export:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/onready_with_export** = ``2``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when the ``@onready`` annotation is used together with the ``@export`` annotation, since it may not behave as expected.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/gdscript/warnings/property_used_as_function:
 
 .. rst-class:: classref-property
@@ -2185,6 +2265,18 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w
 
 ----
 
+.. _class_ProjectSettings_property_debug/gdscript/warnings/renamed_in_godot_4_hint:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug/gdscript/warnings/renamed_in_godot_4_hint** = ``1``
+
+When enabled, using a property, enum, or function that was renamed since Godot 3 will produce a hint if an error occurs.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/gdscript/warnings/return_value_discarded:
 
 .. rst-class:: classref-property
@@ -2377,6 +2469,18 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w
 
 ----
 
+.. _class_ProjectSettings_property_debug/gdscript/warnings/unsafe_void_return:
+
+.. rst-class:: classref-property
+
+:ref:`int<class_int>` **debug/gdscript/warnings/unsafe_void_return** = ``1``
+
+When set to ``warn`` or ``error``, produces a warning or an error respectively when returning a call from a ``void`` function when such call cannot be guaranteed to be also ``void``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/gdscript/warnings/unused_local_constant:
 
 .. rst-class:: classref-property
@@ -2569,6 +2673,30 @@ Color of the collision shapes, visible when "Visible Collision Shapes" is enable
 
 ----
 
+.. _class_ProjectSettings_property_debug/shapes/navigation/agent_path_color:
+
+.. rst-class:: classref-property
+
+:ref:`Color<class_Color>` **debug/shapes/navigation/agent_path_color** = ``Color(1, 0, 0, 1)``
+
+Color to display enabled navigation agent paths when an agent has debug enabled.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ProjectSettings_property_debug/shapes/navigation/agent_path_point_size:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **debug/shapes/navigation/agent_path_point_size** = ``4.0``
+
+Rasterized size (pixel) used to render navigation agent path points when an agent has debug enabled.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/shapes/navigation/edge_connection_color:
 
 .. rst-class:: classref-property
@@ -2581,6 +2709,30 @@ Color to display edge connections between navigation regions, visible when "Visi
 
 ----
 
+.. _class_ProjectSettings_property_debug/shapes/navigation/enable_agent_paths:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug/shapes/navigation/enable_agent_paths** = ``true``
+
+If enabled, displays navigation agent paths when an agent has debug enabled.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_ProjectSettings_property_debug/shapes/navigation/enable_agent_paths_xray:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **debug/shapes/navigation/enable_agent_paths_xray** = ``true``
+
+If enabled, displays navigation agent paths through geometry when an agent has debug enabled.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_debug/shapes/navigation/enable_edge_connections:
 
 .. rst-class:: classref-property
@@ -7182,7 +7334,7 @@ The default gravity strength in 2D (in pixels per second squared).
  .. code-tab:: csharp
 
     // Set the default gravity strength to 980.
-    PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2d().Space, PhysicsServer2D.AreaParameter.Gravity, 980);
+    PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, PhysicsServer2D.AreaParameter.Gravity, 980);
 
 
 
@@ -7211,7 +7363,7 @@ The default gravity direction in 2D.
  .. code-tab:: csharp
 
     // Set the default gravity direction to `Vector2(0, 1)`.
-    PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2d().Space, PhysicsServer2D.AreaParameter.GravityVector, Vector2.Down)
+    PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, PhysicsServer2D.AreaParameter.GravityVector, Vector2.Down)
 
 
 
@@ -9369,13 +9521,13 @@ If ``true``, the texture importer will import lossless textures using the PNG fo
 
 ----
 
-.. _class_ProjectSettings_property_rendering/textures/vram_compression/import_bptc:
+.. _class_ProjectSettings_property_rendering/textures/vram_compression/import_etc2_astc:
 
 .. rst-class:: classref-property
 
-:ref:`bool<class_bool>` **rendering/textures/vram_compression/import_bptc** = ``false``
+:ref:`bool<class_bool>` **rendering/textures/vram_compression/import_etc2_astc** = ``false``
 
-If ``true``, the texture importer will import VRAM-compressed textures using the BPTC algorithm. This texture compression algorithm is only supported on desktop platforms, and only when using the Vulkan renderer.
+If ``true``, the texture importer will import VRAM-compressed textures using the Ericsson Texture Compression 2 algorithm for lower quality textures and normalmaps and Adaptable Scalable Texture Compression algorithm for high quality textures (in 4x4 block size).
 
 \ **Note:** Changing this setting does *not* impact textures that were already imported before. To make this setting apply to textures that were already imported, exit the editor, remove the ``.godot/imported/`` folder located inside the project folder then restart the editor (see :ref:`application/config/use_hidden_project_data_directory<class_ProjectSettings_property_application/config/use_hidden_project_data_directory>`).
 
@@ -9383,41 +9535,13 @@ If ``true``, the texture importer will import VRAM-compressed textures using the
 
 ----
 
-.. _class_ProjectSettings_property_rendering/textures/vram_compression/import_etc:
+.. _class_ProjectSettings_property_rendering/textures/vram_compression/import_s3tc_bptc:
 
 .. rst-class:: classref-property
 
-:ref:`bool<class_bool>` **rendering/textures/vram_compression/import_etc** = ``false``
+:ref:`bool<class_bool>` **rendering/textures/vram_compression/import_s3tc_bptc** = ``true``
 
-If ``true``, the texture importer will import VRAM-compressed textures using the Ericsson Texture Compression algorithm. This algorithm doesn't support alpha channels in textures.
-
-\ **Note:** Changing this setting does *not* impact textures that were already imported before. To make this setting apply to textures that were already imported, exit the editor, remove the ``.godot/imported/`` folder located inside the project folder then restart the editor (see :ref:`application/config/use_hidden_project_data_directory<class_ProjectSettings_property_application/config/use_hidden_project_data_directory>`).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ProjectSettings_property_rendering/textures/vram_compression/import_etc2:
-
-.. rst-class:: classref-property
-
-:ref:`bool<class_bool>` **rendering/textures/vram_compression/import_etc2** = ``true``
-
-If ``true``, the texture importer will import VRAM-compressed textures using the Ericsson Texture Compression 2 algorithm. This texture compression algorithm is only supported when using the Vulkan renderer.
-
-\ **Note:** Changing this setting does *not* impact textures that were already imported before. To make this setting apply to textures that were already imported, exit the editor, remove the ``.godot/imported/`` folder located inside the project folder then restart the editor (see :ref:`application/config/use_hidden_project_data_directory<class_ProjectSettings_property_application/config/use_hidden_project_data_directory>`).
-
-.. rst-class:: classref-item-separator
-
-----
-
-.. _class_ProjectSettings_property_rendering/textures/vram_compression/import_s3tc:
-
-.. rst-class:: classref-property
-
-:ref:`bool<class_bool>` **rendering/textures/vram_compression/import_s3tc** = ``true``
-
-If ``true``, the texture importer will import VRAM-compressed textures using the S3 Texture Compression algorithm. This algorithm is only supported on desktop platforms and consoles.
+If ``true``, the texture importer will import VRAM-compressed textures using the S3 Texture Compression algorithm (DXT1-5) for lower quality textures and the the BPTC algorithm (BC6H and BC7) for high quality textures. This algorithm is only supported on PC desktop platforms and consoles.
 
 \ **Note:** Changing this setting does *not* impact textures that were already imported before. To make this setting apply to textures that were already imported, exit the editor, remove the ``.godot/imported/`` folder located inside the project folder then restart the editor (see :ref:`application/config/use_hidden_project_data_directory<class_ProjectSettings_property_application/config/use_hidden_project_data_directory>`).
 
@@ -9695,6 +9819,30 @@ Clears the whole configuration (not recommended, may break things).
 
 ----
 
+.. _class_ProjectSettings_method_get_global_class_list:
+
+.. rst-class:: classref-method
+
+:ref:`Dictionary[]<class_Dictionary>` **get_global_class_list** **(** **)**
+
+Returns an :ref:`Array<class_Array>` of registered global classes. Each global class is represented as a :ref:`Dictionary<class_Dictionary>` that contains the following entries:
+
+- ``base`` is a name of the base class;
+
+- ``class`` is a name of the registered global class;
+
+- ``icon`` is a path to a custom icon of the global class, if it has any;
+
+- ``language`` is a name of a programming language in which the global class is written;
+
+- ``path`` is a path to a file containing the global class.
+
+\ **Note:** Both the script and the icon paths are local to the project filesystem, i.e. they start with ``res://``.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_method_get_order:
 
 .. rst-class:: classref-method

文件差异内容过多而无法显示
+ 0 - 0
classes/class_refcounted.rst


+ 30 - 28
classes/class_reflectionprobe.rst

@@ -25,6 +25,8 @@ The **ReflectionProbe** is used to create high-quality reflections at a low perf
 
 \ **Note:** Unlike :ref:`VoxelGI<class_VoxelGI>` and SDFGI, **ReflectionProbe**\ s only source their environment from a :ref:`WorldEnvironment<class_WorldEnvironment>` node. If you specify an :ref:`Environment<class_Environment>` resource within a :ref:`Camera3D<class_Camera3D>` node, it will be ignored by the **ReflectionProbe**. This can lead to incorrect lighting within the **ReflectionProbe**.
 
+\ **Note:** When using the Mobile rendering method, reflection probes will only correctly affect meshes whose visibility AABB intersects with the reflection probe's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, :ref:`GeometryInstance3D.extra_cull_margin<class_GeometryInstance3D_property_extra_cull_margin>` must be increased on the mesh. Otherwise, the reflection probe may not be visible on the mesh.
+
 .. rst-class:: classref-introduction-group
 
 Tutorials
@@ -53,8 +55,6 @@ Properties
    +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
    | :ref:`bool<class_bool>`                              | :ref:`enable_shadows<class_ReflectionProbe_property_enable_shadows>`             | ``false``               |
    +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
-   | :ref:`Vector3<class_Vector3>`                        | :ref:`extents<class_ReflectionProbe_property_extents>`                           | ``Vector3(10, 10, 10)`` |
-   +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
    | :ref:`float<class_float>`                            | :ref:`intensity<class_ReflectionProbe_property_intensity>`                       | ``1.0``                 |
    +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
    | :ref:`bool<class_bool>`                              | :ref:`interior<class_ReflectionProbe_property_interior>`                         | ``false``               |
@@ -65,6 +65,8 @@ Properties
    +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
    | :ref:`Vector3<class_Vector3>`                        | :ref:`origin_offset<class_ReflectionProbe_property_origin_offset>`               | ``Vector3(0, 0, 0)``    |
    +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
+   | :ref:`Vector3<class_Vector3>`                        | :ref:`size<class_ReflectionProbe_property_size>`                                 | ``Vector3(20, 20, 20)`` |
+   +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
    | :ref:`UpdateMode<enum_ReflectionProbe_UpdateMode>`   | :ref:`update_mode<class_ReflectionProbe_property_update_mode>`                   | ``0``                   |
    +------------------------------------------------------+----------------------------------------------------------------------------------+-------------------------+
 
@@ -115,7 +117,7 @@ enum **AmbientMode**:
 
 :ref:`AmbientMode<enum_ReflectionProbe_AmbientMode>` **AMBIENT_DISABLED** = ``0``
 
-Do not apply any ambient lighting inside the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`.
+Do not apply any ambient lighting inside the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`.
 
 .. _class_ReflectionProbe_constant_AMBIENT_ENVIRONMENT:
 
@@ -123,7 +125,7 @@ Do not apply any ambient lighting inside the **ReflectionProbe**'s :ref:`extents
 
 :ref:`AmbientMode<enum_ReflectionProbe_AmbientMode>` **AMBIENT_ENVIRONMENT** = ``1``
 
-Apply automatically-sourced environment lighting inside the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`.
+Apply automatically-sourced environment lighting inside the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`.
 
 .. _class_ReflectionProbe_constant_AMBIENT_COLOR:
 
@@ -131,7 +133,7 @@ Apply automatically-sourced environment lighting inside the **ReflectionProbe**'
 
 :ref:`AmbientMode<enum_ReflectionProbe_AmbientMode>` **AMBIENT_COLOR** = ``2``
 
-Apply custom ambient lighting inside the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`. See :ref:`ambient_color<class_ReflectionProbe_property_ambient_color>` and :ref:`ambient_color_energy<class_ReflectionProbe_property_ambient_color_energy>`.
+Apply custom ambient lighting inside the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`. See :ref:`ambient_color<class_ReflectionProbe_property_ambient_color>` and :ref:`ambient_color_energy<class_ReflectionProbe_property_ambient_color_energy>`.
 
 .. rst-class:: classref-section-separator
 
@@ -153,7 +155,7 @@ Property Descriptions
 - void **set_ambient_color** **(** :ref:`Color<class_Color>` value **)**
 - :ref:`Color<class_Color>` **get_ambient_color** **(** **)**
 
-The custom ambient color to use within the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`. Only effective if :ref:`ambient_mode<class_ReflectionProbe_property_ambient_mode>` is :ref:`AMBIENT_COLOR<class_ReflectionProbe_constant_AMBIENT_COLOR>`.
+The custom ambient color to use within the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`. Only effective if :ref:`ambient_mode<class_ReflectionProbe_property_ambient_mode>` is :ref:`AMBIENT_COLOR<class_ReflectionProbe_constant_AMBIENT_COLOR>`.
 
 .. rst-class:: classref-item-separator
 
@@ -170,7 +172,7 @@ The custom ambient color to use within the **ReflectionProbe**'s :ref:`extents<c
 - void **set_ambient_color_energy** **(** :ref:`float<class_float>` value **)**
 - :ref:`float<class_float>` **get_ambient_color_energy** **(** **)**
 
-The custom ambient color energy to use within the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`. Only effective if :ref:`ambient_mode<class_ReflectionProbe_property_ambient_mode>` is :ref:`AMBIENT_COLOR<class_ReflectionProbe_constant_AMBIENT_COLOR>`.
+The custom ambient color energy to use within the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`. Only effective if :ref:`ambient_mode<class_ReflectionProbe_property_ambient_mode>` is :ref:`AMBIENT_COLOR<class_ReflectionProbe_constant_AMBIENT_COLOR>`.
 
 .. rst-class:: classref-item-separator
 
@@ -187,7 +189,7 @@ The custom ambient color energy to use within the **ReflectionProbe**'s :ref:`ex
 - void **set_ambient_mode** **(** :ref:`AmbientMode<enum_ReflectionProbe_AmbientMode>` value **)**
 - :ref:`AmbientMode<enum_ReflectionProbe_AmbientMode>` **get_ambient_mode** **(** **)**
 
-The ambient color to use within the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`. The ambient color will smoothly blend with other **ReflectionProbe**\ s and the rest of the scene (outside the **ReflectionProbe**'s :ref:`extents<class_ReflectionProbe_property_extents>`).
+The ambient color to use within the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`. The ambient color will smoothly blend with other **ReflectionProbe**\ s and the rest of the scene (outside the **ReflectionProbe**'s :ref:`size<class_ReflectionProbe_property_size>`).
 
 .. rst-class:: classref-item-separator
 
@@ -246,25 +248,6 @@ If ``true``, computes shadows in the reflection probe. This makes the reflection
 
 ----
 
-.. _class_ReflectionProbe_property_extents:
-
-.. rst-class:: classref-property
-
-:ref:`Vector3<class_Vector3>` **extents** = ``Vector3(10, 10, 10)``
-
-.. rst-class:: classref-property-setget
-
-- void **set_extents** **(** :ref:`Vector3<class_Vector3>` value **)**
-- :ref:`Vector3<class_Vector3>` **get_extents** **(** **)**
-
-The size of the reflection probe. The larger the extents, the more space covered by the probe, which will lower the perceived resolution. It is best to keep the extents only as large as you need them.
-
-\ **Note:** To better fit areas that are not aligned to the grid, you can rotate the **ReflectionProbe** node.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_ReflectionProbe_property_intensity:
 
 .. rst-class:: classref-property
@@ -312,7 +295,7 @@ If ``true``, reflections will ignore sky contribution.
 
 The maximum distance away from the **ReflectionProbe** an object can be before it is culled. Decrease this to improve performance, especially when using the :ref:`UPDATE_ALWAYS<class_ReflectionProbe_constant_UPDATE_ALWAYS>` :ref:`update_mode<class_ReflectionProbe_property_update_mode>`.
 
-\ **Note:** The maximum reflection distance is always at least equal to the :ref:`extents<class_ReflectionProbe_property_extents>`. This means that decreasing :ref:`max_distance<class_ReflectionProbe_property_max_distance>` will not always cull objects from reflections, especially if the reflection probe's :ref:`extents<class_ReflectionProbe_property_extents>` are already large.
+\ **Note:** The maximum reflection distance is always at least equal to the probe's extents. This means that decreasing :ref:`max_distance<class_ReflectionProbe_property_max_distance>` will not always cull objects from reflections, especially if the reflection probe's :ref:`size<class_ReflectionProbe_property_size>` is already large.
 
 .. rst-class:: classref-item-separator
 
@@ -354,6 +337,25 @@ Sets the origin offset to be used when this **ReflectionProbe** is in :ref:`box_
 
 ----
 
+.. _class_ReflectionProbe_property_size:
+
+.. rst-class:: classref-property
+
+:ref:`Vector3<class_Vector3>` **size** = ``Vector3(20, 20, 20)``
+
+.. rst-class:: classref-property-setget
+
+- void **set_size** **(** :ref:`Vector3<class_Vector3>` value **)**
+- :ref:`Vector3<class_Vector3>` **get_size** **(** **)**
+
+The size of the reflection probe. The larger the size, the more space covered by the probe, which will lower the perceived resolution. It is best to keep the size only as large as you need it.
+
+\ **Note:** To better fit areas that are not aligned to the grid, you can rotate the **ReflectionProbe** node.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ReflectionProbe_property_update_mode:
 
 .. rst-class:: classref-property

+ 44 - 31
classes/class_renderingdevice.rst

@@ -12,9 +12,22 @@ RenderingDevice
 
 **Inherits:** :ref:`Object<class_Object>`
 
-.. container:: contribute
+Abstraction for working with modern low-level graphics APIs.
+
+.. rst-class:: classref-introduction-group
+
+Description
+-----------
+
+**RenderingDevice** is an abstraction for working with modern low-level graphics APIs such as Vulkan.
+
+On startup, Godot creates a global **RenderingDevice** which can be retrieved using :ref:`RenderingServer.get_rendering_device<class_RenderingServer_method_get_rendering_device>`. This global RenderingDevice performs drawing to the screen.
 
-	There is currently no description for this class. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Internally, **RenderingDevice** is used in Godot to provide support for several modern low-level graphics APIs while reducing the amount of code duplication required.
+
+\ **Local RenderingDevices:** Using :ref:`RenderingServer.create_local_rendering_device<class_RenderingServer_method_create_local_rendering_device>`, you can create "secondary" rendering devices to perform drawing and GPU compute operations on separate threads.
+
+\ **Note:** **RenderingDevice** is not available when running in headless mode or when using the OpenGL renderer.
 
 .. rst-class:: classref-reftable-group
 
@@ -2213,7 +2226,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_1D** = ``0``
 
-
+1-dimensional texture.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_2D:
 
@@ -2221,7 +2234,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_2D** = ``1``
 
-
+2-dimensional texture.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_3D:
 
@@ -2229,7 +2242,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_3D** = ``2``
 
-
+3-dimensional texture.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_CUBE:
 
@@ -2237,7 +2250,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_CUBE** = ``3``
 
-
+:ref:`Cubemap<class_Cubemap>` texture.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_1D_ARRAY:
 
@@ -2245,7 +2258,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_1D_ARRAY** = ``4``
 
-
+Array of 1-dimensional textures.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_2D_ARRAY:
 
@@ -2253,7 +2266,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_2D_ARRAY** = ``5``
 
-
+Array of 2-dimensional textures.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_CUBE_ARRAY:
 
@@ -2261,7 +2274,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_CUBE_ARRAY** = ``6``
 
-
+Array of :ref:`Cubemap<class_Cubemap>` textures.
 
 .. _class_RenderingDevice_constant_TEXTURE_TYPE_MAX:
 
@@ -2269,7 +2282,7 @@ enum **TextureType**:
 
 :ref:`TextureType<enum_RenderingDevice_TextureType>` **TEXTURE_TYPE_MAX** = ``7``
 
-
+Represents the size of the :ref:`TextureType<enum_RenderingDevice_TextureType>` enum.
 
 .. rst-class:: classref-item-separator
 
@@ -2343,7 +2356,7 @@ enum **TextureSamples**:
 
 :ref:`TextureSamples<enum_RenderingDevice_TextureSamples>` **TEXTURE_SAMPLES_MAX** = ``7``
 
-
+Represents the size of the :ref:`TextureSamples<enum_RenderingDevice_TextureSamples>` enum.
 
 .. rst-class:: classref-item-separator
 
@@ -2559,7 +2572,7 @@ enum **SamplerFilter**:
 
 :ref:`SamplerFilter<enum_RenderingDevice_SamplerFilter>` **SAMPLER_FILTER_NEAREST** = ``0``
 
-
+Nearest-neighbor sampler filtering. Sampling at higher resolutions than the source will result in a pixelated look.
 
 .. _class_RenderingDevice_constant_SAMPLER_FILTER_LINEAR:
 
@@ -2567,7 +2580,7 @@ enum **SamplerFilter**:
 
 :ref:`SamplerFilter<enum_RenderingDevice_SamplerFilter>` **SAMPLER_FILTER_LINEAR** = ``1``
 
-
+Bilinear sampler filtering. Sampling at higher resolutions than the source will result in a blurry look.
 
 .. rst-class:: classref-item-separator
 
@@ -2877,7 +2890,7 @@ enum **RenderPrimitive**:
 
 :ref:`RenderPrimitive<enum_RenderingDevice_RenderPrimitive>` **RENDER_PRIMITIVE_POINTS** = ``0``
 
-
+Point rendering primitive (with constant size, regardless of distance from camera).
 
 .. _class_RenderingDevice_constant_RENDER_PRIMITIVE_LINES:
 
@@ -2885,7 +2898,7 @@ enum **RenderPrimitive**:
 
 :ref:`RenderPrimitive<enum_RenderingDevice_RenderPrimitive>` **RENDER_PRIMITIVE_LINES** = ``1``
 
-
+Line rendering primitive.
 
 .. _class_RenderingDevice_constant_RENDER_PRIMITIVE_LINES_WITH_ADJACENCY:
 
@@ -3255,7 +3268,7 @@ enum **LogicOperation**:
 
 :ref:`LogicOperation<enum_RenderingDevice_LogicOperation>` **LOGIC_OP_XOR** = ``6``
 
-
+Exclusive or (XOR) logic operation.
 
 .. _class_RenderingDevice_constant_LOGIC_OP_OR:
 
@@ -3523,7 +3536,7 @@ enum **BlendOperation**:
 
 :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` **BLEND_OP_ADD** = ``0``
 
-
+Additive blending operation (``source + destination``).
 
 .. _class_RenderingDevice_constant_BLEND_OP_SUBTRACT:
 
@@ -3531,7 +3544,7 @@ enum **BlendOperation**:
 
 :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` **BLEND_OP_SUBTRACT** = ``1``
 
-
+Subtractive blending operation (``source - destination``).
 
 .. _class_RenderingDevice_constant_BLEND_OP_REVERSE_SUBTRACT:
 
@@ -3539,7 +3552,7 @@ enum **BlendOperation**:
 
 :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` **BLEND_OP_REVERSE_SUBTRACT** = ``2``
 
-
+Reverse subtractive blending operation (``destination - source``).
 
 .. _class_RenderingDevice_constant_BLEND_OP_MINIMUM:
 
@@ -3547,7 +3560,7 @@ enum **BlendOperation**:
 
 :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` **BLEND_OP_MINIMUM** = ``3``
 
-
+Minimum blending operation (keep the lowest value of the two).
 
 .. _class_RenderingDevice_constant_BLEND_OP_MAXIMUM:
 
@@ -3555,7 +3568,7 @@ enum **BlendOperation**:
 
 :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` **BLEND_OP_MAXIMUM** = ``4``
 
-
+Maximum blending operation (keep the highest value of the two).
 
 .. _class_RenderingDevice_constant_BLEND_OP_MAX:
 
@@ -3563,7 +3576,7 @@ enum **BlendOperation**:
 
 :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` **BLEND_OP_MAX** = ``5``
 
-
+Represents the size of the :ref:`BlendOperation<enum_RenderingDevice_BlendOperation>` enum.
 
 .. rst-class:: classref-item-separator
 
@@ -4001,7 +4014,7 @@ enum **Limit**:
 
 :ref:`Limit<enum_RenderingDevice_Limit>` **LIMIT_MAX_TEXTURE_SIZE_1D** = ``11``
 
-
+Maximum supported 1-dimensional texture size (in pixels on a single axis).
 
 .. _class_RenderingDevice_constant_LIMIT_MAX_TEXTURE_SIZE_2D:
 
@@ -4009,7 +4022,7 @@ enum **Limit**:
 
 :ref:`Limit<enum_RenderingDevice_Limit>` **LIMIT_MAX_TEXTURE_SIZE_2D** = ``12``
 
-
+Maximum supported 2-dimensional texture size (in pixels on a single axis).
 
 .. _class_RenderingDevice_constant_LIMIT_MAX_TEXTURE_SIZE_3D:
 
@@ -4017,7 +4030,7 @@ enum **Limit**:
 
 :ref:`Limit<enum_RenderingDevice_Limit>` **LIMIT_MAX_TEXTURE_SIZE_3D** = ``13``
 
-
+Maximum supported 3-dimensional texture size (in pixels on a single axis).
 
 .. _class_RenderingDevice_constant_LIMIT_MAX_TEXTURE_SIZE_CUBE:
 
@@ -4025,7 +4038,7 @@ enum **Limit**:
 
 :ref:`Limit<enum_RenderingDevice_Limit>` **LIMIT_MAX_TEXTURE_SIZE_CUBE** = ``14``
 
-
+Maximum supported cubemap texture size (in pixels on a single axis of a single face).
 
 .. _class_RenderingDevice_constant_LIMIT_MAX_TEXTURES_PER_SHADER_STAGE:
 
@@ -4219,7 +4232,7 @@ enum **MemoryType**:
 
 :ref:`MemoryType<enum_RenderingDevice_MemoryType>` **MEMORY_TEXTURES** = ``0``
 
-
+Memory taken by textures.
 
 .. _class_RenderingDevice_constant_MEMORY_BUFFERS:
 
@@ -4227,7 +4240,7 @@ enum **MemoryType**:
 
 :ref:`MemoryType<enum_RenderingDevice_MemoryType>` **MEMORY_BUFFERS** = ``1``
 
-
+Memory taken by buffers.
 
 .. _class_RenderingDevice_constant_MEMORY_TOTAL:
 
@@ -4235,7 +4248,7 @@ enum **MemoryType**:
 
 :ref:`MemoryType<enum_RenderingDevice_MemoryType>` **MEMORY_TOTAL** = ``2``
 
-
+Total memory taken. This is greater than the sum of :ref:`MEMORY_TEXTURES<class_RenderingDevice_constant_MEMORY_TEXTURES>` and :ref:`MEMORY_BUFFERS<class_RenderingDevice_constant_MEMORY_BUFFERS>`, as it also includes miscellaneous memory usage.
 
 .. rst-class:: classref-section-separator
 
@@ -4252,7 +4265,7 @@ Constants
 
 **INVALID_ID** = ``-1``
 
-
+Returned by functions that return an ID if a value is invalid.
 
 .. _class_RenderingDevice_constant_INVALID_FORMAT_ID:
 
@@ -4260,7 +4273,7 @@ Constants
 
 **INVALID_FORMAT_ID** = ``-1``
 
-
+Returned by functions that return a format ID if a value is invalid.
 
 .. rst-class:: classref-section-separator
 

+ 126 - 114
classes/class_renderingserver.rst

@@ -19,13 +19,13 @@ Server for anything visible.
 Description
 -----------
 
-Server for anything visible. The rendering server is the API backend for everything visible. The whole scene system mounts on it to display.
+The rendering server is the API backend for everything visible. The whole scene system mounts on it to display.
 
 The rendering server is completely opaque, the internals are entirely implementation specific and cannot be accessed.
 
-The rendering server can be used to bypass the scene system entirely.
+The rendering server can be used to bypass the scene/:ref:`Node<class_Node>` system entirely.
 
-Resources are created using the ``*_create`` functions.
+Resources are created using the ``*_create`` functions. These functions return :ref:`RID<class_RID>`\ s which are not references to the objects themselves, but opaque *pointers* towards these objects.
 
 All objects are drawn to a viewport. You can use the :ref:`Viewport<class_Viewport>` attached to the :ref:`SceneTree<class_SceneTree>` or you can create one yourself with :ref:`viewport_create<class_RenderingServer_method_viewport_create>`. When using a custom scenario or canvas, the scenario or canvas needs to be attached to the viewport using :ref:`viewport_set_scenario<class_RenderingServer_method_viewport_set_scenario>` or :ref:`viewport_attach_canvas<class_RenderingServer_method_viewport_attach_canvas>`.
 
@@ -203,6 +203,8 @@ Methods
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`canvas_light_occluder_set_transform<class_RenderingServer_method_canvas_light_occluder_set_transform>` **(** :ref:`RID<class_RID>` occluder, :ref:`Transform2D<class_Transform2D>` transform **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                                             | :ref:`canvas_light_set_blend_mode<class_RenderingServer_method_canvas_light_set_blend_mode>` **(** :ref:`RID<class_RID>` light, :ref:`CanvasLightBlendMode<enum_RenderingServer_CanvasLightBlendMode>` mode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`canvas_light_set_color<class_RenderingServer_method_canvas_light_set_color>` **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`canvas_light_set_enabled<class_RenderingServer_method_canvas_light_set_enabled>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
@@ -273,14 +275,14 @@ Methods
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`decal_set_emission_energy<class_RenderingServer_method_decal_set_emission_energy>` **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` energy **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                                             | :ref:`decal_set_extents<class_RenderingServer_method_decal_set_extents>` **(** :ref:`RID<class_RID>` decal, :ref:`Vector3<class_Vector3>` extents **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`decal_set_fade<class_RenderingServer_method_decal_set_fade>` **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` above, :ref:`float<class_float>` below **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`decal_set_modulate<class_RenderingServer_method_decal_set_modulate>` **(** :ref:`RID<class_RID>` decal, :ref:`Color<class_Color>` color **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`decal_set_normal_fade<class_RenderingServer_method_decal_set_normal_fade>` **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` fade **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                                             | :ref:`decal_set_size<class_RenderingServer_method_decal_set_size>` **(** :ref:`RID<class_RID>` decal, :ref:`Vector3<class_Vector3>` size **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`decal_set_texture<class_RenderingServer_method_decal_set_texture>` **(** :ref:`RID<class_RID>` decal, :ref:`DecalTexture<enum_RenderingServer_DecalTexture>` type, :ref:`RID<class_RID>` texture **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`decals_set_filter<class_RenderingServer_method_decals_set_filter>` **(** :ref:`DecalFilter<enum_RenderingServer_DecalFilter>` filter **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
@@ -347,12 +349,12 @@ Methods
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                                            | :ref:`fog_volume_create<class_RenderingServer_method_fog_volume_create>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                                             | :ref:`fog_volume_set_extents<class_RenderingServer_method_fog_volume_set_extents>` **(** :ref:`RID<class_RID>` fog_volume, :ref:`Vector3<class_Vector3>` extents **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`fog_volume_set_material<class_RenderingServer_method_fog_volume_set_material>` **(** :ref:`RID<class_RID>` fog_volume, :ref:`RID<class_RID>` material **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`fog_volume_set_shape<class_RenderingServer_method_fog_volume_set_shape>` **(** :ref:`RID<class_RID>` fog_volume, :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` shape **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                                             | :ref:`fog_volume_set_size<class_RenderingServer_method_fog_volume_set_size>` **(** :ref:`RID<class_RID>` fog_volume, :ref:`Vector3<class_Vector3>` size **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`force_draw<class_RenderingServer_method_force_draw>` **(** :ref:`bool<class_bool>` swap_buffers=true, :ref:`float<class_float>` frame_step=0.0 **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`force_sync<class_RenderingServer_method_force_sync>` **(** **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
@@ -725,8 +727,6 @@ Methods
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`reflection_probe_set_enable_shadows<class_RenderingServer_method_reflection_probe_set_enable_shadows>` **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                                             | :ref:`reflection_probe_set_extents<class_RenderingServer_method_reflection_probe_set_extents>` **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` extents **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
-   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`reflection_probe_set_intensity<class_RenderingServer_method_reflection_probe_set_intensity>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` intensity **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`reflection_probe_set_max_distance<class_RenderingServer_method_reflection_probe_set_max_distance>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` distance **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
@@ -737,6 +737,8 @@ Methods
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`reflection_probe_set_resolution<class_RenderingServer_method_reflection_probe_set_resolution>` **(** :ref:`RID<class_RID>` probe, :ref:`int<class_int>` resolution **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                                                             | :ref:`reflection_probe_set_size<class_RenderingServer_method_reflection_probe_set_size>` **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` size **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
+   +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`reflection_probe_set_update_mode<class_RenderingServer_method_reflection_probe_set_update_mode>` **(** :ref:`RID<class_RID>` probe, :ref:`ReflectionProbeUpdateMode<enum_RenderingServer_ReflectionProbeUpdateMode>` mode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                              |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`request_frame_drawn_callback<class_RenderingServer_method_request_frame_drawn_callback>` **(** :ref:`Callable<class_Callable>` callable **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
@@ -879,7 +881,7 @@ Methods
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`viewport_set_disable_3d<class_RenderingServer_method_viewport_set_disable_3d>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disable **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                                                             | :ref:`viewport_set_disable_environment<class_RenderingServer_method_viewport_set_disable_environment>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disabled **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
+   | void                                                                             | :ref:`viewport_set_environment_mode<class_RenderingServer_method_viewport_set_environment_mode>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` mode **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                                                             | :ref:`viewport_set_fsr_sharpness<class_RenderingServer_method_viewport_set_fsr_sharpness>` **(** :ref:`RID<class_RID>` viewport, :ref:`float<class_float>` sharpness **)**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
    +----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -2620,7 +2622,7 @@ enum **FogVolumeShape**:
 
 :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` **FOG_VOLUME_SHAPE_CONE** = ``1``
 
-:ref:`FogVolume<class_FogVolume>` will be shaped like a cone pointing upwards (in local coordinates). The cone's angle is set automatically to fill the extents. The cone will be adjusted to fit within the extents. Rotate the :ref:`FogVolume<class_FogVolume>` node to reorient the cone. Non-uniform scaling via extents is not supported (scale the :ref:`FogVolume<class_FogVolume>` node instead).
+:ref:`FogVolume<class_FogVolume>` will be shaped like a cone pointing upwards (in local coordinates). The cone's angle is set automatically to fill the size. The cone will be adjusted to fit within the size. Rotate the :ref:`FogVolume<class_FogVolume>` node to reorient the cone. Non-uniform scaling via size is not supported (scale the :ref:`FogVolume<class_FogVolume>` node instead).
 
 .. _class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER:
 
@@ -2628,7 +2630,7 @@ enum **FogVolumeShape**:
 
 :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` **FOG_VOLUME_SHAPE_CYLINDER** = ``2``
 
-:ref:`FogVolume<class_FogVolume>` will be shaped like an upright cylinder (in local coordinates). Rotate the :ref:`FogVolume<class_FogVolume>` node to reorient the cylinder. The cylinder will be adjusted to fit within the extents. Non-uniform scaling via extents is not supported (scale the :ref:`FogVolume<class_FogVolume>` node instead).
+:ref:`FogVolume<class_FogVolume>` will be shaped like an upright cylinder (in local coordinates). Rotate the :ref:`FogVolume<class_FogVolume>` node to reorient the cylinder. The cylinder will be adjusted to fit within the size. Non-uniform scaling via size is not supported (scale the :ref:`FogVolume<class_FogVolume>` node instead).
 
 .. _class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX:
 
@@ -2776,6 +2778,48 @@ The viewport is cleared once, then the clear mode is set to :ref:`VIEWPORT_CLEAR
 
 ----
 
+.. _enum_RenderingServer_ViewportEnvironmentMode:
+
+.. rst-class:: classref-enumeration
+
+enum **ViewportEnvironmentMode**:
+
+.. _class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_DISABLED:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` **VIEWPORT_ENVIRONMENT_DISABLED** = ``0``
+
+Disable rendering of 3D environment over 2D canvas.
+
+.. _class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_ENABLED:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` **VIEWPORT_ENVIRONMENT_ENABLED** = ``1``
+
+Enable rendering of 3D environment over 2D canvas.
+
+.. _class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_INHERIT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` **VIEWPORT_ENVIRONMENT_INHERIT** = ``2``
+
+Inherit enable/disable value from parent. If topmost parent is also set to inherit, then this has the same behavior as :ref:`VIEWPORT_ENVIRONMENT_ENABLED<class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_ENABLED>`.
+
+.. _class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_MAX:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` **VIEWPORT_ENVIRONMENT_MAX** = ``3``
+
+Max value of :ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` enum.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _enum_RenderingServer_ViewportSDFOversize:
 
 .. rst-class:: classref-enumeration
@@ -4364,7 +4408,7 @@ enum **BakeChannels**:
 
 :ref:`BakeChannels<enum_RenderingServer_BakeChannels>` **BAKE_CHANNEL_ALBEDO_ALPHA** = ``0``
 
-
+Index of :ref:`Image<class_Image>` in array of :ref:`Image<class_Image>`\ s returned by :ref:`bake_render_uv2<class_RenderingServer_method_bake_render_uv2>`. Image uses :ref:`Image.FORMAT_RGBA8<class_Image_constant_FORMAT_RGBA8>` and contains albedo color in the ``.rgb`` channels and alpha in the ``.a`` channel.
 
 .. _class_RenderingServer_constant_BAKE_CHANNEL_NORMAL:
 
@@ -4372,7 +4416,7 @@ enum **BakeChannels**:
 
 :ref:`BakeChannels<enum_RenderingServer_BakeChannels>` **BAKE_CHANNEL_NORMAL** = ``1``
 
-
+Index of :ref:`Image<class_Image>` in array of :ref:`Image<class_Image>`\ s returned by :ref:`bake_render_uv2<class_RenderingServer_method_bake_render_uv2>`. Image uses :ref:`Image.FORMAT_RGBA8<class_Image_constant_FORMAT_RGBA8>` and contains the per-pixel normal of the object in the ``.rgb`` channels and nothing in the ``.a`` channel. The per-pixel normal is encoded as ``normal * 0.5 + 0.5``.
 
 .. _class_RenderingServer_constant_BAKE_CHANNEL_ORM:
 
@@ -4380,7 +4424,7 @@ enum **BakeChannels**:
 
 :ref:`BakeChannels<enum_RenderingServer_BakeChannels>` **BAKE_CHANNEL_ORM** = ``2``
 
-
+Index of :ref:`Image<class_Image>` in array of :ref:`Image<class_Image>`\ s returned by :ref:`bake_render_uv2<class_RenderingServer_method_bake_render_uv2>`. Image uses :ref:`Image.FORMAT_RGBA8<class_Image_constant_FORMAT_RGBA8>` and contains ambient occlusion (from material and decals only) in the ``.r`` channel, roughness in the ``.g`` channel, metallic in the ``.b`` channel and sub surface scattering amount in the ``.a`` channel.
 
 .. _class_RenderingServer_constant_BAKE_CHANNEL_EMISSION:
 
@@ -4388,7 +4432,7 @@ enum **BakeChannels**:
 
 :ref:`BakeChannels<enum_RenderingServer_BakeChannels>` **BAKE_CHANNEL_EMISSION** = ``3``
 
-
+Index of :ref:`Image<class_Image>` in array of :ref:`Image<class_Image>`\ s returned by :ref:`bake_render_uv2<class_RenderingServer_method_bake_render_uv2>`. Image uses :ref:`Image.FORMAT_RGBAH<class_Image_constant_FORMAT_RGBAH>` and contains emission color in the ``.rgb`` channels and nothing in the ``.a`` channel.
 
 .. rst-class:: classref-item-separator
 
@@ -5252,9 +5296,7 @@ Method Descriptions
 
 :ref:`Image[]<class_Image>` **bake_render_uv2** **(** :ref:`RID<class_RID>` base, :ref:`RID[]<class_RID>` material_overrides, :ref:`Vector2i<class_Vector2i>` image_size **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Bakes the material data of the Mesh passed in the ``base`` parameter with optional ``material_overrides`` to a set of :ref:`Image<class_Image>`\ s of size ``image_size``. Returns an array of :ref:`Image<class_Image>`\ s containing material properties as specified in :ref:`BakeChannels<enum_RenderingServer_BakeChannels>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5280,9 +5322,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe
 
 void **camera_attributes_set_auto_exposure** **(** :ref:`RID<class_RID>` camera_attributes, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` min_sensitivity, :ref:`float<class_float>` max_sensitivity, :ref:`float<class_float>` speed, :ref:`float<class_float>` scale **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the parameters to use with the auto-exposure effect. These parameters take on the same meaning as their counterparts in :ref:`CameraAttributes<class_CameraAttributes>` and :ref:`CameraAttributesPractical<class_CameraAttributesPractical>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5294,9 +5334,7 @@ void **camera_attributes_set_auto_exposure** **(** :ref:`RID<class_RID>` camera_
 
 void **camera_attributes_set_dof_blur** **(** :ref:`RID<class_RID>` camera_attributes, :ref:`bool<class_bool>` far_enable, :ref:`float<class_float>` far_distance, :ref:`float<class_float>` far_transition, :ref:`bool<class_bool>` near_enable, :ref:`float<class_float>` near_distance, :ref:`float<class_float>` near_transition, :ref:`float<class_float>` amount **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the parameters to use with the DOF blur effect. These parameters take on the same meaning as their counterparts in :ref:`CameraAttributesPractical<class_CameraAttributesPractical>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5308,9 +5346,7 @@ void **camera_attributes_set_dof_blur** **(** :ref:`RID<class_RID>` camera_attri
 
 void **camera_attributes_set_dof_blur_bokeh_shape** **(** :ref:`DOFBokehShape<enum_RenderingServer_DOFBokehShape>` shape **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the shape of the DOF bokeh pattern. Different shapes may be used to achieve artistic effect, or to meet performance targets. For more detail on available options see :ref:`DOFBokehShape<enum_RenderingServer_DOFBokehShape>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5322,9 +5358,7 @@ void **camera_attributes_set_dof_blur_bokeh_shape** **(** :ref:`DOFBokehShape<en
 
 void **camera_attributes_set_dof_blur_quality** **(** :ref:`DOFBlurQuality<enum_RenderingServer_DOFBlurQuality>` quality, :ref:`bool<class_bool>` use_jitter **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the quality level of the DOF blur effect to one of the options in :ref:`DOFBlurQuality<enum_RenderingServer_DOFBlurQuality>`. ``use_jitter`` can be used to jitter samples taken during the blur pass to hide artifacts at the cost of looking more fuzzy.
 
 .. rst-class:: classref-item-separator
 
@@ -5376,9 +5410,7 @@ Once finished with your RID, you will want to free the RID using the RenderingSe
 
 void **camera_set_camera_attributes** **(** :ref:`RID<class_RID>` camera, :ref:`RID<class_RID>` effects **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets the camera_attributes created with :ref:`camera_attributes_create<class_RenderingServer_method_camera_attributes_create>` to the given camera.
 
 .. rst-class:: classref-item-separator
 
@@ -5500,9 +5532,7 @@ Subsequent drawing commands will be ignored unless they fall within the specifie
 
 void **canvas_item_add_circle** **(** :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` pos, :ref:`float<class_float>` radius, :ref:`Color<class_Color>` color **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a circle on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_circle<class_CanvasItem_method_draw_circle>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5514,9 +5544,7 @@ void **canvas_item_add_circle** **(** :ref:`RID<class_RID>` item, :ref:`Vector2<
 
 void **canvas_item_add_clip_ignore** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` ignore **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+If ``ignore`` is ``true``, ignore clipping on items drawn with this canvas item until this is called again with ``ignore`` set to false.
 
 .. rst-class:: classref-item-separator
 
@@ -5528,9 +5556,7 @@ void **canvas_item_add_clip_ignore** **(** :ref:`RID<class_RID>` item, :ref:`boo
 
 void **canvas_item_add_lcd_texture_rect_region** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`RID<class_RID>` texture, :ref:`Rect2<class_Rect2>` src_rect, :ref:`Color<class_Color>` modulate **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+See also :ref:`CanvasItem.draw_lcd_texture_rect_region<class_CanvasItem_method_draw_lcd_texture_rect_region>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5542,9 +5568,7 @@ void **canvas_item_add_lcd_texture_rect_region** **(** :ref:`RID<class_RID>` ite
 
 void **canvas_item_add_line** **(** :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to, :ref:`Color<class_Color>` color, :ref:`float<class_float>` width=-1.0, :ref:`bool<class_bool>` antialiased=false **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a line on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_line<class_CanvasItem_method_draw_line>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5556,9 +5580,7 @@ void **canvas_item_add_line** **(** :ref:`RID<class_RID>` item, :ref:`Vector2<cl
 
 void **canvas_item_add_mesh** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` mesh, :ref:`Transform2D<class_Transform2D>` transform=Transform2D(1, 0, 0, 1, 0, 0), :ref:`Color<class_Color>` modulate=Color(1, 1, 1, 1), :ref:`RID<class_RID>` texture **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a mesh created with :ref:`mesh_create<class_RenderingServer_method_mesh_create>` with given ``transform``, ``modulate`` color, and ``texture``. This is used internally by :ref:`MeshInstance2D<class_MeshInstance2D>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5570,9 +5592,7 @@ void **canvas_item_add_mesh** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_
 
 void **canvas_item_add_msdf_texture_rect_region** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`RID<class_RID>` texture, :ref:`Rect2<class_Rect2>` src_rect, :ref:`Color<class_Color>` modulate=Color(1, 1, 1, 1), :ref:`int<class_int>` outline_size=0, :ref:`float<class_float>` px_range=1.0, :ref:`float<class_float>` scale=1.0 **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+See also :ref:`CanvasItem.draw_msdf_texture_rect_region<class_CanvasItem_method_draw_msdf_texture_rect_region>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5584,9 +5604,7 @@ void **canvas_item_add_msdf_texture_rect_region** **(** :ref:`RID<class_RID>` it
 
 void **canvas_item_add_multimesh** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` mesh, :ref:`RID<class_RID>` texture **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a 2D :ref:`MultiMesh<class_MultiMesh>` on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_multimesh<class_CanvasItem_method_draw_multimesh>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5598,9 +5616,7 @@ void **canvas_item_add_multimesh** **(** :ref:`RID<class_RID>` item, :ref:`RID<c
 
 void **canvas_item_add_nine_patch** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`Rect2<class_Rect2>` source, :ref:`RID<class_RID>` texture, :ref:`Vector2<class_Vector2>` topleft, :ref:`Vector2<class_Vector2>` bottomright, :ref:`NinePatchAxisMode<enum_RenderingServer_NinePatchAxisMode>` x_axis_mode=0, :ref:`NinePatchAxisMode<enum_RenderingServer_NinePatchAxisMode>` y_axis_mode=0, :ref:`bool<class_bool>` draw_center=true, :ref:`Color<class_Color>` modulate=Color(1, 1, 1, 1) **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a nine-patch rectangle on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5612,9 +5628,7 @@ void **canvas_item_add_nine_patch** **(** :ref:`RID<class_RID>` item, :ref:`Rect
 
 void **canvas_item_add_particles** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` particles, :ref:`RID<class_RID>` texture **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws particles on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5626,9 +5640,7 @@ void **canvas_item_add_particles** **(** :ref:`RID<class_RID>` item, :ref:`RID<c
 
 void **canvas_item_add_polygon** **(** :ref:`RID<class_RID>` item, :ref:`PackedVector2Array<class_PackedVector2Array>` points, :ref:`PackedColorArray<class_PackedColorArray>` colors, :ref:`PackedVector2Array<class_PackedVector2Array>` uvs=PackedVector2Array(), :ref:`RID<class_RID>` texture **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a 2D polygon on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_polygon<class_CanvasItem_method_draw_polygon>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5640,9 +5652,7 @@ void **canvas_item_add_polygon** **(** :ref:`RID<class_RID>` item, :ref:`PackedV
 
 void **canvas_item_add_polyline** **(** :ref:`RID<class_RID>` item, :ref:`PackedVector2Array<class_PackedVector2Array>` points, :ref:`PackedColorArray<class_PackedColorArray>` colors, :ref:`float<class_float>` width=-1.0, :ref:`bool<class_bool>` antialiased=false **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a 2D polyline on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_polyline<class_CanvasItem_method_draw_polyline>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5654,9 +5664,7 @@ void **canvas_item_add_polyline** **(** :ref:`RID<class_RID>` item, :ref:`Packed
 
 void **canvas_item_add_primitive** **(** :ref:`RID<class_RID>` item, :ref:`PackedVector2Array<class_PackedVector2Array>` points, :ref:`PackedColorArray<class_PackedColorArray>` colors, :ref:`PackedVector2Array<class_PackedVector2Array>` uvs, :ref:`RID<class_RID>` texture **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a 2D primitive on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_primitive<class_CanvasItem_method_draw_primitive>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5668,9 +5676,7 @@ void **canvas_item_add_primitive** **(** :ref:`RID<class_RID>` item, :ref:`Packe
 
 void **canvas_item_add_rect** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`Color<class_Color>` color **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Draws a rectangle on the :ref:`CanvasItem<class_CanvasItem>` pointed to by the ``item`` :ref:`RID<class_RID>`. See also :ref:`CanvasItem.draw_rect<class_CanvasItem_method_draw_rect>`.
 
 .. rst-class:: classref-item-separator
 
@@ -5682,9 +5688,7 @@ void **canvas_item_add_rect** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<clas
 
 void **canvas_item_add_set_transform** **(** :ref:`RID<class_RID>` item, :ref:`Transform2D<class_Transform2D>` transform **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Sets a :ref:`Transform2D<class_Transform2D>` that will be used to transform subsequent canvas item commands.
 
 .. rst-class:: classref-item-separator
 
@@ -5750,9 +5754,7 @@ Clears the :ref:`CanvasItem<class_CanvasItem>` and removes all commands in it.
 
 :ref:`RID<class_RID>` **canvas_item_create** **(** **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Creates a new :ref:`CanvasItem<class_CanvasItem>` instance and returns its :ref:`RID<class_RID>`.
 
 .. rst-class:: classref-item-separator
 
@@ -6166,6 +6168,18 @@ Sets a light occluder's :ref:`Transform2D<class_Transform2D>`.
 
 ----
 
+.. _class_RenderingServer_method_canvas_light_set_blend_mode:
+
+.. rst-class:: classref-method
+
+void **canvas_light_set_blend_mode** **(** :ref:`RID<class_RID>` light, :ref:`CanvasLightBlendMode<enum_RenderingServer_CanvasLightBlendMode>` mode **)**
+
+Sets the blend mode for the given canvas light. See :ref:`CanvasLightBlendMode<enum_RenderingServer_CanvasLightBlendMode>` for options. Equivalent to :ref:`Light2D.blend_mode<class_Light2D_property_blend_mode>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_light_set_color:
 
 .. rst-class:: classref-method
@@ -6614,11 +6628,11 @@ void **decal_set_emission_energy** **(** :ref:`RID<class_RID>` decal, :ref:`floa
 
 ----
 
-.. _class_RenderingServer_method_decal_set_extents:
+.. _class_RenderingServer_method_decal_set_fade:
 
 .. rst-class:: classref-method
 
-void **decal_set_extents** **(** :ref:`RID<class_RID>` decal, :ref:`Vector3<class_Vector3>` extents **)**
+void **decal_set_fade** **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` above, :ref:`float<class_float>` below **)**
 
 .. container:: contribute
 
@@ -6628,11 +6642,11 @@ void **decal_set_extents** **(** :ref:`RID<class_RID>` decal, :ref:`Vector3<clas
 
 ----
 
-.. _class_RenderingServer_method_decal_set_fade:
+.. _class_RenderingServer_method_decal_set_modulate:
 
 .. rst-class:: classref-method
 
-void **decal_set_fade** **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` above, :ref:`float<class_float>` below **)**
+void **decal_set_modulate** **(** :ref:`RID<class_RID>` decal, :ref:`Color<class_Color>` color **)**
 
 .. container:: contribute
 
@@ -6642,11 +6656,11 @@ void **decal_set_fade** **(** :ref:`RID<class_RID>` decal, :ref:`float<class_flo
 
 ----
 
-.. _class_RenderingServer_method_decal_set_modulate:
+.. _class_RenderingServer_method_decal_set_normal_fade:
 
 .. rst-class:: classref-method
 
-void **decal_set_modulate** **(** :ref:`RID<class_RID>` decal, :ref:`Color<class_Color>` color **)**
+void **decal_set_normal_fade** **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` fade **)**
 
 .. container:: contribute
 
@@ -6656,11 +6670,11 @@ void **decal_set_modulate** **(** :ref:`RID<class_RID>` decal, :ref:`Color<class
 
 ----
 
-.. _class_RenderingServer_method_decal_set_normal_fade:
+.. _class_RenderingServer_method_decal_set_size:
 
 .. rst-class:: classref-method
 
-void **decal_set_normal_fade** **(** :ref:`RID<class_RID>` decal, :ref:`float<class_float>` fade **)**
+void **decal_set_size** **(** :ref:`RID<class_RID>` decal, :ref:`Vector3<class_Vector3>` size **)**
 
 .. container:: contribute
 
@@ -7102,37 +7116,37 @@ Creates a new fog volume and allocates an RID.
 
 ----
 
-.. _class_RenderingServer_method_fog_volume_set_extents:
+.. _class_RenderingServer_method_fog_volume_set_material:
 
 .. rst-class:: classref-method
 
-void **fog_volume_set_extents** **(** :ref:`RID<class_RID>` fog_volume, :ref:`Vector3<class_Vector3>` extents **)**
+void **fog_volume_set_material** **(** :ref:`RID<class_RID>` fog_volume, :ref:`RID<class_RID>` material **)**
 
-Sets the size of the fog volume when shape is :ref:`FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>` or :ref:`FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>`.
+Sets the :ref:`Material<class_Material>` of the fog volume. Can be either a :ref:`FogMaterial<class_FogMaterial>` or a custom :ref:`ShaderMaterial<class_ShaderMaterial>`.
 
 .. rst-class:: classref-item-separator
 
 ----
 
-.. _class_RenderingServer_method_fog_volume_set_material:
+.. _class_RenderingServer_method_fog_volume_set_shape:
 
 .. rst-class:: classref-method
 
-void **fog_volume_set_material** **(** :ref:`RID<class_RID>` fog_volume, :ref:`RID<class_RID>` material **)**
+void **fog_volume_set_shape** **(** :ref:`RID<class_RID>` fog_volume, :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` shape **)**
 
-Sets the :ref:`Material<class_Material>` of the fog volume. Can be either a :ref:`FogMaterial<class_FogMaterial>` or a custom :ref:`ShaderMaterial<class_ShaderMaterial>`.
+Sets the shape of the fog volume to either :ref:`FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>`, :ref:`FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>` or :ref:`FOG_VOLUME_SHAPE_WORLD<class_RenderingServer_constant_FOG_VOLUME_SHAPE_WORLD>`.
 
 .. rst-class:: classref-item-separator
 
 ----
 
-.. _class_RenderingServer_method_fog_volume_set_shape:
+.. _class_RenderingServer_method_fog_volume_set_size:
 
 .. rst-class:: classref-method
 
-void **fog_volume_set_shape** **(** :ref:`RID<class_RID>` fog_volume, :ref:`FogVolumeShape<enum_RenderingServer_FogVolumeShape>` shape **)**
+void **fog_volume_set_size** **(** :ref:`RID<class_RID>` fog_volume, :ref:`Vector3<class_Vector3>` size **)**
 
-Sets the shape of the fog volume to either :ref:`FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>`, :ref:`FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>` or :ref:`FOG_VOLUME_SHAPE_WORLD<class_RenderingServer_constant_FOG_VOLUME_SHAPE_WORLD>`.
+Sets the size of the fog volume when shape is :ref:`FOG_VOLUME_SHAPE_ELLIPSOID<class_RenderingServer_constant_FOG_VOLUME_SHAPE_ELLIPSOID>`, :ref:`FOG_VOLUME_SHAPE_CONE<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CONE>`, :ref:`FOG_VOLUME_SHAPE_CYLINDER<class_RenderingServer_constant_FOG_VOLUME_SHAPE_CYLINDER>` or :ref:`FOG_VOLUME_SHAPE_BOX<class_RenderingServer_constant_FOG_VOLUME_SHAPE_BOX>`.
 
 .. rst-class:: classref-item-separator
 
@@ -8078,9 +8092,7 @@ If ``true``, light will cast shadows. Equivalent to :ref:`Light3D.shadow_enabled
 
 :ref:`RID<class_RID>` **lightmap_create** **(** **)**
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Creates a new :ref:`LightmapGI<class_LightmapGI>` instance.
 
 .. rst-class:: classref-item-separator
 
@@ -9564,18 +9576,6 @@ If ``true``, computes shadows in the reflection probe. This makes the reflection
 
 ----
 
-.. _class_RenderingServer_method_reflection_probe_set_extents:
-
-.. rst-class:: classref-method
-
-void **reflection_probe_set_extents** **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` extents **)**
-
-Sets the size of the area that the reflection probe will capture. Equivalent to :ref:`ReflectionProbe.extents<class_ReflectionProbe_property_extents>`.
-
-.. rst-class:: classref-item-separator
-
-----
-
 .. _class_RenderingServer_method_reflection_probe_set_intensity:
 
 .. rst-class:: classref-method
@@ -9640,6 +9640,18 @@ void **reflection_probe_set_resolution** **(** :ref:`RID<class_RID>` probe, :ref
 
 ----
 
+.. _class_RenderingServer_method_reflection_probe_set_size:
+
+.. rst-class:: classref-method
+
+void **reflection_probe_set_size** **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` size **)**
+
+Sets the size of the area that the reflection probe will capture. Equivalent to :ref:`ReflectionProbe.size<class_ReflectionProbe_property_size>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_reflection_probe_set_update_mode:
 
 .. rst-class:: classref-method
@@ -10603,13 +10615,13 @@ void **viewport_set_disable_3d** **(** :ref:`RID<class_RID>` viewport, :ref:`boo
 
 ----
 
-.. _class_RenderingServer_method_viewport_set_disable_environment:
+.. _class_RenderingServer_method_viewport_set_environment_mode:
 
 .. rst-class:: classref-method
 
-void **viewport_set_disable_environment** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disabled **)**
+void **viewport_set_environment_mode** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportEnvironmentMode<enum_RenderingServer_ViewportEnvironmentMode>` mode **)**
 
-If ``true``, rendering of a viewport's environment is disabled.
+Sets the viewport's environment mode which allows enabling or disabling rendering of 3D environment over 2D canvas. When disabled, 2D will not be affected by the environment. When enabled, 2D will be affected by the environment if the environment background mode is :ref:`ENV_BG_CANVAS<class_RenderingServer_constant_ENV_BG_CANVAS>`. The default behavior is to inherit the setting from the viewport's parent. If the topmost parent is also set to :ref:`VIEWPORT_ENVIRONMENT_INHERIT<class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_INHERIT>`, then the behavior will be the same as if it was set to :ref:`VIEWPORT_ENVIRONMENT_ENABLED<class_RenderingServer_constant_VIEWPORT_ENVIRONMENT_ENABLED>`.
 
 .. rst-class:: classref-item-separator
 

文件差异内容过多而无法显示
+ 0 - 0
classes/class_resource.rst


+ 2 - 2
classes/class_resourceformatloader.rst

@@ -54,7 +54,7 @@ Methods
    +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`_recognize_path<class_ResourceFormatLoader_method__recognize_path>` **(** :ref:`String<class_String>` path, :ref:`StringName<class_StringName>` type **)** |virtual| |const|                                                         |
    +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_rename_dependencies<class_ResourceFormatLoader_method__rename_dependencies>` **(** :ref:`String<class_String>` path, :ref:`Dictionary<class_Dictionary>` renames **)** |virtual| |const|                                            |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_rename_dependencies<class_ResourceFormatLoader_method__rename_dependencies>` **(** :ref:`String<class_String>` path, :ref:`Dictionary<class_Dictionary>` renames **)** |virtual| |const|                                            |
    +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
@@ -245,7 +245,7 @@ If it is not implemented, the default behavior returns whether the path's extens
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_rename_dependencies** **(** :ref:`String<class_String>` path, :ref:`Dictionary<class_Dictionary>` renames **)** |virtual| |const|
+:ref:`Error<enum_@GlobalScope_Error>` **_rename_dependencies** **(** :ref:`String<class_String>` path, :ref:`Dictionary<class_Dictionary>` renames **)** |virtual| |const|
 
 If implemented, renames dependencies within the given resource and saves it. ``renames`` is a dictionary ``{ String => String }`` mapping old dependency paths to new paths.
 

+ 2 - 2
classes/class_resourceformatsaver.rst

@@ -38,7 +38,7 @@ Methods
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`_recognize_path<class_ResourceFormatSaver_method__recognize_path>` **(** :ref:`Resource<class_Resource>` resource, :ref:`String<class_String>` path **)** |virtual| |const|  |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`int<class_int>`                             | :ref:`_save<class_ResourceFormatSaver_method__save>` **(** :ref:`Resource<class_Resource>` resource, :ref:`String<class_String>` path, :ref:`int<class_int>` flags **)** |virtual| |
+   | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_save<class_ResourceFormatSaver_method__save>` **(** :ref:`Resource<class_Resource>` resource, :ref:`String<class_String>` path, :ref:`int<class_int>` flags **)** |virtual| |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Error<enum_@GlobalScope_Error>`             | :ref:`_set_uid<class_ResourceFormatSaver_method__set_uid>` **(** :ref:`String<class_String>` path, :ref:`int<class_int>` uid **)** |virtual|                                       |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -94,7 +94,7 @@ If this method is not implemented, the default behavior returns whether the path
 
 .. rst-class:: classref-method
 
-:ref:`int<class_int>` **_save** **(** :ref:`Resource<class_Resource>` resource, :ref:`String<class_String>` path, :ref:`int<class_int>` flags **)** |virtual|
+:ref:`Error<enum_@GlobalScope_Error>` **_save** **(** :ref:`Resource<class_Resource>` resource, :ref:`String<class_String>` path, :ref:`int<class_int>` flags **)** |virtual|
 
 Saves the given resource object to a file at the target ``path``. ``flags`` is a bitmask composed with :ref:`SaverFlags<enum_ResourceSaver_SaverFlags>` constants.
 

+ 1 - 1
classes/class_richtexteffect.rst

@@ -34,7 +34,7 @@ A custom effect for use with :ref:`RichTextLabel<class_RichTextLabel>`.
  .. code-tab:: csharp
 
     // The RichTextEffect will be usable like this: `[example]Some text[/example]`
-    public string bbcode = "example";
+    string bbcode = "example";
 
 
 

+ 93 - 0
classes/class_richtextlabel.rst

@@ -157,6 +157,8 @@ Methods
    +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`             | :ref:`is_ready<class_RichTextLabel_method_is_ready>` **(** **)** |const|                                                                                                                                                                                                                                                                                                               |
    +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                | :ref:`menu_option<class_RichTextLabel_method_menu_option>` **(** :ref:`int<class_int>` option **)**                                                                                                                                                                                                                                                                                    |
+   +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`newline<class_RichTextLabel_method_newline>` **(** **)**                                                                                                                                                                                                                                                                                                                         |
    +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | void                                | :ref:`parse_bbcode<class_RichTextLabel_method_parse_bbcode>` **(** :ref:`String<class_String>` bbcode **)**                                                                                                                                                                                                                                                                            |
@@ -626,6 +628,40 @@ enum **ItemType**:
 
 
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _enum_RichTextLabel_MenuItems:
+
+.. rst-class:: classref-enumeration
+
+enum **MenuItems**:
+
+.. _class_RichTextLabel_constant_MENU_COPY:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`MenuItems<enum_RichTextLabel_MenuItems>` **MENU_COPY** = ``0``
+
+Copies the selected text.
+
+.. _class_RichTextLabel_constant_MENU_SELECT_ALL:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`MenuItems<enum_RichTextLabel_MenuItems>` **MENU_SELECT_ALL** = ``1``
+
+Selects the whole **RichTextLabel** text.
+
+.. _class_RichTextLabel_constant_MENU_MAX:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`MenuItems<enum_RichTextLabel_MenuItems>` **MENU_MAX** = ``2``
+
+Represents the size of the :ref:`MenuItems<enum_RichTextLabel_MenuItems>` enum.
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -1199,6 +1235,51 @@ Returns the vertical offset of the line found at the provided index.
 
 Returns the :ref:`PopupMenu<class_PopupMenu>` of this **RichTextLabel**. By default, this menu is displayed when right-clicking on the **RichTextLabel**.
 
+You can add custom menu items or remove standard ones. Make sure your IDs don't conflict with the standard ones (see :ref:`MenuItems<enum_RichTextLabel_MenuItems>`). For example:
+
+
+.. tabs::
+
+ .. code-tab:: gdscript
+
+    func _ready():
+        var menu = get_menu()
+        # Remove "Select All" item.
+        menu.remove_item(MENU_SELECT_ALL)
+        # Add custom items.
+        menu.add_separator()
+        menu.add_item("Duplicate Text", MENU_MAX + 1)
+        # Connect callback.
+        menu.id_pressed.connect(_on_item_pressed)
+    
+    func _on_item_pressed(id):
+        if id == MENU_MAX + 1:
+            add_text("\n" + get_parsed_text())
+
+ .. code-tab:: csharp
+
+    public override void _Ready()
+    {
+        var menu = GetMenu();
+        // Remove "Select All" item.
+        menu.RemoveItem(RichTextLabel.MenuItems.SelectAll);
+        // Add custom items.
+        menu.AddSeparator();
+        menu.AddItem("Duplicate Text", RichTextLabel.MenuItems.Max + 1);
+        // Add event handler.
+        menu.IdPressed += OnItemPressed;
+    }
+    
+    public void OnItemPressed(int id)
+    {
+        if (id == TextEdit.MenuItems.Max + 1)
+        {
+            AddText("\n" + GetParsedText());
+        }
+    }
+
+
+
 \ **Warning:** This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their :ref:`Window.visible<class_Window_property_visible>` property.
 
 .. rst-class:: classref-item-separator
@@ -1369,6 +1450,18 @@ If :ref:`threaded<class_RichTextLabel_property_threaded>` is enabled, returns ``
 
 ----
 
+.. _class_RichTextLabel_method_menu_option:
+
+.. rst-class:: classref-method
+
+void **menu_option** **(** :ref:`int<class_int>` option **)**
+
+Executes a given action as defined in the :ref:`MenuItems<enum_RichTextLabel_MenuItems>` enum.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RichTextLabel_method_newline:
 
 .. rst-class:: classref-method

+ 2 - 2
classes/class_scenetree.rst

@@ -560,10 +560,10 @@ Commonly used to create a one-shot delay timer as in the following example:
 
  .. code-tab:: csharp
 
-    public async void SomeFunction()
+    public async Task SomeFunction()
     {
         GD.Print("start");
-        await ToSignal(GetTree().CreateTimer(1.0f), "timeout");
+        await ToSignal(GetTree().CreateTimer(1.0f), SceneTreeTimer.SignalName.Timeout);
         GD.Print("end");
     }
 

+ 2 - 2
classes/class_scenetreetimer.rst

@@ -35,10 +35,10 @@ As opposed to :ref:`Timer<class_Timer>`, it does not require the instantiation o
 
  .. code-tab:: csharp
 
-    public async void SomeFunction()
+    public async Task SomeFunction()
     {
         GD.Print("Timer started.");
-        await ToSignal(GetTree().CreateTimer(1.0f), "timeout");
+        await ToSignal(GetTree().CreateTimer(1.0f), SceneTreeTimer.SignalName.Timeout);
         GD.Print("Timer ended.");
     }
 

+ 9 - 9
classes/class_semaphore.rst

@@ -36,13 +36,13 @@ Methods
 .. table::
    :widths: auto
 
-   +---------------------------------------+--------------------------------------------------------------+
-   | void                                  | :ref:`post<class_Semaphore_method_post>` **(** **)**         |
-   +---------------------------------------+--------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`try_wait<class_Semaphore_method_try_wait>` **(** **)** |
-   +---------------------------------------+--------------------------------------------------------------+
-   | void                                  | :ref:`wait<class_Semaphore_method_wait>` **(** **)**         |
-   +---------------------------------------+--------------------------------------------------------------+
+   +-------------------------+--------------------------------------------------------------+
+   | void                    | :ref:`post<class_Semaphore_method_post>` **(** **)**         |
+   +-------------------------+--------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`try_wait<class_Semaphore_method_try_wait>` **(** **)** |
+   +-------------------------+--------------------------------------------------------------+
+   | void                    | :ref:`wait<class_Semaphore_method_wait>` **(** **)**         |
+   +-------------------------+--------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -69,9 +69,9 @@ Lowers the **Semaphore**, allowing one more thread in.
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **try_wait** **(** **)**
+:ref:`bool<class_bool>` **try_wait** **(** **)**
 
-Like :ref:`wait<class_Semaphore_method_wait>`, but won't block, so if the value is zero, fails immediately and returns :ref:`@GlobalScope.ERR_BUSY<class_@GlobalScope_constant_ERR_BUSY>`. If non-zero, it returns :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` to report success.
+Like :ref:`wait<class_Semaphore_method_wait>`, but won't block, so if the value is zero, fails immediately and returns ``false``. If non-zero, it returns ``true`` to report success.
 
 .. rst-class:: classref-item-separator
 

+ 7 - 1
classes/class_signal.rst

@@ -209,7 +209,13 @@ Emits this signal. All :ref:`Callable<class_Callable>`\ s connected to this sign
 
 :ref:`Array<class_Array>` **get_connections** **(** **)** |const|
 
-Returns the list of :ref:`Callable<class_Callable>`\ s connected to this signal.
+Returns an :ref:`Array<class_Array>` of connections for this signal. Each connection is represented as a :ref:`Dictionary<class_Dictionary>` that contains three entries:
+
+- ``signal`` is a reference to this signal;
+
+- ``callable`` is a reference to the connected :ref:`Callable<class_Callable>`;
+
+- ``flags`` is a combination of :ref:`ConnectFlags<enum_Object_ConnectFlags>`.
 
 .. rst-class:: classref-item-separator
 

+ 2 - 0
classes/class_spotlight3d.rst

@@ -21,6 +21,8 @@ Description
 
 A Spotlight is a type of :ref:`Light3D<class_Light3D>` node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance. This attenuation can be configured by changing the energy, radius and attenuation parameters of :ref:`Light3D<class_Light3D>`.
 
+\ **Note:** When using the Mobile or Compatibility rendering methods, spot lights will only correctly affect meshes whose visibility AABB intersects with the light's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, :ref:`GeometryInstance3D.extra_cull_margin<class_GeometryInstance3D_property_extra_cull_margin>` must be increased on the mesh. Otherwise, the light may not be visible on the mesh.
+
 .. rst-class:: classref-introduction-group
 
 Tutorials

+ 3 - 3
classes/class_sprite2d.rst

@@ -345,11 +345,11 @@ Returns a :ref:`Rect2<class_Rect2>` representing the Sprite2D's boundary in loca
 
  .. code-tab:: csharp
 
-    public override void _Input(InputEvent inputEvent)
+    public override void _Input(InputEvent @event)
     {
-        if (inputEvent is InputEventMouseButton inputEventMouse)
+        if (@event is InputEventMouseButton inputEventMouse)
         {
-            if (inputEventMouse.Pressed && inputEventMouse.ButtonIndex == (int)ButtonList.Left)
+            if (inputEventMouse.Pressed && inputEventMouse.ButtonIndex == MouseButton.Left)
             {
                 if (GetRect().HasPoint(ToLocal(inputEventMouse.Position)))
                 {

+ 117 - 33
classes/class_spritebase3d.rst

@@ -31,39 +31,47 @@ Properties
 .. table::
    :widths: auto
 
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`AlphaCutMode<enum_SpriteBase3D_AlphaCutMode>`     | :ref:`alpha_cut<class_SpriteBase3D_property_alpha_cut>`             | ``0``                 |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | Vector3.Axis                                            | :ref:`axis<class_SpriteBase3D_property_axis>`                       | ``2``                 |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>` | :ref:`billboard<class_SpriteBase3D_property_billboard>`             | ``0``                 |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`centered<class_SpriteBase3D_property_centered>`               | ``true``              |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`double_sided<class_SpriteBase3D_property_double_sided>`       | ``true``              |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`fixed_size<class_SpriteBase3D_property_fixed_size>`           | ``false``             |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`flip_h<class_SpriteBase3D_property_flip_h>`                   | ``false``             |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`flip_v<class_SpriteBase3D_property_flip_v>`                   | ``false``             |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`Color<class_Color>`                               | :ref:`modulate<class_SpriteBase3D_property_modulate>`               | ``Color(1, 1, 1, 1)`` |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`no_depth_test<class_SpriteBase3D_property_no_depth_test>`     | ``false``             |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`Vector2<class_Vector2>`                           | :ref:`offset<class_SpriteBase3D_property_offset>`                   | ``Vector2(0, 0)``     |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`float<class_float>`                               | :ref:`pixel_size<class_SpriteBase3D_property_pixel_size>`           | ``0.01``              |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`int<class_int>`                                   | :ref:`render_priority<class_SpriteBase3D_property_render_priority>` | ``0``                 |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`shaded<class_SpriteBase3D_property_shaded>`                   | ``false``             |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>` | :ref:`texture_filter<class_SpriteBase3D_property_texture_filter>`   | ``3``                 |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
-   | :ref:`bool<class_bool>`                                 | :ref:`transparent<class_SpriteBase3D_property_transparent>`         | ``true``              |
-   +---------------------------------------------------------+---------------------------------------------------------------------+-----------------------+
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                       | :ref:`alpha_antialiasing_edge<class_SpriteBase3D_property_alpha_antialiasing_edge>` | ``0.0``               |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` | :ref:`alpha_antialiasing_mode<class_SpriteBase3D_property_alpha_antialiasing_mode>` | ``0``                 |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`AlphaCutMode<enum_SpriteBase3D_AlphaCutMode>`             | :ref:`alpha_cut<class_SpriteBase3D_property_alpha_cut>`                             | ``0``                 |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                       | :ref:`alpha_hash_scale<class_SpriteBase3D_property_alpha_hash_scale>`               | ``1.0``               |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                       | :ref:`alpha_scissor_threshold<class_SpriteBase3D_property_alpha_scissor_threshold>` | ``0.5``               |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | Vector3.Axis                                                    | :ref:`axis<class_SpriteBase3D_property_axis>`                                       | ``2``                 |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`BillboardMode<enum_BaseMaterial3D_BillboardMode>`         | :ref:`billboard<class_SpriteBase3D_property_billboard>`                             | ``0``                 |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`centered<class_SpriteBase3D_property_centered>`                               | ``true``              |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`double_sided<class_SpriteBase3D_property_double_sided>`                       | ``true``              |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`fixed_size<class_SpriteBase3D_property_fixed_size>`                           | ``false``             |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`flip_h<class_SpriteBase3D_property_flip_h>`                                   | ``false``             |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`flip_v<class_SpriteBase3D_property_flip_v>`                                   | ``false``             |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Color<class_Color>`                                       | :ref:`modulate<class_SpriteBase3D_property_modulate>`                               | ``Color(1, 1, 1, 1)`` |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`no_depth_test<class_SpriteBase3D_property_no_depth_test>`                     | ``false``             |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`Vector2<class_Vector2>`                                   | :ref:`offset<class_SpriteBase3D_property_offset>`                                   | ``Vector2(0, 0)``     |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`float<class_float>`                                       | :ref:`pixel_size<class_SpriteBase3D_property_pixel_size>`                           | ``0.01``              |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`int<class_int>`                                           | :ref:`render_priority<class_SpriteBase3D_property_render_priority>`                 | ``0``                 |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`shaded<class_SpriteBase3D_property_shaded>`                                   | ``false``             |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`TextureFilter<enum_BaseMaterial3D_TextureFilter>`         | :ref:`texture_filter<class_SpriteBase3D_property_texture_filter>`                   | ``3``                 |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
+   | :ref:`bool<class_bool>`                                         | :ref:`transparent<class_SpriteBase3D_property_transparent>`                         | ``true``              |
+   +-----------------------------------------------------------------+-------------------------------------------------------------------------------------+-----------------------+
 
 .. rst-class:: classref-reftable-group
 
@@ -180,6 +188,14 @@ This mode only allows fully transparent or fully opaque pixels. Harsh edges will
 
 This mode draws fully opaque pixels in the depth prepass. This is slower than :ref:`ALPHA_CUT_DISABLED<class_SpriteBase3D_constant_ALPHA_CUT_DISABLED>` or :ref:`ALPHA_CUT_DISCARD<class_SpriteBase3D_constant_ALPHA_CUT_DISCARD>`, but it allows displaying translucent areas and smooth edges while using proper sorting.
 
+.. _class_SpriteBase3D_constant_ALPHA_CUT_HASH:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`AlphaCutMode<enum_SpriteBase3D_AlphaCutMode>` **ALPHA_CUT_HASH** = ``3``
+
+This mode draws cuts off all values below a spatially-deterministic threshold, the rest will remain opaque.
+
 .. rst-class:: classref-section-separator
 
 ----
@@ -189,6 +205,40 @@ This mode draws fully opaque pixels in the depth prepass. This is slower than :r
 Property Descriptions
 ---------------------
 
+.. _class_SpriteBase3D_property_alpha_antialiasing_edge:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **alpha_antialiasing_edge** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_antialiasing_edge** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_alpha_antialiasing_edge** **(** **)**
+
+Threshold at which antialiasing will be applied on the alpha channel.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_SpriteBase3D_property_alpha_antialiasing_mode:
+
+.. rst-class:: classref-property
+
+:ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **alpha_antialiasing_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_antialiasing** **(** :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` value **)**
+- :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>` **get_alpha_antialiasing** **(** **)**
+
+The type of alpha antialiasing to apply. See :ref:`AlphaAntiAliasing<enum_BaseMaterial3D_AlphaAntiAliasing>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_SpriteBase3D_property_alpha_cut:
 
 .. rst-class:: classref-property
@@ -206,6 +256,40 @@ The alpha cutting mode to use for the sprite. See :ref:`AlphaCutMode<enum_Sprite
 
 ----
 
+.. _class_SpriteBase3D_property_alpha_hash_scale:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **alpha_hash_scale** = ``1.0``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_hash_scale** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_alpha_hash_scale** **(** **)**
+
+The hashing scale for Alpha Hash. Recommended values between ``0`` and ``2``.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_SpriteBase3D_property_alpha_scissor_threshold:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **alpha_scissor_threshold** = ``0.5``
+
+.. rst-class:: classref-property-setget
+
+- void **set_alpha_scissor_threshold** **(** :ref:`float<class_float>` value **)**
+- :ref:`float<class_float>` **get_alpha_scissor_threshold** **(** **)**
+
+Threshold at which the alpha scissor will discard values.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_SpriteBase3D_property_axis:
 
 .. rst-class:: classref-property

+ 1 - 1
classes/class_streampeer.rst

@@ -524,7 +524,7 @@ Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits unsig
 
  .. code-tab:: csharp
 
-    PutData("Hello World".ToUTF8());
+    PutData("Hello World".ToUtf8());
 
 
 

+ 17 - 55
classes/class_streampeertls.rst

@@ -32,37 +32,25 @@ Tutorials
 
 .. rst-class:: classref-reftable-group
 
-Properties
-----------
-
-.. table::
-   :widths: auto
-
-   +-------------------------+----------------------------------------------------------------------------+----------+
-   | :ref:`bool<class_bool>` | :ref:`blocking_handshake<class_StreamPeerTLS_property_blocking_handshake>` | ``true`` |
-   +-------------------------+----------------------------------------------------------------------------+----------+
-
-.. rst-class:: classref-reftable-group
-
 Methods
 -------
 
 .. table::
    :widths: auto
 
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`    | :ref:`accept_stream<class_StreamPeerTLS_method_accept_stream>` **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`CryptoKey<class_CryptoKey>` private_key, :ref:`X509Certificate<class_X509Certificate>` certificate, :ref:`X509Certificate<class_X509Certificate>` chain=null **)**      |
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Error<enum_@GlobalScope_Error>`    | :ref:`connect_to_stream<class_StreamPeerTLS_method_connect_to_stream>` **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`bool<class_bool>` validate_certs=false, :ref:`String<class_String>` for_hostname="", :ref:`X509Certificate<class_X509Certificate>` valid_certificate=null **)** |
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                     | :ref:`disconnect_from_stream<class_StreamPeerTLS_method_disconnect_from_stream>` **(** **)**                                                                                                                                                                                                   |
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`Status<enum_StreamPeerTLS_Status>` | :ref:`get_status<class_StreamPeerTLS_method_get_status>` **(** **)** |const|                                                                                                                                                                                                                   |
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`StreamPeer<class_StreamPeer>`      | :ref:`get_stream<class_StreamPeerTLS_method_get_stream>` **(** **)** |const|                                                                                                                                                                                                                   |
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | void                                     | :ref:`poll<class_StreamPeerTLS_method_poll>` **(** **)**                                                                                                                                                                                                                                       |
-   +------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`    | :ref:`accept_stream<class_StreamPeerTLS_method_accept_stream>` **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`TLSOptions<class_TLSOptions>` server_options **)**                                                       |
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Error<enum_@GlobalScope_Error>`    | :ref:`connect_to_stream<class_StreamPeerTLS_method_connect_to_stream>` **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`String<class_String>` common_name, :ref:`TLSOptions<class_TLSOptions>` client_options=null **)** |
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                     | :ref:`disconnect_from_stream<class_StreamPeerTLS_method_disconnect_from_stream>` **(** **)**                                                                                                                                    |
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Status<enum_StreamPeerTLS_Status>` | :ref:`get_status<class_StreamPeerTLS_method_get_status>` **(** **)** |const|                                                                                                                                                    |
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`StreamPeer<class_StreamPeer>`      | :ref:`get_stream<class_StreamPeerTLS_method_get_stream>` **(** **)** |const|                                                                                                                                                    |
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | void                                     | :ref:`poll<class_StreamPeerTLS_method_poll>` **(** **)**                                                                                                                                                                        |
+   +------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 .. rst-class:: classref-section-separator
 
@@ -125,30 +113,6 @@ An error status that shows a mismatch in the TLS certificate domain presented by
 
 .. rst-class:: classref-descriptions-group
 
-Property Descriptions
----------------------
-
-.. _class_StreamPeerTLS_property_blocking_handshake:
-
-.. rst-class:: classref-property
-
-:ref:`bool<class_bool>` **blocking_handshake** = ``true``
-
-.. rst-class:: classref-property-setget
-
-- void **set_blocking_handshake_enabled** **(** :ref:`bool<class_bool>` value **)**
-- :ref:`bool<class_bool>` **is_blocking_handshake_enabled** **(** **)**
-
-.. container:: contribute
-
-	There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
-
-.. rst-class:: classref-section-separator
-
-----
-
-.. rst-class:: classref-descriptions-group
-
 Method Descriptions
 -------------------
 
@@ -156,9 +120,9 @@ Method Descriptions
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **accept_stream** **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`CryptoKey<class_CryptoKey>` private_key, :ref:`X509Certificate<class_X509Certificate>` certificate, :ref:`X509Certificate<class_X509Certificate>` chain=null **)**
+:ref:`Error<enum_@GlobalScope_Error>` **accept_stream** **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`TLSOptions<class_TLSOptions>` server_options **)**
 
-Accepts a peer connection as a server using the given ``private_key`` and providing the given ``certificate`` to the client. You can pass the optional ``chain`` parameter to provide additional CA chain information along with the certificate.
+Accepts a peer connection as a server using the given ``server_options``. See :ref:`TLSOptions.server<class_TLSOptions_method_server>`.
 
 .. rst-class:: classref-item-separator
 
@@ -168,11 +132,9 @@ Accepts a peer connection as a server using the given ``private_key`` and provid
 
 .. rst-class:: classref-method
 
-:ref:`Error<enum_@GlobalScope_Error>` **connect_to_stream** **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`bool<class_bool>` validate_certs=false, :ref:`String<class_String>` for_hostname="", :ref:`X509Certificate<class_X509Certificate>` valid_certificate=null **)**
-
-Connects to a peer using an underlying :ref:`StreamPeer<class_StreamPeer>` ``stream``. If ``validate_certs`` is ``true``, **StreamPeerTLS** will validate that the certificate presented by the peer matches the ``for_hostname``.
+:ref:`Error<enum_@GlobalScope_Error>` **connect_to_stream** **(** :ref:`StreamPeer<class_StreamPeer>` stream, :ref:`String<class_String>` common_name, :ref:`TLSOptions<class_TLSOptions>` client_options=null **)**
 
-\ **Note:** Specifying a custom ``valid_certificate`` is not supported in Web exports due to browsers restrictions.
+Connects to a peer using an underlying :ref:`StreamPeer<class_StreamPeer>` ``stream`` and verifying the remote certificate is correctly signed for the given ``common_name``. You can pass the optional ``client_options`` parameter to customize the trusted certification authorities, or disable the common name verification. See :ref:`TLSOptions.client<class_TLSOptions_method_client>` and :ref:`TLSOptions.client_unsafe<class_TLSOptions_method_client_unsafe>`.
 
 .. rst-class:: classref-item-separator
 

+ 1 - 1
classes/class_string.rst

@@ -1142,7 +1142,7 @@ Removes a set of characters defined in ``chars`` from the string's beginning. Se
 
 :ref:`bool<class_bool>` **match** **(** :ref:`String<class_String>` expr **)** |const|
 
-Does a simple expression match, where ``*`` matches zero or more arbitrary characters and ``?`` matches any single character except a period (``.``). An empty string or empty expression always evaluates to ``false``.
+Does a simple expression match (also called "glob" or "globbing"), where ``*`` matches zero or more arbitrary characters and ``?`` matches any single character except a period (``.``). An empty string or empty expression always evaluates to ``false``.
 
 .. rst-class:: classref-item-separator
 

部分文件因为文件数量过多而无法显示