Cameron Bonde aka Vectrex sent me the following email :

“I discovered that Unity are working on a GNU/Linux export option.

This is good news for GNU/Linux as Unity has many high quality games and can export to Mac and PC with virtually a single click. So native GNU/Linux export will be a trivial task for game developers.

I just discovered this player type while fiddling with some code. (details below)”

So I’ve decided to go back to that thread and see what he was talking about…

About 4 years ago the following post was posted at the Unity forums :

adshead :

“Given that OTEE are strongly emphasising the possibilities for using Unity to create web based games, can we expect support for a web based player for Linux in the near future?

Thesedays there seems to be more and more demand for PCs to be pre-installed with Linux, and whilst there may still be a low demand for a desktop based Unity player for Linux, I think a web based player would be popular.

I am only interested in creating games that are truly cross-platform and the lack of a Linux player would, at the moment, stop me from using Unity.”

This thread was long and took 3 years for the good news to come, until Cameron Bonde aka Vectrex discovered that Unity will indeed have a GNU/Linux player, the news later got confirmed by the developers.

Here is the proof he posted on the forums :

The Unity Web Player enables you to view blazing 3D content created with Unity directly in your browser, and autoupdates as necessary.

I’ve sent asked Cameron Bonde a few questions to clarify the subject :

1. What do you mean by “export” ?

A bit about Unity. Basically it’s a framework for creating anything really. But 3d games is the most common use. It actually uses the ‘Mono’ project to allow you to code in multiple languages (C#, javascript, python( called ‘Boo’)). Thanks to the crossplatform Mono compiler this allows you to create a game and export to multiple platforms with no changes. Also since it internally can use DirectX or OpenGL the game developer doesn’t even care about the final 3d api the OS uses.

2. Is the exporter being made by the Unity team or an external developer ?

It’s an official addition.

3. Are you talking about the web player ? or the full Unity engine ?

Well, both really. The EDITOR is the bit that probably won’t be ported for a while.

At the moment they support ALL the browsers so the webplayer on Linux will most likely take a while to get right. So I would guess native executable export first, web browser support second (also because the ‘LinuxPlayer’ is the only one listed, no LinuxWebPlayer)

It’s important to note that Unity isn’t just a web platform. It’s an EVERYTHING platform 🙂 So the ‘webplayer’ is not the ‘player’ (meaning the core Unity engine). They are separate things. The webplayer basically IS the full unity engine though, so in effect they run almost the same speed.

4. Can you “port” Windows/MacOS Unity games to native Linux ? how it’s done ?

There’s no ‘porting’ as you would just click the GNU/Linux export button to make a real GNU/Linux program 🙂 You probably won’t even need to have Linux installed as I can happily export to Mac without having a Mac! Which is great for reluctant Win/Mac devs.

5. Will there also be a native Unity port to GNU/Linux ?

Probably not. At least for a while. They did the same with Windows. For years it was Mac only but you could export to windows exe/web plugin. There was no Windows editor to actually make the games. The same could happen with Linux, so there’s a chance (especially since the editor uses 100% custom GUI so it’s no where near the hassle of normal porting)

6. And when it’s coming ?

They say no time-line and it’s going to be a ‘preview’. Which is fair enough as it might take a fair bit of testing to get right across the various distros/browsers.

7. Will it be freely available ?

Well Unity make money mostly from mobile and console licencee’s. There’s 2 core licences, free and ‘pro’. Additional mobile/console platforms cost more on top. For desktop the free version provides most of the functionality (and full commercial usage) and allows free export to PC/Mac/Web. The ‘pro’ version of Unity is $1500 and gives you some more fancy graphics effects and professional features (like C++ plugins, more native platform access etc).

But going from the existing model I’d say there’s an excellent chance of free Linux export.

8. What more can you tell ?

The GNU/Linux player ability has the highest number of votes on their feature request list by far! So they’re well aware of the demand.

Even if the webplayer isn’t ported there’s a few other things that will enable Linux browser Unity stuff. First they support the Google ‘NaCI’ platform, which allows native code to run in a browser. Google Chrome will be the first, but it’s open source I think so other browsers can include it.

Another, well, mad thing they’re working is Flash export. Basically since flash now has a low level 3d API Unity think they can do it. It’s a MUCH harder task than how they do things now, since they use Mono to handle all the code and Flash uses it’s own language. If they pull it off and Adobe do a decent GNU/Linux flash player, then it’ll be pretty big.

Thanks to Cameron Bonde aka Vectrex for discovering and letting us know of the great news.

Links

Unity

Unity Web Player

Unity GNU/Linux Player Thread

The Proof

Confirmation