Earlier quoted context omitted.
GDScript in Godot doesn't use GC, it uses reference counting and doesn't "stop the world". Other languages that bind into the engine do this too, (C++, SwiftGodot, Rust-Godot) C# obviously does, Miguel de Icaza actually started SwiftGodot because he (ironically) ended up hating GC pauses after promoting C# for so long
I haven't dug deep enough into C# to say this with certainty, but I believe later C# versions allows you to do enough manual allocation to "almost" get around the garbage collector. As well as new calls to try and nudge the GC away from hot paths. You need to be very disciplined to pull this off, though. LINQ is basically off limits, for example. And of course, Godot's C# is likely much older than these modern techni…
Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
71–80 of 111 posts
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#72Maybe TinyGo can save their ass here?
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#73A GC language is a non-starter for a game engine, I thought this was "game development 101" level knowledge. There is a reason every major game engine actually used to make games is written in C++, with some scripting language on top of that for game logic if necessary.
Minecraft.
This is also not mentioning that the by far more popular version of the game (by player count) “Minecraft Bedrock edition” is written in C++ precisely for performance reasons on low end mobile hardware
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#74Seems like a cool project. I don't understand why they're calling out the FPS of an empty scene as a useful number compared to Unity though. Ignoring that this engine will have a fraction of the features of Unity (the likely reason for the FPS number in the first place), it's just a useless benchmark because it's an empty scene. `while (true) {}` will get you the same thing. I'd wish they'd highlight how the engine h…
Agreed. Unity has a ton of features that even Godot lacks. (Unreal also has a ton of features they all lack). I know a lot of different languages and frameworks, from C/C++ up, so I say this: The language is never the issue. Language is just syntax. ease of use is everything. I've been wanting to make a game for a long time. I toyed with OpenGL/DirectX at multiple points since the 90s, even going so far as to creatin…
But none of the code is necessary to do game design either, because that just reflects the symbolic complexity you're trying to put into it. You can run a simpler scene, with less graphics, and it will still be a game. That's why we have "10-line BASIC" game jams and they produce interesting and playable results. The aspect of making it commercial quality is more tied to getting the necessary kinds and quantities of feedback to find the audience and meet them at their expectations, and sometimes that means using a big-boy engine to get a pile of oft-requested features, but I've also seen it be completely unimportant. It just depends a lot on what you're making.
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#75Earlier quoted context omitted.
I haven't dug deep enough into C# to say this with certainty, but I believe later C# versions allows you to do enough manual allocation to "almost" get around the garbage collector. As well as new calls to try and nudge the GC away from hot paths. You need to be very disciplined to pull this off, though. LINQ is basically off limits, for example. And of course, Godot's C# is likely much older than these modern techni…
Godot's C# is fairly recent, C#12/.NET 8.
But that effort on an active engine would quite a long time to comb through. Really comes down to if a highly invested contributor wants to push it through and gets the go ahead.
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#76Earlier quoted context omitted.
Making a game with Godot or Unity is much easier than making an engine.
I think they are referring to the game engine developers in both cases.
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#77Earlier quoted context omitted.
I haven't dug deep enough into C# to say this with certainty, but I believe later C# versions allows you to do enough manual allocation to "almost" get around the garbage collector. As well as new calls to try and nudge the GC away from hot paths. You need to be very disciplined to pull this off, though. LINQ is basically off limits, for example. And of course, Godot's C# is likely much older than these modern techni…
Godot's C# is fairly recent, C#12/.NET 8.
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#78Seems like a cool project. I don't understand why they're calling out the FPS of an empty scene as a useful number compared to Unity though. Ignoring that this engine will have a fraction of the features of Unity (the likely reason for the FPS number in the first place), it's just a useless benchmark because it's an empty scene. `while (true) {}` will get you the same thing. I'd wish they'd highlight how the engine h…
Agreed. Unity has a ton of features that even Godot lacks. (Unreal also has a ton of features they all lack). I know a lot of different languages and frameworks, from C/C++ up, so I say this: The language is never the issue. Language is just syntax. ease of use is everything. I've been wanting to make a game for a long time. I toyed with OpenGL/DirectX at multiple points since the 90s, even going so far as to creatin…
Hard to interpret w/out more detailed comparison but stack-ranking their featurefulness, is it Unreal, Unity, Godot?
Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#79Re: Kaiju – General purpose 3D/2D game engine in Go and Vulkan with built in editor
#80Earlier quoted context omitted.
Agreed. Unity has a ton of features that even Godot lacks. (Unreal also has a ton of features they all lack). I know a lot of different languages and frameworks, from C/C++ up, so I say this: The language is never the issue. Language is just syntax. ease of use is everything. I've been wanting to make a game for a long time. I toyed with OpenGL/DirectX at multiple points since the 90s, even going so far as to creatin…
> "Unity has a ton of features that even Godot lacks. (Unreal also has a ton of features they all lack)." Hard to interpret w/out more detailed comparison but stack-ranking their featurefulness, is it Unreal, Unity, Godot?
(Though imo unity is the better engine. Unreal has so many bugs and so much jank that to make a real game with it you basically need a large enough team that you can have a dedicated unreal-bug-fixer employee.)
*Technically Unity has a visual scripting language too but IIUC it's tacked on and I've never heard of anyone actually using it.