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 …
Years ago I purchased a game dev bundle on HumbleBundle. Part of that was a sound library called Pro Sound Collection. It’s pretty comprehensive, whether RPG or FPS, there are sounds for a ton of use cases. I might as well use them for something. Luckily for me, the sound collection is pretty well organized. …
A little while ago, I created a type of AudioManager to make it easier to work with sound files in bulk: Rather than assigning audio streams by hand, I was doing it programmatically; reading the contents of a directory and using load() to get the resources. It worked great and saved a lot of time …
Any sufficiently large code base needs documentation. Documentation tends to come in all sorts of shapes and sizes. Among them are high-level architecture and design docs, class and method interface documentation, and inline comments to explain optimized or complex algorithms so the reader doesn’t have to parse the logic in their head (often, this is …
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 …
Audio Manager to handle the loading of sound effects in bulk
Years ago I purchased a game dev bundle on HumbleBundle. Part of that was a sound library called Pro Sound Collection. It’s pretty comprehensive, whether RPG or FPS, there are sounds for a ton of use cases. I might as well use them for something. Luckily for me, the sound collection is pretty well organized. …
Dynamically finding and loading resources from the Filesystem for Android and Web Exports
A little while ago, I created a type of AudioManager to make it easier to work with sound files in bulk: Rather than assigning audio streams by hand, I was doing it programmatically; reading the contents of a directory and using load() to get the resources. It worked great and saved a lot of time …
Generating documentation for GDScript
Any sufficiently large code base needs documentation. Documentation tends to come in all sorts of shapes and sizes. Among them are high-level architecture and design docs, class and method interface documentation, and inline comments to explain optimized or complex algorithms so the reader doesn’t have to parse the logic in their head (often, this is …