Unity vs. Unreal: Which Game Engine is Best For You?
Playstation vs Xbox, Mario vs Sonic, Unreal vs Unity? Whether it’s consoles, characters, or game engines, people get passionate about defending their gaming industry favorites.
Focusing on the game engines, Unity and Unreal Engine (aka UE4) are the two most popular game engines on the market today. They are the go-to tools for most indie developers. While many game development studios use their own proprietary game engines, plenty use Unity or Unreal.
So which engine is better? This is one of the most asked questions from the over half a million students that the team at GameDev.tv and I have taught over the last 5 years.
Unity vs Unreal Engine: history
Unreal Engine was developed by Epic Games founder Tim Sweeney in 1998. It launched alongside its debut title, “Unreal,” and was unique in allowing players to modify the game for the first time. Today Unreal is associated with “better graphics” and offers a big studio AAA-quality to the games that use it. Epic Games, the company behind Unreal Engine, has seen lots of success with its game Fortnite which has 200 million users and has generated revenue reported at $1 billion as of January 2019. Unreal Engine itself has 7 million users.
Founded in Copenhagen in 2004, the founders of Unity wanted to make game development universally accessible. Today Unity is known as the “make any game” engine and is ideal for indie developers. Over 50% of games across all platforms use Unity and 60% of all VR/AR content is powered by Unity.
In reality, though, both engines are capable of making nearly any sort of game and deploying that game to most gaming platforms.
But that doesn’t help you decide, right? To answer which of these game engines is best for your needs, you first need to answer these five questions:
- How much game development experience do you have?
- Where do you want to release your games?
- What type of game do you want to release?
- Is this a hobby, or are you looking to make money?
- Are you skilling up to get a job with a game studio?
1. How much game development experience do you have?
If you’re just getting started with game development we recommend Unity. It offers a very intuitive design and uses the C# programming language, which makes it both easy to learn and fun to use.
After spending a weekend taking Unity courses, it’s not far-fetched to say you could have your first simple game made and ready to share with friends.
Plus, there’s a large amount of information available online from other Unity developers to help you out every step of the way. From YouTube videos to online courses to active community forums.
For a complete beginner, Unreal Engine is a mixed bag. There are two ways you can program your games in Unreal, either with Blueprint Visual Scripting or C++.
Blueprint Visual Scripting helps you have some quick wins (and completed games) if you’re not familiar with programming. However, if you want to unlock the full power of Unreal you’ll need to learn C++, which many people find trickier to learn than the C# programming language used by Unity.
Having made courses for both engines, our team deeply understands the difference in the learning curve between the two. If you want to learn to code, C# is easier than C++.
We’ve seen many of our students start in one engine, learn the required skills, and successfully transition to the other engine when needed for future uses. Many of the skills you learn in Unity can transfer to Unreal and vice versa.
Takeaway: The intuitive design and use of C# make Unity ideal for beginners.
2. Where do you want to release your games?
How potential players will access your game is an important consideration when deciding which engine to use. Both Unity and Unreal Engine engines offer cross-platform integration but Unity offers significantly more integrations. Check out the list below for the current platform integrations offered by Unity vs Unreal.
Unity Platform Integrations: iOS, Android, Windows Phone 8, Tizen, Android TV, Samsung SMART TV, Xbox One & 360, Windows PC, Mac OS X, Linux, Web Player, WebGL, HoloLens, SteamOS, PS4, Playstation Vita, and Wii U
Unreal Engine Platform Integrations: iOS, Android, VR, Linux, Windows PC, Mac OS X, SteamOS, HTML5, Xbox One, and PS4
While both engines can be used to make mobile games, we prefer to use Unity for mobile platforms. It’s an easier engine to make 2D games on and has an easier time scaling down to very low-end hardware. Unity offers the Light Weight Render Pipeline specifically targeted at low-powered devices with old GPUs.
If you’re going for high-end devices — like an Xbox One — then both Unity and Unreal will work.
Takeaway: Unity offers more cross-platform integration.
3. What type of game do you want to release?
Both Unreal and Unity support the creation of 2D and fully 3D rendered games. This is where you must consider which format is worth the time and cost spent as a developer.
If it’s 2D content you’re creating, then Unity is the one for you. It has a simpler user interface and well-developed 2D tools. Unreal can be used for 2D game development, but Epic Games aren’t prioritizing this feature set as much as Unity.
If you’re creating a more traditional action-filled first-person shooter game then opt for Unreal Engine. These types of games are what the engine was created for — for example, Unreal Tournament, Borderlands, and Fortnite.
Fortnite, made with Unreal Engine
If it’s stunning visuals you want in your game, Unreal Engine is hard to beat. Though Unity is working on improving its graphics offerings, it remains a primary differentiator between the two companies. The unbeatable visuals are also why more large studios use Unreal in their game development.
It’s worth noting that Unreal is more opinionated about how you structure your game than Unity. By default, developers use Unreal Engine’s Gameplay Framework to structure games.
This highlights a philosophical difference between the companies:
- Unreal includes more convenient out-of-the-box tools, but they have to be used the “Unreal Way,” which can be complicated to learn and use.
- Unity provides a simple foundation on which developers can build or buy their own tools. This means Unity concentrates on making the foundation it provides uncomplicated and clean, but you need to do more of the work yourself.
Some examples of the features Unreal Engine has built-in to its platform that Unity requires third-party plugins or custom code to access include:
- AI behavior trees
- Complex animation logic
- Game saving system
- Gameplay abilities
- Chaos destruction system
Even if you opt for Unity, you can take a lot of inspiration from Unreal Engine’s architectural decisions. We have done this in our own courses by building systems that resemble the Unreal Gameplay Framework and Saving System in Unity.
Takeaway: If your end goal is a game with impressive graphics, choose Unreal Engine.
4. Is this a hobby, or are you looking to make money?
Both Unreal Engine and Unity are free to use, however, some conditions apply once you start earning revenue from the game.
Unity is available in three option plans — Personal, Plus, and Pro:
- Personal is free to use and developers can make up to $100,000 USD a year through the plan. A requirement with this free use is including the “Made in Unity” splash screen in the game.
- Plus costs $40 per month with a one-year subscription. Developers can make up to $200,000 a year and also get extra benefits such as splash screen customization and Integrations with collaboration tools.
- Pro plans are $150 per month and have no annual revenue limit. You get all the benefits included with Plus, with an addition of 3 extra seats and a high-end art asset pack.
Unreal lets developers use the full engine — with all its features — for free. If you decide to monetize your game, then Unreal is paid 5% of the revenue if it goes above $3,000 per game, per calendar quarter.
Takeaway: Both engines are worth experimenting with as you build out your games. If you’re expecting to make money on games, take the time to do some revenue analysis to uncover which company’s price structure is best for you.
5. Are you skilling up to get a job in a game studio?
If you’re learning Unreal or Unity to reach a career goal of working as a game developer in a game studio, start by looking at which engine and programming languages the studios you’re interested in working for use. Many studios use their own proprietary game engine; in this case, the language is the most important factor for your career trajectory. Many studios value C++ knowledge, so learning Unreal and C++ could give you an advantage.
For other roles such as a technical designer, level designer, environment artist, a studio will favor candidates who know the engine the studio uses. The good news is that if you take the time to learn one engine, you’ll already have a head start if you need to quickly learn another to ace a job interview. We go into more detail on this, in our How To Get A Job In The Video Game Industry course.
Unity vs Unreal Engine: the main difference
The main difference between Unity and Unreal is the programming language they use natively. Unreal Engine uses C++, but when you build your game with it, you’ll also use one of Unreal’s proprietary languages called Blueprint along with C++. Unity uses C# for both the main Unity editor and any plugins. It also uses its own proprietary languages, Prefab and Bolt.
Unity vs Unreal Engine: summary
Hopefully, we have helped you decide which of these gaming engines will work best for your project. Here is a table that describes the differences in detail:
|Mostly indie and hobby developers
|AAA game developers as well as indie developers
|Ease of use
|Unity comes with features that make it easy to use
|Unreal Engine has a steeper learning curve
|Unity is not open source.
|Unreal is open source.
|The basic version is free, but commercial licenses have a price.
|Unreal is free, but commercial game developers must pay a percentage of sales to Unreal.
|Does not scale as well as Unreal Engine
|Supports distributed execution for more performance
|Unity supports 3D.
|Unreal supports 3D.
|Unity supports 2D.
|Unreal supports limited 2D.
|C#, Prefab, Bolt
|Limited AI support
|Advanced AI support with behavior trees
|Many features for VR
|Limited built-in VR features
|Many features for AR
|Limited built-in AR features
|Integrated multiplayer support is in development and there are third-party plugins available
|Has integrated multiplayer support
|Has powerful mobile features
|Not as much support as Unity
|Decent graphics, though not as good as Unreal, with physically-based rendering, global illumination, post-processing, and optional volumetric lights through a plugin
|Advanced graphics with physically-based rendering, global illumination, volumetric lights, post-processing, and a material editor
|Windows, MAC, Linux, Android, iOS, PlayStation, Xbox, and Nintendo Switch
|Windows, MAC, Linux, Android, iOS, PlayStation, Xbox, Nintendo Switch, and Google Stadia
|Awards for developers
|The Unity Awards
|The Rookie Awards
|Cuphead, Pillars of Eternity, Fe
|Fortnite, Street Fighter 5, Borderlands 3
|Choose UNITY if you are:
|Choose UNREAL if you are:
|– new to coding
|– up for a challenge
|– making a 2D mobile game
|– making a first-person shooter
|– looking to release across many platforms
|– all about the high-quality visuals
|– after a job in game development, and the studio uses Unity
|– after a job in game development, and the studio uses C++ or Unreal
If you’re interested in exploring ‘Unity vs Unreal’ from a beginner versus advanced developer viewpoint, then check out the video below.
Top courses in Unity
Unity students also learn
Empower your team. Lead the industry.
Get a subscription to a library of online courses and digital learning tools for your organization with Udemy Business.