Hacker News new | ask | show | jobs
by hasahmed 2622 days ago
Godot doesn't enforce any structure like game maker does. Additionally Godots default language (Gdscript) is awesome and intuitive, whereas gml doesn't really feel like a real language (argument0-15. Come on)
1 comments

>Additionally Godots default language (Gdscript) is awesome and intuitive, whereas gml doesn't really feel like a real language (argument0-15. Come on)

I agree with the comparison to GML, but whether one finds Gdscript intuitive depends on one's existing background. I personally found it frustrating because I was used to C/C++, but with time I can see getting used to it. It's not a bad language by any means.

Also, both Game Maker and Godot share the problem of their scripting language being essentially a form of lock-in, since no one is going to use Gdscript anywhere else, and any code you write it in is no longer portable. Also, they use their own shader script rather than GLSL, which means your shaders aren't portable either.

Godot can support different languages (unlike Unity or Game Maker), but IIRC that requires recompiling the engine and may break the editor.

from Godot's documentation:

>Finally, one of our brightest additions for the 3.0 release: GDNative allows scripting in C++ without needing to recompile (or even restart) Godot.

https://docs.godotengine.org/en/3.1/getting_started/step_by_...

Given that Unreal only now added such support via https://molecular-matters.com/products_livepp.html partnership, I wonder how Godot is actually doing it.
Well... scratch one complaint, then.
>Godot can support different languages (unlike Unity or Game Maker), but IIRC that requires recompiling the engine and may break the editor.

Personally i've been using this for godot:

https://github.com/GodotNativeTools/godot-d

It's been working well for me.

I compile my code and include it as an .so in my project. No recompiling the editor.

Godot has three kind of languages integration :

- GDScript : included by default

- C# : you have to download the Mono version of Godot (and install the Mono SDK)

- Any other language (Rust, Python, C++, D, etc...) : using GDNative

(- And of course you can also directly modify the engine source code in C++ if you need super low level modifications (like writing your own render engine))