Categories & Tags
Archive

Linux Publishing in Unity 4.0

November 22, 2012 in Rants & Raves, Unity Products and Services by

It’s Na’Tosha from Team Penguin Pushers here, and in case you missed the news, Unity 4.0 has been released — with a publishing option for Linux! For those of us who have been working on this port, this time couldn’t be more exciting — this project is very near and dear to our hearts, and we’re thrilled to be able to share our love for Linux with you by helping you to bring games to such an open, exciting platform.

With the debut of the publishing option, it seems like a good time to answer some frequently asked questions . . .

So, does it work?

Yes! Two well-known commercial games have been shipped for Linux and are currently available in the Ubuntu Software Center — our Linux launch title Rochard and tower defense game Cubemen, which is also one of the launch titles for the Steam Linux beta.  More and more games (like Splice, one of the titles in the Humble Android Bundle 4) are coming in on a regular basis.

What distributions do you support?

We currently only offer official support for Ubuntu Linux, version 10.10 or later. However, users are happily running games on a very wide range of linux distributions, including Arch Linux, Gentoo, Debian, and others.

What hardware do you support?

We support both 32-bit and 64-bit systems, and even provide an export option for a “Universal” build, which includes everything needed to run out-of-the box on both 32-bit and 64-bit systems. We provide official support for machines with graphics cards and graphics drivers that support hardware acceleration.

What are the caveats?

Aah, yes. You didn’t assume it would all be rainbows and unicorns, now did you? There are a couple of caveats with the initial version:

1) There is no screen selector, so you need to use your own input manager if you want to allow users to set their own keybindings — they won’t get a chance to reset them before launching the game. If you just want to set screensize, see the docs for command-line options to the player to set default screen width/height and fullscreen options

2) Although the player runs in batchmode, it still requires a running X session.

Rest assured, however, these are issues we plan to address in later 4.x releases.

What about the Web Player?

We don’t currently have any plans to ship a web player for Linux, but we encourage you to export your game to Native Client, which Linux users can take full advantage of.

What about the Editor? I want to make my games on Linux!

As a long-time Linux user (I’m writing this post from my desktop running Ubuntu), I can certainly feel your pain. Deciding what to do as a company and as a team is hard. We make our decisions based on a lot of things — what you guys ask us for and how the decision will affect our own sustainability are two of these things. Will we support the editor on Linux? We honestly don’t know. We have no official plans to support the editor on Linux, but of course the future is always unwritten. If the publishing option for Linux turns out to be very successful, who knows what the future holds?

How do I publish my games for Linux?

Check out the Ubuntu MyApps Developer Portal to get in the Ubuntu Software Center, Desura, or if you think you can make the cut, contact the Humble Indie Bundle team.

Did I forget any questions? Ask them below! If you don’t have any questions, then go make some games and publish them for Linux.

Much love from the Unity Linux Team,
Na’Tosha

Share this post

Comments (28)

Comments are closed.

22 Nov 2012, 4:44 am

Great work guys!

22 Nov 2012, 5:03 am

Any particular informations about hosting Unity3D based game servers on Linux?

Na'Tosha Bard
22 Nov 2012, 5:57 am

@GFX47, you can host a server-based game on Linux fine, but as mentioned in the article, even batchmode still requires a running X session right now, so you can’t host on a “purely” headless server. We plan to implement support for purely headless servers later in the 4.X cycle.

22 Nov 2012, 8:12 am

Is there any difference in performances between windows and linux builds with current version anyway?

Nathan Warden
22 Nov 2012, 11:44 am

1) Thanks Na’Tosha and Levi for making this available! :)

2) I was wondering why nobody asked about a Linux Editor at Unite during your guys’ session, that would have been my first question, haha

3) I’ve made an external assembly loader in my Unity build so that I can write my code almost 100% in Ubuntu, run the built app and get all my code updates… I jump into Unity only when I need to rebuild because I updated some assets such as textures, GUISkin, shaders, materials, etc… And I do that in a Virtual machine, of course :) Maybe I’ll write an article so that other coders (probably Indie) can spend all their time in Linux too

Na'Tosha Bard
22 Nov 2012, 2:54 pm

@GFX47, there are sometimes some performance differences between the players for Windows and Linux, but they depend on the game, the graphics card, and version of drivers in use. Most of these differences we have seen in testing are actually a difference between driver support for DirectX vs. OpenGL rendering for a particular card/driver combination. Hardware and driver support are much bigger factors in terms of performance than OS will be. It’s important to note, however, that, if any performance difference exists at all for a particular game on a specific target machine, it is generally minimal — in some cases a release build of the 64-bit Linux player actually outperforms builds for other operating systems.

Na'Tosha Bard
22 Nov 2012, 3:01 pm

@Nathan, It’s intersting to hear your clever solution to allow you to do most of your work in Linux. As for why no one asked during our Unite talk about an Editor for Linux, I think it is because most people came to the hands-on labs and asked us directly ;-)

Rikard
23 Nov 2012, 4:57 pm

Great news! Would like to try out this Unity3D as it seems nice, won’t install Windows for that though, so I’ll wait and see if the editor will be ported. ;) Now we will hopefully see a lot more Unity3D games in the USC in the future.

23 Nov 2012, 5:39 pm

It would be really great to see a base-line set of tools (command line etc) be made open source and even if you just throw them over the wall (i.e. no support or builds) the community where interested could take up the baton for the last mile. Please use the developers who can aid you where needed to fill in any economic uncertainties.

jackson
24 Nov 2012, 1:39 pm

Hello, I was just wondering how i could download this if it is out currently. if i can, please give me a link.

Danni Coy
24 Nov 2012, 9:18 pm

I will definately take a serious look at unity if the editor is ported to linux (even if that is just making sure it doesn’t crash under wine). In the mean time I have access to engines that do have native linux editor support.

24 Nov 2012, 10:28 pm

Really nice to see that you gave Linux a shot.
I hope you will soon support -batchmode without X, as it will be the key to running Dedicated servers on linux VMs.
Keep up the good work guys!

26 Nov 2012, 6:07 am

great work guys!
I think many people will use it for onine servers for games, I think that X dependency will be removed soon in next release and most cloud based Linux servers will be available to devs.

Mold
26 Nov 2012, 7:56 pm

Now we want the editor to work on Ubuntu, great work guys!!!

27 Nov 2012, 10:22 am

The Unity editor has worked on Ubuntu for a while. The file and folder dialogs could use some polish from the codeweavers folks. http://www.youtube.com/watch?v=jxgdrwWBPm0

Vladimir
27 Nov 2012, 8:43 pm

Help me please to create package for unity game in ubuntu.
I need some example of control files.

28 Nov 2012, 3:44 am

We were trying to run server of our Unity application on Amazon EC2. These machines don’t has direct access to GPU (which is required by Unity), so on Windows only way to make these running is to add -batchmode parametr. Unfortunately on Linux it results in “Aborted (core dumped)” error message.
I am talking about Ubuntu with X session running (we’ve connected through VNC). On PC with same system it works, but we want it on Amazon. Please help. If someone would have any ideas, please mail (kris at krej don net)

Na'Tosha Bard
28 Nov 2012, 6:17 am

@Vladimir – There is a brief overview of how to build your own .deb package in our Unite 2012 talk (http://video.unity3d.com/v.ihtml?token=d2b087693b2186ed92f6004ce404211a&photo_id=6958381&browseMode=0&autoPlay=1). There are also details on Canonical’s website – http://developer.ubuntu.com/2012/02/how-to-prepare-a-compiled-application-for-ubuntu-software-center/

@KRIS – Unfortunately the player simply won’t run on a machine without a running X session; this is known and expected behavior. We are planning to implement support for purely headless servers later in the 4.x cycle.

28 Nov 2012, 6:48 am

Congrats to the Unity team.
Hats of to you guys and keep up the good work.

Kevin
28 Nov 2012, 6:22 pm

Dang it! I had been waiting so long for Unity 4 just to find out no editor is available on Linux.

Vladimir
30 Nov 2012, 11:21 am

@Na’Tosha Bard Thanks for links. But could you publish controls files? They all just the same for all your users.

2 Dec 2012, 2:35 am

@Na’Tosha Bards Thanks for your answer. In fact we had installed and running X session there. We connected using VNC and was able to launch X applications like GIMP or even Blender. What we didn’t have was GPU acceleration. Fact that Unity requires X is not a problem, fact that it requires graphic card with 3D acceleration is. Thanks in advance for your support!

2 Dec 2012, 2:30 pm

When building a linux game Unity creates a game file and a Data folder. When uploading to the Linux stores do I need to upload the data folder as well as the game file or just the game file?

Nicolas M
3 Dec 2012, 2:24 am

@JASON I think this is the same as with Windows standalones. The gamefile is just a loader and the actual game files (levels, resources) are inside the Data/ folder.

Na'Tosha Bard
3 Dec 2012, 6:31 am

@KRIS, the Unity player does not require hardware acceleration in order to run (we even have some virtual machines in-house without hardware acceleration), so the segmentation fault you get must be related to something else. Reporting a proper bug report with as much information you have about the target environment, and a project that, when built, reproduces the problem, is your best chance of getting the issue looked into.

John Pugh
11 Dec 2012, 4:52 pm

@VLADIMIR If you upload a zip/tarball of your game to the Ubuntu Software Center, we’ll package it for you (and if you ask I send you the packaging source for you to review for reference, too!).

If you really need a control file example…I can help. Hit me up as zoopster on twitter.

4 Feb 2013, 3:22 pm

has anyone tried to run the editor under playonlinux?

King_Hermy
17 Feb 2013, 8:03 pm

Excellent news.

Leave a Reply

Comments are closed.