from Hacker News

Godot 4.1

by freeCandy on 7/6/23, 11:11 AM with 154 comments

  • by sen on 7/6/23, 11:46 AM

    I recently switched almost entirely from Unity to Godot 4.0 (not a career game dev, I just make small/indie/itch.io type stuff) and I've been absolutely loving it. It's such a breath of fresh air. It's light, fast, easy to learn, and can do 90% of what you need as a solo/indie type developer.

    The only thing stopping me from swapping over entirely and giving up Unity for good is the bug that means games take forever to load on itch.io if the user has MacOS (long enough that they think it's broken and close the tab). A majority of the games I make are educational and/or targeted at kids who are using iPads or MacBooks, and being able to link them to itch.io is a LOT easier than teaching them (and convincing the device owner) to install the game locally.

    They say they're working on it (quoted below), but until then I'm pretty much stuck using Unity for a few projects still. If/when they fix this, I think Godot could really take off for the itch.io/gamejam/etc type crowd.

    > As of 4.1 web exports still have some limitations due to poor vendor support of certain modern features. Browsers with bad WebGL 2 support, such as Chrome on macOS, unfortunately suffer from issues which we cannot address without a fix from Google or a significant amount of effort put into supporting a dedicated WebGL 1 / GLES2 renderer.

    > We are also aware of the complexity setting up web games on hosting platforms which don’t let you set the required CORS headers for SharedArrayBuffer support. This mostly depends on Safari implementing the coep:credentialless header support, while Chromium-based browsers and Firefox already work fine (especially if you publish on itch.io). There is a possible workaround that we are investigating.

  • by johnday on 7/6/23, 11:38 AM

    Godot is a super impressive piece of kit. I'm waiting for a reason to start a new game project so that I can get to grips with it more firmly, but what they've been able to do with a relative small team puts Unity to shame. (Even more than Unity puts itself to shame)

    > This update fixes over 900 issues that users have reported from using Godot 4 or while helping contributors test 4.1 with pre-release builds.

    Fixing that many issues while further improving performance and stability is itself worthy of commendation. Well done Godot team!

  • by jokoon on 7/6/23, 3:33 PM

    I love godot, but:

    * gdscript is not python, it's lacking several small python things that makes python awesome: list/dict comprehension, .items(), sets, although gdscript is quite enough and still quite a good language for game dev as it does just everything well, especially for natives types etc.

    * I tried gdnative and I still need to try gdextension, but so far writing C++ for godot seems quite hairy and the programmer must use godot types and "new()" everywhere, which is not really easy to deal with, so godot is not really a C++ engine, C++ is only usable if you want to optimize something a bit tedious, which is fine, but important to remember, and it confirms the whole "use a scripting language 99% of the time, and use C++ only if scripting is not fast enough"

    * I would still want to inspect the real potential performance of gdscript compared to other languages, and I don't know if mono/.net is faster. It seems like a very good language especially because it integrate perfectly with how the environment is designed, but I'm still curious if they plan to improve it.

    * I'm planning to make a multiplayer FPS game, but I don't think godot provides network prediction, and I wish it did.

    * I'm a bit worried about opengl support in the future, it's not entirely done yet, and I'm afraid it's too difficult to properly implement because new API like vulkan or DX12 are so radically different.

    Overall godot is the greatest thing that ever happened to open source and game development, game development is one area where open source has trouble making its teeth, and the lightweight design of godot makes it just such a big relief when you compare it to monsters like unreal and unity.

  • by Capricorn2481 on 7/6/23, 11:47 AM

    Is there a use care for Godot for cross platform app development instead of something like Electron?
  • by d11z on 7/6/23, 12:08 PM

    The main contributor/developer behind Godot also released a very handy little tool that is capable of fully decompiling anything made with Godot:

    https://github.com/bruvzg/gdsdecomp

  • by kirillbobyrev on 7/6/23, 6:13 PM

    Godot is just AWESOME, I am very impressed with the progress the team makes and the overall direction of the project.

    I was always excited about Game Dev (even started learning Computer Science and became a Software Engineer largely because I wanted to make games), dreamed of making my own small games but never really got to it. After I became a full-time Software Engineer, I never really found time or the right tools for making my own small games for fun. I recently discovered Bevy and gave it a try. ECS is a nice concept, but Bevy is more of a library and it's quite hard to make full-featured games using it (just like using SDL/something similar).

    When I discovered Godot and gave it a try, I was so impressed: it's really nice for beginners, yet performant enough and has amazing community. This is exactly what I wanted to find, so I'm incredibly happy it exists and am very excited about the future development of Godot.

    One thing I wish was different is choosing a different language as the native and "official" one. GDScript is OK and arguably pretty good Python-like language for beginners and rapid prototyping, C# is OK and is probably very nice to have because many people would be happy to switch from Unity, but I personally would be happier with either better C++ support (which I know exists in GDNative interface which was improved in 4.0) or something else.

    C# is a fine language, but I have a feeling it has so much presence in GameDev just because of Unity. It's way too verbose and the tooling isn't as good (outside of full Visual Studio which I have no desire to use), but maybe "actual programming" part of GameDev isn't as important and I should just give in/use GDScript.

  • by birracerveza on 7/6/23, 1:39 PM

    Godot may not be able to take on Unreal, but I certainly am cheering for it to take over Unity.

    Excellent engine, and more and more developers are rightfully recognizing its potential.

  • by SturgeonsLaw on 7/6/23, 11:36 AM

    Godot is super cool and I have a ton of respect for all the people who put in time to make software like this and Blender et al so damn good
  • by ireallywantthat on 7/6/23, 11:43 AM

    Godot is really turning good release by release. I'm very happy for Godot and the team. I'm interested in these features from Godot in future. I hope they implement them in Future Releases.

    1. FSR2

    2. Excellent Wayland Support

    3. LLM Integration. It might make NPCs more realistic

  • by speedster217 on 7/6/23, 1:19 PM

    Anyone have any tutorials on Godot that they recommend?

    I've got a small RPG prototype that runs in the console but would love to give it an actual GUI/sprite graphics.

  • by koromak on 7/6/23, 1:01 PM

    I started using Godot for the first time last week! First attempt at game dev. I'm finding it quite friendly to learn.
  • by robertlagrant on 7/6/23, 12:24 PM

    This is what I've been waiting for! - Samuel Beckett.
  • by nightowl_games on 7/6/23, 2:16 PM

    Godots killer feature is the integrated documentation.
  • by loustak on 7/6/23, 5:53 PM

    I have shipped two small projects using Godot 3. It's a cool engine but to me it can improve on the following points to be considered a mature engine for a new indie project: * GDscript is cool but lacks features such as better typing and lambdas over generic nodes. * I have encountered many bugs in the Engine more than when I was using GameMaker. * It lacks native mobile monetization.

    Other than that I'm much more enjoying working with Godot than Unity.

  • by gminic on 7/6/23, 2:48 PM

    "C#/.NET

    The focus in this release was on bringing feature parity between C# and GDScript.

    When using GDScript, you can define a new node type to use in the editor by adding a global class name to your script.

    Starting from Godot 4.1, this is also possible in C# by adding the [GlobalClass] attribute to your file, thanks to Raul Santos and Will Nations. You can also use the [Icon] attribute to give your global class a unique icon.

    Note that as of this release projects made with C# still cannot be exported to mobile and web platforms. We are working on providing the support as soon as possible, but the resolution of this limitation will likely depend on the release of .NET 8 at the end of 2023. This means that the work on enabling mobile and web platforms can only truly start later this year."

  • by sylware on 7/6/23, 12:19 PM

    Until godot devs don't forget the "-static-libgcc -static-libstdc++" compile/link options, should be fine, that linking with the oldest set of glibc libs as possible (I saw games carefully using the glibc from debian ubuntu 12.04).

    I guess godot has proper vulkan->GL fallback.

    What's now really missing is from sourceware binutils: fine grained control of the versions of the symbols to use while creating binaries. And then, robust game binaries would be much easier to produce: it would let the devs use the latest elf/linux distro and still produce compatible binaries with old elf/linux distros (easy planned obsolescence workaround) avoid the current massive mess (build an old glibc, and reconfigure the toolchain to use it for linking, PAIN).

  • by manishsharan on 7/6/23, 1:55 PM

    Could someone advise if this is a suitable platform and language for 10 year olds to learn Game programming ? My kid feels that he has outgrown Scratch and he is looking for a better platform . Will GDscript be easy for him to learn ?
  • by gerardpg on 7/6/23, 12:32 PM

    Outstanding work, congratulations to the Godot team.
  • by clessg on 7/6/23, 2:42 PM

    I haven't seen it mentioned yet, so does anybody have experience comparing Phaser with Godot (for 2d games)?
  • by hamoid on 7/6/23, 5:54 PM

    I haven't seen people mentioning using Godot with Kotlin, so I'll leave the link here. At some point it could be nice for Kotlin devs.

    https://godot-kotl.in/en/stable/

  • by bodge5000 on 7/6/23, 4:25 PM

    Great to see a focus on reliability, I moved back to Godot 3.5 as 4 kept crashing for me so I've been missing out on some of the new features (suprisingly, the one I was most excited about is the improvements to procedural skyboxes, and they certainly lived up to the hype)
  • by krapp on 7/7/23, 1:57 AM

    If you're using WorkerThreadPools or HTTPRequests be careful - some change they made to threading broke one of my projects. Nothing else seems to be affected so far.
  • by 29athrowaway on 7/6/23, 2:01 PM

    There is a Star Fox clone made in Godot, Ex-Zodiac. Cool game.
  • by xwowsersx on 7/6/23, 3:35 PM

    If anyone here has created something using Godot that is publicly available, would you kindly provide a link to share it here?
  • by xyzzy3000 on 7/6/23, 2:31 PM

    I like the engine, but the name is essentially one that has no consensus on how it should be pronounced (emphasis on the first syllable, emphasis on the second, or equal emphasis on both).

    Some background here in the context of the original play from which the name is derived - sorry about the paywall: https://www.nytimes.com/2013/11/12/theater/the-right-way-to-...

  • by jcmontx on 7/6/23, 1:25 PM

    First time hearing about this engine. How does it compare to Unity/Unreal? Not a game dev btw
  • by ubermonkey on 7/6/23, 2:31 PM

    Man, I've been WAITING for this!

    (What, nothing? I'll show myself out.)

  • by billfruit on 7/6/23, 4:49 PM

    Is this version having c++ support? Is development using c++ really viable in Godot?

    Why did they have to invent GDScript? Is there any reason why they could not have chosen a existing language?

  • by aero-glide2 on 7/6/23, 2:54 PM

    Sadly GPT hasn't been trained on GODOT 4, so it's been very difficult to develop.
  • by BaculumMeumEst on 7/6/23, 12:16 PM

    i have seen a lot of folks talk about switching to godot due to unity “selling out”. but if godot gets popular enough, money will be waved in the maintainers’ faces, and it will follow the same trajectory.

    meanwhile, there are alternatives like love2d, which is a more straightforward game engine written in c++ built on popular open source libs like sdl2 with a extended with lua(jit). it’s lightweight enough that you could probably maintain it yourself.