Our third development snapshot of the 4.6 release cycle is upon us, and now the floodgates are well and truly open. The enhancements are bigger than ever, with several of them overhauling the look of the editor itself entirely! Big features necessitate big changes, which means the potential for big bugs and regressions; early reports and tests remain crucial to catch these issues as soon as possible.

Please consider supporting the project financially, if you are able. Godot is maintained by the efforts of volunteers and a small team of paid contributors. Your donations go towards sponsoring their work and ensuring they can dedicate their undivided attention to the needs of the project.

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, the XR 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 cover illustration is from My Card Is Better Than Your Card!, a roguelike deckbuilder where you stick stickers to become the coolest kid on the playground. You can get the game or try the demo on Steam, and follow the developers on YouTube or Bluesky.

Highlights

New editor theme

Longtime users of the Godot Editor are likely familiar with one of its most popular custom themes: the Godot Minimal Theme. Created by passivestar, and showcased in the first dev snapshot, this skin has become a favorite for many users thanks to a focus on its namesake: minimalism. One of the most frequent suggestions from the community has been an official integration of this theme in some capacity, to make the barrier of entry that much shorter. We’ll do you one better: it’s now the default theme for the editor!

New editor theme

Michael Alexsander was tasked with helming the official implementation of this theme (GH-111118), receiving help from passivestar directly to ensure a smooth and streamlined transition. Through his efforts, as well as several accompanying theme-related PRs from many other contributors such as Douglas Leão, we’re excited to (re)-introduce the newly dubbed “Modern Theme”!

We still love our original theme, henceforth known as the “Classic Theme,” and will continue to support it in tandem. It can be accessed through the interface/theme/style and interface/theme/preset settings.

It may surprise some that we chose to set the default color to a dark grey instead of the classic blue that makes our editor stand out at first glance. It is primarily due to the fact that it caused some issues with the perceived white balance. Removing hue from the equation resolves most of these problems.

While originally implemented as a 1-to-1 port of the Minimal Theme, we’ve already been making adjustments to better suit the design philosophies of the Godot Foundation itself. Namely: prioritizing accessibility options and retaining readability. As such, this implementation should not be taken as a final representation of this theme; the team fully welcomes and encourages early feedback in order to flush out any lingering blind spots. Nonetheless, we’re excited with the amount of progress made already, and hope you enjoy this new theme firsthand!

The project showcased in the new theme exhibit is Librerama, by Michael Alexsander.

Condense inspector layout for arrays

In a similar vein to the previous point, we’ve applied a similar minimal-style overhaul to the array inspector. This change is inherent to the inspector itself, so the benefits will be shown regardless of which theme is chosen. Koliur Rahman has brought us this revamped implementation, trimming away wasted space by consolidating information and logic to their essential elements (GH-103257).

OldNew
Array oldArray new

Rendering: Overhaul screen space reflections

The editor has gotten a lot of love in this blog post, so let’s shake things up with some rendering news! Skyth has been hard at work overhauling our current screen space reflection logic, and their efforts in GH-111210 have resulted in better performance and higher quality! The PR is readily available for those seeking a more technical deep-dive on the “how”, but we’re here to showcase the end results; they should speak for themselves:

64 Max Steps

OldNew (half)New (full)
64 max steps old64 max steps new (half)64 max steps new (full)

256 Max Steps

OldNew (half)New (full)
256 max steps old256 max steps new (half)256 max steps new (full)

Roughness

OldNew
Roughness oldRoughness new

Metallic Surface

OldNew (half)New (full)
Metallic surface oldMetallic surface new (half)Metallic surface new (full)

And more!

There are too many exciting changes to list them all here, but here’s a curated selection:

  • Animation: Remove default skeleton path in MeshInstance3D (GH-112267).*
  • Editor: Add Create Resource Hotkey (GH-110641).
  • Editor: Add splitter to “Create New Node” dialog (GH-111017).
  • Editor: Android Editor: Add game speed control options in game menu bar (GH-111296).
  • Editor: FindInFiles: Allow replacing individual results (GH-109727).
  • Editor: Speed up deletion via the Scene Tree Dock in large trees (GH-109511).
  • Editor: Use Inter as the default editor font, features enabled (GH-111140).
  • Export: Android: Add export option to use scrcpy to run project from editor (GH-108737).
  • Export: Fix custom icon in Android export (GH-111688).
  • Import: Betsy: Convert RGB to RGBA on the GPU for faster compression (GH-110060).
  • Navigation: Make NavigationServer backend engine selectable (GH-106290).
  • Rendering: Add Persistent Buffers utilizing UMA (GH-111183).
  • Rendering: Implement a very simple SSAO in GLES3 (GH-109447).
  • Rendering: Overhaul and optimize Glow in the mobile renderer (GH-110077).
  • Rendering: Use half float precision buffer for 3D when HDR2D is enabled (GH-109971).
  • Tests: Add Android instrumented tests to the app module (GH-110829).

*If relying on the default skeleton_path in some scenes, users should manually re-specify the parent node as the NodePath, or they can enable the animation/compatibility/default_parent_skeleton_in_mesh_instance_3d project setting to restore the pre-4.6 behavior.

Changelog

101 contributors submitted 239 fixes for this release. See our interactive changelog for the complete list of changes since 4.6-dev2. You can also review all changes included in 4.6 compared to the previous 4.5 feature release.

This release is built from commit 9d84f3d13.

Downloads

Standard build includes support for GDScript and GDExtension.

.NET build (marked as mono) includes support for C#, as well as GDScript and GDExtension.

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 case of corruption or data loss.

Known issues

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.

Bug reports

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 this snapshot).

Support

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 and 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.

Donate now