浏览代码

classref: Sync with current master branch (29b3d9e)

Godot Organization 1 年之前
父节点
当前提交
e41630eb7e
共有 36 个文件被更改,包括 1183 次插入204 次删除
  1. 13 1
      classes/class_animationnode.rst
  2. 106 5
      classes/class_animationnodeanimation.rst
  3. 23 0
      classes/class_animationnodeoneshot.rst
  4. 38 17
      classes/class_animationnodestatemachinetransition.rst
  5. 39 9
      classes/class_animationnodetransition.rst
  6. 1 1
      classes/class_audioeffect.rst
  7. 112 0
      classes/class_audioeffecthardlimiter.rst
  8. 2 0
      classes/class_audioeffectlimiter.rst
  9. 1 1
      classes/class_collisionpolygon2d.rst
  10. 91 79
      classes/class_control.rst
  11. 23 7
      classes/class_displayserver.rst
  12. 3 3
      classes/class_dtlsserver.rst
  13. 28 0
      classes/class_editorsettings.rst
  14. 2 2
      classes/class_httpclient.rst
  15. 4 4
      classes/class_httprequest.rst
  16. 18 1
      classes/class_inputevent.rst
  17. 2 2
      classes/class_inputeventmidi.rst
  18. 18 2
      classes/class_nativemenu.rst
  19. 130 3
      classes/class_node.rst
  20. 1 1
      classes/class_object.rst
  21. 36 4
      classes/class_os.rst
  22. 1 1
      classes/class_packetpeerudp.rst
  23. 24 22
      classes/class_parallax2d.rst
  24. 9 7
      classes/class_parallaxlayer.rst
  25. 1 1
      classes/class_pckpacker.rst
  26. 117 7
      classes/class_physicsserver3d.rst
  27. 55 1
      classes/class_projectsettings.rst
  28. 138 0
      classes/class_renderingserver.rst
  29. 14 0
      classes/class_resourceimporterscene.rst
  30. 21 0
      classes/class_scenetree.rst
  31. 36 4
      classes/class_string.rst
  32. 36 4
      classes/class_stringname.rst
  33. 14 0
      classes/class_textedit.rst
  34. 16 2
      classes/class_tiledata.rst
  35. 9 13
      classes/class_viewport.rst
  36. 1 0
      classes/index.rst

+ 13 - 1
classes/class_animationnode.rst

@@ -25,6 +25,16 @@ Base resource for :ref:`AnimationTree<class_AnimationTree>` nodes. In general, i
 
 
 Inherit this when creating animation nodes mainly for use in :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`, otherwise :ref:`AnimationRootNode<class_AnimationRootNode>` should be used instead.
 Inherit this when creating animation nodes mainly for use in :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`, otherwise :ref:`AnimationRootNode<class_AnimationRootNode>` should be used instead.
 
 
+You can access the time information as read-only parameter which is processed and stored in the previous frame for all nodes except :ref:`AnimationNodeOutput<class_AnimationNodeOutput>`.
+
+\ **Note:** If more than two inputs exist in the **AnimationNode**, which time information takes precedence depends on the type of **AnimationNode**.
+
+::
+
+    var current_length = $AnimationTree[parameters/AnimationNodeName/current_length]
+    var current_position = $AnimationTree[parameters/AnimationNodeName/current_position]
+    var current_delta = $AnimationTree[parameters/AnimationNodeName/current_delta]
+
 .. rst-class:: classref-introduction-group
 .. rst-class:: classref-introduction-group
 
 
 Tutorials
 Tutorials
@@ -305,11 +315,13 @@ When inheriting from :ref:`AnimationRootNode<class_AnimationRootNode>`, implemen
 
 
 :ref:`float<class_float>` **_process**\ (\ time\: :ref:`float<class_float>`, seek\: :ref:`bool<class_bool>`, is_external_seeking\: :ref:`bool<class_bool>`, test_only\: :ref:`bool<class_bool>`\ ) |virtual| |const|
 :ref:`float<class_float>` **_process**\ (\ time\: :ref:`float<class_float>`, seek\: :ref:`bool<class_bool>`, is_external_seeking\: :ref:`bool<class_bool>`, test_only\: :ref:`bool<class_bool>`\ ) |virtual| |const|
 
 
+**Deprecated:** Currently this is mostly useless as there is a lack of many APIs to extend AnimationNode by GDScript. It is planned that a more flexible API using structures will be provided in the future.
+
 When inheriting from :ref:`AnimationRootNode<class_AnimationRootNode>`, implement this virtual method to run some code when this animation node is processed. The ``time`` parameter is a relative delta, unless ``seek`` is ``true``, in which case it is absolute.
 When inheriting from :ref:`AnimationRootNode<class_AnimationRootNode>`, implement this virtual method to run some code when this animation node is processed. The ``time`` parameter is a relative delta, unless ``seek`` is ``true``, in which case it is absolute.
 
 
 Here, call the :ref:`blend_input<class_AnimationNode_method_blend_input>`, :ref:`blend_node<class_AnimationNode_method_blend_node>` or :ref:`blend_animation<class_AnimationNode_method_blend_animation>` functions. You can also use :ref:`get_parameter<class_AnimationNode_method_get_parameter>` and :ref:`set_parameter<class_AnimationNode_method_set_parameter>` to modify local memory.
 Here, call the :ref:`blend_input<class_AnimationNode_method_blend_input>`, :ref:`blend_node<class_AnimationNode_method_blend_node>` or :ref:`blend_animation<class_AnimationNode_method_blend_animation>` functions. You can also use :ref:`get_parameter<class_AnimationNode_method_get_parameter>` and :ref:`set_parameter<class_AnimationNode_method_set_parameter>` to modify local memory.
 
 
-This function should return the time left for the current animation to finish (if unsure, pass the value from the main blend being called).
+This function should return the delta.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 106 - 5
classes/class_animationnodeanimation.rst

@@ -40,11 +40,21 @@ Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +-------------------------------------------------------+-------------------------------------------------------------------+---------+
-   | :ref:`StringName<class_StringName>`                   | :ref:`animation<class_AnimationNodeAnimation_property_animation>` | ``&""`` |
-   +-------------------------------------------------------+-------------------------------------------------------------------+---------+
-   | :ref:`PlayMode<enum_AnimationNodeAnimation_PlayMode>` | :ref:`play_mode<class_AnimationNodeAnimation_property_play_mode>` | ``0``   |
-   +-------------------------------------------------------+-------------------------------------------------------------------+---------+
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`StringName<class_StringName>`                   | :ref:`animation<class_AnimationNodeAnimation_property_animation>`                     | ``&""``   |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`LoopMode<enum_Animation_LoopMode>`              | :ref:`loop_mode<class_AnimationNodeAnimation_property_loop_mode>`                     |           |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`PlayMode<enum_AnimationNodeAnimation_PlayMode>` | :ref:`play_mode<class_AnimationNodeAnimation_property_play_mode>`                     | ``0``     |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>`                             | :ref:`start_offset<class_AnimationNodeAnimation_property_start_offset>`               |           |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`                               | :ref:`stretch_time_scale<class_AnimationNodeAnimation_property_stretch_time_scale>`   |           |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>`                             | :ref:`timeline_length<class_AnimationNodeAnimation_property_timeline_length>`         |           |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`                               | :ref:`use_custom_timeline<class_AnimationNodeAnimation_property_use_custom_timeline>` | ``false`` |
+   +-------------------------------------------------------+---------------------------------------------------------------------------------------+-----------+
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
@@ -103,6 +113,23 @@ Animation to use as an output. It is one of the animations provided by :ref:`Ani
 
 
 ----
 ----
 
 
+.. _class_AnimationNodeAnimation_property_loop_mode:
+
+.. rst-class:: classref-property
+
+:ref:`LoopMode<enum_Animation_LoopMode>` **loop_mode**
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_loop_mode**\ (\ value\: :ref:`LoopMode<enum_Animation_LoopMode>`\ )
+- :ref:`LoopMode<enum_Animation_LoopMode>` **get_loop_mode**\ (\ )
+
+If :ref:`use_custom_timeline<class_AnimationNodeAnimation_property_use_custom_timeline>` is ``true``, override the loop settings of the original :ref:`Animation<class_Animation>` resource with the value.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNodeAnimation_property_play_mode:
 .. _class_AnimationNodeAnimation_property_play_mode:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -116,6 +143,80 @@ Animation to use as an output. It is one of the animations provided by :ref:`Ani
 
 
 Determines the playback direction of the animation.
 Determines the playback direction of the animation.
 
 
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AnimationNodeAnimation_property_start_offset:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **start_offset**
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_start_offset**\ (\ value\: :ref:`float<class_float>`\ )
+- :ref:`float<class_float>` **get_start_offset**\ (\ )
+
+If :ref:`use_custom_timeline<class_AnimationNodeAnimation_property_use_custom_timeline>` is ``true``, offset the start position of the animation.
+
+This is useful for adjusting which foot steps first in 3D walking animations.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AnimationNodeAnimation_property_stretch_time_scale:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **stretch_time_scale**
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_stretch_time_scale**\ (\ value\: :ref:`bool<class_bool>`\ )
+- :ref:`bool<class_bool>` **is_stretching_time_scale**\ (\ )
+
+If ``true``, scales the time so that the length specified in :ref:`timeline_length<class_AnimationNodeAnimation_property_timeline_length>` is one cycle.
+
+This is useful for matching the periods of walking and running animations.
+
+If ``false``, the original animation length is respected. If you set the loop to :ref:`loop_mode<class_AnimationNodeAnimation_property_loop_mode>`, the animation will loop in :ref:`timeline_length<class_AnimationNodeAnimation_property_timeline_length>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AnimationNodeAnimation_property_timeline_length:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **timeline_length**
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_timeline_length**\ (\ value\: :ref:`float<class_float>`\ )
+- :ref:`float<class_float>` **get_timeline_length**\ (\ )
+
+If :ref:`use_custom_timeline<class_AnimationNodeAnimation_property_use_custom_timeline>` is ``true``, offset the start position of the animation.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AnimationNodeAnimation_property_use_custom_timeline:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **use_custom_timeline** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_use_custom_timeline**\ (\ value\: :ref:`bool<class_bool>`\ )
+- :ref:`bool<class_bool>` **is_using_custom_timeline**\ (\ )
+
+If ``true``, :ref:`AnimationNode<class_AnimationNode>` provides an animation based on the :ref:`Animation<class_Animation>` resource with some parameters adjusted.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 23 - 0
classes/class_animationnodeoneshot.rst

@@ -96,6 +96,8 @@ Properties
    +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    | :ref:`float<class_float>`                         | :ref:`autorestart_random_delay<class_AnimationNodeOneShot_property_autorestart_random_delay>` | ``0.0``   |
    | :ref:`float<class_float>`                         | :ref:`autorestart_random_delay<class_AnimationNodeOneShot_property_autorestart_random_delay>` | ``0.0``   |
    +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`                           | :ref:`break_loop_at_end<class_AnimationNodeOneShot_property_break_loop_at_end>`               | ``false`` |
+   +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    | :ref:`Curve<class_Curve>`                         | :ref:`fadein_curve<class_AnimationNodeOneShot_property_fadein_curve>`                         |           |
    | :ref:`Curve<class_Curve>`                         | :ref:`fadein_curve<class_AnimationNodeOneShot_property_fadein_curve>`                         |           |
    +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    +---------------------------------------------------+-----------------------------------------------------------------------------------------------+-----------+
    | :ref:`float<class_float>`                         | :ref:`fadein_time<class_AnimationNodeOneShot_property_fadein_time>`                           | ``0.0``   |
    | :ref:`float<class_float>`                         | :ref:`fadein_time<class_AnimationNodeOneShot_property_fadein_time>`                           | ``0.0``   |
@@ -242,6 +244,23 @@ If :ref:`autorestart<class_AnimationNodeOneShot_property_autorestart>` is ``true
 
 
 ----
 ----
 
 
+.. _class_AnimationNodeOneShot_property_break_loop_at_end:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **break_loop_at_end** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_break_loop_at_end**\ (\ value\: :ref:`bool<class_bool>`\ )
+- :ref:`bool<class_bool>` **is_loop_broken_at_end**\ (\ )
+
+If ``true``, breaks the loop at the end of the loop cycle for transition, even if the animation is looping.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNodeOneShot_property_fadein_curve:
 .. _class_AnimationNodeOneShot_property_fadein_curve:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -272,6 +291,8 @@ Determines how cross-fading between animations is eased. If empty, the transitio
 
 
 The fade-in duration. For example, setting this to ``1.0`` for a 5 second length animation will produce a cross-fade that starts at 0 second and ends at 1 second during the animation.
 The fade-in duration. For example, setting this to ``1.0`` for a 5 second length animation will produce a cross-fade that starts at 0 second and ends at 1 second during the animation.
 
 
+\ **Note:** **AnimationNodeOneShot** transitions the current state after the end of the fading. When :ref:`AnimationNodeOutput<class_AnimationNodeOutput>` is considered as the most upstream, so the :ref:`fadein_time<class_AnimationNodeOneShot_property_fadein_time>` is scaled depending on the downstream delta. For example, if this value is set to ``1.0`` and a :ref:`AnimationNodeTimeScale<class_AnimationNodeTimeScale>` with a value of ``2.0`` is chained downstream, the actual processing time will be 0.5 second.
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----
@@ -306,6 +327,8 @@ Determines how cross-fading between animations is eased. If empty, the transitio
 
 
 The fade-out duration. For example, setting this to ``1.0`` for a 5 second length animation will produce a cross-fade that starts at 4 second and ends at 5 second during the animation.
 The fade-out duration. For example, setting this to ``1.0`` for a 5 second length animation will produce a cross-fade that starts at 4 second and ends at 5 second during the animation.
 
 
+\ **Note:** **AnimationNodeOneShot** transitions the current state after the end of the fading. When :ref:`AnimationNodeOutput<class_AnimationNodeOutput>` is considered as the most upstream, so the :ref:`fadeout_time<class_AnimationNodeOneShot_property_fadeout_time>` is scaled depending on the downstream delta. For example, if this value is set to ``1.0`` and an :ref:`AnimationNodeTimeScale<class_AnimationNodeTimeScale>` with a value of ``2.0`` is chained downstream, the actual processing time will be 0.5 second.
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----

+ 38 - 17
classes/class_animationnodestatemachinetransition.rst

@@ -38,23 +38,25 @@ Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`StringName<class_StringName>`                                      | :ref:`advance_condition<class_AnimationNodeStateMachineTransition_property_advance_condition>`   | ``&""``  |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`String<class_String>`                                              | :ref:`advance_expression<class_AnimationNodeStateMachineTransition_property_advance_expression>` | ``""``   |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`AdvanceMode<enum_AnimationNodeStateMachineTransition_AdvanceMode>` | :ref:`advance_mode<class_AnimationNodeStateMachineTransition_property_advance_mode>`             | ``1``    |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`int<class_int>`                                                    | :ref:`priority<class_AnimationNodeStateMachineTransition_property_priority>`                     | ``1``    |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`bool<class_bool>`                                                  | :ref:`reset<class_AnimationNodeStateMachineTransition_property_reset>`                           | ``true`` |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`SwitchMode<enum_AnimationNodeStateMachineTransition_SwitchMode>`   | :ref:`switch_mode<class_AnimationNodeStateMachineTransition_property_switch_mode>`               | ``0``    |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`Curve<class_Curve>`                                                | :ref:`xfade_curve<class_AnimationNodeStateMachineTransition_property_xfade_curve>`               |          |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
-   | :ref:`float<class_float>`                                                | :ref:`xfade_time<class_AnimationNodeStateMachineTransition_property_xfade_time>`                 | ``0.0``  |
-   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+----------+
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`StringName<class_StringName>`                                      | :ref:`advance_condition<class_AnimationNodeStateMachineTransition_property_advance_condition>`   | ``&""``   |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`String<class_String>`                                              | :ref:`advance_expression<class_AnimationNodeStateMachineTransition_property_advance_expression>` | ``""``    |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`AdvanceMode<enum_AnimationNodeStateMachineTransition_AdvanceMode>` | :ref:`advance_mode<class_AnimationNodeStateMachineTransition_property_advance_mode>`             | ``1``     |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`                                                  | :ref:`break_loop_at_end<class_AnimationNodeStateMachineTransition_property_break_loop_at_end>`   | ``false`` |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`int<class_int>`                                                    | :ref:`priority<class_AnimationNodeStateMachineTransition_property_priority>`                     | ``1``     |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`                                                  | :ref:`reset<class_AnimationNodeStateMachineTransition_property_reset>`                           | ``true``  |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`SwitchMode<enum_AnimationNodeStateMachineTransition_SwitchMode>`   | :ref:`switch_mode<class_AnimationNodeStateMachineTransition_property_switch_mode>`               | ``0``     |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`Curve<class_Curve>`                                                | :ref:`xfade_curve<class_AnimationNodeStateMachineTransition_property_xfade_curve>`               |           |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`float<class_float>`                                                | :ref:`xfade_time<class_AnimationNodeStateMachineTransition_property_xfade_time>`                 | ``0.0``   |
+   +--------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+-----------+
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
@@ -219,6 +221,23 @@ Determines whether the transition should disabled, enabled when using :ref:`Anim
 
 
 ----
 ----
 
 
+.. _class_AnimationNodeStateMachineTransition_property_break_loop_at_end:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **break_loop_at_end** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_break_loop_at_end**\ (\ value\: :ref:`bool<class_bool>`\ )
+- :ref:`bool<class_bool>` **is_loop_broken_at_end**\ (\ )
+
+If ``true``, breaks the loop at the end of the loop cycle for transition, even if the animation is looping.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNodeStateMachineTransition_property_priority:
 .. _class_AnimationNodeStateMachineTransition_property_priority:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -300,6 +319,8 @@ Ease curve for better control over cross-fade between this state and the next.
 
 
 The time to cross-fade between this state and the next.
 The time to cross-fade between this state and the next.
 
 
+\ **Note:** :ref:`AnimationNodeStateMachine<class_AnimationNodeStateMachine>` transitions the current state immediately after the start of the fading. The precise remaining time can only be inferred from the main animation. When :ref:`AnimationNodeOutput<class_AnimationNodeOutput>` is considered as the most upstream, so the :ref:`xfade_time<class_AnimationNodeStateMachineTransition_property_xfade_time>` is not scaled depending on the downstream delta. See also :ref:`AnimationNodeOneShot.fadeout_time<class_AnimationNodeOneShot_property_fadeout_time>`.
+
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
 .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`

+ 39 - 9
classes/class_animationnodetransition.rst

@@ -95,15 +95,19 @@ Methods
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>` | :ref:`is_input_reset<class_AnimationNodeTransition_method_is_input_reset>`\ (\ input\: :ref:`int<class_int>`\ ) |const|                                                 |
-   +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | :ref:`bool<class_bool>` | :ref:`is_input_set_as_auto_advance<class_AnimationNodeTransition_method_is_input_set_as_auto_advance>`\ (\ input\: :ref:`int<class_int>`\ ) |const|                     |
-   +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | |void|                  | :ref:`set_input_as_auto_advance<class_AnimationNodeTransition_method_set_input_as_auto_advance>`\ (\ input\: :ref:`int<class_int>`, enable\: :ref:`bool<class_bool>`\ ) |
-   +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-   | |void|                  | :ref:`set_input_reset<class_AnimationNodeTransition_method_set_input_reset>`\ (\ input\: :ref:`int<class_int>`, enable\: :ref:`bool<class_bool>`\ )                     |
-   +-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`is_input_loop_broken_at_end<class_AnimationNodeTransition_method_is_input_loop_broken_at_end>`\ (\ input\: :ref:`int<class_int>`\ ) |const|                           |
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`is_input_reset<class_AnimationNodeTransition_method_is_input_reset>`\ (\ input\: :ref:`int<class_int>`\ ) |const|                                                     |
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>` | :ref:`is_input_set_as_auto_advance<class_AnimationNodeTransition_method_is_input_set_as_auto_advance>`\ (\ input\: :ref:`int<class_int>`\ ) |const|                         |
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                  | :ref:`set_input_as_auto_advance<class_AnimationNodeTransition_method_set_input_as_auto_advance>`\ (\ input\: :ref:`int<class_int>`, enable\: :ref:`bool<class_bool>`\ )     |
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                  | :ref:`set_input_break_loop_at_end<class_AnimationNodeTransition_method_set_input_break_loop_at_end>`\ (\ input\: :ref:`int<class_int>`, enable\: :ref:`bool<class_bool>`\ ) |
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                  | :ref:`set_input_reset<class_AnimationNodeTransition_method_set_input_reset>`\ (\ input\: :ref:`int<class_int>`, enable\: :ref:`bool<class_bool>`\ )                         |
+   +-------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
@@ -178,6 +182,8 @@ Determines how cross-fading between animations is eased. If empty, the transitio
 
 
 Cross-fading time (in seconds) between each animation connected to the inputs.
 Cross-fading time (in seconds) between each animation connected to the inputs.
 
 
+\ **Note:** **AnimationNodeTransition** transitions the current state immediately after the start of the fading. The precise remaining time can only be inferred from the main animation. When :ref:`AnimationNodeOutput<class_AnimationNodeOutput>` is considered as the most upstream, so the :ref:`xfade_time<class_AnimationNodeTransition_property_xfade_time>` is not scaled depending on the downstream delta. See also :ref:`AnimationNodeOneShot.fadeout_time<class_AnimationNodeOneShot_property_fadeout_time>`.
+
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
 ----
 ----
@@ -187,6 +193,18 @@ Cross-fading time (in seconds) between each animation connected to the inputs.
 Method Descriptions
 Method Descriptions
 -------------------
 -------------------
 
 
+.. _class_AnimationNodeTransition_method_is_input_loop_broken_at_end:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_input_loop_broken_at_end**\ (\ input\: :ref:`int<class_int>`\ ) |const|
+
+Returns whether the animation breaks the loop at the end of the loop cycle for transition.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNodeTransition_method_is_input_reset:
 .. _class_AnimationNodeTransition_method_is_input_reset:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -223,6 +241,18 @@ Enables or disables auto-advance for the given ``input`` index. If enabled, stat
 
 
 ----
 ----
 
 
+.. _class_AnimationNodeTransition_method_set_input_break_loop_at_end:
+
+.. rst-class:: classref-method
+
+|void| **set_input_break_loop_at_end**\ (\ input\: :ref:`int<class_int>`, enable\: :ref:`bool<class_bool>`\ )
+
+If ``true``, breaks the loop at the end of the loop cycle for transition, even if the animation is looping.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_AnimationNodeTransition_method_set_input_reset:
 .. _class_AnimationNodeTransition_method_set_input_reset:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 1 - 1
classes/class_audioeffect.rst

@@ -12,7 +12,7 @@ AudioEffect
 
 
 **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
 **Inherits:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
 
 
-**Inherited By:** :ref:`AudioEffectAmplify<class_AudioEffectAmplify>`, :ref:`AudioEffectCapture<class_AudioEffectCapture>`, :ref:`AudioEffectChorus<class_AudioEffectChorus>`, :ref:`AudioEffectCompressor<class_AudioEffectCompressor>`, :ref:`AudioEffectDelay<class_AudioEffectDelay>`, :ref:`AudioEffectDistortion<class_AudioEffectDistortion>`, :ref:`AudioEffectEQ<class_AudioEffectEQ>`, :ref:`AudioEffectFilter<class_AudioEffectFilter>`, :ref:`AudioEffectLimiter<class_AudioEffectLimiter>`, :ref:`AudioEffectPanner<class_AudioEffectPanner>`, :ref:`AudioEffectPhaser<class_AudioEffectPhaser>`, :ref:`AudioEffectPitchShift<class_AudioEffectPitchShift>`, :ref:`AudioEffectRecord<class_AudioEffectRecord>`, :ref:`AudioEffectReverb<class_AudioEffectReverb>`, :ref:`AudioEffectSpectrumAnalyzer<class_AudioEffectSpectrumAnalyzer>`, :ref:`AudioEffectStereoEnhance<class_AudioEffectStereoEnhance>`
+**Inherited By:** :ref:`AudioEffectAmplify<class_AudioEffectAmplify>`, :ref:`AudioEffectCapture<class_AudioEffectCapture>`, :ref:`AudioEffectChorus<class_AudioEffectChorus>`, :ref:`AudioEffectCompressor<class_AudioEffectCompressor>`, :ref:`AudioEffectDelay<class_AudioEffectDelay>`, :ref:`AudioEffectDistortion<class_AudioEffectDistortion>`, :ref:`AudioEffectEQ<class_AudioEffectEQ>`, :ref:`AudioEffectFilter<class_AudioEffectFilter>`, :ref:`AudioEffectHardLimiter<class_AudioEffectHardLimiter>`, :ref:`AudioEffectLimiter<class_AudioEffectLimiter>`, :ref:`AudioEffectPanner<class_AudioEffectPanner>`, :ref:`AudioEffectPhaser<class_AudioEffectPhaser>`, :ref:`AudioEffectPitchShift<class_AudioEffectPitchShift>`, :ref:`AudioEffectRecord<class_AudioEffectRecord>`, :ref:`AudioEffectReverb<class_AudioEffectReverb>`, :ref:`AudioEffectSpectrumAnalyzer<class_AudioEffectSpectrumAnalyzer>`, :ref:`AudioEffectStereoEnhance<class_AudioEffectStereoEnhance>`
 
 
 Base class for audio effect resources.
 Base class for audio effect resources.
 
 

+ 112 - 0
classes/class_audioeffecthardlimiter.rst

@@ -0,0 +1,112 @@
+:github_url: hide
+
+.. DO NOT EDIT THIS FILE!!!
+.. Generated automatically from Godot engine sources.
+.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
+.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/AudioEffectHardLimiter.xml.
+
+.. _class_AudioEffectHardLimiter:
+
+AudioEffectHardLimiter
+======================
+
+**Inherits:** :ref:`AudioEffect<class_AudioEffect>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
+
+Adds a hard limiter audio effect to an Audio bus.
+
+.. rst-class:: classref-introduction-group
+
+Description
+-----------
+
+A limiter is an effect designed to disallow sound from going over a given dB threshold. Hard limiters predict volume peaks, and will smoothly apply gain reduction when a peak crosses the ceiling threshold to prevent clipping and distortion. It preserves the waveform and prevents it from crossing the ceiling threshold. Adding one in the Master bus is recommended as a safety measure to prevent sudden volume peaks from occurring, and to prevent distortion caused by clipping.
+
+.. rst-class:: classref-introduction-group
+
+Tutorials
+---------
+
+- :doc:`Audio buses <../tutorials/audio/audio_buses>`
+
+.. rst-class:: classref-reftable-group
+
+Properties
+----------
+
+.. table::
+   :widths: auto
+
+   +---------------------------+-----------------------------------------------------------------------+----------+
+   | :ref:`float<class_float>` | :ref:`ceiling_db<class_AudioEffectHardLimiter_property_ceiling_db>`   | ``-0.3`` |
+   +---------------------------+-----------------------------------------------------------------------+----------+
+   | :ref:`float<class_float>` | :ref:`pre_gain_db<class_AudioEffectHardLimiter_property_pre_gain_db>` | ``0.0``  |
+   +---------------------------+-----------------------------------------------------------------------+----------+
+   | :ref:`float<class_float>` | :ref:`release<class_AudioEffectHardLimiter_property_release>`         | ``0.1``  |
+   +---------------------------+-----------------------------------------------------------------------+----------+
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
+Property Descriptions
+---------------------
+
+.. _class_AudioEffectHardLimiter_property_ceiling_db:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **ceiling_db** = ``-0.3``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_ceiling_db**\ (\ value\: :ref:`float<class_float>`\ )
+- :ref:`float<class_float>` **get_ceiling_db**\ (\ )
+
+The waveform's maximum allowed value, in decibels. This value can range from ``-24.0`` to ``0.0``.
+
+The default value of ``-0.3`` prevents potential inter-sample peaks (ISP) from crossing over 0 dB, which can cause slight distortion on some older hardware.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AudioEffectHardLimiter_property_pre_gain_db:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **pre_gain_db** = ``0.0``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_pre_gain_db**\ (\ value\: :ref:`float<class_float>`\ )
+- :ref:`float<class_float>` **get_pre_gain_db**\ (\ )
+
+Gain to apply before limiting, in decibels.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_AudioEffectHardLimiter_property_release:
+
+.. rst-class:: classref-property
+
+:ref:`float<class_float>` **release** = ``0.1``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_release**\ (\ value\: :ref:`float<class_float>`\ )
+- :ref:`float<class_float>` **get_release**\ (\ )
+
+Time it takes in seconds for the gain reduction to fully release.
+
+.. |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.)`
+.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
+.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
+.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
+.. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
+.. |void| replace:: :abbr:`void (No return value.)`

+ 2 - 0
classes/class_audioeffectlimiter.rst

@@ -10,6 +10,8 @@
 AudioEffectLimiter
 AudioEffectLimiter
 ==================
 ==================
 
 
+**Deprecated:** Use :ref:`AudioEffectHardLimiter<class_AudioEffectHardLimiter>` instead.
+
 **Inherits:** :ref:`AudioEffect<class_AudioEffect>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
 **Inherits:** :ref:`AudioEffect<class_AudioEffect>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
 
 
 Adds a soft-clip limiter audio effect to an Audio bus.
 Adds a soft-clip limiter audio effect to an Audio bus.

+ 1 - 1
classes/class_collisionpolygon2d.rst

@@ -19,7 +19,7 @@ A node that provides a polygon shape to a :ref:`CollisionObject2D<class_Collisio
 Description
 Description
 -----------
 -----------
 
 
-A node that provides a thickened polygon shape (a prism) to a :ref:`CollisionObject2D<class_CollisionObject2D>` parent and allows to edit it. The polygon can be concave or convex. This can give a detection shape to an :ref:`Area2D<class_Area2D>` or turn :ref:`PhysicsBody2D<class_PhysicsBody2D>` into a solid object.
+A node that provides a polygon shape to a :ref:`CollisionObject2D<class_CollisionObject2D>` parent and allows to edit it. The polygon can be concave or convex. This can give a detection shape to an :ref:`Area2D<class_Area2D>`, turn :ref:`PhysicsBody2D<class_PhysicsBody2D>` into a solid object, or give a hollow shape to a :ref:`StaticBody2D<class_StaticBody2D>`.
 
 
 \ **Warning:** A non-uniformly scaled :ref:`CollisionShape2D<class_CollisionShape2D>` will likely not behave as expected. Make sure to keep its scale the same on all axes and adjust its shape resource instead.
 \ **Warning:** A non-uniformly scaled :ref:`CollisionShape2D<class_CollisionShape2D>` will likely not behave as expected. Make sure to keep its scale the same on all axes and adjust its shape resource instead.
 
 

+ 91 - 79
classes/class_control.rst

@@ -64,85 +64,87 @@ Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`anchor_bottom<class_Control_property_anchor_bottom>`                                   | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`anchor_left<class_Control_property_anchor_left>`                                       | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`anchor_right<class_Control_property_anchor_right>`                                     | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`anchor_top<class_Control_property_anchor_top>`                                         | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                                | :ref:`auto_translate<class_Control_property_auto_translate>`                                 | ``true``          |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                                | :ref:`clip_contents<class_Control_property_clip_contents>`                                   | ``false``         |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                          | :ref:`custom_minimum_size<class_Control_property_custom_minimum_size>`                       | ``Vector2(0, 0)`` |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`FocusMode<enum_Control_FocusMode>`               | :ref:`focus_mode<class_Control_property_focus_mode>`                                         | ``0``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`NodePath<class_NodePath>`                        | :ref:`focus_neighbor_bottom<class_Control_property_focus_neighbor_bottom>`                   | ``NodePath("")``  |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`NodePath<class_NodePath>`                        | :ref:`focus_neighbor_left<class_Control_property_focus_neighbor_left>`                       | ``NodePath("")``  |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`NodePath<class_NodePath>`                        | :ref:`focus_neighbor_right<class_Control_property_focus_neighbor_right>`                     | ``NodePath("")``  |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`NodePath<class_NodePath>`                        | :ref:`focus_neighbor_top<class_Control_property_focus_neighbor_top>`                         | ``NodePath("")``  |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`NodePath<class_NodePath>`                        | :ref:`focus_next<class_Control_property_focus_next>`                                         | ``NodePath("")``  |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`NodePath<class_NodePath>`                        | :ref:`focus_previous<class_Control_property_focus_previous>`                                 | ``NodePath("")``  |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                          | :ref:`global_position<class_Control_property_global_position>`                               |                   |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`GrowDirection<enum_Control_GrowDirection>`       | :ref:`grow_horizontal<class_Control_property_grow_horizontal>`                               | ``1``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`GrowDirection<enum_Control_GrowDirection>`       | :ref:`grow_vertical<class_Control_property_grow_vertical>`                                   | ``1``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`LayoutDirection<enum_Control_LayoutDirection>`   | :ref:`layout_direction<class_Control_property_layout_direction>`                             | ``0``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                                | :ref:`localize_numeral_system<class_Control_property_localize_numeral_system>`               | ``true``          |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`CursorShape<enum_Control_CursorShape>`           | :ref:`mouse_default_cursor_shape<class_Control_property_mouse_default_cursor_shape>`         | ``0``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`MouseFilter<enum_Control_MouseFilter>`           | :ref:`mouse_filter<class_Control_property_mouse_filter>`                                     | ``0``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`bool<class_bool>`                                | :ref:`mouse_force_pass_scroll_events<class_Control_property_mouse_force_pass_scroll_events>` | ``true``          |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`offset_bottom<class_Control_property_offset_bottom>`                                   | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`offset_left<class_Control_property_offset_left>`                                       | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`offset_right<class_Control_property_offset_right>`                                     | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`offset_top<class_Control_property_offset_top>`                                         | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                          | :ref:`pivot_offset<class_Control_property_pivot_offset>`                                     | ``Vector2(0, 0)`` |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                          | :ref:`position<class_Control_property_position>`                                             | ``Vector2(0, 0)`` |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`rotation<class_Control_property_rotation>`                                             | ``0.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`rotation_degrees<class_Control_property_rotation_degrees>`                             |                   |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                          | :ref:`scale<class_Control_property_scale>`                                                   | ``Vector2(1, 1)`` |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Node<class_Node>`                                | :ref:`shortcut_context<class_Control_property_shortcut_context>`                             |                   |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>`                          | :ref:`size<class_Control_property_size>`                                                     | ``Vector2(0, 0)`` |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | |bitfield|\[:ref:`SizeFlags<enum_Control_SizeFlags>`\] | :ref:`size_flags_horizontal<class_Control_property_size_flags_horizontal>`                   | ``1``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`float<class_float>`                              | :ref:`size_flags_stretch_ratio<class_Control_property_size_flags_stretch_ratio>`             | ``1.0``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | |bitfield|\[:ref:`SizeFlags<enum_Control_SizeFlags>`\] | :ref:`size_flags_vertical<class_Control_property_size_flags_vertical>`                       | ``1``             |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`Theme<class_Theme>`                              | :ref:`theme<class_Control_property_theme>`                                                   |                   |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`StringName<class_StringName>`                    | :ref:`theme_type_variation<class_Control_property_theme_type_variation>`                     | ``&""``           |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
-   | :ref:`String<class_String>`                            | :ref:`tooltip_text<class_Control_property_tooltip_text>`                                     | ``""``            |
-   +--------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------+
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`anchor_bottom<class_Control_property_anchor_bottom>`                                   | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`anchor_left<class_Control_property_anchor_left>`                                       | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`anchor_right<class_Control_property_anchor_right>`                                     | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`anchor_top<class_Control_property_anchor_top>`                                         | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                             | :ref:`auto_translate<class_Control_property_auto_translate>`                                 | ``true``                                                                      |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                             | :ref:`clip_contents<class_Control_property_clip_contents>`                                   | ``false``                                                                     |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`custom_minimum_size<class_Control_property_custom_minimum_size>`                       | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`FocusMode<enum_Control_FocusMode>`                            | :ref:`focus_mode<class_Control_property_focus_mode>`                                         | ``0``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`NodePath<class_NodePath>`                                     | :ref:`focus_neighbor_bottom<class_Control_property_focus_neighbor_bottom>`                   | ``NodePath("")``                                                              |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`NodePath<class_NodePath>`                                     | :ref:`focus_neighbor_left<class_Control_property_focus_neighbor_left>`                       | ``NodePath("")``                                                              |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`NodePath<class_NodePath>`                                     | :ref:`focus_neighbor_right<class_Control_property_focus_neighbor_right>`                     | ``NodePath("")``                                                              |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`NodePath<class_NodePath>`                                     | :ref:`focus_neighbor_top<class_Control_property_focus_neighbor_top>`                         | ``NodePath("")``                                                              |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`NodePath<class_NodePath>`                                     | :ref:`focus_next<class_Control_property_focus_next>`                                         | ``NodePath("")``                                                              |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`NodePath<class_NodePath>`                                     | :ref:`focus_previous<class_Control_property_focus_previous>`                                 | ``NodePath("")``                                                              |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`global_position<class_Control_property_global_position>`                               |                                                                               |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`GrowDirection<enum_Control_GrowDirection>`                    | :ref:`grow_horizontal<class_Control_property_grow_horizontal>`                               | ``1``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`GrowDirection<enum_Control_GrowDirection>`                    | :ref:`grow_vertical<class_Control_property_grow_vertical>`                                   | ``1``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`LayoutDirection<enum_Control_LayoutDirection>`                | :ref:`layout_direction<class_Control_property_layout_direction>`                             | ``0``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                             | :ref:`localize_numeral_system<class_Control_property_localize_numeral_system>`               | ``true``                                                                      |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`CursorShape<enum_Control_CursorShape>`                        | :ref:`mouse_default_cursor_shape<class_Control_property_mouse_default_cursor_shape>`         | ``0``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`MouseFilter<enum_Control_MouseFilter>`                        | :ref:`mouse_filter<class_Control_property_mouse_filter>`                                     | ``0``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                             | :ref:`mouse_force_pass_scroll_events<class_Control_property_mouse_force_pass_scroll_events>` | ``true``                                                                      |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`offset_bottom<class_Control_property_offset_bottom>`                                   | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`offset_left<class_Control_property_offset_left>`                                       | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`offset_right<class_Control_property_offset_right>`                                     | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`offset_top<class_Control_property_offset_top>`                                         | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` | physics_interpolation_mode                                                                   | ``2`` (overrides :ref:`Node<class_Node_property_physics_interpolation_mode>`) |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`pivot_offset<class_Control_property_pivot_offset>`                                     | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`position<class_Control_property_position>`                                             | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`rotation<class_Control_property_rotation>`                                             | ``0.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`rotation_degrees<class_Control_property_rotation_degrees>`                             |                                                                               |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`scale<class_Control_property_scale>`                                                   | ``Vector2(1, 1)``                                                             |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Node<class_Node>`                                             | :ref:`shortcut_context<class_Control_property_shortcut_context>`                             |                                                                               |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`size<class_Control_property_size>`                                                     | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | |bitfield|\[:ref:`SizeFlags<enum_Control_SizeFlags>`\]              | :ref:`size_flags_horizontal<class_Control_property_size_flags_horizontal>`                   | ``1``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`float<class_float>`                                           | :ref:`size_flags_stretch_ratio<class_Control_property_size_flags_stretch_ratio>`             | ``1.0``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | |bitfield|\[:ref:`SizeFlags<enum_Control_SizeFlags>`\]              | :ref:`size_flags_vertical<class_Control_property_size_flags_vertical>`                       | ``1``                                                                         |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Theme<class_Theme>`                                           | :ref:`theme<class_Control_property_theme>`                                                   |                                                                               |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`StringName<class_StringName>`                                 | :ref:`theme_type_variation<class_Control_property_theme_type_variation>`                     | ``&""``                                                                       |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`String<class_String>`                                         | :ref:`tooltip_text<class_Control_property_tooltip_text>`                                     | ``""``                                                                        |
+   +---------------------------------------------------------------------+----------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+
 
 
 .. rst-class:: classref-reftable-group
 .. rst-class:: classref-reftable-group
 
 
@@ -1159,6 +1161,16 @@ Sent when the node needs to refresh its theme items. This happens in one of the
 
 
 \ **Note:** As an optimization, this notification won't be sent from changes that occur while this node is outside of the scene tree. Instead, all of the theme item updates can be applied at once when the node enters the scene tree.
 \ **Note:** As an optimization, this notification won't be sent from changes that occur while this node is outside of the scene tree. Instead, all of the theme item updates can be applied at once when the node enters the scene tree.
 
 
+\ **Note:** This notification is received alongside :ref:`Node.NOTIFICATION_ENTER_TREE<class_Node_constant_NOTIFICATION_ENTER_TREE>`, so if you are instantiating a scene, the child nodes will not be initialized yet. You can use it to setup theming for this node, child nodes created from script, or if you want to access child nodes added in the editor, make sure the node is ready using :ref:`Node.is_node_ready<class_Node_method_is_node_ready>`.
+
+::
+
+    func _notification(what):
+        if what == NOTIFICATION_THEME_CHANGED:
+            if not is_node_ready():
+                await ready # Wait until ready signal.
+            $Label.add_theme_color_override("font_color", Color.YELLOW)
+
 .. _class_Control_constant_NOTIFICATION_SCROLL_BEGIN:
 .. _class_Control_constant_NOTIFICATION_SCROLL_BEGIN:
 
 
 .. rst-class:: classref-constant
 .. rst-class:: classref-constant

+ 23 - 7
classes/class_displayserver.rst

@@ -484,7 +484,7 @@ Display server supports setting the mouse cursor shape to a custom image. **Wind
 
 
 :ref:`Feature<enum_DisplayServer_Feature>` **FEATURE_NATIVE_DIALOG** = ``9``
 :ref:`Feature<enum_DisplayServer_Feature>` **FEATURE_NATIVE_DIALOG** = ``9``
 
 
-Display server supports spawning dialogs using the operating system's native look-and-feel. **Windows, macOS, Linux (X11/Wayland)**
+Display server supports spawning text dialogs using the operating system's native look-and-feel. See :ref:`dialog_show<class_DisplayServer_method_dialog_show>`. **Windows, macOS**
 
 
 .. _class_DisplayServer_constant_FEATURE_IME:
 .. _class_DisplayServer_constant_FEATURE_IME:
 
 
@@ -590,6 +590,22 @@ Display server supports application status indicators.
 
 
 Display server supports native help system search callbacks. See :ref:`help_set_search_callbacks<class_DisplayServer_method_help_set_search_callbacks>`.
 Display server supports native help system search callbacks. See :ref:`help_set_search_callbacks<class_DisplayServer_method_help_set_search_callbacks>`.
 
 
+.. _class_DisplayServer_constant_FEATURE_NATIVE_DIALOG_INPUT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`Feature<enum_DisplayServer_Feature>` **FEATURE_NATIVE_DIALOG_INPUT** = ``24``
+
+Display server supports spawning text input dialogs using the operating system's native look-and-feel. See :ref:`dialog_input_text<class_DisplayServer_method_dialog_input_text>`. **Windows, macOS**
+
+.. _class_DisplayServer_constant_FEATURE_NATIVE_DIALOG_FILE:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`Feature<enum_DisplayServer_Feature>` **FEATURE_NATIVE_DIALOG_FILE** = ``25``
+
+Display server supports spawning dialogs for selecting files or directories using the operating system's native look-and-feel. See :ref:`file_dialog_show<class_DisplayServer_method_file_dialog_show>` and :ref:`file_dialog_with_options_show<class_DisplayServer_method_file_dialog_with_options_show>`. **Windows, macOS, Linux (X11/Wayland)**
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----
@@ -1624,7 +1640,7 @@ Removes the application status indicator.
 
 
 Shows a text input dialog which uses the operating system's native look-and-feel. ``callback`` should accept a single :ref:`String<class_String>` parameter which contains the text field's contents.
 Shows a text input dialog which uses the operating system's native look-and-feel. ``callback`` should accept a single :ref:`String<class_String>` parameter which contains the text field's contents.
 
 
-\ **Note:** This method is implemented only on macOS and Windows.
+\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_INPUT<class_DisplayServer_constant_FEATURE_NATIVE_DIALOG_INPUT>` feature. Supported platforms include macOS and Windows.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1638,7 +1654,7 @@ Shows a text input dialog which uses the operating system's native look-and-feel
 
 
 Shows a text dialog which uses the operating system's native look-and-feel. ``callback`` should accept a single :ref:`int<class_int>` parameter which corresponds to the index of the pressed button.
 Shows a text dialog which uses the operating system's native look-and-feel. ``callback`` should accept a single :ref:`int<class_int>` parameter which corresponds to the index of the pressed button.
 
 
-\ **Note:** This method is implemented only on macOS and Windows.
+\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG<class_DisplayServer_constant_FEATURE_NATIVE_DIALOG>` feature. Supported platforms include macOS and Windows.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1670,7 +1686,7 @@ Each filter string in the ``filters`` array should be formatted like this: ``*.t
 
 
 Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int``.
 Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int``.
 
 
-\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG<class_DisplayServer_constant_FEATURE_NATIVE_DIALOG>` feature. Supported platforms include Linux (X11/Wayland), Windows, and macOS.
+\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_FILE<class_DisplayServer_constant_FEATURE_NATIVE_DIALOG_FILE>` feature. Supported platforms include Linux (X11/Wayland), Windows, and macOS.
 
 
 \ **Note:** ``current_directory`` might be ignored.
 \ **Note:** ``current_directory`` might be ignored.
 
 
@@ -1704,7 +1720,7 @@ Each filter string in the ``filters`` array should be formatted like this: ``*.t
 
 
 Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int, selected_option: Dictionary``.
 Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int, selected_option: Dictionary``.
 
 
-\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG<class_DisplayServer_constant_FEATURE_NATIVE_DIALOG>` feature. Supported platforms include Linux (X11/Wayland), Windows, and macOS.
+\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_FILE<class_DisplayServer_constant_FEATURE_NATIVE_DIALOG_FILE>` feature. Supported platforms include Linux (X11/Wayland), Windows, and macOS.
 
 
 \ **Note:** ``current_directory`` might be ignored.
 \ **Note:** ``current_directory`` might be ignored.
 
 
@@ -2299,7 +2315,7 @@ Returns the horizontal offset of the item at the given ``idx``.
 
 
 **Deprecated:** Use :ref:`NativeMenu<class_NativeMenu>` or :ref:`PopupMenu<class_PopupMenu>` instead.
 **Deprecated:** Use :ref:`NativeMenu<class_NativeMenu>` or :ref:`PopupMenu<class_PopupMenu>` instead.
 
 
-Returns the index of the item with the specified ``tag``. Index is automatically assigned to each item by the engine. Index can not be set manually.
+Returns the index of the item with the specified ``tag``. Indices are automatically assigned to each item by the engine, and cannot be set manually.
 
 
 \ **Note:** This method is implemented only on macOS.
 \ **Note:** This method is implemented only on macOS.
 
 
@@ -2315,7 +2331,7 @@ Returns the index of the item with the specified ``tag``. Index is automatically
 
 
 **Deprecated:** Use :ref:`NativeMenu<class_NativeMenu>` or :ref:`PopupMenu<class_PopupMenu>` instead.
 **Deprecated:** Use :ref:`NativeMenu<class_NativeMenu>` or :ref:`PopupMenu<class_PopupMenu>` instead.
 
 
-Returns the index of the item with the specified ``text``. Index is automatically assigned to each item by the engine. Index can not be set manually.
+Returns the index of the item with the specified ``text``. Indices are automatically assigned to each item by the engine, and cannot be set manually.
 
 
 \ **Note:** This method is implemented only on macOS.
 \ **Note:** This method is implemented only on macOS.
 
 

+ 3 - 3
classes/class_dtlsserver.rst

@@ -66,7 +66,7 @@ Below a small example of how to use it:
     {
     {
         private DtlsServer _dtls = new DtlsServer();
         private DtlsServer _dtls = new DtlsServer();
         private UdpServer _server = new UdpServer();
         private UdpServer _server = new UdpServer();
-        private Godot.Collections.Array<PacketPeerDTLS> _peers = new Godot.Collections.Array<PacketPeerDTLS>();
+        private Godot.Collections.Array<PacketPeerDtls> _peers = new Godot.Collections.Array<PacketPeerDtls>();
     
     
         public override void _Ready()
         public override void _Ready()
         {
         {
@@ -80,8 +80,8 @@ Below a small example of how to use it:
         {
         {
             while (Server.IsConnectionAvailable())
             while (Server.IsConnectionAvailable())
             {
             {
-                PacketPeerUDP peer = _server.TakeConnection();
-                PacketPeerDTLS dtlsPeer = _dtls.TakeConnection(peer);
+                PacketPeerUdp peer = _server.TakeConnection();
+                PacketPeerDtls dtlsPeer = _dtls.TakeConnection(peer);
                 if (dtlsPeer.GetStatus() != PacketPeerDtls.Status.Handshaking)
                 if (dtlsPeer.GetStatus() != PacketPeerDtls.Status.Handshaking)
                 {
                 {
                     continue; // It is normal that 50% of the connections fails due to cookie exchange.
                     continue; // It is normal that 50% of the connections fails due to cookie exchange.

+ 28 - 0
classes/class_editorsettings.rst

@@ -563,6 +563,10 @@ Properties
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`text_editor/behavior/navigation/v_scroll_speed<class_EditorSettings_property_text_editor/behavior/navigation/v_scroll_speed>`                                                                               |
    | :ref:`int<class_int>`                             | :ref:`text_editor/behavior/navigation/v_scroll_speed<class_EditorSettings_property_text_editor/behavior/navigation/v_scroll_speed>`                                                                               |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`text_editor/completion/add_node_path_literals<class_EditorSettings_property_text_editor/completion/add_node_path_literals>`                                                                                 |
+   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`text_editor/completion/add_string_name_literals<class_EditorSettings_property_text_editor/completion/add_string_name_literals>`                                                                             |
+   +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`text_editor/completion/add_type_hints<class_EditorSettings_property_text_editor/completion/add_type_hints>`                                                                                                 |
    | :ref:`bool<class_bool>`                           | :ref:`text_editor/completion/add_type_hints<class_EditorSettings_property_text_editor/completion/add_type_hints>`                                                                                                 |
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`text_editor/completion/auto_brace_complete<class_EditorSettings_property_text_editor/completion/auto_brace_complete>`                                                                                       |
    | :ref:`bool<class_bool>`                           | :ref:`text_editor/completion/auto_brace_complete<class_EditorSettings_property_text_editor/completion/auto_brace_complete>`                                                                                       |
@@ -3969,6 +3973,30 @@ The number of pixels to scroll with every mouse wheel increment. Higher values m
 
 
 ----
 ----
 
 
+.. _class_EditorSettings_property_text_editor/completion/add_node_path_literals:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **text_editor/completion/add_node_path_literals**
+
+If ``true``, uses :ref:`NodePath<class_NodePath>` instead of :ref:`String<class_String>` when appropriate for code autocompletion or for drag and dropping object properties into the script editor.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_EditorSettings_property_text_editor/completion/add_string_name_literals:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **text_editor/completion/add_string_name_literals**
+
+If ``true``, uses :ref:`StringName<class_StringName>` instead of :ref:`String<class_String>` when appropriate for code autocompletion.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_EditorSettings_property_text_editor/completion/add_type_hints:
 .. _class_EditorSettings_property_text_editor/completion/add_type_hints:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property

+ 2 - 2
classes/class_httpclient.rst

@@ -1085,9 +1085,9 @@ To create a POST request with query strings to push to the server, do:
  .. code-tab:: csharp
  .. code-tab:: csharp
 
 
     var fields = new Godot.Collections.Dictionary { { "username", "user" }, { "password", "pass" } };
     var fields = new Godot.Collections.Dictionary { { "username", "user" }, { "password", "pass" } };
-    string queryString = new HTTPClient().QueryStringFromDict(fields);
+    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);
+    var result = new HttpClient().Request(HttpClient.Method.Post, "index.php", headers, queryString);
 
 
 
 
 
 

+ 4 - 4
classes/class_httprequest.rst

@@ -67,7 +67,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
     public override void _Ready()
     public override void _Ready()
     {
     {
         // Create an HTTP request node and connect its completion signal.
         // Create an HTTP request node and connect its completion signal.
-        var httpRequest = new HTTPRequest();
+        var httpRequest = new HttpRequest();
         AddChild(httpRequest);
         AddChild(httpRequest);
         httpRequest.RequestCompleted += HttpRequestCompleted;
         httpRequest.RequestCompleted += HttpRequestCompleted;
     
     
@@ -85,7 +85,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
         {
         {
             { "name", "Godette" }
             { "name", "Godette" }
         });
         });
-        error = httpRequest.Request("https://httpbin.org/post", null, HTTPClient.Method.Post, body);
+        error = httpRequest.Request("https://httpbin.org/post", null, HttpClient.Method.Post, body);
         if (error != Error.Ok)
         if (error != Error.Ok)
         {
         {
             GD.PushError("An error occurred in the HTTP request.");
             GD.PushError("An error occurred in the HTTP request.");
@@ -145,7 +145,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
     public override void _Ready()
     public override void _Ready()
     {
     {
         // Create an HTTP request node and connect its completion signal.
         // Create an HTTP request node and connect its completion signal.
-        var httpRequest = new HTTPRequest();
+        var httpRequest = new HttpRequest();
         AddChild(httpRequest);
         AddChild(httpRequest);
         httpRequest.RequestCompleted += HttpRequestCompleted;
         httpRequest.RequestCompleted += HttpRequestCompleted;
     
     
@@ -160,7 +160,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content
     // Called when the HTTP request is completed.
     // Called when the HTTP request is completed.
     private void HttpRequestCompleted(long result, long responseCode, string[] headers, byte[] body)
     private void HttpRequestCompleted(long result, long responseCode, string[] headers, byte[] body)
     {
     {
-        if (result != (long)HTTPRequest.Result.Success)
+        if (result != (long)HttpRequest.Result.Success)
         {
         {
             GD.PushError("Image couldn't be downloaded. Try a different image.");
             GD.PushError("Image couldn't be downloaded. Try a different image.");
         }
         }

+ 18 - 1
classes/class_inputevent.rst

@@ -90,6 +90,23 @@ Methods
 
 
 .. rst-class:: classref-descriptions-group
 .. rst-class:: classref-descriptions-group
 
 
+Constants
+---------
+
+.. _class_InputEvent_constant_DEVICE_ID_EMULATION:
+
+.. rst-class:: classref-constant
+
+**DEVICE_ID_EMULATION** = ``-1``
+
+Device ID used for emulated mouse input from a touchscreen, or for emulated touch input from a mouse. This can be used to distinguish emulated mouse input from physical mouse input, or emulated touch input from physical touch input.
+
+.. rst-class:: classref-section-separator
+
+----
+
+.. rst-class:: classref-descriptions-group
+
 Property Descriptions
 Property Descriptions
 ---------------------
 ---------------------
 
 
@@ -106,7 +123,7 @@ Property Descriptions
 
 
 The event's device ID.
 The event's device ID.
 
 
-\ **Note:** This device ID will always be ``-1`` for emulated mouse input from a touchscreen. This can be used to distinguish emulated mouse input from physical mouse input.
+\ **Note:** :ref:`device<class_InputEvent_property_device>` can be negative for special use cases that don't refer to devices physically present on the system. See :ref:`DEVICE_ID_EMULATION<class_InputEvent_constant_DEVICE_ID_EMULATION>`.
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 

+ 2 - 2
classes/class_inputeventmidi.rst

@@ -59,13 +59,13 @@ By default, Godot does not detect MIDI devices. You need to call :ref:`OS.open_m
     
     
     public override void _Input(InputEvent inputEvent)
     public override void _Input(InputEvent inputEvent)
     {
     {
-        if (inputEvent is InputEventMIDI midiEvent)
+        if (inputEvent is InputEventMidi midiEvent)
         {
         {
             PrintMIDIInfo(midiEvent);
             PrintMIDIInfo(midiEvent);
         }
         }
     }
     }
     
     
-    private void PrintMIDIInfo(InputEventMIDI midiEvent)
+    private void PrintMIDIInfo(InputEventMidi midiEvent)
     {
     {
         GD.Print(midiEvent);
         GD.Print(midiEvent);
         GD.Print($"Channel {midiEvent.Channel}");
         GD.Print($"Channel {midiEvent.Channel}");

+ 18 - 2
classes/class_nativemenu.rst

@@ -84,6 +84,8 @@ Methods
    +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`             | :ref:`create_menu<class_NativeMenu_method_create_menu>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                         |
    | :ref:`RID<class_RID>`             | :ref:`create_menu<class_NativeMenu_method_create_menu>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                         |
    +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`             | :ref:`find_item_index_with_submenu<class_NativeMenu_method_find_item_index_with_submenu>`\ (\ rid\: :ref:`RID<class_RID>`, submenu_rid\: :ref:`RID<class_RID>`\ ) |const|                                                                                                                                                                                                                                                                                                             |
+   +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`             | :ref:`find_item_index_with_tag<class_NativeMenu_method_find_item_index_with_tag>`\ (\ rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>`\ ) |const|                                                                                                                                                                                                                                                                                                                     |
    | :ref:`int<class_int>`             | :ref:`find_item_index_with_tag<class_NativeMenu_method_find_item_index_with_tag>`\ (\ rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>`\ ) |const|                                                                                                                                                                                                                                                                                                                     |
    +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`             | :ref:`find_item_index_with_text<class_NativeMenu_method_find_item_index_with_text>`\ (\ rid\: :ref:`RID<class_RID>`, text\: :ref:`String<class_String>`\ ) |const|                                                                                                                                                                                                                                                                                                                    |
    | :ref:`int<class_int>`             | :ref:`find_item_index_with_text<class_NativeMenu_method_find_item_index_with_text>`\ (\ rid\: :ref:`RID<class_RID>`, text\: :ref:`String<class_String>`\ ) |const|                                                                                                                                                                                                                                                                                                                    |
@@ -535,13 +537,27 @@ Creates a new global menu object.
 
 
 ----
 ----
 
 
+.. _class_NativeMenu_method_find_item_index_with_submenu:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **find_item_index_with_submenu**\ (\ rid\: :ref:`RID<class_RID>`, submenu_rid\: :ref:`RID<class_RID>`\ ) |const|
+
+Returns the index of the item with the submenu specified by ``submenu_rid``. Indices are automatically assigned to each item by the engine, and cannot be set manually.
+
+\ **Note:** This method is implemented on macOS and Windows.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_NativeMenu_method_find_item_index_with_tag:
 .. _class_NativeMenu_method_find_item_index_with_tag:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
 
 
 :ref:`int<class_int>` **find_item_index_with_tag**\ (\ rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>`\ ) |const|
 :ref:`int<class_int>` **find_item_index_with_tag**\ (\ rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>`\ ) |const|
 
 
-Returns the index of the item with the specified ``tag``. Index is automatically assigned to each item by the engine. Index can not be set manually.
+Returns the index of the item with the specified ``tag``. Indices are automatically assigned to each item by the engine, and cannot be set manually.
 
 
 \ **Note:** This method is implemented on macOS and Windows.
 \ **Note:** This method is implemented on macOS and Windows.
 
 
@@ -555,7 +571,7 @@ Returns the index of the item with the specified ``tag``. Index is automatically
 
 
 :ref:`int<class_int>` **find_item_index_with_text**\ (\ rid\: :ref:`RID<class_RID>`, text\: :ref:`String<class_String>`\ ) |const|
 :ref:`int<class_int>` **find_item_index_with_text**\ (\ rid\: :ref:`RID<class_RID>`, text\: :ref:`String<class_String>`\ ) |const|
 
 
-Returns the index of the item with the specified ``text``. Index is automatically assigned to each item by the engine. Index can not be set manually.
+Returns the index of the item with the specified ``text``. Indices are automatically assigned to each item by the engine, and cannot be set manually.
 
 
 \ **Note:** This method is implemented on macOS and Windows.
 \ **Note:** This method is implemented on macOS and Windows.
 
 

+ 130 - 3
classes/class_node.rst

@@ -73,6 +73,8 @@ Properties
    +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
    +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
    | :ref:`Node<class_Node>`                                                     | :ref:`owner<class_Node_property_owner>`                                           |           |
    | :ref:`Node<class_Node>`                                                     | :ref:`owner<class_Node_property_owner>`                                           |           |
    +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
    +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
+   | :ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>`         | :ref:`physics_interpolation_mode<class_Node_property_physics_interpolation_mode>` | ``0``     |
+   +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
    | :ref:`ProcessMode<enum_Node_ProcessMode>`                                   | :ref:`process_mode<class_Node_property_process_mode>`                             | ``0``     |
    | :ref:`ProcessMode<enum_Node_ProcessMode>`                                   | :ref:`process_mode<class_Node_property_process_mode>`                             | ``0``     |
    +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
    +-----------------------------------------------------------------------------+-----------------------------------------------------------------------------------+-----------+
    | :ref:`int<class_int>`                                                       | :ref:`process_physics_priority<class_Node_property_process_physics_priority>`     | ``0``     |
    | :ref:`int<class_int>`                                                       | :ref:`process_physics_priority<class_Node_property_process_physics_priority>`     | ``0``     |
@@ -207,6 +209,10 @@ Methods
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                          | :ref:`is_node_ready<class_Node_method_is_node_ready>`\ (\ ) |const|                                                                                                                                                                     |
    | :ref:`bool<class_bool>`                                          | :ref:`is_node_ready<class_Node_method_is_node_ready>`\ (\ ) |const|                                                                                                                                                                     |
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                          | :ref:`is_physics_interpolated<class_Node_method_is_physics_interpolated>`\ (\ ) |const|                                                                                                                                                 |
+   +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                          | :ref:`is_physics_interpolated_and_enabled<class_Node_method_is_physics_interpolated_and_enabled>`\ (\ ) |const|                                                                                                                         |
+   +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                          | :ref:`is_physics_processing<class_Node_method_is_physics_processing>`\ (\ ) |const|                                                                                                                                                     |
    | :ref:`bool<class_bool>`                                          | :ref:`is_physics_processing<class_Node_method_is_physics_processing>`\ (\ ) |const|                                                                                                                                                     |
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                                          | :ref:`is_physics_processing_internal<class_Node_method_is_physics_processing_internal>`\ (\ ) |const|                                                                                                                                   |
    | :ref:`bool<class_bool>`                                          | :ref:`is_physics_processing_internal<class_Node_method_is_physics_processing_internal>`\ (\ ) |const|                                                                                                                                   |
@@ -251,6 +257,8 @@ Methods
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                           | :ref:`request_ready<class_Node_method_request_ready>`\ (\ )                                                                                                                                                                             |
    | |void|                                                           | :ref:`request_ready<class_Node_method_request_ready>`\ (\ )                                                                                                                                                                             |
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                           | :ref:`reset_physics_interpolation<class_Node_method_reset_physics_interpolation>`\ (\ )                                                                                                                                                 |
+   +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Error<enum_@GlobalScope_Error>`                            | :ref:`rpc<class_Node_method_rpc>`\ (\ method\: :ref:`StringName<class_StringName>`, ...\ ) |vararg|                                                                                                                                     |
    | :ref:`Error<enum_@GlobalScope_Error>`                            | :ref:`rpc<class_Node_method_rpc>`\ (\ method\: :ref:`StringName<class_StringName>`, ...\ ) |vararg|                                                                                                                                     |
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                           | :ref:`rpc_config<class_Node_method_rpc_config>`\ (\ method\: :ref:`StringName<class_StringName>`, config\: :ref:`Variant<class_Variant>`\ )                                                                                             |
    | |void|                                                           | :ref:`rpc_config<class_Node_method_rpc_config>`\ (\ method\: :ref:`StringName<class_StringName>`, config\: :ref:`Variant<class_Variant>`\ )                                                                                             |
@@ -552,6 +560,40 @@ Allows this node to process threaded messages created with :ref:`call_deferred_t
 
 
 ----
 ----
 
 
+.. _enum_Node_PhysicsInterpolationMode:
+
+.. rst-class:: classref-enumeration
+
+enum **PhysicsInterpolationMode**:
+
+.. _class_Node_constant_PHYSICS_INTERPOLATION_MODE_INHERIT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` **PHYSICS_INTERPOLATION_MODE_INHERIT** = ``0``
+
+Inherits :ref:`physics_interpolation_mode<class_Node_property_physics_interpolation_mode>` from the node's parent. This is the default for any newly created node.
+
+.. _class_Node_constant_PHYSICS_INTERPOLATION_MODE_ON:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` **PHYSICS_INTERPOLATION_MODE_ON** = ``1``
+
+Enables physics interpolation for this node and for children set to :ref:`PHYSICS_INTERPOLATION_MODE_INHERIT<class_Node_constant_PHYSICS_INTERPOLATION_MODE_INHERIT>`. This is the default for the root node.
+
+.. _class_Node_constant_PHYSICS_INTERPOLATION_MODE_OFF:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` **PHYSICS_INTERPOLATION_MODE_OFF** = ``2``
+
+Disables physics interpolation for this node and for children set to :ref:`PHYSICS_INTERPOLATION_MODE_INHERIT<class_Node_constant_PHYSICS_INTERPOLATION_MODE_INHERIT>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _enum_Node_DuplicateFlags:
 .. _enum_Node_DuplicateFlags:
 
 
 .. rst-class:: classref-enumeration
 .. rst-class:: classref-enumeration
@@ -845,6 +887,14 @@ Notification received when the node is disabled. See :ref:`PROCESS_MODE_DISABLED
 
 
 Notification received when the node is enabled again after being disabled. See :ref:`PROCESS_MODE_DISABLED<class_Node_constant_PROCESS_MODE_DISABLED>`.
 Notification received when the node is enabled again after being disabled. See :ref:`PROCESS_MODE_DISABLED<class_Node_constant_PROCESS_MODE_DISABLED>`.
 
 
+.. _class_Node_constant_NOTIFICATION_RESET_PHYSICS_INTERPOLATION:
+
+.. rst-class:: classref-constant
+
+**NOTIFICATION_RESET_PHYSICS_INTERPOLATION** = ``2001``
+
+Notification received when :ref:`reset_physics_interpolation<class_Node_method_reset_physics_interpolation>` is called on the node or its ancestors.
+
 .. _class_Node_constant_NOTIFICATION_EDITOR_PRE_SAVE:
 .. _class_Node_constant_NOTIFICATION_EDITOR_PRE_SAVE:
 
 
 .. rst-class:: classref-constant
 .. rst-class:: classref-constant
@@ -971,7 +1021,17 @@ Implemented only on iOS.
 
 
 **NOTIFICATION_TRANSLATION_CHANGED** = ``2010``
 **NOTIFICATION_TRANSLATION_CHANGED** = ``2010``
 
 
-Notification received when translations may have changed. Can be triggered by the user changing the locale. Can be used to respond to language changes, for example to change the UI strings on the fly. Useful when working with the built-in translation support, like :ref:`Object.tr<class_Object_method_tr>`.
+Notification received when translations may have changed. Can be triggered by the user changing the locale, changing :ref:`auto_translate_mode<class_Node_property_auto_translate_mode>` or when the node enters the scene tree. Can be used to respond to language changes, for example to change the UI strings on the fly. Useful when working with the built-in translation support, like :ref:`Object.tr<class_Object_method_tr>`.
+
+\ **Note:** This notification is received alongside :ref:`NOTIFICATION_ENTER_TREE<class_Node_constant_NOTIFICATION_ENTER_TREE>`, so if you are instantiating a scene, the child nodes will not be initialized yet. You can use it to setup translations for this node, child nodes created from script, or if you want to access child nodes added in the editor, make sure the node is ready using :ref:`is_node_ready<class_Node_method_is_node_ready>`.
+
+::
+
+    func _notification(what):
+        if what == NOTIFICATION_TRANSLATION_CHANGED:
+            if not is_node_ready():
+                await ready # Wait until ready signal.
+            $Label.text = atr("%d Bananas") % banana_counter
 
 
 .. _class_Node_constant_NOTIFICATION_WM_ABOUT:
 .. _class_Node_constant_NOTIFICATION_WM_ABOUT:
 
 
@@ -1154,6 +1214,25 @@ The owner of this node. The owner must be an ancestor of this node. When packing
 
 
 ----
 ----
 
 
+.. _class_Node_property_physics_interpolation_mode:
+
+.. rst-class:: classref-property
+
+:ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` **physics_interpolation_mode** = ``0``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_physics_interpolation_mode**\ (\ value\: :ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>`\ )
+- :ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` **get_physics_interpolation_mode**\ (\ )
+
+Allows enabling or disabling physics interpolation per node, offering a finer grain of control than turning physics interpolation on and off globally. See :ref:`ProjectSettings.physics/common/physics_interpolation<class_ProjectSettings_property_physics/common/physics_interpolation>` and :ref:`SceneTree.physics_interpolation<class_SceneTree_property_physics_interpolation>` for the global setting.
+
+\ **Note:** When teleporting a node to a distant position you should temporarily disable interpolation with :ref:`reset_physics_interpolation<class_Node_method_reset_physics_interpolation>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Node_property_process_mode:
 .. _class_Node_property_process_mode:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -1440,7 +1519,7 @@ Usually used for initialization. For even earlier initialization, :ref:`Object._
 
 
 |void| **_shortcut_input**\ (\ event\: :ref:`InputEvent<class_InputEvent>`\ ) |virtual|
 |void| **_shortcut_input**\ (\ event\: :ref:`InputEvent<class_InputEvent>`\ ) |virtual|
 
 
-Called when an :ref:`InputEventKey<class_InputEventKey>` or :ref:`InputEventShortcut<class_InputEventShortcut>` hasn't been consumed by :ref:`_input<class_Node_private_method__input>` or any GUI :ref:`Control<class_Control>` item. It is called before :ref:`_unhandled_key_input<class_Node_private_method__unhandled_key_input>` and :ref:`_unhandled_input<class_Node_private_method__unhandled_input>`. The input event propagates up through the node tree until a node consumes it.
+Called when an :ref:`InputEventKey<class_InputEventKey>`, :ref:`InputEventShortcut<class_InputEventShortcut>`, or :ref:`InputEventJoypadButton<class_InputEventJoypadButton>` hasn't been consumed by :ref:`_input<class_Node_private_method__input>` or any GUI :ref:`Control<class_Control>` item. It is called before :ref:`_unhandled_key_input<class_Node_private_method__unhandled_key_input>` and :ref:`_unhandled_input<class_Node_private_method__unhandled_input>`. The input event propagates up through the node tree until a node consumes it.
 
 
 It is only called if shortcut processing is enabled, which is done automatically if this method is overridden, and can be toggled with :ref:`set_process_shortcut_input<class_Node_method_set_process_shortcut_input>`.
 It is only called if shortcut processing is enabled, which is done automatically if this method is overridden, and can be toggled with :ref:`set_process_shortcut_input<class_Node_method_set_process_shortcut_input>`.
 
 
@@ -1581,7 +1660,7 @@ If ``persistent`` is ``true``, the group will be stored when saved inside a :ref
 
 
 :ref:`String<class_String>` **atr**\ (\ message\: :ref:`String<class_String>`, context\: :ref:`StringName<class_StringName>` = ""\ ) |const|
 :ref:`String<class_String>` **atr**\ (\ message\: :ref:`String<class_String>`, context\: :ref:`StringName<class_StringName>` = ""\ ) |const|
 
 
-Translates a ``message``, using the translation catalogs configured in the Project Settings. Further ``context`` can be specified to help with the translation.
+Translates a ``message``, using the translation catalogs configured in the Project Settings. Further ``context`` can be specified to help with the translation. Note that most :ref:`Control<class_Control>` nodes automatically translate their strings, so this method is mostly useful for formatted strings or custom drawn text.
 
 
 This method works the same as :ref:`Object.tr<class_Object_method_tr>`, with the addition of respecting the :ref:`auto_translate_mode<class_Node_property_auto_translate_mode>` state.
 This method works the same as :ref:`Object.tr<class_Object_method_tr>`, with the addition of respecting the :ref:`auto_translate_mode<class_Node_property_auto_translate_mode>` state.
 
 
@@ -2296,6 +2375,36 @@ Returns ``true`` if the node is ready, i.e. it's inside scene tree and all its c
 
 
 ----
 ----
 
 
+.. _class_Node_method_is_physics_interpolated:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_physics_interpolated**\ (\ ) |const|
+
+Returns ``true`` if physics interpolation is enabled for this node (see :ref:`physics_interpolation_mode<class_Node_property_physics_interpolation_mode>`).
+
+\ **Note:** Interpolation will only be active if both the flag is set **and** physics interpolation is enabled within the :ref:`SceneTree<class_SceneTree>`. This can be tested using :ref:`is_physics_interpolated_and_enabled<class_Node_method_is_physics_interpolated_and_enabled>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_Node_method_is_physics_interpolated_and_enabled:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_physics_interpolated_and_enabled**\ (\ ) |const|
+
+Returns ``true`` if physics interpolation is enabled (see :ref:`physics_interpolation_mode<class_Node_property_physics_interpolation_mode>`) **and** enabled in the :ref:`SceneTree<class_SceneTree>`.
+
+This is a convenience version of :ref:`is_physics_interpolated<class_Node_method_is_physics_interpolated>` that also checks whether physics interpolation is enabled globally.
+
+See :ref:`SceneTree.physics_interpolation<class_SceneTree_property_physics_interpolation>` and :ref:`ProjectSettings.physics/common/physics_interpolation<class_ProjectSettings_property_physics/common/physics_interpolation>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Node_method_is_physics_processing:
 .. _class_Node_method_is_physics_processing:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -2602,6 +2711,24 @@ Requests :ref:`_ready<class_Node_private_method__ready>` to be called again the
 
 
 ----
 ----
 
 
+.. _class_Node_method_reset_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **reset_physics_interpolation**\ (\ )
+
+When physics interpolation is active, moving a node to a radically different transform (such as placement within a level) can result in a visible glitch as the object is rendered moving from the old to new position over the physics tick.
+
+That glitch can be prevented by calling this method, which temporarily disables interpolation until the physics tick is complete.
+
+The notification :ref:`NOTIFICATION_RESET_PHYSICS_INTERPOLATION<class_Node_constant_NOTIFICATION_RESET_PHYSICS_INTERPOLATION>` will be received by the node and all children recursively.
+
+\ **Note:** This function should be called **after** moving the node, rather than before.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_Node_method_rpc:
 .. _class_Node_method_rpc:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 1 - 1
classes/class_object.rst

@@ -1745,7 +1745,7 @@ Returns a :ref:`String<class_String>` representing the object. Defaults to ``"<C
 
 
 :ref:`String<class_String>` **tr**\ (\ message\: :ref:`StringName<class_StringName>`, context\: :ref:`StringName<class_StringName>` = &""\ ) |const|
 :ref:`String<class_String>` **tr**\ (\ message\: :ref:`StringName<class_StringName>`, context\: :ref:`StringName<class_StringName>` = &""\ ) |const|
 
 
-Translates a ``message``, using the translation catalogs configured in the Project Settings. Further ``context`` can be specified to help with the translation.
+Translates a ``message``, using the translation catalogs configured in the Project Settings. Further ``context`` can be specified to help with the translation. Note that most :ref:`Control<class_Control>` nodes automatically translate their strings, so this method is mostly useful for formatted strings or custom drawn text.
 
 
 If :ref:`can_translate_messages<class_Object_method_can_translate_messages>` is ``false``, or no translation is available, this method returns the ``message`` without changes. See :ref:`set_message_translation<class_Object_method_set_message_translation>`.
 If :ref:`can_translate_messages<class_Object_method_can_translate_messages>` is ``false``, or no translation is available, this method returns the ``message`` without changes. See :ref:`set_message_translation<class_Object_method_set_message_translation>`.
 
 

+ 36 - 4
classes/class_os.rst

@@ -71,6 +71,8 @@ Methods
    +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`execute<class_OS_method_execute>`\ (\ path\: :ref:`String<class_String>`, arguments\: :ref:`PackedStringArray<class_PackedStringArray>`, output\: :ref:`Array<class_Array>` = [], read_stderr\: :ref:`bool<class_bool>` = false, open_console\: :ref:`bool<class_bool>` = false\ )                                                                                                    |
    | :ref:`int<class_int>`                             | :ref:`execute<class_OS_method_execute>`\ (\ path\: :ref:`String<class_String>`, arguments\: :ref:`PackedStringArray<class_PackedStringArray>`, output\: :ref:`Array<class_Array>` = [], read_stderr\: :ref:`bool<class_bool>` = false, open_console\: :ref:`bool<class_bool>` = false\ )                                                                                                    |
    +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary<class_Dictionary>`               | :ref:`execute_with_pipe<class_OS_method_execute_with_pipe>`\ (\ path\: :ref:`String<class_String>`, arguments\: :ref:`PackedStringArray<class_PackedStringArray>`\ )                                                                                                                                                                                                                        |
+   +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`Key<enum_@GlobalScope_Key>`                 | :ref:`find_keycode_from_string<class_OS_method_find_keycode_from_string>`\ (\ string\: :ref:`String<class_String>`\ ) |const|                                                                                                                                                                                                                                                               |
    | :ref:`Key<enum_@GlobalScope_Key>`                 | :ref:`find_keycode_from_string<class_OS_method_find_keycode_from_string>`\ (\ string\: :ref:`String<class_String>`\ ) |const|                                                                                                                                                                                                                                                               |
    +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>`                       | :ref:`get_cache_dir<class_OS_method_get_cache_dir>`\ (\ ) |const|                                                                                                                                                                                                                                                                                                                           |
    | :ref:`String<class_String>`                       | :ref:`get_cache_dir<class_OS_method_get_cache_dir>`\ (\ ) |const|                                                                                                                                                                                                                                                                                                                           |
@@ -432,11 +434,11 @@ See :ref:`create_process<class_OS_method_create_process>` if you wish to run a d
 
 
 :ref:`int<class_int>` **create_process**\ (\ path\: :ref:`String<class_String>`, arguments\: :ref:`PackedStringArray<class_PackedStringArray>`, open_console\: :ref:`bool<class_bool>` = false\ )
 :ref:`int<class_int>` **create_process**\ (\ path\: :ref:`String<class_String>`, arguments\: :ref:`PackedStringArray<class_PackedStringArray>`, open_console\: :ref:`bool<class_bool>` = false\ )
 
 
-Creates a new process that runs independently of Godot. It will not terminate when Godot terminates. The path specified in ``path`` must exist and be executable file or macOS .app bundle. Platform path resolution will be used. The ``arguments`` are used in the given order and separated by a space.
+Creates a new process that runs independently of Godot. It will not terminate when Godot terminates. The path specified in ``path`` must exist and be an executable file or macOS ``.app`` bundle. The path is resolved based on the current platform. The ``arguments`` are used in the given order and separated by a space.
 
 
 On Windows, if ``open_console`` is ``true`` and the process is a console app, a new terminal window will be opened.
 On Windows, if ``open_console`` is ``true`` and the process is a console app, a new terminal window will be opened.
 
 
-If the process is successfully created, this method returns its process ID, which you can use to monitor the process (and potentially terminate it with :ref:`kill<class_OS_method_kill>`). Otherwise this method returns ``-1``.
+If the process is successfully created, this method returns its process ID, which you can use to monitor the process (and potentially terminate it with :ref:`kill<class_OS_method_kill>`). Otherwise, this method returns ``-1``.
 
 
 For example, running another instance of the project:
 For example, running another instance of the project:
 
 
@@ -455,7 +457,7 @@ For example, running another instance of the project:
 
 
 See :ref:`execute<class_OS_method_execute>` if you wish to run an external command and retrieve the results.
 See :ref:`execute<class_OS_method_execute>` if you wish to run an external command and retrieve the results.
 
 
-\ **Note:** This method is implemented on Android, iOS, Linux, macOS and Windows.
+\ **Note:** This method is implemented on Android, Linux, macOS, and Windows.
 
 
 \ **Note:** On macOS, sandboxed applications are limited to run only embedded helper executables, specified during export or system .app bundle, system .app bundles will ignore arguments.
 \ **Note:** On macOS, sandboxed applications are limited to run only embedded helper executables, specified during export or system .app bundle, system .app bundles will ignore arguments.
 
 
@@ -545,7 +547,7 @@ If you wish to access a shell built-in or execute a composite command, a platfor
 
 
 
 
 
 
-\ **Note:** This method is implemented on Android, iOS, Linux, macOS and Windows.
+\ **Note:** This method is implemented on Android, Linux, macOS, and Windows.
 
 
 \ **Note:** To execute a Windows command interpreter built-in command, specify ``cmd.exe`` in ``path``, ``/c`` as the first argument, and the desired command as the second argument.
 \ **Note:** To execute a Windows command interpreter built-in command, specify ``cmd.exe`` in ``path``, ``/c`` as the first argument, and the desired command as the second argument.
 
 
@@ -561,6 +563,36 @@ If you wish to access a shell built-in or execute a composite command, a platfor
 
 
 ----
 ----
 
 
+.. _class_OS_method_execute_with_pipe:
+
+.. rst-class:: classref-method
+
+:ref:`Dictionary<class_Dictionary>` **execute_with_pipe**\ (\ path\: :ref:`String<class_String>`, arguments\: :ref:`PackedStringArray<class_PackedStringArray>`\ )
+
+Creates a new process that runs independently of Godot with redirected IO. It will not terminate when Godot terminates. The path specified in ``path`` must exist and be an executable file or macOS ``.app`` bundle. The path is resolved based on the current platform. The ``arguments`` are used in the given order and separated by a space.
+
+If the process cannot be created, this method returns an empty :ref:`Dictionary<class_Dictionary>`. Otherwise, this method returns a :ref:`Dictionary<class_Dictionary>` with the following keys:
+
+- ``"stdio"`` - :ref:`FileAccess<class_FileAccess>` to access the process stdin and stdout pipes (read/write).
+
+- ``"stderr"`` - :ref:`FileAccess<class_FileAccess>` to access the process stderr pipe (read only).
+
+- ``"pid"`` - Process ID as an :ref:`int<class_int>`, which you can use to monitor the process (and potentially terminate it with :ref:`kill<class_OS_method_kill>`).
+
+\ **Note:** This method is implemented on Android, Linux, macOS, and Windows.
+
+\ **Note:** To execute a Windows command interpreter built-in command, specify ``cmd.exe`` in ``path``, ``/c`` as the first argument, and the desired command as the second argument.
+
+\ **Note:** To execute a PowerShell built-in command, specify ``powershell.exe`` in ``path``, ``-Command`` as the first argument, and the desired command as the second argument.
+
+\ **Note:** To execute a Unix shell built-in command, specify shell executable name in ``path``, ``-c`` as the first argument, and the desired command as the second argument.
+
+\ **Note:** On macOS, sandboxed applications are limited to run only embedded helper executables, specified during export or system .app bundle, system .app bundles will ignore arguments.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_OS_method_find_keycode_from_string:
 .. _class_OS_method_find_keycode_from_string:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 1 - 1
classes/class_packetpeerudp.rst

@@ -256,7 +256,7 @@ Waits for a packet to arrive on the bound address. See :ref:`bind<class_PacketPe
 
 
  .. code-tab:: csharp
  .. code-tab:: csharp
 
 
-    var socket = new PacketPeerUDP();
+    var socket = new PacketPeerUdp();
     // Server
     // Server
     socket.SetDestAddress("127.0.0.1", 789);
     socket.SetDestAddress("127.0.0.1", 789);
     socket.PutPacket("Time to stop".ToAsciiBuffer());
     socket.PutPacket("Time to stop".ToAsciiBuffer());

+ 24 - 22
classes/class_parallax2d.rst

@@ -33,27 +33,29 @@ Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`autoscroll<class_Parallax2D_property_autoscroll>`                     | ``Vector2(0, 0)``           |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`bool<class_bool>`       | :ref:`follow_viewport<class_Parallax2D_property_follow_viewport>`           | ``true``                    |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`bool<class_bool>`       | :ref:`ignore_camera_scroll<class_Parallax2D_property_ignore_camera_scroll>` | ``false``                   |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`limit_begin<class_Parallax2D_property_limit_begin>`                   | ``Vector2(-1e+07, -1e+07)`` |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`limit_end<class_Parallax2D_property_limit_end>`                       | ``Vector2(1e+07, 1e+07)``   |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`repeat_size<class_Parallax2D_property_repeat_size>`                   | ``Vector2(0, 0)``           |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`int<class_int>`         | :ref:`repeat_times<class_Parallax2D_property_repeat_times>`                 | ``1``                       |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`screen_offset<class_Parallax2D_property_screen_offset>`               | ``Vector2(0, 0)``           |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`scroll_offset<class_Parallax2D_property_scroll_offset>`               | ``Vector2(0, 0)``           |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`scroll_scale<class_Parallax2D_property_scroll_scale>`                 | ``Vector2(1, 1)``           |
-   +-------------------------------+-----------------------------------------------------------------------------+-----------------------------+
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`autoscroll<class_Parallax2D_property_autoscroll>`                     | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                             | :ref:`follow_viewport<class_Parallax2D_property_follow_viewport>`           | ``true``                                                                      |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                                             | :ref:`ignore_camera_scroll<class_Parallax2D_property_ignore_camera_scroll>` | ``false``                                                                     |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`limit_begin<class_Parallax2D_property_limit_begin>`                   | ``Vector2(-1e+07, -1e+07)``                                                   |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`limit_end<class_Parallax2D_property_limit_end>`                       | ``Vector2(1e+07, 1e+07)``                                                     |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` | physics_interpolation_mode                                                  | ``2`` (overrides :ref:`Node<class_Node_property_physics_interpolation_mode>`) |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`repeat_size<class_Parallax2D_property_repeat_size>`                   | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                                               | :ref:`repeat_times<class_Parallax2D_property_repeat_times>`                 | ``1``                                                                         |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`screen_offset<class_Parallax2D_property_screen_offset>`               | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`scroll_offset<class_Parallax2D_property_scroll_offset>`               | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`scroll_scale<class_Parallax2D_property_scroll_scale>`                 | ``Vector2(1, 1)``                                                             |
+   +---------------------------------------------------------------------+-----------------------------------------------------------------------------+-------------------------------------------------------------------------------+
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 
@@ -232,7 +234,7 @@ The **Parallax2D**'s offset. Similar to :ref:`screen_offset<class_Parallax2D_pro
 
 
 Multiplier to the final **Parallax2D**'s offset. Can be used to simulate distance from the camera.
 Multiplier to the final **Parallax2D**'s offset. Can be used to simulate distance from the camera.
 
 
-For example, a value of ``1`` scrolls at the same speed as the camera. A value greater than ``1`` scrolls faster, making objects appear closer. Less than ``1`` scrolls slower, making object appear closer and a value of ``0`` stops the objects completely.
+For example, a value of ``1`` scrolls at the same speed as the camera. A value greater than ``1`` scrolls faster, making objects appear closer. Less than ``1`` scrolls slower, making objects appear further, and a value of ``0`` stops the objects completely.
 
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 9 - 7
classes/class_parallaxlayer.rst

@@ -33,13 +33,15 @@ Properties
 .. table::
 .. table::
    :widths: auto
    :widths: auto
 
 
-   +-------------------------------+------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`motion_mirroring<class_ParallaxLayer_property_motion_mirroring>` | ``Vector2(0, 0)`` |
-   +-------------------------------+------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`motion_offset<class_ParallaxLayer_property_motion_offset>`       | ``Vector2(0, 0)`` |
-   +-------------------------------+------------------------------------------------------------------------+-------------------+
-   | :ref:`Vector2<class_Vector2>` | :ref:`motion_scale<class_ParallaxLayer_property_motion_scale>`         | ``Vector2(1, 1)`` |
-   +-------------------------------+------------------------------------------------------------------------+-------------------+
+   +---------------------------------------------------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`motion_mirroring<class_ParallaxLayer_property_motion_mirroring>` | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`motion_offset<class_ParallaxLayer_property_motion_offset>`       | ``Vector2(0, 0)``                                                             |
+   +---------------------------------------------------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`Vector2<class_Vector2>`                                       | :ref:`motion_scale<class_ParallaxLayer_property_motion_scale>`         | ``Vector2(1, 1)``                                                             |
+   +---------------------------------------------------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+
+   | :ref:`PhysicsInterpolationMode<enum_Node_PhysicsInterpolationMode>` | physics_interpolation_mode                                             | ``2`` (overrides :ref:`Node<class_Node_property_physics_interpolation_mode>`) |
+   +---------------------------------------------------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+
 
 
 .. rst-class:: classref-section-separator
 .. rst-class:: classref-section-separator
 
 

+ 1 - 1
classes/class_pckpacker.rst

@@ -33,7 +33,7 @@ The **PCKPacker** is used to create packages that can be loaded into a running p
 
 
  .. code-tab:: csharp
  .. code-tab:: csharp
 
 
-    var packer = new PCKPacker();
+    var packer = new PckPacker();
     packer.PckStart("test.pck");
     packer.PckStart("test.pck");
     packer.AddFile("res://text.txt", "text.txt");
     packer.AddFile("res://text.txt", "text.txt");
     packer.Flush();
     packer.Flush();

+ 117 - 7
classes/class_physicsserver3d.rst

@@ -904,6 +904,42 @@ The velocity that the joint's linear motor will attempt to reach.
 
 
 The maximum force that the linear motor can apply while trying to reach the target velocity.
 The maximum force that the linear motor can apply while trying to reach the target velocity.
 
 
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_LINEAR_SPRING_STIFFNESS:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_LINEAR_SPRING_STIFFNESS** = ``7``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_LINEAR_SPRING_DAMPING:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_LINEAR_SPRING_DAMPING** = ``8``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_LINEAR_SPRING_EQUILIBRIUM_POINT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_LINEAR_SPRING_EQUILIBRIUM_POINT** = ``9``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
 .. _class_PhysicsServer3D_constant_G6DOF_JOINT_ANGULAR_LOWER_LIMIT:
 .. _class_PhysicsServer3D_constant_G6DOF_JOINT_ANGULAR_LOWER_LIMIT:
 
 
 .. rst-class:: classref-enumeration-constant
 .. rst-class:: classref-enumeration-constant
@@ -976,6 +1012,50 @@ Target speed for the motor at the axes.
 
 
 Maximum acceleration for the motor at the axes.
 Maximum acceleration for the motor at the axes.
 
 
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_ANGULAR_SPRING_STIFFNESS:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_ANGULAR_SPRING_STIFFNESS** = ``19``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_ANGULAR_SPRING_DAMPING:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_ANGULAR_SPRING_DAMPING** = ``20``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_ANGULAR_SPRING_EQUILIBRIUM_POINT:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_ANGULAR_SPRING_EQUILIBRIUM_POINT** = ``21``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_MAX:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` **G6DOF_JOINT_MAX** = ``22``
+
+Represents the size of the :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` enum.
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----
@@ -1002,6 +1082,30 @@ If set, linear motion is possible within the given limits.
 
 
 If set, rotational motion is possible.
 If set, rotational motion is possible.
 
 
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_FLAG_ENABLE_ANGULAR_SPRING:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` **G6DOF_JOINT_FLAG_ENABLE_ANGULAR_SPRING** = ``2``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_FLAG_ENABLE_LINEAR_SPRING:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` **G6DOF_JOINT_FLAG_ENABLE_LINEAR_SPRING** = ``3``
+
+.. container:: contribute
+
+	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+
+
+
 .. _class_PhysicsServer3D_constant_G6DOF_JOINT_FLAG_ENABLE_MOTOR:
 .. _class_PhysicsServer3D_constant_G6DOF_JOINT_FLAG_ENABLE_MOTOR:
 
 
 .. rst-class:: classref-enumeration-constant
 .. rst-class:: classref-enumeration-constant
@@ -1018,6 +1122,14 @@ If set, there is a rotational motor across these axes.
 
 
 If set, there is a linear motor on this axis that targets a specific velocity.
 If set, there is a linear motor on this axis that targets a specific velocity.
 
 
+.. _class_PhysicsServer3D_constant_G6DOF_JOINT_FLAG_MAX:
+
+.. rst-class:: classref-enumeration-constant
+
+:ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` **G6DOF_JOINT_FLAG_MAX** = ``6``
+
+Represents the size of the :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` enum.
+
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
 ----
 ----
@@ -2899,7 +3011,7 @@ Destroys any of the objects created by PhysicsServer3D. If the :ref:`RID<class_R
 
 
 :ref:`bool<class_bool>` **generic_6dof_joint_get_flag**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, flag\: :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>`\ ) |const|
 :ref:`bool<class_bool>` **generic_6dof_joint_get_flag**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, flag\: :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>`\ ) |const|
 
 
-Gets a generic_6_DOF_joint flag (see :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` constants).
+Returns the value of a generic 6DOF joint flag. See :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` for the list of available flags.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2911,7 +3023,7 @@ Gets a generic_6_DOF_joint flag (see :ref:`G6DOFJointAxisFlag<enum_PhysicsServer
 
 
 :ref:`float<class_float>` **generic_6dof_joint_get_param**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, param\: :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>`\ ) |const|
 :ref:`float<class_float>` **generic_6dof_joint_get_param**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, param\: :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>`\ ) |const|
 
 
-Gets a generic_6_DOF_joint parameter (see :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` constants).
+Returns the value of a generic 6DOF joint parameter. See :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` for the list of available parameters.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2923,7 +3035,7 @@ Gets a generic_6_DOF_joint parameter (see :ref:`G6DOFJointAxisParam<enum_Physics
 
 
 |void| **generic_6dof_joint_set_flag**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, flag\: :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>`, enable\: :ref:`bool<class_bool>`\ )
 |void| **generic_6dof_joint_set_flag**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, flag\: :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>`, enable\: :ref:`bool<class_bool>`\ )
 
 
-Sets a generic_6_DOF_joint flag (see :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` constants).
+Sets the value of a given generic 6DOF joint flag. See :ref:`G6DOFJointAxisFlag<enum_PhysicsServer3D_G6DOFJointAxisFlag>` for the list of available flags.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -2935,7 +3047,7 @@ Sets a generic_6_DOF_joint flag (see :ref:`G6DOFJointAxisFlag<enum_PhysicsServer
 
 
 |void| **generic_6dof_joint_set_param**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, param\: :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>`, value\: :ref:`float<class_float>`\ )
 |void| **generic_6dof_joint_set_param**\ (\ joint\: :ref:`RID<class_RID>`, axis\: Vector3.Axis, param\: :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>`, value\: :ref:`float<class_float>`\ )
 
 
-Sets a generic_6_DOF_joint parameter (see :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` constants).
+Sets the value of a given generic 6DOF joint parameter. See :ref:`G6DOFJointAxisParam<enum_PhysicsServer3D_G6DOFJointAxisParam>` for the list of available parameters.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -3111,9 +3223,7 @@ Returns whether the bodies attached to the :ref:`Joint3D<class_Joint3D>` will co
 
 
 |void| **joint_make_generic_6dof**\ (\ joint\: :ref:`RID<class_RID>`, body_A\: :ref:`RID<class_RID>`, local_ref_A\: :ref:`Transform3D<class_Transform3D>`, body_B\: :ref:`RID<class_RID>`, local_ref_B\: :ref:`Transform3D<class_Transform3D>`\ )
 |void| **joint_make_generic_6dof**\ (\ joint\: :ref:`RID<class_RID>`, body_A\: :ref:`RID<class_RID>`, local_ref_A\: :ref:`Transform3D<class_Transform3D>`, body_B\: :ref:`RID<class_RID>`, local_ref_B\: :ref:`Transform3D<class_Transform3D>`\ )
 
 
-.. container:: contribute
-
-	There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+Make the joint a generic six degrees of freedom (6DOF) joint. Use :ref:`generic_6dof_joint_set_flag<class_PhysicsServer3D_method_generic_6dof_joint_set_flag>` and :ref:`generic_6dof_joint_set_param<class_PhysicsServer3D_method_generic_6dof_joint_set_param>` to set the joint's flags and parameters respectively.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 55 - 1
classes/class_projectsettings.rst

@@ -679,6 +679,8 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_select_word_under_caret.macos<class_ProjectSettings_property_input/ui_text_select_word_under_caret.macos>`                                                                             |                                                                                                  |
    | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_select_word_under_caret.macos<class_ProjectSettings_property_input/ui_text_select_word_under_caret.macos>`                                                                             |                                                                                                  |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_skip_selection_for_next_occurrence<class_ProjectSettings_property_input/ui_text_skip_selection_for_next_occurrence>`                                                                   |                                                                                                  |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_submit<class_ProjectSettings_property_input/ui_text_submit>`                                                                                                                           |                                                                                                  |
    | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_submit<class_ProjectSettings_property_input/ui_text_submit>`                                                                                                                           |                                                                                                  |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_toggle_insert_mode<class_ProjectSettings_property_input/ui_text_toggle_insert_mode>`                                                                                                   |                                                                                                  |
    | :ref:`Dictionary<class_Dictionary>`               | :ref:`input/ui_text_toggle_insert_mode<class_ProjectSettings_property_input/ui_text_toggle_insert_mode>`                                                                                                   |                                                                                                  |
@@ -1167,6 +1169,8 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                           | :ref:`navigation/baking/thread_model/baking_use_multiple_threads<class_ProjectSettings_property_navigation/baking/thread_model/baking_use_multiple_threads>`                                               | ``true``                                                                                         |
    | :ref:`bool<class_bool>`                           | :ref:`navigation/baking/thread_model/baking_use_multiple_threads<class_ProjectSettings_property_navigation/baking/thread_model/baking_use_multiple_threads>`                                               | ``true``                                                                                         |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`navigation/baking/use_crash_prevention_checks<class_ProjectSettings_property_navigation/baking/use_crash_prevention_checks>`                                                                         | ``true``                                                                                         |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`network/limits/debugger/max_chars_per_second<class_ProjectSettings_property_network/limits/debugger/max_chars_per_second>`                                                                           | ``32768``                                                                                        |
    | :ref:`int<class_int>`                             | :ref:`network/limits/debugger/max_chars_per_second<class_ProjectSettings_property_network/limits/debugger/max_chars_per_second>`                                                                           | ``32768``                                                                                        |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`network/limits/debugger/max_errors_per_second<class_ProjectSettings_property_network/limits/debugger/max_errors_per_second>`                                                                         | ``400``                                                                                          |
    | :ref:`int<class_int>`                             | :ref:`network/limits/debugger/max_errors_per_second<class_ProjectSettings_property_network/limits/debugger/max_errors_per_second>`                                                                         | ``400``                                                                                          |
@@ -1245,6 +1249,8 @@ Properties
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`physics/common/max_physics_steps_per_frame<class_ProjectSettings_property_physics/common/max_physics_steps_per_frame>`                                                                               | ``8``                                                                                            |
    | :ref:`int<class_int>`                             | :ref:`physics/common/max_physics_steps_per_frame<class_ProjectSettings_property_physics/common/max_physics_steps_per_frame>`                                                                               | ``8``                                                                                            |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                           | :ref:`physics/common/physics_interpolation<class_ProjectSettings_property_physics/common/physics_interpolation>`                                                                                           | ``false``                                                                                        |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`float<class_float>`                         | :ref:`physics/common/physics_jitter_fix<class_ProjectSettings_property_physics/common/physics_jitter_fix>`                                                                                                 | ``0.5``                                                                                          |
    | :ref:`float<class_float>`                         | :ref:`physics/common/physics_jitter_fix<class_ProjectSettings_property_physics/common/physics_jitter_fix>`                                                                                                 | ``0.5``                                                                                          |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                             | :ref:`physics/common/physics_ticks_per_second<class_ProjectSettings_property_physics/common/physics_ticks_per_second>`                                                                                     | ``60``                                                                                           |
    | :ref:`int<class_int>`                             | :ref:`physics/common/physics_ticks_per_second<class_ProjectSettings_property_physics/common/physics_ticks_per_second>`                                                                                     | ``60``                                                                                           |
@@ -5782,6 +5788,24 @@ macOS specific override for the shortcut to select the word currently under the
 
 
 ----
 ----
 
 
+.. _class_ProjectSettings_property_input/ui_text_skip_selection_for_next_occurrence:
+
+.. rst-class:: classref-property
+
+:ref:`Dictionary<class_Dictionary>` **input/ui_text_skip_selection_for_next_occurrence**
+
+If no selection is currently active with the last caret in text fields, searches for the next occurrence of the the word currently under the caret and moves the caret to the next occurrence. The action can be performed sequentially for other occurrences of the word under the last caret.
+
+If a selection is currently active with the last caret in text fields, searches for the next occurrence of the selection, adds a caret, selects the next occurrence then deselects the previous selection and its associated caret. The action can be performed sequentially for other occurrences of the selection of the last caret.
+
+The viewport is adjusted to the latest newly added caret.
+
+\ **Note:** Default ``ui_*`` actions cannot be removed as they are necessary for the internal logic of several :ref:`Control<class_Control>`\ s. The events assigned to the action can however be modified.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_input/ui_text_submit:
 .. _class_ProjectSettings_property_input/ui_text_submit:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -8742,6 +8766,18 @@ If enabled the async navmesh baking uses multiple threads.
 
 
 ----
 ----
 
 
+.. _class_ProjectSettings_property_navigation/baking/use_crash_prevention_checks:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **navigation/baking/use_crash_prevention_checks** = ``true``
+
+If enabled, and baking would potentially lead to an engine crash, the baking will be interrupted and an error message with explanation will be raised.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_network/limits/debugger/max_chars_per_second:
 .. _class_ProjectSettings_property_network/limits/debugger/max_chars_per_second:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -9324,6 +9360,24 @@ Controls the maximum number of physics steps that can be simulated each rendered
 
 
 ----
 ----
 
 
+.. _class_ProjectSettings_property_physics/common/physics_interpolation:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **physics/common/physics_interpolation** = ``false``
+
+If ``true``, the renderer will interpolate the transforms of physics objects between the last two transforms, so that smooth motion is seen even when physics ticks do not coincide with rendered frames. See also :ref:`Node.physics_interpolation_mode<class_Node_property_physics_interpolation_mode>` and :ref:`Node.reset_physics_interpolation<class_Node_method_reset_physics_interpolation>`.
+
+\ **Note:** If ``true``, the physics jitter fix should be disabled by setting :ref:`physics/common/physics_jitter_fix<class_ProjectSettings_property_physics/common/physics_jitter_fix>` to ``0.0``.
+
+\ **Note:** This property is only read when the project starts. To toggle physics interpolation at runtime, set :ref:`SceneTree.physics_interpolation<class_SceneTree_property_physics_interpolation>` instead.
+
+\ **Note:** This feature is currently only implemented in the 2D renderer.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ProjectSettings_property_physics/common/physics_jitter_fix:
 .. _class_ProjectSettings_property_physics/common/physics_jitter_fix:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property
@@ -9332,7 +9386,7 @@ Controls the maximum number of physics steps that can be simulated each rendered
 
 
 Controls how much physics ticks are synchronized with real time. For 0 or less, the ticks are synchronized. Such values are recommended for network games, where clock synchronization matters. Higher values cause higher deviation of in-game clock and real clock, but allows smoothing out framerate jitters. The default value of 0.5 should be good enough for most; values above 2 could cause the game to react to dropped frames with a noticeable delay and are not recommended.
 Controls how much physics ticks are synchronized with real time. For 0 or less, the ticks are synchronized. Such values are recommended for network games, where clock synchronization matters. Higher values cause higher deviation of in-game clock and real clock, but allows smoothing out framerate jitters. The default value of 0.5 should be good enough for most; values above 2 could cause the game to react to dropped frames with a noticeable delay and are not recommended.
 
 
-\ **Note:** For best results, when using a custom physics interpolation solution, the physics jitter fix should be disabled by setting :ref:`physics/common/physics_jitter_fix<class_ProjectSettings_property_physics/common/physics_jitter_fix>` to ``0``.
+\ **Note:** When using a physics interpolation solution (such as enabling :ref:`physics/common/physics_interpolation<class_ProjectSettings_property_physics/common/physics_interpolation>` or using a custom solution), the physics jitter fix should be disabled by setting :ref:`physics/common/physics_jitter_fix<class_ProjectSettings_property_physics/common/physics_jitter_fix>` to ``0.0``.
 
 
 \ **Note:** This property is only read when the project starts. To change the physics jitter fix at runtime, set :ref:`Engine.physics_jitter_fix<class_Engine_property_physics_jitter_fix>` instead.
 \ **Note:** This property is only read when the project starts. To change the physics jitter fix at runtime, set :ref:`Engine.physics_jitter_fix<class_Engine_property_physics_jitter_fix>` instead.
 
 

+ 138 - 0
classes/class_renderingserver.rst

@@ -145,6 +145,8 @@ Methods
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_item_create<class_RenderingServer_method_canvas_item_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_item_create<class_RenderingServer_method_canvas_item_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_item_reset_physics_interpolation<class_RenderingServer_method_canvas_item_reset_physics_interpolation>`\ (\ item\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_item_set_canvas_group_mode<class_RenderingServer_method_canvas_item_set_canvas_group_mode>`\ (\ item\: :ref:`RID<class_RID>`, mode\: :ref:`CanvasGroupMode<enum_RenderingServer_CanvasGroupMode>`, clear_margin\: :ref:`float<class_float>` = 5.0, fit_empty\: :ref:`bool<class_bool>` = false, fit_margin\: :ref:`float<class_float>` = 0.0, blur_mipmaps\: :ref:`bool<class_bool>` = false\ )                                                                                                                                                                                                                                                                                            |
    | |void|                                                                           | :ref:`canvas_item_set_canvas_group_mode<class_RenderingServer_method_canvas_item_set_canvas_group_mode>`\ (\ item\: :ref:`RID<class_RID>`, mode\: :ref:`CanvasGroupMode<enum_RenderingServer_CanvasGroupMode>`, clear_margin\: :ref:`float<class_float>` = 5.0, fit_empty\: :ref:`bool<class_bool>` = false, fit_margin\: :ref:`float<class_float>` = 0.0, blur_mipmaps\: :ref:`bool<class_bool>` = false\ )                                                                                                                                                                                                                                                                                            |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_item_set_clip<class_RenderingServer_method_canvas_item_set_clip>`\ (\ item\: :ref:`RID<class_RID>`, clip\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
    | |void|                                                                           | :ref:`canvas_item_set_clip<class_RenderingServer_method_canvas_item_set_clip>`\ (\ item\: :ref:`RID<class_RID>`, clip\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
@@ -163,6 +165,8 @@ Methods
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_item_set_draw_index<class_RenderingServer_method_canvas_item_set_draw_index>`\ (\ item\: :ref:`RID<class_RID>`, index\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
    | |void|                                                                           | :ref:`canvas_item_set_draw_index<class_RenderingServer_method_canvas_item_set_draw_index>`\ (\ item\: :ref:`RID<class_RID>`, index\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_item_set_interpolated<class_RenderingServer_method_canvas_item_set_interpolated>`\ (\ item\: :ref:`RID<class_RID>`, interpolated\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_item_set_light_mask<class_RenderingServer_method_canvas_item_set_light_mask>`\ (\ item\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
    | |void|                                                                           | :ref:`canvas_item_set_light_mask<class_RenderingServer_method_canvas_item_set_light_mask>`\ (\ item\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_item_set_material<class_RenderingServer_method_canvas_item_set_material>`\ (\ item\: :ref:`RID<class_RID>`, material\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
    | |void|                                                                           | :ref:`canvas_item_set_material<class_RenderingServer_method_canvas_item_set_material>`\ (\ item\: :ref:`RID<class_RID>`, material\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
@@ -189,6 +193,8 @@ Methods
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_item_set_z_index<class_RenderingServer_method_canvas_item_set_z_index>`\ (\ item\: :ref:`RID<class_RID>`, z_index\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    | |void|                                                                           | :ref:`canvas_item_set_z_index<class_RenderingServer_method_canvas_item_set_z_index>`\ (\ item\: :ref:`RID<class_RID>`, z_index\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_item_transform_physics_interpolation<class_RenderingServer_method_canvas_item_transform_physics_interpolation>`\ (\ item\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_attach_to_canvas<class_RenderingServer_method_canvas_light_attach_to_canvas>`\ (\ light\: :ref:`RID<class_RID>`, canvas\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    | |void|                                                                           | :ref:`canvas_light_attach_to_canvas<class_RenderingServer_method_canvas_light_attach_to_canvas>`\ (\ light\: :ref:`RID<class_RID>`, canvas\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_light_create<class_RenderingServer_method_canvas_light_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_light_create<class_RenderingServer_method_canvas_light_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
@@ -197,16 +203,24 @@ Methods
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_light_occluder_create<class_RenderingServer_method_canvas_light_occluder_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_light_occluder_create<class_RenderingServer_method_canvas_light_occluder_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_light_occluder_reset_physics_interpolation<class_RenderingServer_method_canvas_light_occluder_reset_physics_interpolation>`\ (\ occluder\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_occluder_set_as_sdf_collision<class_RenderingServer_method_canvas_light_occluder_set_as_sdf_collision>`\ (\ occluder\: :ref:`RID<class_RID>`, enable\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    | |void|                                                                           | :ref:`canvas_light_occluder_set_as_sdf_collision<class_RenderingServer_method_canvas_light_occluder_set_as_sdf_collision>`\ (\ occluder\: :ref:`RID<class_RID>`, enable\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_occluder_set_enabled<class_RenderingServer_method_canvas_light_occluder_set_enabled>`\ (\ occluder\: :ref:`RID<class_RID>`, enabled\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    | |void|                                                                           | :ref:`canvas_light_occluder_set_enabled<class_RenderingServer_method_canvas_light_occluder_set_enabled>`\ (\ occluder\: :ref:`RID<class_RID>`, enabled\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_light_occluder_set_interpolated<class_RenderingServer_method_canvas_light_occluder_set_interpolated>`\ (\ occluder\: :ref:`RID<class_RID>`, interpolated\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_occluder_set_light_mask<class_RenderingServer_method_canvas_light_occluder_set_light_mask>`\ (\ occluder\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    | |void|                                                                           | :ref:`canvas_light_occluder_set_light_mask<class_RenderingServer_method_canvas_light_occluder_set_light_mask>`\ (\ occluder\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_occluder_set_polygon<class_RenderingServer_method_canvas_light_occluder_set_polygon>`\ (\ occluder\: :ref:`RID<class_RID>`, polygon\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
    | |void|                                                                           | :ref:`canvas_light_occluder_set_polygon<class_RenderingServer_method_canvas_light_occluder_set_polygon>`\ (\ occluder\: :ref:`RID<class_RID>`, polygon\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_occluder_set_transform<class_RenderingServer_method_canvas_light_occluder_set_transform>`\ (\ occluder\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    | |void|                                                                           | :ref:`canvas_light_occluder_set_transform<class_RenderingServer_method_canvas_light_occluder_set_transform>`\ (\ occluder\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_light_occluder_transform_physics_interpolation<class_RenderingServer_method_canvas_light_occluder_transform_physics_interpolation>`\ (\ occluder\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_light_reset_physics_interpolation<class_RenderingServer_method_canvas_light_reset_physics_interpolation>`\ (\ light\: :ref:`RID<class_RID>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_set_blend_mode<class_RenderingServer_method_canvas_light_set_blend_mode>`\ (\ light\: :ref:`RID<class_RID>`, mode\: :ref:`CanvasLightBlendMode<enum_RenderingServer_CanvasLightBlendMode>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
    | |void|                                                                           | :ref:`canvas_light_set_blend_mode<class_RenderingServer_method_canvas_light_set_blend_mode>`\ (\ light\: :ref:`RID<class_RID>`, mode\: :ref:`CanvasLightBlendMode<enum_RenderingServer_CanvasLightBlendMode>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_set_color<class_RenderingServer_method_canvas_light_set_color>`\ (\ light\: :ref:`RID<class_RID>`, color\: :ref:`Color<class_Color>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
    | |void|                                                                           | :ref:`canvas_light_set_color<class_RenderingServer_method_canvas_light_set_color>`\ (\ light\: :ref:`RID<class_RID>`, color\: :ref:`Color<class_Color>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
@@ -217,6 +231,8 @@ Methods
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_set_height<class_RenderingServer_method_canvas_light_set_height>`\ (\ light\: :ref:`RID<class_RID>`, height\: :ref:`float<class_float>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
    | |void|                                                                           | :ref:`canvas_light_set_height<class_RenderingServer_method_canvas_light_set_height>`\ (\ light\: :ref:`RID<class_RID>`, height\: :ref:`float<class_float>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_light_set_interpolated<class_RenderingServer_method_canvas_light_set_interpolated>`\ (\ light\: :ref:`RID<class_RID>`, interpolated\: :ref:`bool<class_bool>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_set_item_cull_mask<class_RenderingServer_method_canvas_light_set_item_cull_mask>`\ (\ light\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    | |void|                                                                           | :ref:`canvas_light_set_item_cull_mask<class_RenderingServer_method_canvas_light_set_item_cull_mask>`\ (\ light\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_set_item_shadow_cull_mask<class_RenderingServer_method_canvas_light_set_item_shadow_cull_mask>`\ (\ light\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    | |void|                                                                           | :ref:`canvas_light_set_item_shadow_cull_mask<class_RenderingServer_method_canvas_light_set_item_shadow_cull_mask>`\ (\ light\: :ref:`RID<class_RID>`, mask\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
@@ -243,6 +259,8 @@ Methods
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_light_set_z_range<class_RenderingServer_method_canvas_light_set_z_range>`\ (\ light\: :ref:`RID<class_RID>`, min_z\: :ref:`int<class_int>`, max_z\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    | |void|                                                                           | :ref:`canvas_light_set_z_range<class_RenderingServer_method_canvas_light_set_z_range>`\ (\ light\: :ref:`RID<class_RID>`, min_z\: :ref:`int<class_int>`, max_z\: :ref:`int<class_int>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                                                           | :ref:`canvas_light_transform_physics_interpolation<class_RenderingServer_method_canvas_light_transform_physics_interpolation>`\ (\ light\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
+   +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_occluder_polygon_create<class_RenderingServer_method_canvas_occluder_polygon_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
    | :ref:`RID<class_RID>`                                                            | :ref:`canvas_occluder_polygon_create<class_RenderingServer_method_canvas_occluder_polygon_create>`\ (\ )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +----------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                                                           | :ref:`canvas_occluder_polygon_set_cull_mode<class_RenderingServer_method_canvas_occluder_polygon_set_cull_mode>`\ (\ occluder_polygon\: :ref:`RID<class_RID>`, mode\: :ref:`CanvasOccluderPolygonCullMode<enum_RenderingServer_CanvasOccluderPolygonCullMode>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                       |
    | |void|                                                                           | :ref:`canvas_occluder_polygon_set_cull_mode<class_RenderingServer_method_canvas_occluder_polygon_set_cull_mode>`\ (\ occluder_polygon\: :ref:`RID<class_RID>`, mode\: :ref:`CanvasOccluderPolygonCullMode<enum_RenderingServer_CanvasOccluderPolygonCullMode>`\ )                                                                                                                                                                                                                                                                                                                                                                                                                                       |
@@ -6228,6 +6246,20 @@ Once finished with your RID, you will want to free the RID using the RenderingSe
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_item_reset_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **canvas_item_reset_physics_interpolation**\ (\ item\: :ref:`RID<class_RID>`\ )
+
+Prevents physics interpolation for the current physics tick.
+
+This is useful when moving a canvas item to a new location, to give an instantaneous change rather than interpolation from the previous location.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_item_set_canvas_group_mode:
 .. _class_RenderingServer_method_canvas_item_set_canvas_group_mode:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6340,6 +6372,18 @@ Sets the index for the :ref:`CanvasItem<class_CanvasItem>`.
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_item_set_interpolated:
+
+.. rst-class:: classref-method
+
+|void| **canvas_item_set_interpolated**\ (\ item\: :ref:`RID<class_RID>`, interpolated\: :ref:`bool<class_bool>`\ )
+
+If ``interpolated`` is ``true``, turns on physics interpolation for the canvas item.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_item_set_light_mask:
 .. _class_RenderingServer_method_canvas_item_set_light_mask:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6498,6 +6542,20 @@ Sets the :ref:`CanvasItem<class_CanvasItem>`'s Z index, i.e. its draw order (low
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_item_transform_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **canvas_item_transform_physics_interpolation**\ (\ item\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )
+
+Transforms both the current and previous stored transform for a canvas item.
+
+This allows transforming a canvas item without creating a "glitch" in the interpolation, which is particularly useful for large worlds utilising a shifting origin.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_light_attach_to_canvas:
 .. _class_RenderingServer_method_canvas_light_attach_to_canvas:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6554,6 +6612,20 @@ Once finished with your RID, you will want to free the RID using the RenderingSe
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_light_occluder_reset_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **canvas_light_occluder_reset_physics_interpolation**\ (\ occluder\: :ref:`RID<class_RID>`\ )
+
+Prevents physics interpolation for the current physics tick.
+
+This is useful when moving an occluder to a new location, to give an instantaneous change rather than interpolation from the previous location.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_light_occluder_set_as_sdf_collision:
 .. _class_RenderingServer_method_canvas_light_occluder_set_as_sdf_collision:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6580,6 +6652,18 @@ Enables or disables light occluder.
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_light_occluder_set_interpolated:
+
+.. rst-class:: classref-method
+
+|void| **canvas_light_occluder_set_interpolated**\ (\ occluder\: :ref:`RID<class_RID>`, interpolated\: :ref:`bool<class_bool>`\ )
+
+If ``interpolated`` is ``true``, turns on physics interpolation for the light occluder.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_light_occluder_set_light_mask:
 .. _class_RenderingServer_method_canvas_light_occluder_set_light_mask:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6616,6 +6700,34 @@ Sets a light occluder's :ref:`Transform2D<class_Transform2D>`.
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_light_occluder_transform_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **canvas_light_occluder_transform_physics_interpolation**\ (\ occluder\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )
+
+Transforms both the current and previous stored transform for a light occluder.
+
+This allows transforming an occluder without creating a "glitch" in the interpolation, which is particularly useful for large worlds utilising a shifting origin.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_RenderingServer_method_canvas_light_reset_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **canvas_light_reset_physics_interpolation**\ (\ light\: :ref:`RID<class_RID>`\ )
+
+Prevents physics interpolation for the current physics tick.
+
+This is useful when moving a canvas item to a new location, to give an instantaneous change rather than interpolation from the previous location.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_light_set_blend_mode:
 .. _class_RenderingServer_method_canvas_light_set_blend_mode:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6676,6 +6788,18 @@ Sets a canvas light's height.
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_light_set_interpolated:
+
+.. rst-class:: classref-method
+
+|void| **canvas_light_set_interpolated**\ (\ light\: :ref:`RID<class_RID>`, interpolated\: :ref:`bool<class_bool>`\ )
+
+If ``interpolated`` is ``true``, turns on physics interpolation for the canvas light.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_light_set_item_cull_mask:
 .. _class_RenderingServer_method_canvas_light_set_item_cull_mask:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -6832,6 +6956,20 @@ Sets the Z range of objects that will be affected by this light. Equivalent to :
 
 
 ----
 ----
 
 
+.. _class_RenderingServer_method_canvas_light_transform_physics_interpolation:
+
+.. rst-class:: classref-method
+
+|void| **canvas_light_transform_physics_interpolation**\ (\ light\: :ref:`RID<class_RID>`, transform\: :ref:`Transform2D<class_Transform2D>`\ )
+
+Transforms both the current and previous stored transform for a canvas light.
+
+This allows transforming a light without creating a "glitch" in the interpolation, which is is particularly useful for large worlds utilising a shifting origin.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_RenderingServer_method_canvas_occluder_polygon_create:
 .. _class_RenderingServer_method_canvas_occluder_polygon_create:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 14 - 0
classes/class_resourceimporterscene.rst

@@ -47,6 +47,8 @@ Properties
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
    | :ref:`bool<class_bool>`             | :ref:`animation/import<class_ResourceImporterScene_property_animation/import>`                                   | ``true``  |
    | :ref:`bool<class_bool>`             | :ref:`animation/import<class_ResourceImporterScene_property_animation/import>`                                   | ``true``  |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`             | :ref:`animation/import_rest_as_RESET<class_ResourceImporterScene_property_animation/import_rest_as_RESET>`       | ``false`` |
+   +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
    | :ref:`bool<class_bool>`             | :ref:`animation/remove_immutable_tracks<class_ResourceImporterScene_property_animation/remove_immutable_tracks>` | ``true``  |
    | :ref:`bool<class_bool>`             | :ref:`animation/remove_immutable_tracks<class_ResourceImporterScene_property_animation/remove_immutable_tracks>` | ``true``  |
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
    +-------------------------------------+------------------------------------------------------------------------------------------------------------------+-----------+
    | :ref:`bool<class_bool>`             | :ref:`animation/trimming<class_ResourceImporterScene_property_animation/trimming>`                               | ``false`` |
    | :ref:`bool<class_bool>`             | :ref:`animation/trimming<class_ResourceImporterScene_property_animation/trimming>`                               | ``false`` |
@@ -123,6 +125,18 @@ If ``true``, import animations from the 3D scene.
 
 
 ----
 ----
 
 
+.. _class_ResourceImporterScene_property_animation/import_rest_as_RESET:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **animation/import_rest_as_RESET** = ``false``
+
+If ``true``, adds an :ref:`Animation<class_Animation>` named ``RESET``, containing the :ref:`Skeleton3D.get_bone_rest<class_Skeleton3D_method_get_bone_rest>` from :ref:`Skeleton3D<class_Skeleton3D>` nodes. This can be useful to extract an animation in the reference pose.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_ResourceImporterScene_property_animation/remove_immutable_tracks:
 .. _class_ResourceImporterScene_property_animation/remove_immutable_tracks:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property

+ 21 - 0
classes/class_scenetree.rst

@@ -59,6 +59,8 @@ Properties
    +-----------------------------+------------------------------------------------------------------------------+-----------+
    +-----------------------------+------------------------------------------------------------------------------+-----------+
    | :ref:`bool<class_bool>`     | :ref:`paused<class_SceneTree_property_paused>`                               | ``false`` |
    | :ref:`bool<class_bool>`     | :ref:`paused<class_SceneTree_property_paused>`                               | ``false`` |
    +-----------------------------+------------------------------------------------------------------------------+-----------+
    +-----------------------------+------------------------------------------------------------------------------+-----------+
+   | :ref:`bool<class_bool>`     | :ref:`physics_interpolation<class_SceneTree_property_physics_interpolation>` | ``false`` |
+   +-----------------------------+------------------------------------------------------------------------------+-----------+
    | :ref:`bool<class_bool>`     | :ref:`quit_on_go_back<class_SceneTree_property_quit_on_go_back>`             | ``true``  |
    | :ref:`bool<class_bool>`     | :ref:`quit_on_go_back<class_SceneTree_property_quit_on_go_back>`             | ``true``  |
    +-----------------------------+------------------------------------------------------------------------------+-----------+
    +-----------------------------+------------------------------------------------------------------------------+-----------+
    | :ref:`Window<class_Window>` | :ref:`root<class_SceneTree_property_root>`                                   |           |
    | :ref:`Window<class_Window>` | :ref:`root<class_SceneTree_property_root>`                                   |           |
@@ -433,6 +435,25 @@ If ``true``, the scene tree is considered paused. This causes the following beha
 
 
 ----
 ----
 
 
+.. _class_SceneTree_property_physics_interpolation:
+
+.. rst-class:: classref-property
+
+:ref:`bool<class_bool>` **physics_interpolation** = ``false``
+
+.. rst-class:: classref-property-setget
+
+- |void| **set_physics_interpolation_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
+- :ref:`bool<class_bool>` **is_physics_interpolation_enabled**\ (\ )
+
+If ``true``, the renderer will interpolate the transforms of physics objects between the last two transforms, so that smooth motion is seen even when physics ticks do not coincide with rendered frames.
+
+The default value of this property is controlled by :ref:`ProjectSettings.physics/common/physics_interpolation<class_ProjectSettings_property_physics/common/physics_interpolation>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_SceneTree_property_quit_on_go_back:
 .. _class_SceneTree_property_quit_on_go_back:
 
 
 .. rst-class:: classref-property
 .. rst-class:: classref-property

+ 36 - 4
classes/class_string.rst

@@ -89,6 +89,10 @@ Methods
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>`                         | :ref:`erase<class_String_method_erase>`\ (\ position\: :ref:`int<class_int>`, chars\: :ref:`int<class_int>` = 1\ ) |const|                                                                |
    | :ref:`String<class_String>`                         | :ref:`erase<class_String_method_erase>`\ (\ position\: :ref:`int<class_int>`, chars\: :ref:`int<class_int>` = 1\ ) |const|                                                                |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`filecasecmp_to<class_String_method_filecasecmp_to>`\ (\ to\: :ref:`String<class_String>`\ ) |const|                                                                                 |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`filenocasecmp_to<class_String_method_filenocasecmp_to>`\ (\ to\: :ref:`String<class_String>`\ ) |const|                                                                             |
+   +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                               | :ref:`find<class_String_method_find>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                                 |
    | :ref:`int<class_int>`                               | :ref:`find<class_String_method_find>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                                 |
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                               | :ref:`findn<class_String_method_findn>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                               |
    | :ref:`int<class_int>`                               | :ref:`findn<class_String_method_findn>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                               |
@@ -482,7 +486,7 @@ Performs a case-sensitive comparison to another string. Returns ``-1`` if less t
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`nocasecmp_to<class_String_method_nocasecmp_to>`, :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>`, and :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`nocasecmp_to<class_String_method_nocasecmp_to>`, :ref:`filecasecmp_to<class_String_method_filecasecmp_to>`, and :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -595,6 +599,34 @@ Returns a string with ``chars`` characters erased starting from ``position``. If
 
 
 ----
 ----
 
 
+.. _class_String_method_filecasecmp_to:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **filecasecmp_to**\ (\ to\: :ref:`String<class_String>`\ ) |const|
+
+Like :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>` but prioritises strings that begin with periods (``.``) and underscores (``_``) before any other character. Useful when sorting folders or file names.
+
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`filenocasecmp_to<class_String_method_filenocasecmp_to>`, :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>`, and :ref:`casecmp_to<class_String_method_casecmp_to>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_String_method_filenocasecmp_to:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **filenocasecmp_to**\ (\ to\: :ref:`String<class_String>`\ ) |const|
+
+Like :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>` but prioritises strings that begin with periods (``.``) and underscores (``_``) before any other character. Useful when sorting folders or file names.
+
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`filecasecmp_to<class_String_method_filecasecmp_to>`, :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>`, and :ref:`nocasecmp_to<class_String_method_nocasecmp_to>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_String_method_find:
 .. _class_String_method_find:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1253,7 +1285,7 @@ When used for sorting, natural order comparison orders sequences of numbers by t
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>`, :ref:`nocasecmp_to<class_String_method_nocasecmp_to>`, and :ref:`casecmp_to<class_String_method_casecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>`, :ref:`filecasecmp_to<class_String_method_filecasecmp_to>`, and :ref:`nocasecmp_to<class_String_method_nocasecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1271,7 +1303,7 @@ When used for sorting, natural order comparison orders sequences of numbers by t
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>`, :ref:`nocasecmp_to<class_String_method_nocasecmp_to>`, and :ref:`casecmp_to<class_String_method_casecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>`, :ref:`filenocasecmp_to<class_String_method_filenocasecmp_to>`, and :ref:`casecmp_to<class_String_method_casecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1287,7 +1319,7 @@ Performs a **case-insensitive** comparison to another string. Returns ``-1`` if
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`casecmp_to<class_String_method_casecmp_to>`, :ref:`naturalcasecmp_to<class_String_method_naturalcasecmp_to>`, and :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`casecmp_to<class_String_method_casecmp_to>`, :ref:`filenocasecmp_to<class_String_method_filenocasecmp_to>`, and :ref:`naturalnocasecmp_to<class_String_method_naturalnocasecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 36 - 4
classes/class_stringname.rst

@@ -84,6 +84,10 @@ Methods
    +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`String<class_String>`                         | :ref:`erase<class_StringName_method_erase>`\ (\ position\: :ref:`int<class_int>`, chars\: :ref:`int<class_int>` = 1\ ) |const|                                                                |
    | :ref:`String<class_String>`                         | :ref:`erase<class_StringName_method_erase>`\ (\ position\: :ref:`int<class_int>`, chars\: :ref:`int<class_int>` = 1\ ) |const|                                                                |
    +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`filecasecmp_to<class_StringName_method_filecasecmp_to>`\ (\ to\: :ref:`String<class_String>`\ ) |const|                                                                                 |
+   +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`int<class_int>`                               | :ref:`filenocasecmp_to<class_StringName_method_filenocasecmp_to>`\ (\ to\: :ref:`String<class_String>`\ ) |const|                                                                             |
+   +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                               | :ref:`find<class_StringName_method_find>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                                 |
    | :ref:`int<class_int>`                               | :ref:`find<class_StringName_method_find>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                                 |
    +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`int<class_int>`                               | :ref:`findn<class_StringName_method_findn>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                               |
    | :ref:`int<class_int>`                               | :ref:`findn<class_StringName_method_findn>`\ (\ what\: :ref:`String<class_String>`, from\: :ref:`int<class_int>` = 0\ ) |const|                                                               |
@@ -455,7 +459,7 @@ Performs a case-sensitive comparison to another string. Returns ``-1`` if less t
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`nocasecmp_to<class_StringName_method_nocasecmp_to>`, :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>`, and :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`nocasecmp_to<class_StringName_method_nocasecmp_to>`, :ref:`filecasecmp_to<class_StringName_method_filecasecmp_to>`, and :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -551,6 +555,34 @@ Returns a string with ``chars`` characters erased starting from ``position``. If
 
 
 ----
 ----
 
 
+.. _class_StringName_method_filecasecmp_to:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **filecasecmp_to**\ (\ to\: :ref:`String<class_String>`\ ) |const|
+
+Like :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>` but prioritises strings that begin with periods (``.``) and underscores (``_``) before any other character. Useful when sorting folders or file names.
+
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`filenocasecmp_to<class_StringName_method_filenocasecmp_to>`, :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>`, and :ref:`casecmp_to<class_StringName_method_casecmp_to>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
+.. _class_StringName_method_filenocasecmp_to:
+
+.. rst-class:: classref-method
+
+:ref:`int<class_int>` **filenocasecmp_to**\ (\ to\: :ref:`String<class_String>`\ ) |const|
+
+Like :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>` but prioritises strings that begin with periods (``.``) and underscores (``_``) before any other character. Useful when sorting folders or file names.
+
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`filecasecmp_to<class_StringName_method_filecasecmp_to>`, :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>`, and :ref:`nocasecmp_to<class_StringName_method_nocasecmp_to>`.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_StringName_method_find:
 .. _class_StringName_method_find:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -1195,7 +1227,7 @@ When used for sorting, natural order comparison orders sequences of numbers by t
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>`, :ref:`nocasecmp_to<class_StringName_method_nocasecmp_to>`, and :ref:`casecmp_to<class_StringName_method_casecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>`, :ref:`filecasecmp_to<class_StringName_method_filecasecmp_to>`, and :ref:`nocasecmp_to<class_StringName_method_nocasecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1213,7 +1245,7 @@ When used for sorting, natural order comparison orders sequences of numbers by t
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>`, :ref:`nocasecmp_to<class_StringName_method_nocasecmp_to>`, and :ref:`casecmp_to<class_StringName_method_casecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>`, :ref:`filenocasecmp_to<class_StringName_method_filenocasecmp_to>`, and :ref:`casecmp_to<class_StringName_method_casecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -1229,7 +1261,7 @@ Performs a **case-insensitive** comparison to another string. Returns ``-1`` if
 
 
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 With different string lengths, returns ``1`` if this string is longer than the ``to`` string, or ``-1`` if shorter. Note that the length of empty strings is *always* ``0``.
 
 
-To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`casecmp_to<class_StringName_method_casecmp_to>`, :ref:`naturalcasecmp_to<class_StringName_method_naturalcasecmp_to>`, and :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>`.
+To get a :ref:`bool<class_bool>` result from a string comparison, use the ``==`` operator instead. See also :ref:`casecmp_to<class_StringName_method_casecmp_to>`, :ref:`filenocasecmp_to<class_StringName_method_filenocasecmp_to>`, and :ref:`naturalnocasecmp_to<class_StringName_method_naturalnocasecmp_to>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 14 - 0
classes/class_textedit.rst

@@ -403,6 +403,8 @@ Methods
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                            | :ref:`set_tooltip_request_func<class_TextEdit_method_set_tooltip_request_func>`\ (\ callback\: :ref:`Callable<class_Callable>`\ )                                                                                                                                                  |
    | |void|                                            | :ref:`set_tooltip_request_func<class_TextEdit_method_set_tooltip_request_func>`\ (\ callback\: :ref:`Callable<class_Callable>`\ )                                                                                                                                                  |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | |void|                                            | :ref:`skip_selection_for_next_occurrence<class_TextEdit_method_skip_selection_for_next_occurrence>`\ (\ )                                                                                                                                                                          |
+   +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                            | :ref:`start_action<class_TextEdit_method_start_action>`\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ )                                                                                                                                                                |
    | |void|                                            | :ref:`start_action<class_TextEdit_method_start_action>`\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ )                                                                                                                                                                |
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                            | :ref:`swap_lines<class_TextEdit_method_swap_lines>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ )                                                                                                                                                      |
    | |void|                                            | :ref:`swap_lines<class_TextEdit_method_swap_lines>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ )                                                                                                                                                      |
@@ -3446,6 +3448,18 @@ Provide custom tooltip text. The callback method must take the following args: `
 
 
 ----
 ----
 
 
+.. _class_TextEdit_method_skip_selection_for_next_occurrence:
+
+.. rst-class:: classref-method
+
+|void| **skip_selection_for_next_occurrence**\ (\ )
+
+Moves a selection and a caret for the next occurrence of the current selection. If there is no active selection, moves to the next occurrence of the word under caret.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TextEdit_method_start_action:
 .. _class_TextEdit_method_start_action:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method

+ 16 - 2
classes/class_tiledata.rst

@@ -86,6 +86,8 @@ Methods
    +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | :ref:`bool<class_bool>`                             | :ref:`is_collision_polygon_one_way<class_TileData_method_is_collision_polygon_one_way>`\ (\ layer_id\: :ref:`int<class_int>`, polygon_index\: :ref:`int<class_int>`\ ) |const|                                                                               |
    | :ref:`bool<class_bool>`                             | :ref:`is_collision_polygon_one_way<class_TileData_method_is_collision_polygon_one_way>`\ (\ layer_id\: :ref:`int<class_int>`, polygon_index\: :ref:`int<class_int>`\ ) |const|                                                                               |
    +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+   | :ref:`bool<class_bool>`                             | :ref:`is_valid_terrain_peering_bit<class_TileData_method_is_valid_terrain_peering_bit>`\ (\ peering_bit\: :ref:`CellNeighbor<enum_TileSet_CellNeighbor>`\ ) |const|                                                                                          |
+   +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                              | :ref:`remove_collision_polygon<class_TileData_method_remove_collision_polygon>`\ (\ layer_id\: :ref:`int<class_int>`, polygon_index\: :ref:`int<class_int>`\ )                                                                                               |
    | |void|                                              | :ref:`remove_collision_polygon<class_TileData_method_remove_collision_polygon>`\ (\ layer_id\: :ref:`int<class_int>`, polygon_index\: :ref:`int<class_int>`\ )                                                                                               |
    +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    +-----------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | |void|                                              | :ref:`set_collision_polygon_one_way<class_TileData_method_set_collision_polygon_one_way>`\ (\ layer_id\: :ref:`int<class_int>`, polygon_index\: :ref:`int<class_int>`, one_way\: :ref:`bool<class_bool>`\ )                                                  |
    | |void|                                              | :ref:`set_collision_polygon_one_way<class_TileData_method_set_collision_polygon_one_way>`\ (\ layer_id\: :ref:`int<class_int>`, polygon_index\: :ref:`int<class_int>`, one_way\: :ref:`bool<class_bool>`\ )                                                  |
@@ -459,7 +461,7 @@ Returns the occluder polygon of the tile for the TileSet occlusion layer with in
 
 
 :ref:`int<class_int>` **get_terrain_peering_bit**\ (\ peering_bit\: :ref:`CellNeighbor<enum_TileSet_CellNeighbor>`\ ) |const|
 :ref:`int<class_int>` **get_terrain_peering_bit**\ (\ peering_bit\: :ref:`CellNeighbor<enum_TileSet_CellNeighbor>`\ ) |const|
 
 
-Returns the tile's terrain bit for the given ``peering_bit`` direction.
+Returns the tile's terrain bit for the given ``peering_bit`` direction. To check that a direction is valid, use :ref:`is_valid_terrain_peering_bit<class_TileData_method_is_valid_terrain_peering_bit>`.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 
@@ -477,6 +479,18 @@ Returns whether one-way collisions are enabled for the polygon at index ``polygo
 
 
 ----
 ----
 
 
+.. _class_TileData_method_is_valid_terrain_peering_bit:
+
+.. rst-class:: classref-method
+
+:ref:`bool<class_bool>` **is_valid_terrain_peering_bit**\ (\ peering_bit\: :ref:`CellNeighbor<enum_TileSet_CellNeighbor>`\ ) |const|
+
+Returns whether the given ``peering_bit`` direction is valid for this tile.
+
+.. rst-class:: classref-item-separator
+
+----
+
 .. _class_TileData_method_remove_collision_polygon:
 .. _class_TileData_method_remove_collision_polygon:
 
 
 .. rst-class:: classref-method
 .. rst-class:: classref-method
@@ -615,7 +629,7 @@ Sets the occluder for the TileSet occlusion layer with index ``layer_id``.
 
 
 |void| **set_terrain_peering_bit**\ (\ peering_bit\: :ref:`CellNeighbor<enum_TileSet_CellNeighbor>`, terrain\: :ref:`int<class_int>`\ )
 |void| **set_terrain_peering_bit**\ (\ peering_bit\: :ref:`CellNeighbor<enum_TileSet_CellNeighbor>`, terrain\: :ref:`int<class_int>`\ )
 
 
-Sets the tile's terrain bit for the given ``peering_bit`` direction.
+Sets the tile's terrain bit for the given ``peering_bit`` direction. To check that a direction is valid, use :ref:`is_valid_terrain_peering_bit<class_TileData_method_is_valid_terrain_peering_bit>`.
 
 
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
 .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`

+ 9 - 13
classes/class_viewport.rst

@@ -514,11 +514,7 @@ enum **RenderInfoType**:
 
 
 :ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_VISIBLE** = ``0``
 :ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_VISIBLE** = ``0``
 
 
-.. container:: contribute
-
-	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
-
-
+Visible render pass (excluding shadows).
 
 
 .. _class_Viewport_constant_RENDER_INFO_TYPE_SHADOW:
 .. _class_Viewport_constant_RENDER_INFO_TYPE_SHADOW:
 
 
@@ -526,23 +522,23 @@ enum **RenderInfoType**:
 
 
 :ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_SHADOW** = ``1``
 :ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_SHADOW** = ``1``
 
 
-.. container:: contribute
+Shadow render pass. Objects will be rendered several times depending on the number of amounts of lights with shadows and the number of directional shadow splits.
 
 
-	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
+.. _class_Viewport_constant_RENDER_INFO_TYPE_CANVAS:
 
 
+.. rst-class:: classref-enumeration-constant
+
+:ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_CANVAS** = ``2``
 
 
+Canvas item rendering. This includes all 2D rendering.
 
 
 .. _class_Viewport_constant_RENDER_INFO_TYPE_MAX:
 .. _class_Viewport_constant_RENDER_INFO_TYPE_MAX:
 
 
 .. rst-class:: classref-enumeration-constant
 .. rst-class:: classref-enumeration-constant
 
 
-:ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_MAX** = ``2``
-
-.. container:: contribute
-
-	There is currently no description for this enum. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
-
+:ref:`RenderInfoType<enum_Viewport_RenderInfoType>` **RENDER_INFO_TYPE_MAX** = ``3``
 
 
+Represents the size of the :ref:`RenderInfoType<enum_Viewport_RenderInfoType>` enum.
 
 
 .. rst-class:: classref-item-separator
 .. rst-class:: classref-item-separator
 
 

+ 1 - 0
classes/index.rst

@@ -320,6 +320,7 @@ Resources
     class_audioeffecteq21
     class_audioeffecteq21
     class_audioeffecteq6
     class_audioeffecteq6
     class_audioeffectfilter
     class_audioeffectfilter
+    class_audioeffecthardlimiter
     class_audioeffecthighpassfilter
     class_audioeffecthighpassfilter
     class_audioeffecthighshelffilter
     class_audioeffecthighshelffilter
     class_audioeffectlimiter
     class_audioeffectlimiter