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.
For some reason, my Godot game would no longer launch on the Steam Deck. I could hear it running as if it were running in the background, but the screen kept showing the Steam Deck’s UI. Since it’s all Linux I figured it should be possible to just drop to the command line and launch …
Are you using @onready to reference nodes? There’s a better way! Here’s a simple example of how many tutorials use @onready to reference nodes: That script is attached to a CanvasLayer node with a ProgressBar called HealthBar. And yet, when running the scene, it will throw an error: This is because there’s actually a spelling …
Creating network connections with Godot is simple — as long as you have the other party’s IP address, and there’s no NAT gateway involved. Unfortunately, that’s exactly the problem in most cases. You don’t know the other party’s IP, and these days, just about everyone is behind a combination wifi router/gateway/firewall with NAT. Conceptually, NAT …
One of the benefits of working with Godot Engine is that GDScript allows one to operate high level. GDScript is dynamically typed, so not even variable types have to be specified, but I would strongly recommend using static typing wherever possible. It can help with performance but primarily adds clarity when trying to follow the …
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
Launching Godot Games on Steam Deck from the command line via Remote Shell
For some reason, my Godot game would no longer launch on the Steam Deck. I could hear it running as if it were running in the background, but the screen kept showing the Steam Deck’s UI. Since it’s all Linux I figured it should be possible to just drop to the command line and launch …
Ditch @onready, use @export instead
Are you using @onready to reference nodes? There’s a better way! Here’s a simple example of how many tutorials use @onready to reference nodes: That script is attached to a CanvasLayer node with a ProgressBar called HealthBar. And yet, when running the scene, it will throw an error: This is because there’s actually a spelling …
Creating a UDP peer-to-peer connection
Creating network connections with Godot is simple — as long as you have the other party’s IP address, and there’s no NAT gateway involved. Unfortunately, that’s exactly the problem in most cases. You don’t know the other party’s IP, and these days, just about everyone is behind a combination wifi router/gateway/firewall with NAT. Conceptually, NAT …
When not all strings are Strings. Detect bugs in your GDscript more easily with static typing
One of the benefits of working with Godot Engine is that GDScript allows one to operate high level. GDScript is dynamically typed, so not even variable types have to be specified, but I would strongly recommend using static typing wherever possible. It can help with performance but primarily adds clarity when trying to follow the …