Hope you’ve had a great weekend! We certainly enjoyed hosting a conference for our community — GodotCon 2023, with two dozen talks and workshops, giving insights into using the engine, and building it as well. The talks are available online over at the site of our partners, the Chaos Computer Club, and soon will be uploaded to the official YouTube channel as well.
But now it’s back to business for Godot contributors, as we’re entering another week of beta testing for Godot 4.2. Beta 5 addresses a large number of crashes across all engine and editor systems. You should also have fewer problems when moving Godot 4.1 projects over to 4.2, thanks to a rework to the mesh format conversion tool and new compatibility options for imported glTF scenes.
This release also includes two compatibility breaking changes. While they are unlikely to affect any existing projects, it’s still worth a mention. A previously unutilized notification,
NOTIFICATION_NODE_RECACHE_REQUESTED, was completely removed from the engine (besides being unutilized it also conflicted with some other notifications, causing problems for some GDExtensions). Additionally,
AnimationLibrary erroneously had its internal data property exposed, which was corrected.
Jump to the Downloads section, and give it a spin right now, or continue reading to learn more about improvements in this release. You can also try the Web editor or the Android editor for this release. If you are interested in the latter, please request to join our testing group to get access to pre-release builds.
The illustration picture for this article is taken from Liberation — a space sim game by Luke Miller with a catchy and beautiful retro aesthetic. Made with open source tools, including Godot 4.2, it’s available right now on Steam (with a demo too). Make sure to also follow Luke on social networks (Mastodon, Twitter).
For an overview of what’s new overall in Godot 4.2, have a look at the release notes for 4.2 beta 1, which cover a lot of the changes. This blog post only covers the changes between beta 4 and beta 5.
27 contributors submitted 58 improvements for this release. You can review the complete list of changes with our interactive changelog, which contains links to relevant commits and PRs for this and every previous release. Below are the most notable changes compared to 4.2-beta4:
- Animation: Move animation slice processing to
- Animation: Fix handling of
AnimationMixer’s track paths when renaming nodes (GH-84282).
- Animation: Unexpose internal data property of
- Animation: Add
PackedArrayto the list of enforcing
- Animation: Fix RESET not effective when saving inactive scene (GH-84405).
- Buildsystem: Linux: Remove hardcoded lib path for x86 cross-compilation (GH-84307).
- C#: Fix crash with
- Core: Remove unused
- Editor: Optimize and fix some class and gizmo icons (GH-82133).
- Editor: Fix ownership bugs in node copy and pasting (GH-83596).
- Editor: Fix some
Node3DEditorsnapping issues (GH-84049).
- Editor: Fix various crashes in the Filesystem dock (GH-84217, GH-84218).
- Editor: Fix pressing save in Import Defaults not working (GH-84291).
- Editor: Disconnect
EditorNodefrom file dialogs on destruction (GH-84302).
- Editor: Tweak FastNoiseLite property hints for better slider usability (GH-84494).
- Export: macOS: Remove deprecated altool notarization support, disable rcodesign for C# version (GH-83482).
- GDExtension: Save and compare modification times separately for reload (GH-84315).
- GDScript: Fix
_get_debug_tooltipcrash if tooltip string is too large (GH-81018).
- GUI: Fix
activate_item_by_eventinfinite recursion crash (GH-84183).
- GUI: TextServer: Fix glyph comparator ambiguous output (GH-84232).
- GUI: TextServer: Fix line breaks for dropcap and resizing embedded objects (GH-84287).
- Import: Enhance checks and user experience around tangent arrays in meshes (GH-84252).
- Import: Implement glTF compatibility system for files imported in older Godot versions (GH-84271).
- Particles: Fix several
Materialtexture parameter updates (GH-84303).
- Physics: Fix rotated tile collision not working at runtime (GH-84261).
- Porting: Android: Use
ANDROID_HOMEto automatically locate Android SDK (GH-84285, GH-84316).
- Porting: macOS: Fallback to native OpenGL renderer if ANGLE initialization failed (GH-83753, GH-84288).
- Rendering: Overhaul the mesh format conversion tool (GH-84200).
- Rendering: Fix cubemap downsampler logic (GH-84223).
- Rendering: Fix WebXR on desktop emulator by reseting active texture unit (GH-84267).
- Shaders: GLES: Fix int to uint implicit cast error when using mat3 uniform (GH-81494).
- Thirdparty: mbedtls: Backport Windows fix to use bcrypt for entropy (GH-84042).
This release is built from commit
Standard build includes support for GDScript and GDExtension.
.NET build (marked as
mono) includes support for C#, as well as GDScript and GDExtension.
- .NET build requires .NET SDK 6.0 or 7.0 installed in a standard location.
- .NET 8.0 should also be supported, but keep in mind this version of the .NET SDK is still in preview. Give it a try and let us know if you find any bugs.
- To export to Android, .NET 7.0 or later is required. To export to iOS, .NET 8.0 is required. Make sure to set the target framework in the
While engine maintainers try their best to ensure that each preview snapshot and release candidate is stable, this is by definition a pre-release piece of software. Be sure to make frequent backups, or use a version control system such as Git, to preserve your projects in a case of corruption or data loss.
There are currently no known issues introduced by this release.
With every release we accept that there are going to be various issues, which have already been reported but haven’t been fixed yet. See the GitHub issue tracker for a complete list of known bugs.
As a tester, we encourage you to open bug reports if you experience issues with this release. Please check the existing issues on GitHub first, using the search function with relevant keywords, to ensure that the bug you experience is not already known.
In particular, any change that would cause a regression in your projects is very important to report (e.g. if something that worked fine in previous 4.x releases, but no longer works in 4.2 beta 5).
Godot is a non-profit, open source game engine developed by hundreds of contributors on their free time, as well as a handful of part or full-time developers hired thanks to generous donations from the Godot community. A big thank you to everyone who has contributed their time or their financial support to the project!
If you’d like to support the project financially and help us secure our future hires, you can do so using the Godot Development Fund platform managed by Godot Foundation. There are also several alternative ways to donate which you may find more suitable.