Godot Engine is an open-source game engine. With the 4.0 release on the horizon, it’ll gain quite a bit of attention. And it’s an engine worth keeping an eye on.
Internet Gaming. Serious business.
Game development is serious business. The global gaming market size was 203 billion USD in 2020 (per fortunebusinessinsights). It is predicted to grow by another 125 billion USD until 2025 per yahoo!finance.
The market is dominated by Unreal Engine and Unity, which are mature engines with strong ecosystems of assets, plugins, middleware offerings, tutorials, and licensing.
Why Godot?
The Godot Engine is one of the most approachable engines for anyone starting their game development journey. It offers language support for every skill level and demand; its own language GDScript, C#, and C++ via modules. Community bindings for other languages. Godot is attractive because it’s approachable, and because it’s going to go through an accelerated growth phase.
I think of Godot Engine more like a web browser, executing a type of script. Godot works with nodes that make up the scene tree. This is roughly the equivalent of web browsers’ DOM elements. In Godot, collections of nodes are called scenes, web developers know them as web components. Conceptually, a scene in Godot is roughly the equivalent of a Single File Component in Vue or a React component. Conceptually, there are a lot of similarities.
While defining behavior via scripts is still imperative, it’s possible to craft components that provide both design-time and run-time functionality and thus essentially offer low-code/no-code solutions, lowering the barrier to entry for aspiring game creators.
Most engines have similar concepts — scene tree, property inspectors, and all that, but Godot is ideal because you have access to every line of source code. If you want to know how it works, it’s all there. The engine itself is distributed under a friendly MIT license.
I’m wrapping up development on version 1 of the Inventory System, which is currently at v1.18.1. All core functionality is in place, and it provides many quality-of-life features. The guide covers and walks through most of the code base, and the demo projects show off a lot of use cases. This first version has been …
Godot’s resources are quite powerful. However, modifying a resource class doesn’t automatically update any corresponding .tres files, unless you happen to edit a scene that uses that resource in some way. This doesn’t impact runtime behavior — the game still runs as expected. But it can impact version control and result in a messier diff …
Arguably, more fun than writing code is removing code. I was assembling a split-screen multiplayer UI. The goal behavior is to show/hide the appropriate displays for the players, depending on how many players there are. Initially, the code to update the UI was very simple, because I started with two players. In that case, you …
Is Godot is the Linux of Game Engines?
Godot Engine is an open-source game engine. With the 4.0 release on the horizon, it’ll gain quite a bit of attention. And it’s an engine worth keeping an eye on.
Internet Gaming. Serious business.
Game development is serious business. The global gaming market size was 203 billion USD in 2020 (per fortunebusinessinsights). It is predicted to grow by another 125 billion USD until 2025 per yahoo!finance.
The market is dominated by Unreal Engine and Unity, which are mature engines with strong ecosystems of assets, plugins, middleware offerings, tutorials, and licensing.
Why Godot?
The Godot Engine is one of the most approachable engines for anyone starting their game development journey. It offers language support for every skill level and demand; its own language GDScript, C#, and C++ via modules. Community bindings for other languages. Godot is attractive because it’s approachable, and because it’s going to go through an accelerated growth phase.
I think of Godot Engine more like a web browser, executing a type of script. Godot works with nodes that make up the scene tree. This is roughly the equivalent of web browsers’ DOM elements. In Godot, collections of nodes are called scenes, web developers know them as web components. Conceptually, a scene in Godot is roughly the equivalent of a Single File Component in Vue or a React component. Conceptually, there are a lot of similarities.
While defining behavior via scripts is still imperative, it’s possible to craft components that provide both design-time and run-time functionality and thus essentially offer low-code/no-code solutions, lowering the barrier to entry for aspiring game creators.
Most engines have similar concepts — scene tree, property inspectors, and all that, but Godot is ideal because you have access to every line of source code. If you want to know how it works, it’s all there. The engine itself is distributed under a friendly MIT license.
Related Posts
Inventory System v1.18.1 available (and v2 progress update)
I’m wrapping up development on version 1 of the Inventory System, which is currently at v1.18.1. All core functionality is in place, and it provides many quality-of-life features. The guide covers and walks through most of the code base, and the demo projects show off a lot of use cases. This first version has been …
Update all resources after modifying a resource class
Godot’s resources are quite powerful. However, modifying a resource class doesn’t automatically update any corresponding .tres files, unless you happen to edit a scene that uses that resource in some way. This doesn’t impact runtime behavior — the game still runs as expected. But it can impact version control and result in a messier diff …
A GDScript refactoring exercise
Arguably, more fun than writing code is removing code. I was assembling a split-screen multiplayer UI. The goal behavior is to show/hide the appropriate displays for the players, depending on how many players there are. Initially, the code to update the UI was very simple, because I started with two players. In that case, you …
Inventory System v1.12 available
Crafting is here! The latest inventory system version is now available with the following features: The bug fixes: