35
Godot: The Good, the Bad, and the Ugly
(blog.odorchaidhe.games)
Welcome to the programming.dev Godot community!
This is a place where you can discuss about anything relating to the Godot game engine. Feel free to ask questions, post tutorials, show off your godot game, etc.
Make sure to follow the Godot CoC while chatting
We have a matrix room that can be used for chatting with other members of the community here
We have a four strike system in this community where you get warned the first time you break a rule, then given a week ban, then given a year ban, then a permanent ban. Certain actions may bypass this and go straight to permanent ban if severe enough and done with malicious intent
Some of my own thoughts, which rebut the article in parts:
The author's bio says that they have been doing this as a professional for about 5 years, which, face value, actually means that they haven't seen the kinds of transitions that have taken place in the past and how widely game scope can vary. The way Godot does things has some wisdom-of-age in it, and even in its years as a proprietary engine(which you can learn something of by looking at Juan's Mobygames credits the games it was shipping were aiming for the bottom of the market in scope and hardware spec: a PSP game, a Wii game, an Android game. The luxury of small scope is that you never end up in a place where optimization is some broad problem that needs to be solved globally; it's always one specific thing that needs to be fast. Optimizing for something bigger needs production scenes to provide profiling data. It's not something you want to approach by saying "I know what the best practice is" and immediately architecting for based on a shot in the dark. Being in a space where your engine just does the simple thing every time instead means it's easy to make the changes needed to ship.
Well reasoned points.
Regarding your 2nd point, absolutely correct. But man does it look good in a hit piece such as this article. Appeasing the needs of the many is a delicate procedure that sometimes involves using in-engine data structures and not just fixed length arrays, much to the chagrin of the author. Less maintenance at the very least.
Regarding your 4th point, Godot can accommodate the need for precompiled shaders, it can add adapter layers around its Vulkanic render pipeline, it can technically play by console rules. But there is the one thing that it can't do. It can't just publish usage of a proprietary API to a public git repo. That will always be the albatross around Godot's ass. But I would pose the following question: is this a flaw of Godot or a flaw of the status quo, which forces FOSS into a permanent song and dance to be on equal footing with private enterprise?