Live data from Hacker News

Godot 4.0 Released

godotengine.org

11–20 of 80 posts

Re: Godot 4.0 Released

#11

Why isn’t c++ a first class citizen in a game engine written in c++?

In my experience, most devs dislike working in C++. (I'm an industry engineer in games. Even the people who like C++ hate C++.)

Maintaining C++ support is expensive for an engine, just like maintaining any language binding. IMO, they should optimize for the most approachable/developer ergonomic language, which C++ definitely is not.

That said, I strongly disagree with their decision to simply build their own language. I think there are many languages that already exist that make better candidates for game development either because they are well known, well supported, or easily portable.

Re: Godot 4.0 Released

#12

This is excellent news! I have been waiting for Godot (hehe) to release this. The new Vulkan backend is exciting for 3D projects and I am excited to try to dig into the new 2d tilemapping after work. As well, gotta love experimental Rust support: > With Godot 4, we introduce a new system called GDExtension. By design, it takes the best parts of creating GDNative extensions and writing custom engine modules using high…

Love that cultured pun

It might not be relevant to HN. But could you please explain the reference? Why is Godot a joke? I'm familiar with the reference

Re: Godot 4.0 Released

#14

Why isn’t c++ a first class citizen in a game engine written in c++?

Not familiar with the codebase, so grain of salt.

It's likely due to being cross platform. What's happening is they're bundling the scripts and assets with a pre-built binary. If you're writing all c++ you're likely going to link in the engine instead, not the paradigm they support. That said I know you can extend the game engine, and there is some kind of plugin support for building native code, but you've got to do compile time support yourself? It even supports Rust now apparently?

Re: Godot 4.0 Released

#16

Why isn’t c++ a first class citizen in a game engine written in c++?

Not familiar with the codebase, so grain of salt. It's likely due to being cross platform. What's happening is they're bundling the scripts and assets with a pre-built binary. If you're writing all c++ you're likely going to link in the engine instead, not the paradigm they support. That said I know you can extend the game engine, and there is some kind of plugin support for building native code, but you've got to do…

https://godotengine.org/article/introducing-gd-extensions/

https://docs.godotengine.org/en/4.0/tutorials/scripting/gdex...

https://github.com/godot-rust/gdextension

Re: Godot 4.0 Released

#17

Why isn’t c++ a first class citizen in a game engine written in c++?

Godot has always had native module support; the reason it is not more popular is because it is more or less impossible to support a stable C++ ABI across compilers and operating systems. So you have to build Godot yourself for your dev platform and every platform you ship to. That is what GDExtension and the official C++ bindings solve. Once you set up your builds native modules are totally decent, but personally I find it saps productivity compared to GDScsript, and if you only need it for performance critical code then GDExtension is probably fine (I haven’t used it or GDNative, but I did write native modules before those other options existed).
Post reply on HN