Unity3D

From ArchWiki
Jump to: navigation, search

From Unity - Game engine, tools and multiplatform:

Unity is a flexible and powerful development platform for creating multiplatform 3D and 2D games and interactive experiences. It's a complete ecosystem for anyone who aims to build a business on creating high-end content and connecting to their most loyal and enthusiastic players and customers.

Not to be confused with Canonical's Unity.

Note: The Linux Editor is currently experimental. Please report all bugs to the Unity forums!

Installation

Warning: The Unity package is huge. For a successful installation you'll need about 8GiB of free space for the package building, and another 3.5GiB for it to install.

Simply install the AUR package unity-editorAUR or unity-editor-betaAUR for the beta version.

Android Remote

Unity Remote is an Android app to help test input for Android devices. It achieves this by sending a compressed screenshot to the device each frame.

Prepare computer

Install packages

Install the android-udev package, which will ensure you have correct udev rules for your device.

Install the android-sdkAUR package and one of the packages from the java-environment[broken link: package not found] group, preferably JDK7, though it's reported to (and should) work with OpenJDK too.

Configure the Editor

Open the editor, navigate to Edit -> Preferences and set the correct paths to the Android SDK and the JDK.

Tip:
  • The Android SDK is usually in /opt/android-sdk.
  • The JDK varies by the version you are using, if you want to use the default set it to /usr/lib/jvm/default.

The navigate to Edit -> Project Settings -> Editor and set Unity Remote Device to Any Android Device.

For more help see the Unity documentation.

Prepare Android

Install Unity Remote 5 from the Play Store. Alternatively you can download and build it yourself from the Asset Store.

It is also recommended to set your Android device to PTP mode.

Note: Don’t forget to turn on “USB Debugging” on your device. Go to Settings -> Developer options, then enable USB debugging. As of Android Jelly Bean 4.2 the Developer options are hidden by default. To enable them tap on Settings -> About Phone -> Build Version multiple times. Then you will be able to access the Settings -> Developer options.

For more help see the Unity documentation.

Test

If you have Unity opened, close it.

Connect the phone to the computer and launch Unity Remote.

Open the Editor and press play. You should now see your game transmitted to your Android device.

If it doesn't work or you have questions, see the Unity Documentation.

Troubleshooting

Unity crashes on first launch before/while signing in

This is a rare bug where Unity's configuration gets created wrongly. You can try resetting it by:

$ rm -rf ~/.config/unity3d/{*.prefs,*.log,Preferences} 

Unity crashes when trying to load project

Users have reported that unsetting GTK_IM_MODULE prevents the crash.

Unity crashes if ~/.config/user-dirs.dirs is missing

See how to generate the xdg files here: XDG user directories

Minor stuttering while playtesting (NVIDIA)

Vsync does not seem to work correctly with NVIDIA graphics cards / drivers. Solution: In nvidia-settings go to "OpenGL Settings" and turn off "Sync to VBlank".

The behaviour occured/noticed when used "transform.Rotate" in combination with "Input.GetKey".