3 ms·
Game dev here. I've used Godot only a little bit, and Unity a lot. If you're working a lot with a single game engine, it's nice to have a programming language
by jan_Inkepa 7y ago
Game dev here. I've used Godot only a little bit, and Unity a lot.
If you're working a lot with a single game engine, it's nice to have a programming language that's tightly coupled to it.
When Unity moved away from UnityScript (a javascript lookalike but specialised for their purposes) towards C# they had to e.g. change their notation for Coroutines which made it a lot clunkier, so instead of just "yield WaitForSeconds(2.5)" you now do "yield return new WaitForSeconds(2.5f)" AND change your function signature (add an IEnumerable) AND have to change how you call the function - lots of cruft where previously it was all transparent/implicit.
Also, if you're working on your own scripting language you can make it a lot more aware of the particular data and structure of in your own game (games have a lot of data!). I haven't used GDscript/Godot a lot, but I remember the autocomplete being pretty smart and aware of what's going on with your data in a way that would be hard to do with a "commodity" compiler/IDE tool-chain.
It's a lot of work for them to do this on their end, but I think it pays off. It doesn't take much time to learn (especially compared to the api/3d scene interface/etc) and overall it feels slick.
Most of the niceness is sparing on overhead, it's not a fundamentally alien or goofy language. As a games programmer I have to work with a bazillion programming languages anyway; if I'm working on a single project it's a real luxury to have the language be ergonomically fitted to the engine.
There are advantages to using a more general programming language - maybe using Lua would've been a good option, but yeah for here at least I think it's fine (ah, another commenter linked https://docs.godotengine.org/en/3.2/getting_started/scripting/gdscript/gdscript_basics.html https://docs.godotengine.org/en/3.2/getting_started/scriptin..., which talks about this :) ).
On the other hand, if programming juggernaut Unity couldn't justify keeping Unityscript alive, maybe Godot is also fated to change eventually...
- Decabytes 7y agoI like gdscript and my only gripes are that I use python for work and while gdscript is Python like I find the instances where it doesn't work like Python frustrating. Auto complete works great and it works even better when using typed gdscript, though it's still a new feature, and still has some edge cases that make it a little tricky to use sometimes.