this seems a well-argued article to me the ‘General directionless development’ seems the most concerning point, I don’t think the ‘let’s go with what the community ask\want’ model is gonna work in the end.

what do you think?

  • anteaters@feddit.de
    link
    fedilink
    arrow-up
    33
    ·
    edit-2
    1 year ago

    Over the past week, I’ve looked hard at Godot as a potential alternative to Unity in the wake of the disastrous Unity pricing model change.

    As a professional engineer (or a former one), I cannot give my professional opinion of this engine after such little time with it, even with source code access. I admit I have not run a single profiler, I have not exported a single build. I have skimmed less than 10% of the source code. I have played around in GDExtensions, but not in anger. I have not tried C# at all.

    1. Poor Performance

    This is, again, a huge topic, and I don’t want to make hard claims without hard data. To be absolutely crystal clear, I have not profiled Godot nor worked on a complete enough and representative project in Godot to observe performance issues firsthand.

    Apparently everyone and his dog needs to write about Godot right now after taking a passing look at it because it is hot shit at the moment?

    • Potatos_are_not_friends@lemmy.world
      link
      fedilink
      arrow-up
      21
      ·
      1 year ago

      I’m dying at this.

      As a professional engineer (or a former one), I cannot give my professional opinion of this engine after such little time with it, even with source code access.

      What do they think this blog post is? A diary entry?

      • anteaters@feddit.de
        link
        fedilink
        arrow-up
        16
        arrow-down
        1
        ·
        1 year ago

        A whole new genre was created: Unity customers being upset feel their career is in danger write nonsense blog posts about other engines to make them feel better.

    • insomniac_lemon@kbin.social
      link
      fedilink
      arrow-up
      12
      ·
      1 year ago

      It’s free real estate.

      (It’s a game engine, FREE. / It’s a free game engine for you, Jim. Well you gotta bring code and assets, but the engine is free. / It’s a 2D and 3D engine, it’s got Vulkan in the backend)

    • D.J@lemm.ee
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      1 year ago

      Poor Performance

      Godot actually runs on my shitty laptop, what are these people using, literal potatoes?

  • VeeSilverball@kbin.social
    link
    fedilink
    arrow-up
    17
    ·
    1 year ago

    Some of my own thoughts, which rebut the article in parts:

    1. Godot does have “barbell performance” - you can make it go fast if you drop to C++ and do low-level engine things to add new nodes, resources, etc. You can also make it go fast when you use the premade nodes without a great deal of script in between(and the nodes are, FWIW, pretty flexible and composable). What it doesn’t do at present is the thing Unity users are used to, which is “fast scripting”. Fast scripting still means working around the garbage collector and the overheads of going between native and a runtime. C# is a kind of flytrap for the needs of high-end games, and Unity has only seemingly surmounted the issues by doing a lot of custom engineering for their use-case. That is, you don’t really code standard C# in Unity, you code Unity’s C#, which is nearly as bespoken as GDScript.
    2. Saying the engine is coded in a naive way is actually not as smart as it seems, because there’s a maintenance cost to always doing things in exactly the most optimal way. The target for what is fastest changes every time the platform changes. As a (up until recently) relatively small project, it’s overall better that the engine stay relatively easy to build and straightforward to modify, which is what it’s done. The path it’s taken has helped it stay “lightweight”. The price of that is that sometimes it doesn’t even take low-hanging fruit that would be a win for 90% of users.
    3. The 3D in Godot 4 is capable of good test scenes, but everyone seems to agree that it’s not really ready for production for speed reasons. Any specific point on this just backs that up. And that’s disappointing in one sense, but pretty okay in others. If you need high-end graphics, Unreal will welcome you for the time being.
    4. On that note, developing for console always comes with fussy limitations, at minimum just meeting TRC/TCR/lot check; that’s why professional porting is a thing. Engine devs usually end up in the position of maintaining these multiple-API abstractions because it’s necessary for porting. It’s the same deal with the audio code, the persistent storage, the controllers, the system prompts, it just goes on and on like that. So, rewriting the rendering bindings to do things in the D3D way and not the Vulkan way is actually a bit of a whatever; it’s more rendering code. It changes some assumptions about what binds to what. But it accesses the same kind of hardware, running the same kind of shaders. A lot of ports in the not-so-distant past basically had to start over because the graphics hardware lacked such a common denominator.

    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.

    • CloverSi@lemmy.comfysnug.space
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      1 year ago

      The irony of this line from the post is particularly amusing:

      your willingness to talk about things you could not possibly have all the information about this confidently, and with so little tact, is a sign of inexperience.

  • mythic_tartan@sh.itjust.works
    link
    fedilink
    arrow-up
    15
    ·
    1 year ago

    Right off the bat, the author misses perhaps the best thing about this engine - it’s incredibly fast at prototyping ideas. This is obvious to anyone who has used it to try and make something.

  • vivadanang@lemm.ee
    link
    fedilink
    English
    arrow-up
    15
    ·
    1 year ago

    Compare Godot’s last 5 years to Unity and it’ll give you a whole new appreciation of ‘General directionless development’

  • Faresh@lemmy.ml
    link
    fedilink
    English
    arrow-up
    10
    ·
    1 year ago

    And then finally, I found this post., where a longtime contributor complains of the general lack of direction and philosophy, in March 2020.

    Maybe there’s indeed a lack of direction and philosophy, but I’d be careful with citing that specific PR, for it was made by someone known for making some rather bizarre accusations of godot and who is no longer a godot contributor due to their past behaviour.

    • anteaters@feddit.de
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      Full time developers are indeed a must for a controlled and reliable development of the engine. I’m not sure if W4 games is supposed to be the provider of this or the Godot Foundation.

  • Gamma@beehaw.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Good article, I thought it was fair! As I don’t use reddit or twitter anymore I’m surprised at that comment, I know I’d heard some mumbling a around working with high fidelity assets but I didn’t realize it was that bad. I think the asset store has a higher ratio of good vs bad compared to others because of the lack of payment incentive, but I also only try out the popular plugins so I can’t speak about the rest.

    I think the recent donations will help fund hiring devs to implement the features people actually want. Did they do the summer of code this year? It usually has some interesting developments, the revamped tile editor in 4.X started as a project there. The new color picker too, it’s so much better than the old one