Develop and publish your project on any modern desktop platform. Let everyone play your game by deploying to web and mobile. Make your game handle various forms of inputs and share the same project between every release.
Godot is free under the MIT license. This means you don't owe us anything (other than a friendly mention), and can do with your project or even the engine itself whatever you want. Build your game or build your own engine on top of it – it's all in your hands.
Godot 4 is the latest stable version, but, if you want to stick to the true and trusted Godot 3, download the long-term support version.
Features
Build your game from simple blocks
Use building blocks called nodes to create more complex and reusable scenes. Add scripts to your scenes and customize built-in behavior to implement your unique game mechanics. Rely on composition and node hierarchy to make game logic clear at a glance.
Extend beyond features provided by the engine
Make your scenes into full-featured components, with tools for your designers to tweak and adjust the look and function. Share your components with the community of like-minded developers as addons and templates.
Write code without hurdles with a high-level scripting language
Get things done quickly with Godot's built-in scripting language GDScript. Inspired by Python and other languages, it is easy to pick up even if you are a beginner. Tight engine integration allows it to express game logic in a clear and natural form.
Leverage your C# experience to feel right at home
If you're an experienced C# user, Godot offers you first-class support for the .NET platform. Power your game with familiar libraries and give them performance boost, while still benefiting from close engine integration.
Note: .NET support is provided as a dedicated engine executable. C# support is currently only available for desktop platforms in Godot 4. Use Godot 3 to run C# on Android, iOS and Web.
Pick from a variety of community-supported languages
Godot is built to be extended, and that means you can choose a programming language not provided by the Godot team itself. Thanks to our community there are many language bindings for popular tools like Rust, Nim, Python, and JavaScript.
Modify the engine itself and integrate with 3rd party libraries
Thanks to the modular structure and a straightforward build process of Godot you can create your own engine modules. Gain every last drop of performance or integrate with many 3rd party libraries with low-level C++ code.
Support both high and low-end devices
Make beautiful 3D games for a range of devices, starting from desktop computers and ending with mid-range Android phones. Powered by OpenGL, Godot allows your projects to run on most modern GPUs, including integrated graphics.
Seamlessly integrate with your asset pipeline
Bring your 3D models into your game world with a robust importing pipeline. Take entire scenes – with animated models, lighting, cameras, and physics objects, – and customize how the engine views them. Modify your assets and see changes in the engine immediately.
Specialized 2D workflow for games and apps
Thanks to a dedicated 2D pipeline you can forget about Z axis, and simplify your game logic. Think in pixels and screen coordinates, while the engine does the rest.
Save time creating 2D worlds with a tile map editor
Whether you want procedural generation or a meticulously hand-crafted level, with Godot's built-in tile map editor you can achieve every goal. Import a sprite and convert it into a database of building blocks for your 2D worlds.
Master usability with a flexible GUI system
Build scalable and adaptive user interfaces with Godot's unique GUI system. Created specifically to power layouts common to games, it is also capable of handling complex UI applications and tools.
Partner with a publisher to target consoles
If you want to release to a console, you can find several 3rd party publishers which specialize on that. Godot games can run on any modern hardware, all you need to worry about is your performance and controls.
Find the logic behind any system in an open source codebase
No need to wait for a support team to respond when you can read the source code. Godot is an open book, and you can figure out everything that is not yet documented after a single git checkout. If you find and fix an issue, we will appreciate a PR upstream too.
What's New
Complete release notes can be found here.
It's been a while since our previous maintenance releases for the 4.2 and 4.1 branches, but the wait should be worth it!
We've had ample time for bug fixes to be tested in 4.3 dev snapshots before being backported to the stable branches, which means that the new Godot 4.2.2 in particular is significantly bigger than the usual patch releases.
We release both 4.2.2 and 4.1.4 at the same time as it was convenient to prepare and test both in parallel:
- The 4.1 branch is our previous stable branch, for which we limit ourselves to backporting only the safest or most critical fixes, to ensure that users who are still on 4.1.x (e.g. for already published games) can update smoothly without bad surprises.
- Most in-development projects are currently on the 4.2 branch, so while we also focus on preserving compatibility, we've included more quality-of-life improvements to make it easier to use Godot 4.2 in production.
Highlights of 4.2.2
150+ contributors submitted more than 400 improvements for this release, which makes it pretty significant as far as patch releases go. 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.
Here's a short selection of some of the most relevant changes.
Improved command line export pipeline
A lot of users use CI/CD pipelines such as GitHub Actions or GitLab CI to export their game to all their supported platforms automatically. This implies checking out the source repository of the project, and running Godot from the command line (in so-called "headless" mode, i.e. no graphical display) to perform the export with the --export-release or --export-debug commands.
For a long time now, users have been struggling with some associated issues, such as:
- Source repositories typically don't include the .godot folder with imported resources, so before exporting, the editor needs to run once (still in headless mode) to properly import everything, generate the GDScript class_name cache, etc. This is now much easier to do thanks to a new --import command which does exactly that and then exits, without having to jump through hoops (GH-90431). This command is also implied in --export-release/--export-debug, so you don't even need to call it explicitly unless you want to (e.g. to run unit tests before exporting).
- The "headless" mode of Godot for command-line use relies on a no-op rendering backend which implements the API without requiring an actual GPU and display to run their logic. Some scaffolding was missing there to properly support MultiMesh data and shader parameters, which should now be fixed too (GH-87390, GH-87392).
- The exit code is now properly set when the command line export fails, so your scripts can react accordingly (GH-89234).
Fixed audio crackling issues on Windows
A now infamous issue (GH-75109) has been affecting a number of Godot users on Windows with more advanced audio setups, which caused seemingly random audio crackling or distortion issues. This was particularly bad as it also affected published Godot 4 games, which could be quite annoying for players.
Thanks to a lot of testing and experimentation by the community, the issue was finally fixed in Godot's WASAPI driver (GH-89283), and the fix is now included in 4.2.2 and 4.1.4.
Workaround for some types of "corrupted scene" load errors
We are well aware that a lot of users routinely run into issues when refactoring their project by renaming or moving files around. There are multiple reasons for these errors, some which have been fixed already in the 4.3 dev branch, and we will backport what we can to also address the most egregious problems in 4.2 too.
One such improvements is to allow loading scenes with missing external resources (due to having moved them around, especially from outside Godot) instead of reporting the scene as corrupted (GH-85159, GH-90269). This isn't perfect, but should already help significantly when this happens.
Fixes to animation features after the move to AnimationMixer in 4.2
The Godot 4.2 release had a major refactoring of AnimationPlayer and AnimationTree on top of a common AnimationMixer base class, to share the base implementation for many common features. There were still some regressions we didn't have time to solve before the 4.2 release, but work continued afterwards. A number of those issues are now being fixed in 4.2.2, and old bugs have also been fixed at the same time. Please check the "Animation" category of the interactive changelog for details.
And a lot more!
There are many other important changes! We strongly suggest giving the interactive changelog a good read, especially in areas which are particularly relevant for your projects. Here's a few more noteworthy focus areas:
- Android: Target SDK changed to API level 34 (Android 14) (GH-87346).
- Animation: Many fixes to animation features after the move to AnimationMixer in 4.2.
- C#: Fixed duplicate key issue on reload (GH-87838), and many other C# bugs.
- Documentation: A metric ton of class reference improvements!
- Editor: Improve 3D visualization of origin lines (GH-83895) and Curve3D-related debug information (GH-83698).
- Editor: Fix editor profiler script function sort order (GH-87661).
- GDScript: Faster LSP message processing to use with external editors (GH-89284), as well as many code completion improvements.
- Import: Fixed multiple issues with mesh compression (GH-88738).
- Rendering: Fix Camera2D frame delay (GH-84465).
- Rendering: Fix Volumetric Fog VoxelGI updates (GH-86023).
- Rendering: Significantly improve the speed of shader compilation in compatibility backend (GH-87553).
- Thirdparty: Mbed TLS 2.28.8, ThorVG 0.12.10.
Requirements
- Recommended: Vulkan 1.0 compatible hardware
- Minimal: OpenGL 3.3 / OpenGL ES 3.0 compatible hardware
- Additional requirements for the .NET version: .NET SDK