this post was submitted on 21 May 2026
97 points (98.0% liked)

Game Development

6139 readers
185 users here now

Welcome to the game development community! This is a place to talk about and post anything related to the field of game development.

Community Wiki

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] copygirl@lemmy.blahaj.zone 34 points 2 days ago (2 children)

In Grové’s tests, Unity took 15.4 seconds to compile scripts, while Godot Engine took just 0.31 seconds, which is a significant gap. This is likely due to Unity’s standard use of the compiled language C#, whereas Godot uses its interpreted in-house language GDScript, allowing for much faster iteration times.

Both C# and GDScript are (typically) compiled to bytecode, so they are probably more similar than they are different when it comes to the compilation step. (C# does get compiled to native machine code by the .NET runtime, the GDScript bytecode is likely still running in an optimized interpreter.) There is no excuse why Unity should be taking that long to compile its scripts. Certainly that's not a failure of the language used.

[–] Quetzalcutlass@lemmy.world 20 points 2 days ago* (last edited 2 days ago) (2 children)

I'm guessing it's due to Unity firing up a full modern toolchain during compilation versus GDScript's simpler bespoke compiler.

It would have been a better comparison if he'd used C# for both games, given Godot supports it as an alternate to GDScript.

[–] copygirl@lemmy.blahaj.zone 5 points 1 day ago* (last edited 2 hours ago)

Unity firing up a full modern toolchain

It's funny you say that because Unity's C# tooling is soooo many years behind. They're still using Mono. (Godot also used it in the past.) And apparently only some time this year (end of 2026?) will they have proper modern C# with all its performance benefits.

edit: Actually I just found this in a related article (unsure about whether it's slop or not, so not gonna link it) but apparently the horrible compile times is from something called "Domain Reload" and is caused exactly by that ancient tooling being used.

[–] TheFogan@programming.dev 9 points 2 days ago (1 children)

I mean you can go both ways. If godot fell behind then it would be argued that it's not it's primary language. IE I'm not a huge expert on how the languages work. but I'd imagine godot would be less efficiant when using the languages that it supports, but wasn't built for.

That's like competing in a reading contest with your second language, versus an opponent who only speaks the language.

[–] Quetzalcutlass@lemmy.world 5 points 2 days ago* (last edited 2 days ago)

C# has faster execution speed compared to GDScript, but Godot needs to marshal data when communicating between the core engine and the C# runtime, which can negatively affect performance if you don't keep it in mind when writing your code.

But ultimately I'd argue compilation speed is waaay more important than execution speed when it comes to creating games (which require rapid iteration and testing). There's only a small amount of code in a codebase where squeezing out the maximum performance is required, and those important bottlenecks can be refactored or rewritten in a more performant language if needed.

[–] enbiousenvy@lemmy.blahaj.zone 2 points 1 day ago (1 children)

godot mono version also compiles C# faster IME

[–] boaratio@lemmy.world 1 points 1 day ago (1 children)

It doesn't use mono anymore, they have been on official MS tooling for a long time now.

[–] enbiousenvy@lemmy.blahaj.zone 1 points 23 hours ago

I know, it's just called mono but uses dotnet internally