For developers just starting in the industry, the task of choosing the best game engine can be daunting. Here, we’ll try to address many of the issues concerning one of the most popular game engines, Unreal Engine, so you can see if it’s the right game engine for your project.
You can read our other in-depth guides on all the major game engines from this page.
Photorealism is probably the first word that comes to mind when thinking about Unreal Engine. If you’ve ever looked at a cut-scene wondering if it’s a real-life image or created from scratch, chances are you’re playing a game built with Epic Games’ technology.
Over the years, Epic has presented tech demos showing what Unreal is capable of, from ray tracing to real-time technology, to physics and destruction systems. Such capabilities make it the preferred engine in the AAA space.
This has continued with the current iteration of Epic’s tech, Unreal Engine 5. Released in April 2022, this latest version comes with the brand new Lumen dynamic lighting system and Nanite, which allows for highly detailed objects in-game.
When revealing the tech back in May 2020, Epic CEO Tim Sweeney said that Unreal Engine 5 was going to be the “foundation for a new generation of games.”
Upon release, the company’s VP of engineering – Nick Penwarden – discussed broader ambitions, saying that the tech was part of Epic’s mission to have Unreal Engine be the No.1 player “for creating real-time 3D content, for creating the next generation of content and shared experiences across all mediums, whether it is video games, film, or live interactive experiences.”
Unreal’s photorealism is one of the reasons why the engine is widely used outside of games too, in sectors such as architecture, product design, and filmmaking. Over 500 film and TV productions have used Unreal Engine, including Star Wars TV show The Mandalorian – which used the tech for pre-visualisation and production flows – and The Matrix Resurrections.
Projects built in Unreal Engine 4 are compatible with (and can be moved to) Unreal Engine 5.
For a long time after its original release in 1998, Unreal Engine proved its worth in the first and third-person shooter genres, such as the types of games Epic itself develops: Unreal Tournament, Gears of War, and Fortnite.
However, with the release of Unreal Engine 5, the tech is being used for a broader array of games; CD Projekt RED is using the engine to power the next entry in its Witcher series of open-world RPGs, while Unreal also powered the remake of Square Enix’s iconic Final Fantasy 7.
Since the launch of Unreal Engine 4 back in 2014, the tech has used C++ rather than its own in-house scripting language. UE5 also continues to use the Blueprints scripting language and makes use of the Marketplace asset store, introduced with the release of Unreal Engine 4.
One aspect that has evolved drastically over the years is its pricing model. Up until Unreal Engine 3, Epic’s licensing costs were high, starting at $99 for its Unreal Development Kit but usually going much higher as most licences were custom. When UE4 was released, Epic Games tested a subscription model at $19 a month, which resulted in its userbase growing ten times larger in a single year. At that point, the company decided to make UE4 free. This is still true today.
Epic then switched to a royalties system – initially, if your game made more than $3,000 per calendar quarter, Epic would take a 5% royalty. In May 2020, the company tweaked this system – devs still have to pay a 5% royalty, but only once their game makes more than $1 million in revenue.
You’ll need to report your earnings to Epic every quarter using this online form. The system is flexible, though – you can choose to pay an upfront fee for a custom licence, an option that can lower or even remove royalties altogether. To learn more about custom licences, you’ll need to contact Epic directly.
Unreal Engine supports a wide variety of platforms: Windows PC, PlayStation , Xbox, Mac OS X, iOS, Android, AR, VR, Linux, SteamOS and HTML5.
At GDC 2023, Epic said that as of February 2023, over 750,000 developers were actively building projects using Unreal Engine every month, making it one of the most popular game engines. In fact, Epic claims that over 50% of next-gen projects for PC and console are being built using Unreal Engine 4 and 5. The company also says that over 73% of developers who were previously using UE4 have now moved to Unreal Engine 5.
What are the advantages of Unreal Engine?
Unreal Engine can handle a wide variety of projects
Unreal Engine’s flexibility is one of the core reasons for its popularity – whatever the project, it can handle the task. Developer Dontnod is a perfect example to show that versatility, as pointed out by CTO Jérôme Banal.
“We have created an action-adventure game (Remember Me), an open-world action-RPG game (Vampyr), several episodic narrative adventure games (Life is Strange 1 and 2), and we have more games in production,” he says.
“With the large increase in the number of licensees, Epic has made a noticeable effort to address most types of game. They’ve published side-scrollers, added examples for everything from racing games to action-RPGs… They’ve even made an effort for 2D games, but I don’t think this has been used as extensively as other competing engines.”
Unreal Engine excels at shooters
While Unreal Engine fits most projects, it should be love at first sight if you’re working on a shooter – the toolset and codebase are geared towards that kind of experience.
“You’re going to have the easiest time the closer you are to [a first- or third-person shooter], even if Epic has done a good job of broadening the types of games that can be made [with Unreal Engine] ,” says Mark DeGeorge, technical director at Obsidian Entertainment.
David Mervik, senior narrative designer at Little Nightmares developer Tarsier Studios, adds arena shooters and battle royale games to the mix, saying that “while technically it is possible to create any game with Unreal, it excels at making games that are similar to anything Epic Games has published.”
Epic gives you access to the source code
Access to the entire C++ source code for the engine is one of the reasons Unreal Engine is so flexible. The code can be downloaded from GitHub, you can tweak it, and you don’t have to pay for it. By comparison, Unity gives Enterprise and Industry customers access to its source code – and that comes at a price.
Pierre de Margerie, CEO of Absolver and Sifu developer Sloclap Games, says that’s the reason his studio chose Unreal: “The ability to have access to the source code of the engine and modify it to our needs was the primary motivation.”
Matt Robinson, studio manager at We Happy Few maker Compulsion Games, adds that being able to make modifications deep in the engine code can be crucial: “This is especially important in the last few months in development as we can fix engine issues ourselves when it’s critical.”
Unreal Engine is free
Developing and releasing a game made with Unreal is entirely free, with a 5% royalty due to Epic only once a game has made $1 million lifetime gross revenue.
“This is amazing for developers, but also students and people who are interested in how a cutting-edge game engine is built from the ground up,” says Filip Coulianos, formerly lead level designer at Hazelight Studios and now the co-founder of Keepsake Games.
Compulsion Games’ Robinson adds: “Unreal provides a set of tools that would be too expensive for us to try and build ourselves, and as a small studio – especially at the time [of We Happy Few] – it wasn’t worth it to try and build our own engine. We would much rather spend that time on the creative part of the game.”
Unreal Engine allows for quick prototyping and iteration
In addition to being flexible and free, Unreal Engine makes rapid iteration easy, which is useful when starting a new project. That’s the very reason why Moss developer Polyarc chose the engine.
“A lot of us came from proprietary in-house engines where what you could do with the engine was more rigid and less flexible and it certainly takes longer to implement or prototype features,” says Joshua Stiksma, design director at VR studio Polyarc.
“One of the things with UE4 that stood out was its ease of prototyping – getting ideas into a digestible form where you could iterate on experiences that were going to be key to defining what the game was.”
The two-person indie studio Kaizen Game Works, which released Paradise Killer back in 2020, adds that this ease of prototyping and iterating is valuable when you need to handle a lot of assets. It allows you to try more ideas and quickly understand what can and can’t be done.
“[Paradise Killer] is an open world game and there’s only two of us, so we needed to get a lot of assets in very easily and quickly,” says creative director Oli Clarke Smith. “The renderer and the lighting are just amazing out of the box. Because we’re a small team, we need our game to look good immediately, so you just load up a scene in [Unreal Engine] and put a light in and it already looks good.”
Unreal Engine is made simple for non-technical staff by Blueprint
Unreal Engine’s visual scripting system, Blueprint, is the main reason the engine is a great tool for prototyping and iteration. In Blueprint, you drag-and-drop nodes and add wires to connect them and add logic. This node-based interface allows designers who don’t have a technical background to explore their ideas without needing to know how to code.
“From a content development standpoint, I think Blueprint is really huge,” Polyarc’s Stiksma says. “The fact that our audio director and various artists on our project can start making logic that affects the design of the game very quickly and not have it be some very bug-prone worry for us down the line, is huge.”
Craig Wright, technical director at Sumo Digital, adds that Blueprint empowers non-programmers to such an extent that it creates situations where “roles are reversed, and designers and artists become the champions for new engine features.”
Unreal Engine is great for large-scale games
As demonstrated by its standing as a mainstay of AAA development, Unreal scales well to larger teams and games with a lot of content. According to Kaizen technical director Philip Crabtree, it may be the market-leading engine in this respect.
“I’ve used Unity a lot, and I think it’s really optimised for small-scale games – Unreal is better at scope,” Crabtree says. “It’s a very robust engine at dealing with large scenes, with a lot of actors. It’s got a lot of tools out of the box, so if you want to do things like level streaming you can pretty much just do that.”
Unreal Engine lowers the bar to multi-platform development
Not only can Unreal Engine handle bigger games, its rendering features make it adept at scaling them across different platforms.
“The rendering pipeline is modern and cutting-edge, supporting a huge variety of platforms from mobile to high-end computers,” Tarsier’s Mervik says. “While this does not solve all problems that come with multi-platform development, it lowers the bar significantly.”
Polyarc’s Stiksma says Unreal’s scaling based on platform is especially valuable when working in VR, as you have to take comfort in consideration.
“We’re quickly able to adjust things like particles, by saying: if it’s Android here are the settings, if it’s on a standard PC platform, it’s these settings. That made it relatively quick for us to scale and actually hit the framerate targets that we needed to, because otherwise we’re hitting hitches that are absolutely unacceptable for VR.”
Unreal Engine has a robust editor
Unreal’s ease of use is also supported by a wide range of features and tools, within an intuitive editor that is accessible to many disciplines. Tarsier’s Mervik is full of praise for the editor, which allows “a large part of the team to extend systems and create gameplay that otherwise would not be possible.”
Dontnod’s Banal is similarly enthusiastic about Unreal Engine’s range of tools: “It provides solutions for pretty much every macro task you’ll have to address: scene layout including landscape and foliage, cinematics, visual scripting, particle system, animation network, materials creation, lightmapping, asset management, level of details, physics, basic bricks of AI, performance and memory tracking tools for optimisation.
“Outside of creating and rigging objects and their textures, you can do pretty much everything from within the editor or a handful of related tools.”
Unreal Engine makes recruitment easier
One advantage Unreal shares with Unity is how easy it is to recruit proficient staff and collaborate with studios who also use the engine.
“Unreal seems like the de-facto engine new developers learn to use first,” Coulianos says. “The vast majority of developers seem to have picked it up and at least learned the basics.”
And that’s true regardless of the experience of the recruit, with young developers often being proficient in Unreal from day one. Sumo’s Wright adds that Unreal Engine also allows for more fruitful partnerships between studios, considerably reducing the ramp up time associated with introducing new teams to a project, and allowing “useful work” to be produced much more quickly.
“For example, on Crackdown 3 we worked with several companies, including Red Kite and Flix Interactive, who were able to provide specialist Unreal programmers and technical designers,” he says. “This was very much not the case when we first started using UE4 seven years ago, and is a welcome change.”
Unreal Engine has good official and community-based support
Being a widely used engine means your support has to be top-notch, and that seems to be the case with Unreal – Obsidian’s DeGeorge praises Epic’s “really great” interaction with its users.
“Support from Epic is very good and we knew we could get answers to tough questions,” he says. “We typically received responses to our queries within 24 hours and from very knowledgeable developers.”
It’s worth mentioning that the level of support provided may depend on how you access the engine. A paying Unreal user with a custom license will have the direct attention of Epic’s development team, while a free user will likely have to rely on the wealth of tutorials and online resources to find answers.
But the quality should be there regardless, says Sumo Digital technical director Chris Rea, as online resources are another aspect of UE4 that has massively improved over the years.
“From the original private developer forums, we are at a point where there is a wide network of public support and a large repository of knowledge, available to anyone via the internet,” he says. “This information is an incredibly valuable resource.”
Unreal Engine’s Marketplace is well-stocked
If you’re only just beginning your journey in game development, or if you’re part of a small team, you’ll likely need to download assets to use in your game. Luckily for you, UE4 has a generously stocked Marketplace.
“You can just buy a lot of very well priced assets, and when you need to fill a world and you don’t want to make a million crates, you can just get that and dump it in,” Kaizen’s Clarke Smith says. “And I think [Unreal Engine] just gives you a lot of confidence in your game very early, because It takes a lot of pressure off you to make something look good.”
Kaizen’s Crabtree adds that the asset store is slightly superior to the one offered by Unity: “I find [Unreal’s] marketplace is perhaps a bit more advanced in terms of variety. Unity’s got a really good one, but if you want shaders, Unity is not really the place to go for that. Unreal’s got it.”
Unreal Engine is good for VR thanks to performance tracking
Unreal also scores points for its profiler, which monitors performance by collecting and tracking game data. Understanding performance was particularly important for Polyarc which charting the then relatively unknown waters of VR.
“We’ve launched on headsets where we have to get 90 frames per second,” Stiksma says. “We also launched on the Oculus Quest, where it was 72 frames per second, and it was brilliant to open the UE4 profiler straight to see where things were costing more and how we could actually optimise the game.
“[Unreal] makes it quite easy, especially using the hot path feature, to figure out what the most expensive thing in your game is. We use that quite heavily to ensure that we optimise what we need to.”
According to Stiksma, performance tracking is just one feature that is beneficial to VR developers. Indeed, alongside Unity, developers interested in the VR market need look no further than Unreal Engine.
“I think [Epic] is actually taking VR very seriously,” he says. “You’ll see this from Unity as well. A lot of VR developers who use these engines are realising all of these key advantages. VR is a small market at the moment, so it sort of demands smaller teams. It works really well when [engine makers] put out features for VR specifically. It’s helping teams, and usually small teams.”
Unreal Engine 5’s suite of features makes development easier
As mentioned earlier, Unreal boasts a suite of tools that make certain aspects of game development easier. Bloober Team moved to Unreal Engine 5 specifically for these features, including the Lumen lighting system.
“Since our games use a lot of baked lights previously, we wanted to try a different approach to shorten our iterations time, and Lumen is a great tool for this task,” Bloober Team’s lead programmer, Mariusz Szaflik, says. “There’s no more waiting for lightmaps to compute, artists can iterate substantially faster, and the visual results are great.”
The same is true of Nanite, the geometry system that allows for a greater number of detailed objects in a given scene.
“The main selling point is that you no longer need to pay attention to polycount budget and level of detail creation,” Szaflik continues. “So you could put dense meshes on levels, and the system will reduce them – in real time! – to the needed density.”
Finally, Szaflik calls out the Niagara visual effects system.
“It’s a very robust and modular system that allows for great flexibility in terms of techniques used for VFX creation, from particle sprite-based effects, to full 2D and 3D fluid simulations using fluid grids,” he says. “It’s also very extensible, it’s very easy to add more and more modules and build a whole VFX stack out of them.”
What are the disadvantages of Unreal Engine?
Unreal Engine 4 can struggle with a lot of data
One of UE4’s greatest paradoxes is that despite excelling at large-scale games, you can also quickly reach its limit if you try to go too big, or too open world. This affects various aspects of development.
“The main thing that comes to mind is that large streaming levels are still difficult to do well,” says Obsidian’s DeGeorge. “At a certain size the ability to edit them well in the editor starts to suffer, and at runtime, there are some performance issues that are difficult to address.”
Brian Heins, senior designer at Obsidian, continues: “One area that no engine is good at supporting (unless it’s specifically designed for this) is the amount of data that an RPG needs to manage. UE4 is not intended to visualise and manage the sheer number of weapons, armor, consumables, conversations, and so on, needed for an RPG.”
Dontnod’s Banal adds open world games to the mix: “We find it is still lacking for open world games. Fortnite is open world, but it’s much more lightweight than most open world projects.”
All of the above is still true for Unreal Engine 4, but is not necessarily the case for Unreal Engine 5. In fact, Epic has made great strides in how it handles large worlds.
“One thing to note is that streaming large levels is not a best practice overall,” Bloober Team’s Szaflik explains. “It’s better to subdivide a level into smaller chunks and have finer control over what is streamed where. Players will still see a large location, but you could be clever about what is shown and when, thus [putting] less pressure on memory/disc. But this approach requires time and (human) resources to maintain over the course of a project.
“Unreal Engine 5 introducing [the World Partition feature] – which at its core does exactly what I described above – was a huge step forward. It simplified streaming woes a lot; managing a few data layers is way simpler than managing hundreds of small levels to have fine-grained streaming coverage.”
Unreal Engine is too much engine for very small games
Unreal is well suited to bigger games, so think carefully if you’re aiming for a smaller project – various aspects could run slowly, from the editor itself to official support. Unity may be better suited to your needs if you’re working on a small game or a mobile game.
“[Unreal Engine] comes with the background of being an engine for large AAA titles supporting tons of features for all kinds of advanced systems,” Coulianos says. “Therefore the editor can run slow, and seem a bit overkill if you are making a very small and simple game – for a phone, for example.”
Unreal Engine needs tweaking to meet specific needs
Unreal caters to a variety of projects and platforms, so development can be difficult if you have very specific requirements. A lot of tweaking will be required to get settings to align correctly.
“There are a huge number of configuration and setup options available,” Sumo Digital’s Rea says. “When you’re targeting a specific platform, or small set of platforms, most of the available options tend to be unsuitable in terms of performance – you’re looking for that one golden configuration which exactly suits the game you’re trying to make on the target platform.”
Some developers will suffer from this more than others – VR studios for instance. As Polyarc’s Stiksma points out, the sector is still niche, and so the answer to your settings issues will not always be a Google search away.
“If you are building for certain platforms, you’ll need a clear technical understanding of what settings are needed for export options,” he says. “Just trying to figure out which specific setting we needed to enable a certain option or which certain options were unavailable on certain platforms [was a challenge].”
Unreal Engine is difficult to harness without technical expertise
The challenge of finding that “golden configuration” speaks to a larger problem. While Unreal caters to less experienced developers thanks to Blueprint, some aspects of the engine will remain difficult to grasp unless you have the right technical background.
Having some kind of experience as a programmer will help, but even with that background Unreal has quite a steep learning curve.
“You really want some C++ programming experience to take full advantage of the engine,” Compulsion’s Robinson adds. “You can do a lot with Blueprints, but there’s a lot that’s easier and/or much more efficient to handle at the C++ layer.”
Szaflik adds: “The engine seems to be for programmers, which means that a large codebase to deal with could be intimidating at start. However it becomes more manageable in time.”
He continues: “There’s a somewhat higher entry point, making candidates with prior Unreal Engine experience preferable when it comes to hiring.”
Unreal was initially meant for shooters and this is where the issue lies, Tarsier’s Mervik points out: “The further you diverge from this, the more technical skills you need on the team to extend the engine with your own systems, or add onto existing systems to create the tools needed for your specific needs.”
Advice for new Unreal Engine users
Be ready to adapt to Unreal Engine, both now and in the future
As already mentioned, Unreal’s versatility means you’ll probably have to tweak the engine so it meets your needs. You should do this as early as possible, checking your game’s design against the engine’s possibilities, and being mindful of any changes Epic makes.
“While [Unreal Engine] provides you with a lot of tools, do not assume it will solve all your problems,” Tarsier’s Mervik says. “Take the time needed to learn about the various tools and general architecture of the engine to avoid running into problems later. The earlier you learn to make things work with Unreal, rather than against it, the better off you’ll be.”
Philip Rankin, technical director at Sumo Digital, adds: “Epic has its own development roadmap for the engine and plans for change. Consequently, you should expect to be developing against a somewhat moving target for a lot of development.
“Most of these improvements will of course be beneficial, but if you have made a lot of engine changes it can cause substantial rework. Make sure you build time into your schedule to handle this, update the engine on a regular basis, and properly budget both time and resources against this.”
Start building with Blueprint, but plan ahead
As always, when it comes to considering your engine options, the best thing to do is just to try it for yourself. That is made even easier thanks to Unreal’s Blueprint system, which Kaizen’s Clarke Smith describes as “phenomenal” for “scripting gameplay and interactive objects.”
Kaizen’s Crabtree advises to experiment with a smaller idea, and move on to a bigger project once you’re familiar with the system: “Start with the templates, make little tweaks, understand how those systems work and then you can expand out of it.”
However, while many respondents praised Blueprint as one of Unreal’s best features, they also advised to exercise discipline when using it, and plan carefully to avoid performance issues. Converting your Blueprints to C++ can help mitigate against those problems.
“Unreal is very powerful, and very flexible, but this flexibility can come with a cost,” Sumo’s Rankin says. “If you don’t track your usage of Blueprints you can very quickly find that you are suffering from CPU performance problems, and memory management issues. Profile, profile, and profile again.”
Dontnod’s Banal adds: “Blueprint is faster than the old UnrealScript, but keep the number of Blueprints in check, notably those using Tick. It can add up very quickly if you have lots of script running in parallel. You might want to remove the Tick box if your team is the wild kind.”
Bloober Team’s Szaflik also warns that using Blueprints can become an issue if developers are shipping a game on multiple platforms.
“Blueprints are hard to debug,” he says. “On platforms other than PC can cause challenges, which is something to keep in mind.”
Keep your modifications separate from the engine
Having access to Unreal’s source code means you’ll be able to tweak things as you see fit. But Dontnod’s Banal advises to be careful about the way you make these modifications.
“Keep your modifications as separate from the engine as possible,” he says. “Merge your modifications in the engine and not the reverse. Epic has tens of dedicated engineers – you probably don’t, so they modify the engine much more than you.”
Lean on Unreal Engine’s community and Marketplace
Whatever problem you’re facing with Unreal Engine, there’s a large and engaged community out there that has likely already solved it – don’t overlook how useful that can be.
“If you’re not sure exactly how to use the interface for a particular editor feature, or the documentation is a little light on detail, there will be a dozen tutorials on YouTube and a handful of blog posts on the topic,” Sumo’s Rea says. “You’re rarely left trying to find the one developer in the office who wrote a system and knows how to set it up.”
Szaflik adds: “Remember that there is a great community out there. Don’t struggle with problems for days, just search or ask – someone will surely steer you in the right direction.”
Another aspect of the Unreal Engine community is its Marketplace, and even experienced studios such as Obsidian use it to save time.
“We did make use of some of the store for assets during prototyping and used some plugins extensively in our workflow throughout the project,” DeGeorge says.
Try Unity (at least) before making your decision
Trying Unreal before settling is a given, but Dontnod’s Banal also suggests going further and trying other engines – and one in particular.
“If I look at the engine’s ‘crowd’ from a long-term point of view, there are only two engines that are backed strongly enough for me to capitalise on them: Unreal and Unity,” he says. “So, it’s a very small crowd.
“You don’t just use an engine. You train a team on it, you build tools and pipelines around it, you add modifications for your type of game and workflow. You don’t want to build on something that might disappear before the next game, or worse, in the middle of production. Persistence [is] a must-have and Epic has it.”