Unity

by Jacob, Duncan, Brandon, Jen, Martin, and Lucia

Overview

Unity3D is a popular game engine for 2D and 3D games, including VR. Unity's greatest perk is that it is among the most accessible and beginner friendly game engines, but still allows users to have full control over developing professional games and tools.

We compare it to other VR development software here.

Tutorials

Tutorial #1: 'Hello Unity World': Get a handle on the basics of the GUI and putting a classic 'Hello World' in space. Time: ~30 min

Tutorial #2: 'Hello World' meet 'Sphere': Make a variety of objects and have them interact using colliders. Time: ~30 min

Tutorial #3: 'Hello World, Bye World': Extended version of Tutorial #2, includes some interaction with Blender. Time: ~2 hrs

Tutorial #4: 'Throw a Ball': Make a carnival game with physics that you'll want to spend hours playing. Time: ~1.5 hrs

Tutorial #4.1: 'Throw a Ball': Make the same game, but with the latest version of SteamVR. Time: ~1 hr.

Tutorial #5: 'Teleporting': Make it so you can move around Tutorial #4 - you'll never want to take the Vive off! Time: ~30 min

System Requirements

For development

OS: Windows 7 SP1+, 8, 10, 64-bit versions only; Mac OS X 10.9+; Ubuntu 12.04+*

Server versions of Windows & OS X are not tested.*Unity 3D for Linux is still in development and prone to instability.

CPU: SSE2 instruction set support.

GPU: Graphics card with DX10 (shader model 4.0) capabilities.

The rest mostly depends on the complexity of your projects.

Additional platform development requirements:

  • iOS: Mac computer running minimum OS X 10.9.4 version and Xcode 7.0 or higher.

  • Android: Android SDK and Java Development Kit (JDK); IL2CPP scripting backend requires Android NDK.

  • Universal Windows Platform: Windows 10 (64-bit), Visual Studio 2015 with C++ Tools component or later and Windows 10 SDK

For running Unity games

Generally content developed with Unity can run pretty much everywhere. How well it runs is dependent on the complexity of your project. More detailed requirements:

  • Desktop:

    • OS: Windows Vista SP1+, Mac OS X 10.9+, Ubuntu 12.04+, SteamOS+.

    • Graphics card with DX10 (shader model 4.0) capabilities.

    • CPU: SSE2 instruction set support.

  • iOS player requires iOS 7.0 or higher.

  • Android: OS 4.1 or later; ARMv7 CPU with NEON support or Atom CPU; OpenGL ES 2.0 or later.

  • WebGL: Any recent desktop version of Firefox, Chrome, Edge or Safari.

  • Universal Windows Platform: Windows 10 and a graphics card with DX10 (shader model 4.0) capabilities

Metrics

Accessibility: The estimated time for someone to create Hello World in VR

  • Beginner: No coding or graphics experience | 2+ hours

  • Intermediate: Some coding or graphics experience | 1+ hours

  • Advanced: Both coding and graphics experience | 30+ minutes

  • Expert: A lot of experience with computer graphics, specifically with this software | 30+ minutes

Power: The engine's power - i.e. how much one can do with this

  • Medium: Almost anyone can learn how to use Unity. It isn't extremely easy, but it's doable even for people with little programming experience. But while the Unreal Engine can be used to make extremely photo-realistic renderings, Unity hits a cap at a much lower level of complexity.

Usage: Evaluation of software's use for the following purposes

  • Game design - built for game design and used worldwide to create some of the most complex, well built games around

  • Other - not intended for science

Summary

Overall, Unity is a powerful tool that can be used to make extremely complex games. Games made on Unity can be easily exported to a variety of platforms. It doesn't have the power of Unreal Engine, but it is more than enough for most projects (even professional). It is easy to use for VR development thanks to the GoogleVR and SteamVR plugins. We strongly recommend using Unity to make any VR games.

Unity3D Resources