The core of the Godot development focus is on the upcoming Godot 4.2, currently with a 3rd dev snapshot. But we haven’t forgotten about the 3.6 release, which has a slow but steady influx of important bug fixes, platform improvements, and rendering features. Godot 3 is still very important for a significant part of the ecosystem - notably people with released games, games close to being released, or who need to target OpenGL 2 / WebGL 1 to maximize device compatibility.
A lot of work is also being done to improve the Android editor port. We’re looking for interested users to help test the beta snapshots via Google Play, and provide us with feedback and automated reports on potential issues. You can join the testing group here to get access.
You can also try the Web editor.
Two new important features for 2D are introduced in this beta, courtesy of lawnjelly.
2D hierarchical culling
Previously, each 2D item was checked individually to see whether it was off screen and so not needing to be drawn (culling). With hierarchical culling, entire branches of the scene tree can be culled at once, which can significantly increase performance on large 2D maps that contain a lot of off screen items.
Hierarchical culling defaults to on, but can be switched back to the legacy (“Item”) mode with the project setting
rendering/2d/options/culling_mode, in case of regressions.
2D physics interpolation
Godot 3.5 introduced 3D physics interpolation with great success, and users have been awaiting its 2D counterpart, so here it comes! This initial version of 2D physics interpolation supports most objects, including
CPUParticles2D, but is a work in progress that will depend on your feedback. Notably (GPU)
Particles2D is not yet supported, but the initial version should be good for experimentation. There will be bugs and special cases for lawnjelly to fix, please report these on GitHub.
See the curated changelog for a selection of some of the main changes since Godot 3.5.2. We now also have a great interactive changelog you can use to review the changes since the previous beta, with convenient links to the relevant PRs on GitHub.
Here are some of the main changes you might be interested in:
- 2D: Make autotiles fall back to the most similar bitmask (GH-71533).
- 2D: Fix AnimatedSprite normal map loading (GH-80406).
- 3D: Fix OccluderPolyShape handles disappear after release click (GH-79947).
- Assetlib: Add support for svg images in the asset library (GH-70502).
- Audio: Fix trim when importing WAV (GH-78048).
- Audio: PulseAudio: Remove
- Buildsystem: Add support for single compilation unit builds (GH-78113).
- C#: Print error when MethodBind call fails (GH-79433).
- Core: Fix overwriting of Spatial’s local transform (GH-78439).
- Export: macOS: Backport notarytool, provisioning profile and PKG export options (GH-80239).
- GUI: Add tab Metadata to Tabs & TabContainer (GH-75959).
- GUI: RichTextLabel: Cache text property when toggling BBCode (GH-77403).
- GUI: Fix
PopupMenu’s automatic max height (GH-77691).
- GUI: Backport video loop property and fix for initial black frame (GH-77979).
- Import: Implement loading DDS textures at run-time (GH-69101).
- Import: Bounds fixes in
- Input: Fix just pressed and released with short presses (GH-77040).
- Input: Prevent double input events on gamepad when running through steam input (GH-79706).
- Network: Better handle truncated socket messages (GH-79704).
- Particles: Fix 2D MultiMesh hierarchical culling (GH-80106).
- Plugin: Expose the TextEdit control of the script editor (GH-78047).
- Porting: Add
audio/general/text_to_speechproject setting to enable/disable TTS (GH-77352).
- Porting: Android: Improve touchpad and mouse support for the Android editor (GH-77497).
- Porting: Android: Add Android editor setting to control the window used to run the project (GH-77677).
- Porting: Linux: Cache TTS voice list (GH-77775).
- Porting: Linux: Use current keyboard layout in
- Porting: Fix
ProjectSettings::localize_pathfor Windows paths (GH-80072).
- Rendering: Canvas item hierarchical culling (GH-68738).
- Rendering: 2D Fixed Timestep Interpolation (GH-76252).
- Rendering: Physics Interpolation: Add support for CPUParticles2D (GH-80176).
- Shaders: Fix
NODE_POSITION_VIEWshader built-in (GH-76226).
- Documentation updates.
This release is built from commit 21ab700f2.
The downloads for this dev snapshot can be found directly on our repository:
- Standard build (GDScript, GDNative, VisualScript).
- Mono build (C# support + all the above). You need to have dotnet CLI or MSBuild installed to use the Mono build. Relevant parts of Mono 22.214.171.124 are included in this build.
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 3.5.x no longer works in 3.6 beta 3).
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.