-
-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add "Upgrading from Godot 4.0 to Godot 4.1" page
- Loading branch information
Showing
2 changed files
with
172 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,3 +18,4 @@ path. | |
:name: toc-migrating | ||
|
||
upgrading_to_godot_4 | ||
upgrading_to_godot_4.1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,171 @@ | ||
.. _doc_upgrading_to_godot_4.1: | ||
|
||
Upgrading from Godot 4.0 to Godot 4.1 | ||
===================================== | ||
|
||
For most games and apps made with 4.0 it should be relatively safe to migrate to 4.1. | ||
This page intends to cover everything you need to pay attention to when migrating | ||
your project. | ||
|
||
Breaking changes | ||
---------------- | ||
|
||
If you are migrating from 4.0 to 4.1, the breaking changes listed here might | ||
affect you. Changes are grouped by areas/systems. | ||
|
||
.. warning:: | ||
The GDExtension API completely breaks compatibility in 4.1 so it's not included | ||
in the list. GDExtensions built against 4.0 need to be upgraded. | ||
|
||
This article indicates whether each breaking change affects GDScript and whether | ||
the C# breaking change is *binary compatible* or *source compatible*: | ||
|
||
- **Binary compatible** - Existing binaries will load and execute successfully without | ||
recompilation, and the run-time behavior won't change. | ||
- **Source compatible** - Source code will compile successfully without changes when | ||
upgrading Godot. | ||
|
||
Core | ||
^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**UndoRedo** | ||
Method ``create_action`` adds a new ``backward_undo_ops`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-76688`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
Animation | ||
^^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**AnimationNode** | ||
Method ``_process`` adds a new ``test_only`` parameter |❌| |❌| |❌| `GH-75759`_ | ||
Method ``blend_input`` adds a new ``test_only`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-75759`_ | ||
Method ``blend_node`` adds a new ``test_only`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-75759`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
2D nodes | ||
^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**PathFollow2D** | ||
Property ``lookahead`` removed |❌| |❌| |❌| `GH-72842`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
3D nodes | ||
^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**Geometry3D** | ||
Method ``segment_intersects_convex`` changes ``planes`` parameter type from untyped ``Array`` to ``Array[Plane]`` |✔️| |✔️ with compat| |❌| `GH-76418`_ | ||
**MeshInstance3D** | ||
Method ``create_multiple_convex_collisions`` adds a new ``settings`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-72152`_ | ||
**Node3D** | ||
Method ``look_at`` adds a new ``use_model_front`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-76082`_ | ||
Method ``look_at_from_position`` adds a new ``use_model_front`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-76082`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
GUI nodes | ||
^^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**CodeEdit** | ||
Method ``add_code_completion_option`` adds a new ``location`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-75746`_ | ||
**RichTextLabel** | ||
Method ``push_list`` adds a new ``bullet`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-75017`_ | ||
Method ``push_paragraph`` adds a new ``justification_flags`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-75250`_ | ||
Method ``push_paragraph`` adds a new ``tab_stops`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-76401`_ | ||
**Tree** | ||
Method ``edit_selected`` adds a new ``force_edit`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-76794`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
Rendering | ||
^^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**RenderingDevice** | ||
Method ``draw_list_begin`` changes ``storage_textures`` parameter type from untyped ``Array`` to ``Array[RID]`` |✔️| |✔️ with compat| |❌| `GH-76418`_ | ||
**SurfaceTool** | ||
Method ``add_triangle_fan`` changes ``tangents`` parameter type from untyped ``Array`` to ``Array[Plane]`` |✔️| |✔️ with compat| |❌| `GH-76418`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
Navigation | ||
^^^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**NavigationAgent2D** | ||
Method ``set_velocity`` replaced with ``velocity`` property |✔️| |❌| |❌| `GH-69988`_ | ||
Property ``time_horizon`` split into ``time_horizon_agents`` and ``time_horizon_obstacles`` |❌| |❌| |❌| `GH-69988`_ | ||
**NavigationAgent3D** | ||
Property ``agent_height_offset`` renamed to ``path_height_offset`` |❌| |❌| |❌| `GH-69988`_ | ||
Property ``ignore_y`` removed |❌| |❌| |❌| `GH-69988`_ | ||
Method ``set_velocity`` replaced with ``velocity`` property |✔️| |❌| |❌| `GH-69988`_ | ||
Property ``time_horizon`` split into ``time_horizon_agents`` and ``time_horizon_obstacles`` |❌| |❌| |❌| `GH-69988`_ | ||
**NavigationObstacle2D** | ||
Property ``estimate_radius`` removed |❌| |❌| |❌| `GH-69988`_ | ||
Method ``get_rid`` renamed to ``get_agent_rid`` |❌| |❌| |❌| `GH-69988`_ | ||
**NavigationObstacle3D** | ||
Property ``estimate_radius`` removed |❌| |❌| |❌| `GH-69988`_ | ||
Method ``get_rid`` renamed to ``get_agent_rid`` |❌| |❌| |❌| `GH-69988`_ | ||
**NavigationServer2D** | ||
Method ``agent_set_callback`` renamed to ``agent_set_avoidance_callback`` |❌| |❌| |❌| `GH-69988`_ | ||
Method ``agent_set_target_velocity`` removed |❌| |❌| |❌| `GH-69988`_ | ||
Method ``agent_set_time_horizon`` split into ``agent_set_time_horizon_agents`` and ``agent_set_time_horizon_obstacles`` |❌| |❌| |❌| `GH-69988`_ | ||
**NavigationServer3D** | ||
Method ``agent_set_callback`` renamed to ``agent_set_avoidance_callback`` |❌| |❌| |❌| `GH-69988`_ | ||
Method ``agent_set_target_velocity`` removed |❌| |❌| |❌| `GH-69988`_ | ||
Method ``agent_set_time_horizon`` split into ``agent_set_time_horizon_agents`` and ``agent_set_time_horizon_obstacles`` |❌| |❌| |❌| `GH-69988`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
Editor plugins | ||
^^^^^^^^^^^^^^ | ||
|
||
======================================================================================================================== =================== ==================== ==================== =========== | ||
Change GDScript Compatible C# Binary Compatible C# Source Compatible Introduced | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
**AnimationTrackEditPlugin** | ||
Type ``AnimationTrackEditPlugin`` removed |❌| |❌| |❌| `GH-76413`_ | ||
**EditorInterface** | ||
Type ``EditorInterface`` changes inheritance from ``Node`` to ``Object`` |✔️| |❌| |❌| `GH-76176`_ | ||
Method ``set_movie_maker_enabled`` replaced with ``movie_maker_enabled`` property |✔️| |❌| |❌| `GH-76176`_ | ||
Method ``is_movie_maker_enabled`` replaced with ``movie_maker_enabled`` property |✔️| |❌| |❌| `GH-76176`_ | ||
**EditorResourcePreviewGenerator** | ||
Method ``_generate`` adds a new ``metadata`` parameter |❌| |❌| |❌| `GH-64628`_ | ||
Method ``_generate_from_path`` adds a new ``metadata`` parameter |❌| |❌| |❌| `GH-64628`_ | ||
**EditorUndoRedoManager** | ||
Method ``create_action`` adds a new ``backward_undo_ops`` optional parameter |✔️| |✔️ with compat| |✔️| `GH-76688`_ | ||
======================================================================================================================== =================== ==================== ==================== =========== | ||
|
||
|
||
.. |❌| replace:: :abbr:`❌ (This API breaks compatibility.)` | ||
.. |✔️| replace:: :abbr:`✔️ (This API does not break compatibility.)` | ||
.. |✔️ with compat| replace:: :abbr:`✔️ (This API does not break compatibility. A compatibility method was added.)` | ||
|
||
.. _GH-64628: https://github.com/godotengine/godot/pull/64628 | ||
.. _GH-69988: https://github.com/godotengine/godot/pull/69988 | ||
.. _GH-72152: https://github.com/godotengine/godot/pull/72152 | ||
.. _GH-72842: https://github.com/godotengine/godot/pull/72842 | ||
.. _GH-75017: https://github.com/godotengine/godot/pull/75017 | ||
.. _GH-75250: https://github.com/godotengine/godot/pull/75250 | ||
.. _GH-75746: https://github.com/godotengine/godot/pull/75746 | ||
.. _GH-75759: https://github.com/godotengine/godot/pull/75759 | ||
.. _GH-76082: https://github.com/godotengine/godot/pull/76082 | ||
.. _GH-76176: https://github.com/godotengine/godot/pull/76176 | ||
.. _GH-76401: https://github.com/godotengine/godot/pull/76401 | ||
.. _GH-76413: https://github.com/godotengine/godot/pull/76413 | ||
.. _GH-76418: https://github.com/godotengine/godot/pull/76418 | ||
.. _GH-76688: https://github.com/godotengine/godot/pull/76688 | ||
.. _GH-76794: https://github.com/godotengine/godot/pull/76794 |