During the early days of Hotgates’ game development adventure I had to make a very crucial decision; which game engine to use for our game. Where should I focus our training, our time, our efforts? Unity, CryEngine, Unreal Engine 4? I don’t know if you’ve felt it when you had to choose among similar things. One, for some reason, stands out from the rest. To cut a long story short, I’ve tried many game engines for a long time. As it turns out I could only “communicate” with one engine and that was Unreal Engine 4. But what is Unreal Engine, what makes it tick? Allow me to take you on a small trip down memory lane as we visit the origins of this great engine.
Unreal Engine (UE) is a game engine developed by Epic Games. It was first showcased in the highly popular first-person shooter game Unreal that was released in 1998 on PC. For many years the Unreal franchise and the Unreal Engine were going head to head with the Quake franchise and its engine. I can still recall the fiery debates about which game was better Quake III Arena or Unreal Tournament. I bet this is still a hot topic among old school FPS players, but I digress. Although Unreal Engine was primarily developed for first-person shooters, it quickly became popular in a variety of genres, including RPGs, MMORPGs, Strategy and others.
Unreal Engine
As I mentioned earlier, in 1998 Unreal Engine made its debut with the FPS game Unreal, the first generation Unreal Engine integrated many features into one complete package. Things like AI, visibility, collision detection, networking, rendering, scripting, and file system management were at the fingertips of developers. With the inclusion of a new scripting language called UnrealScript (UScript) and UnrealEd (a level editor), it made modding and adapting the engine easy for developers. Remember this was 1998 after all and having all these tools in one package was a rare thing back then. The release of the game Unreal Tournament showcased the strengths of Unreal Engine 1 in both network performance and Glide (for 3dfx GPUs) Direct3D and OpenGL support.
Popular games using Unreal Engine
Unreal Engine 2
Four years later it was high time for the next iteration of Unreal Engine. The second generation was released in 2002 with the game America’s Army, a free multiplayer shooter created by the US Army and financed by the U.S. government. The second generation had both a completely re-written core code and rendering engine. The UnrealEd was also updated to version 2 although it was swiftly replaced with UnrealEd 3. Another new feature that was added was the Karma physics SDK which we first saw in action in the games Unreal Tournament 2003 and Unreal Championship.
Console Wars
During those years the console wars of that generation were in full swing with the PS2, XBOX and GameCube battling it out. Epic Games officially supported only the XBOX while both GameCube and PS2 were supported from Secret Level (now known as Sega Studios San Francisco). Secret Level back then was a small game development studio that ported and developed original game titles, and was also known for their tools, art and technology expertise. Not having complete support from Epic Games meant that many game developers had to do their own builds of the Unreal Engine throughout that generation. With the release of Unreal Tournament 2004 Epic Games showcased UE2.5, which featured improved rendering performance plus new features like vehicles physics, a particle system editor for UnrealEd, and 64-bit support.
Popular games using Unreal Engine 2
Tom Clancy’s Splinter Cell (series)
Unreal Engine 3
A few months after the release of UE2.5 in 2004 Epic Games showed screenshots of Unreal Engine 3. It was confirmed that the engine had already been in development for 18 months. The first released console game using Unreal Engine 3 was Gears of War and the first released PC game was RoboBlitz. Unreal Engine 3 was designed to take full advantage of DirectX 9 and the new shader model 3.0. Lighting calculations were done per-pixel now, instead of per-vertex as it was done in UE2 and the engine also supported a gamma-correct high-dynamic range (HDR) renderer.
The Next Generation
The next generation of home consoles was out but this time Epic Games supported all of them. Not only that, they also provided support for both iOS and Android, although that was added way later in 2010. The very popular game Infinity Blade was the first iOS title and Dungeon Defenders was the first Android title using UE3. Epic Games has used this version of the engine for their in-house games and has followed aggressive licensing that has garnered a great deal of support from many prominent licensees. The engine became so popular that Epic Games supported it until February of 2015, however, it still can be used until 2020 because it can support new hardware as of 2016.
UE3’s longivity
As always Epic Games incorporated significant updates into UE3 throughout its lifetime. Real-time global illumination, destructible environments, soft body dynamics, large crowd simulation, iPod Touch functionality, Steamworks integration, DirectX 10 and 11 support are but a few of the features added. DirectX 11 was demonstrated with the Samaritan demo, which was built by Epic Games in collaboration with NVIDIA. The Samaritan demo blew everyone away and still looks impressive even today.
In addition to the game industry, UE3 has also seen adoption by many non-gaming projects. The popular children’s TV show LazyTown used UE3 during filming to generate virtual sets for real-time integration with footage of actors and puppets performing in front of green screens. In March 2012, the FBI licensed UE3 to use in a simulator for training. The animation software “Muvizu Play“, which was released in April 2013, also uses UE3.
Popular games using Unreal Engine 3
Mass Effect (1,2 and 3)
Tom Clancy’s Rainbow Six: Vegas
Unreal Development Kit (UDK)
The popularity of Unreal Engine 3 was growing fast. Although many were making mods with the engine, one could not simply develop and sell games using it. That fact and the rise of indie developers gave birth to the UDK. In november 2009, Epic Games released a free version of UE3’s SDK, called the Unreal Development Kit (UDK). That allowed many developers to sell the games they made with their favourite engine without paying an expensive license. As with UE3, Epic Games didn’t forget to release significant updates for the UDK including support for all the major platforms and the addition of the Kismet visual scripting system. UDK is still available to the general public.
Unreal Engine 4
Thus we reach that which is the present and future of video games, the 4th generation of the Unreal Engine. The development of Unreal Engine 4 began in 2003 and according to sources, until mid-2008 it was done exclusively by Tim Sweeney, CEO and founder of Epic Games.
In February 2012, Mark Rein, the vice-president of Epic Games said “people are going to be shocked later this year when they see Unreal Engine 4” and boy was he right when they showed the Elemental demo later that year.
The feature list of Unreal Engine 4 is too large to mention here. But, some things stand out that make UE4 so much better than the previous generations and other game engines as well.
Blueprints
UnrealScripting and Kismet are a thing of the past. Instead game scripting is done in C++ and Visual scripting via the new Blueprints Visual Scripting system. This may sound like technical mumbo jumbo but picture this:
Developing a game and need to make a change in a mob’s health, then see how it plays out? That usually meant compiling the game (a 15+ minutes process). Playing the point where you made the change and if it didn’t work, do the whole process all over again. A simple health stat change could take days to get it right. Well not anymore.
With Unreal Engine 4 you can change and test the game in minutes. That whole 1-2 hour process becomes a 2-3 minutes process. Believe me this alone will save a lot of time in the long run. You can even update C++ code while the engine is running. Blueprints allow you to develop game logic without knowing any C++ to begin with. Did I mention that there is live debugging too? Unreal Engine 4 is that good. It respects the time you put into your projects. Another thing that Unreal Engine 4 has accomplished is to narrow the gap between artists, designers, and programmers, which makes communicating inside a team much easier.
If You Love It Set It Free
All this is nice, but we know that Epic Games follows a strict licensing policy, right? If you visit unrealengine.com the first thing you will notice is the phrase “If you love something set it free”. As of March 2, 2015, Unreal Engine 4 and all future updates are available to everyone for free. You only pay 5% of gross revenue per product created with Unreal Engine 4, and only if the product earns $3,000 or more, at which point you probably won’t mind. This is valid at the moment of writing. Please check the official Unreal Engine 4 website for up to date royalty fees.
That is not all. Epic Games also launched Unreal Dev Grants. A $5,000,000 development fund designed to provide financial grants and help innovative projects being built with Unreal Engine 4. Last but not least Epic Games also launched the Unreal Engine Marketplace, allowing UE4 users to buy and sell community-created content. Blueprints, full-scale environments, props, characters, sounds, materials, animated meshes, prefab C++ code and more are available there. One of the best things available on the Unreal Engine Marketplace are the 7,600 assets from the Infinity Blade series. Another thing are the tech demos Epic Games has created and released to the public. All these are given to you for free to do as you please. Thanks Epic Games.
Popular games using Unreal Engine 4
As of version 4.12.4 Unreal Engine 4, supports Microsoft’s DirectX 11 and 12 (for Microsoft Windows, Xbox One, Windows RT); OpenGL (for OS X, Linux, PlayStation 4, iOS, Android, Ouya and Windows XP); Vulkan (for Android); Metal (for iOS) ; JavaScript/WebGL (for HTML5 Web browsers); and all major VR Headsets. Unreal Engine is also the first game engine to provide a fully functional VR editor. To quote Epic Games:
Unreal Engine 4 and VR
“The VR Editor enables you to design and build worlds in a virtual reality environment using the full capabilities of the editor toolset combined with interaction models designed specifically for VR world building. Working directly in VR provides the proper sense of scale necessary to create realistic, believable worlds, while the use of motion controllers means you can build environments with natural motions and interactions.” With the release of the hugely successful PlayStation VR headset and the newly announced 4.14 preview version which is packed with improvements for developing VR experiences, Unreal Engine has proven to be the go to engine when it comes to VR.
Closing
If you want to learn more about Epic Games and Unreal Engine 4 you can click on this link.
By releasing UE4 to the public Epic Games has seen a boost to its community. Good news for everyone involved. This means you can find more assets, more tutorials and more help. As an added bonus you have a lot more people to talk to about the thing you love. I hope I’ve picked your interest with this post. In our next post we will take a look at how you can get Unreal Engine 4.
Sources: Wikipedia, Epic Games
Next tutorial: Introduction to Unreal Engine 4.