FNA (a port of XNA we used for Celeste) now officially supports consoles with C#'s NativeAOT. That means you can compile C# directly for consoles, which is something I've been looking forward to for years. Very exciting for the future of C# games!
FNA (a port of XNA we used for Celeste) now officially supports consoles with C#'s NativeAOT. That means you can compile C# directly for consoles, which is something I've been looking forward to for years. Very exciting for the future of C# games!
@noelfb Can I ask what makes this different from the Moni AOT capabilities? If I understand correctly, Mono could also do full AOT and that’s how Xamarin could support iOS with it.
Is it a matter of performance? Or is it that Mono never supported console architectures properly? (Admittedly I have no idea what consoles require)
@noelfb without wishing to sound pessimistic, getting your game to compile & run on consoles is only a tiny part of putting a game out on consoles...
I've ported a lot of Unity games originally made for PC onto consoles & structural game logic changes needed to handle submission requirements (correctly handling users, save data, controllers, & associated errors) are usually the most time consuming parts of a port.
@noelfb I did a conference talk about this in 2015 (!) which covers a bunch of sturctural & architectural approaches you can take to make your life easier - hope this updated version from 2021 helps
https://drive.google.com/file/d/1spxZVyWg7phSMKRCUXpBMdwzJOvOlR_q/view?usp=drivesdk
@noelfb ah, fair enough.
I assume that something must still be doing transpiling from C# to C++, as none of the consoles have a C# API, but I guess it's handled in this FNA thing?