Once upon a time, C code for games engines looked like this. void do_stuff(void) {
asm {
}
}
Hardly any C code in sight, and most of the stuff could equally have been coded in MASM/TASM with their higher level macros.Eventually game devs migrated to proper C. A couple of years later, C++ code in game engines, was not even "C with Classes", rather C compiled with C++ compiler. Eventually game devs migrated to proper C++. Looking at the past, which I was partially part of, I see HPC# as a stepping stone into regular C#, in a similar vein that C code of yore was full of inline Assembly. It is of course a matter of opinion, however I like to look at the past to see where the future leads to. So lets see who's is right in about 10 years, regarding how game engines get implemented. |
And the game-industry as a whole is moving to data-oriented design, which tends to be hard to do at best (if not downright impossible) in most GC'd languages.
Regardless the transition from C to C++ has no performance cost (often a performance advatnage), so I'm not sure why you're bringing that up as some significant migration in this case? It doesn't support any argument for a transition from C++ to C# or similar, as that comes with a huge performance cost. Particularly in an era where CPU performance hasn't improved for almost a decade now.