← Back to context

Comment by kkukshtel

9 months ago

I agree with a lot of this, and am similarily working on my own code-only C# game framework meant as a spiritual successfor to XNA/Monogame (using Sokol instead of SDL):

https://zinc.graphics/

In OP's post as well he brings up some of the main factors that make modern C# incredible:

- Cross platform development (and runtime).

- NativeAOT Compiling (great for consoles, provided you have backend headers).

- Native Hot-reloading.

- Reflection

I'd also add:

- Source Generators

Modern C# is incredible. I think people still discount it due to its admittedly bad legacy, but the past five years of C# and CoreCLR development make me feel like it's truly a language that has everything necessary but isn't baroque or overburdened. My only major request, Union types, is also in proposal and will (hopefully) come in the next year or so:

https://github.com/dotnet/csharplang/blob/main/proposals/Typ...

Out of curiosity, do you have some pointers for getting into C# for these kinds of projects? I've only used C# for standalone win32 applications and inside of Unity.

I am familiar with low-level game engine stuff in C/C++, but always discarded C# as not being viable for cross-platform projects (as in game consoles). Guess I was wrong. :)