I’ve never been a big fan of “game engines”. I’ve always found them either too bloated and complex to be mastered in a reasonable time (thus, preferring rewriting things myself), or too simplistic and limited to be suitable for big projects.
However, some time ago I stumbled on the Godot Engine. And I think that this one can be the one that can make me change my mind.
First of all, the dev system is really compact, the ide/editor itself is a little executable that doesn’t require any installation; you put it wherever you like and you get rid of it by simply throwing it in the bin. In less than 100Mbytes you get a visual 3D/2D environment where you can build your virtual worlds with lots of prebuilt objects representing the most common tools a game developer needs: 3d stuff, physics, GUI controls/widgets, networking, and so on. Neat!
Second, the learning curve is really good, if you have a bit of experience in game development: things are deployed in a very clever way, you don’t need to immediately understand everything to be quickly productive, simple things are simple and complex things are possible. You reuse components already available for the most common stuff, and you can extend them using the internal scripting language, GDscript, to add the required additional functionalities your game may need. It’s even possible to improve/add core functionalities to the engine by adding your own C++ libraries and objects in a very clean way, thanks to the “modules” interface, a really really good point: what about porting the AVC library, in order to use the Godot Engine as the basis of my next racing sims?
I still need to dig in more into this project, but, as a first impression, I should say that it’s really interesting.