Live data from Hacker News

It’s time to make that indie C# game in Godot

jolexxa.medium.com

81–90 of 228 posts

Re: It’s time to make that indie C# game in Godot

#82
post #70
post #65

Ugh, not more C#! I hope one of these projects takes off: https://github.com/migueldeicaza/GodotSwift https://github.com/kelvin13/godot-swift Excited to try Godot in a couple of years when it's more mature. Hopefully they can be the Blender of game engines – where it started rough and now is better than Maya or other alternatives.

Godot's default language is GDscript, which is similar to Python. I'd highly recommend that to new people switching to Godot. I think C# is just cruft for people coming from Unity and stuck in old habits/frameworks.

I tried GDScript and hated it, ended up manually porting what I wrote to C#. GDScript currently only has partial support for static typing, which makes things a much bigger pain in the ass. Using C# was a breath of fresh air after that.

Re: It’s time to make that indie C# game in Godot

#83
post #65

Ugh, not more C#! I hope one of these projects takes off: https://github.com/migueldeicaza/GodotSwift https://github.com/kelvin13/godot-swift Excited to try Godot in a couple of years when it's more mature. Hopefully they can be the Blender of game engines – where it started rough and now is better than Maya or other alternatives.

C# is really well suited to the task thanks to value types and structs, that gives you back control of memory that is lost in Java for example. It also has a lot of syntax sugar to avoid being too verbose and the memory safety and GC are desirable most of the time and can be avoided with well known tricks, like object pools, when performance needs are more paramount.

I don't know Swift very well, but I seem to recall the creator talking about using automatic reference counting instead of garbage collection as an intentional tradeoff. If that's still the case, I'd much rather use Swift over C# in a game (and I am using C# in a game!). The value types and structs are very limited compared to classes and reference types.

Re: It’s time to make that indie C# game in Godot

#84
post #65

Ugh, not more C#! I hope one of these projects takes off: https://github.com/migueldeicaza/GodotSwift https://github.com/kelvin13/godot-swift Excited to try Godot in a couple of years when it's more mature. Hopefully they can be the Blender of game engines – where it started rough and now is better than Maya or other alternatives.

Do you have an actual specific disagreement with c# or are you just venting because you are not familiar with the language? C# is a robust language with a lot of features like lambdas pattern matching etc. I also find that most of the people who know Swift are Apple developers, so I feel like there isn't a broad enough appeal especially for game devs who are going to be more Windows or Linux centric.

C# needs a fat runtime, has a slow JIT (say hi to micro stutters in your gameplay and increased input latency), has a slow GC and worst of all is owned by Microsoft with a proprietary debugger that you can only use on visual studio (licence they changed overnight because Jetbrains released a C# IDE)

There are much better languages for game scripting (LUA for example)

Re: It’s time to make that indie C# game in Godot

#85
post #65

Ugh, not more C#! I hope one of these projects takes off: https://github.com/migueldeicaza/GodotSwift https://github.com/kelvin13/godot-swift Excited to try Godot in a couple of years when it's more mature. Hopefully they can be the Blender of game engines – where it started rough and now is better than Maya or other alternatives.

Do you have an actual specific disagreement with c# or are you just venting because you are not familiar with the language? C# is a robust language with a lot of features like lambdas pattern matching etc. I also find that most of the people who know Swift are Apple developers, so I feel like there isn't a broad enough appeal especially for game devs who are going to be more Windows or Linux centric.

I can't speak for the grandparent, but using C# in Unity, the garbage collector is always at the front of mind and dissuades people from using some of the nicer features of C# (LINQ, etc.). Granted my knowledge of this is a couple years old, so maybe the situation has improved, but I'm guessing most Unity developers are still very careful about how they write loops and how/when objects are allocated and all that stuff. Automatic memory management can be more of a hindrance than a benefit if you have to babysit it to avoid GC pauses.

Re: It’s time to make that indie C# game in Godot

#86
post #65

Ugh, not more C#! I hope one of these projects takes off: https://github.com/migueldeicaza/GodotSwift https://github.com/kelvin13/godot-swift Excited to try Godot in a couple of years when it's more mature. Hopefully they can be the Blender of game engines – where it started rough and now is better than Maya or other alternatives.

You obviously know this since you linked a Swift bindings project, but for others reading who may not be aware: Godot officially supports multiple languages ("GDScript, C#, VisualScript, and C++ and C via its GDNative technology"[1]), but other languages are supported by the community.

In particular, a sibling comment mentions Kotlin. The docs[2] link to a project that adds Kotlin bindings https://github.com/utopia-rise/godot-kotlin-jvm

[1]https://docs.godotengine.org/en/stable/getting_started/step_...

[2]https://docs.godotengine.org/en/stable/tutorials/scripting/g...

Re: It’s time to make that indie C# game in Godot

#88
post #44

Yes indeed, it's time to move from Unity to something else because I don't want to pay for that kind of people's salary: > Devs not baking monetisation into the creative process are “fucking idiots”, says Unity’s John Riccitiello https://mobilegamer.biz/devs-not-baking-monetisation-into-th... If he talks in public like that, imagine how this guy talks to his employees behind closed doors...

No post body was provided.

Re: It’s time to make that indie C# game in Godot

#89
post #16

> One is an industry behemoth and the world’s most popular game engine, while the other is a free, 30 megabyte program developed by passionate developers in their free time. I was under the impression that Godot had at least two full-time devs working on it. Between their patreon revenue and the grants they've received they can definitely afford a small team on payroll. It's still important to stress the comparison i…

That's a good point, I can edit that for clarity in the article (especially since I mentioned Godot's Patreon support later in the article). I was assuming that the Patreon support didn't amount to full time support for all the devs that contribute, but I don't know if that's true or not. Either way, it seems a lot of people have contributed without sponsorship, but the main devs are (hopefully) compensated.

There are at leasts two full time devs and a handful of other devs on paid projects (by way of Patreon and a few large donations of companies like Epic)

Re: It’s time to make that indie C# game in Godot

#90
> Using async and await with C#’s Task can be a bit of a headache with Godot, especially if you don’t realize that that most ways of executing an async Task in C# starts a new thread (or recycles one from the task thread pool).

Unity makes it much easier though.

Post reply on HN