I made a blog post about my experience switching from Unity to Godot earlier this year, and some tips for Unity devs.

  • amio ( amio@kbin.social ) 
    link
    fedilink
    arrow-up
    10
    ·
    3 years ago

    You can use C# (don’t)

    C# users are second-class citizens in Godot. Many features such as web exports don’t work with C# projects, and C# often has bugs specific to it and often lacks tutorials/documentation

    … welp. So… any more details on this? I’m not learning a single-purpose language.

    • popcar2 ( popcar2@programming.dev ) OP
      link
      fedilink
      arrow-up
      12
      ·
      3 years ago

      Honestly GDscript is really easy to learn if you’ve got a programming background. The concepts are mostly the same so you can head over to the GDScript reference and learn to use it in less than a day. As soon as you get used to the syntax you basically know it already.

      • amio ( amio@kbin.social ) 
        link
        fedilink
        arrow-up
        6
        ·
        3 years ago

        I’m sure you’re right, and it looks serviceable. It’s not really about that, though. I’ve done the “learn a new language” thing many, many times. It gets old and I’m sort of over it - it’s not as fun as it once was, particularly now I have my favorite that I know well and am good at.

        • I Cast Fist ( ICastFist@programming.dev ) 
          link
          fedilink
          English
          arrow-up
          5
          ·
          3 years ago

          GDScript works almost 1-1 like Python. Any experience with Python almost instantly translates into knowing what to do in GDSCript, but not necessarily the other way around, as their script has a couple more builtin features.

        • Rodeo ( Rodeo@lemmy.ca ) 
          link
          fedilink
          arrow-up
          0
          ·
          3 years ago

          If you’ve done it a lot then you know how easy it is to get up and running with a new language.

          Really, it’s not that hard. GDscript is not some archaic clunker like COBOL with outdated paradigms, nor some esoteric joke language like Brainfuck that’s just pointlessly difficult. You’re going to be fine with it inside of a day.

    • C# works fine, lots of Godot projects are using it.

      That said, consider learning GD Script? Even if it’s only used by Godot, it’s simple, well integrated with the editor and is awesome for quickly building out your game.

      Besides, it’s very Python-esque. Whether you know Python or not, it’s syntax is very straightforward and easy to work with.

    • tshannon ( tshannon@beehaw.org ) 
      link
      fedilink
      arrow-up
      6
      ·
      3 years ago

      I’ve been working in Godot for about 3 years now, and have never touched GDScript. I personally haven’t felt like a second class citizen, and have rarely run into C# specific bugs, or found the documentation was missing for C#, other than when I was using the GD4 betas.

      That being said, I’m not currently targeting web or mobile with my hobby projects, and I know those are open issues with the C# support.

      My 2c.

    • Ategon ( Ategon@programming.dev ) 
      link
      fedilink
      arrow-up
      6
      ·
      edit-2
      3 years ago

      The C# version of the project is separate from the main one. It is possible to entirely code a game in c++ though in the main one (you can use both c++ and gdscript in it in one game interchangeably). Gdscript is a really easy language to learn though and is similar to other scripting languages (the only things you really need to learn is some keywords godot added to make coding in it easier when using things in the engine. Stuff like node names etc you would have to learn regardless of the language you’re using)

  • HobbesHK ( HobbesHK@startrek.website ) 
    link
    fedilink
    English
    arrow-up
    5
    ·
    3 years ago

    You may want to change the fact that web exports don’t work on macOS. MacBook Pro M1 user here. I’m happily running my Godot 4.1 as web exports on my server. Setting the headers is required for any browser / operating system, but things seem to work fine for me on Mac.

    • popcar2 ( popcar2@programming.dev ) OP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      3 years ago

      Weird, you may be an outlier. The issue for Mac web exports not working is one of the most upvoted on their Github: https://github.com/godotengine/godot/issues/70691

      According to that, you have to manually set the renderer to Metal* or it might freeze/crash your browser (or take minutes to load). I’ve personally had many mac users tell me that my web projects aren’t loading for them, I’m pretty sure the issue is still not resolved.

  • Yerbouti ( Yerbouti@lemmy.ml ) 
    link
    fedilink
    arrow-up
    4
    ·
    3 years ago

    I recently realized that Unreal is Open-source. I’m curious why it doesn’t seem to get any love from the FOSS community? I would personnaly glady ditch unity, but I heavily rely on video tutorials for my very amateur projects . So I was actually moving to Unreal…

    • Unreal is “source available”, not Open Source. There’s a big difference. With any Open Source project you can legally fork the project, distribute your custom version of the code, create a community around your variant… “source available” has none of that. The Unreal EULA is more permissive than most game engine licenses (with the obvious exception of Godot) but it still comes with plenty of restrictions. For example:

      You are permitted to post snippets of Engine Code, up to 30 lines of code in length, online in public forums for the sole purpose of discussing the content of the snippet or Distribute such snippets in connection with supporting patches and plug-ins for the Licensed Technology, so long as it is not for the purpose of enabling third parties without a license to the Engine Code to use or modify any Engine Code or to aggregate, recombine, or reconstruct any larger portion of the Engine Code.

      Which pretty clearly does not satisfy the Open Source Definition.