Choosing an engine for VR: Unity vs Unreal
Whether you're working on an engrossing first person shooter for Oculus or designing high end apartment tours, you want a virtual reality (VR) engine that delivers high-quality, immersive 3D graphics with ease of use and support for multiple platforms. There are many to choose from, but the decision often comes down to two major players: Unity and Unreal Engine.
Unity has been around longer, so it's bigger in a lot of ways — more market share, bigger asset library, and more users. But Unreal definitely keeps up. And the question of which one is "better" — like New York pizza vs deep dish or Pepsi vs Coke — is hotly debated. That's good news for developers because both brands will keep getting richer, faster and easier to use in order to compete with each other.
We'll look at some of the key differences to help you make your own decision of which is better — or best — for you.
Things to consider
Besides the actual experience of using the engines and seeing for yourself how intuitive and responsive they are, there are a few things that differentiate Unity and Unreal out of the gate. Two of the biggest differences are coding language and pricing structure, which we'll dig into below. Beyond that, you really want to think about how the platforms mesh with your organization and what you want to make. Here’s a quick primer to get yourself familiar with each one.
What you need to know about Unity
The bigger, most established of the two, the Unity engine is a proven platform, and the go-to for many gamemakers and VR creators, especially when it comes to mobile. More than 70% of the top 1,000 mobile games were built with Unity. Its longstanding popularity means there's a huge user network to offer tips and support whenever you need help, and many programming examples to draw from. Unity also has a huge library of visual assets — tens of thousands of objects, models and environments to choose from.
If you're considering using Unity for VR, you'll want to know that Unity's Virtual targets include Oculus Rift, Gear VR, Google Daydream, Cardboard, and SteamVR / HTC Vive. Unity 3D is developed with C# coding language. And Unity has a very large mobile base that makes it the best for mobile VR development.
Unity Personal is free. It offers all engine features, but it has some limitations. For instance, the plan does not offer support or learning and it only integrates with one collaboration tool. You can use Unity Personal if your game makes $100,000 or less in annual revenue or funding.
Unity Plus costs $399 per year per person. It offers more cloud-based service features than Unity Personal, but also has some limitations such as no support or learning and you can't create and deploy to closed platforms. You can purchase Unity Plus if your game's annual revenue cap is $200,000.
Unity Pro costs $1,800 per year per person. It offers more flexibility, more tools (such as the high-end art assets package and advanced cloud diagnostics) and a dedicated service team. Unity Pro has no revenue cap.
Unity Enterprise starts at $4,000 per month for 20 seats and offers packages for more seats according to your needs. It offers the same tools as Unity Pro plus technical support, customized learning programs, additional build capacity, and an assigned Customer Success Manager.
What you need to know about Unreal
Out of the box, Unreal offers options and tutorials that make things easy for experienced programmers and non-coders alike. Its main coding language is C++, but it also has a visual scripting system called Blueprint that lays out instructions in an easy-to-follow, flowchart-like form. That makes it a good choice for newbie coders and professionals collaborating across development and design teams where everyone might not be versed in programming. Those who are developers, however, may appreciate that Unreal is 100% open source. With access to the full code at all times and at no cost, you can modify and update source code however you like. Users report that when it comes to 3D graphics, Unreal edges out over Unity with its realistic textures and environments.
If you're considering using Unreal for VR, you'll want to know Unreal's VR targets include Oculus Rift, OSVR, Google VR / Daydream, Samsung Gear VR, and SteamVR / HTC Vive. It's UE4 does not natively support C#. And Unreal is considered the best engine for creating immersive VR due to its excellent level of performance.
Publishing License is free, but will charge a 5% royalty fee after $1 million in revenue. It offers all tools and features, plus full code access, with a few limitations such as custom applications and linear content.
Creators License is free with no royalty fees for those who will only make internal projects or projects with no monetary gain. It offers all tools, features, code access, custom applications, and linear content. The biggest limitation is that you cannot create off-the-shelf interactive products, such as a game.
Custom License allows you to negotiate what you need and the price. It offers all tools, features, and code access plus support, learning, access to the Quixel Megascan Library and can be used for game development and non-game applications.
Unreal Enterprise Program
Unreal Enterprise Program costs $1,500 per year per seat. It offers all tools, features, and code access plus support, learning, and access to the Quixel Megascan Library. The biggest limitation is that you can not use it for game development, but you can use it for off-the-shelf non-game applications.
The short answer
If you're working on VR for mobile, choose Unity.
If you're looking for easy collaboration with non-coders, don't mind royalty fees or negotiated prices, and want high quality immersive VR for both desktop and mobile, choose Unreal.
There's really no right or wrong when deciding between these two powerful, easy to use game engines for your VR development project. Both will give you beautiful, realistic 3D results, and all the tools, tricks and tutorials you need to get there. Before deciding between the two, make sure you know your end goal. You’ll want to consider the features needed to develop your project and what prices or revenue share make the most sense for you. But whether you’re a team of 1 or an established studio, both Unity and Unreal can deliver what you need.