Hacker News new | ask | show | jobs
by azakai 4257 days ago
One concern here is portability: If you write your game logic in C# on Mono, it won't run on all platforms (possibly for either technical or licensing reasons - you're limited to where Mono runs). For example it won't run on the HTML5 target. For comparison, Unity has written il2cpp to replace Mono to get around that,

http://blogs.unity3d.com/2014/05/20/the-future-of-scripting-...

it basically compiles C# to C++, which they found is much faster.

I wonder if this project has a solution in mind for platforms where Mono won't run? Or maybe it targets just a subset of the things Unreal Engine can target?

1 comments

Mono is a well designed, very portable codebase. The only platform I can imagine having trouble _is_ the browser, but I would bet that you could compile mono with emscripten quite easily. Also, there's http://www.jsil.org/
There are also issues with Mono on some consoles and mobile devices, due to how linking works as well as some non-technical (legal) restrictions the platform owners place.

From talking to Mono devs, definitely Mono can be ported to new platforms, at least if there are no license problems. But even then, it can be quite a lot of work. il2cpp avoids all those issues, it emits C++ which every significant platform can handle very well.

Also, there's NaCl.

Some Mono games (like Bastion) have already been ported to run on the browser:

http://www.supergiantgames.com/blog/surprise-bastion-now-ava...

(then again, NaCl is not probably what most people have in mind when they think about browser support)