As it begins its third decade, Epic Games has cemented its place in the gaming industry as a "triple threat": It creates best-selling, multi-genre blockbusters, including the Unreal Tournament, Gears of War, and Infinity Blade series; it delivers its immersive games on a wide variety of console, PC, and mobile platforms; and it provides legions of developers with its Unreal Engine technology, the algorithmic wizard that transforms a designer's imagination into a gamer's heart-pounding reality.
Even with such an expansive repertoire, the cornerstone of Epic Games' foundation is its award-winning Unreal Engine toolset, which has powered the development of myriad feature-rich, performance-optimized, cross-platform games and is considered an industry standard among many game houses.
Since 2006, licensees of its current engine, Unreal Engine 3 (UE3), have used it to power more than 225 triple-A games, including the renowned BioShock, Batman, Mass Effect, and Borderlands series of games. Its free version, the Unreal Development Kit (UDK), has been uniquely installed more than 1.5 million times.
To stay competitive, Epic Games spends a significant amount of time and resources on the never-ending process of research and development. Whether it's adding new features and capabilities (suggestions for which come from its own developers, as well as licensees), or cranking up iteration speeds and optimizing development pipelines, Epic Games' focus is to deliver a better gaming experience for all players on as many platforms as possible.
And the PC is the leading gaming platform. Maintaining its top position over consoles for the third consecutive year, the PC -- desktops, laptops, and Ultrabook devices -- improvement strategy, using the tools to optimize UE3 so it could take full advantage of the latest Intel processors.
Niklas Smedberg, Epic Games' senior engine programmer, is deeply familiar with Unreal Engine technology and how to get the most out of it. "We chose Intel GPA for two main reasons," said Smedberg, "the ability to debug our rendering pipeline and graphics effects, and the ability to profile graphics performance on many different PC configurations."
Optimizing Gameplay for More Laptops
The game engine is a sophisticated piece of software that is the heart of a video game, making the storyline, characters, objects, and action come to life. Elements such as textures, physics, and artificial intelligence are all within the purview of the game engine. Additionally, the engine allows game content to be created, tested, and optimized on a PC and then exported to other gaming platforms.
Until recently, Epic Games targeted UE3 toward the high-end spectrum of PCs. But with the exponential growth of laptop users who play games, Epic Games expanded its targeting to include as many laptop configurations as possible, with specific focus on popular Intel HD Graphics 3000/4000-based systems. Using Intel GPA's Remote Profiling feature, the team was able to connect several differently configured laptops to a single Intel Xeon processor-based PC and simultaneously profile, test, and optimize for each configuration. And they were able to do it quickly.
Fast iteration time -- the ability to quickly implement and test large amounts of gameplay features in short, rapid development cycles -- is vital to the quality and "fun factor" of the game. For its testing schemes, Epic Games uses a "bucket" methodology, where each bucket has specific settings that are turned on or off to optimize the performance and features for each hardware configuration. With the help of Intel GPA, Epic Games was able to significantly increase its test iteration speed and, simultaneously, get deep performance analysis for each graphics effect and draw call for all tested configurations. These fast iterations allowed them to optimize graphics features and performance on a much larger range of consumer laptops than would have been possible in the past.
Debugging: Replacing Trial-and-Error with Precision
In addition to kicking up the iteration speed, Intel GPA boosted UE3's ability to improve overall game quality and performance by helping to identify, profile, and debug graphics-effects issues.
"One of the most important use cases for Intel GPA is its debugging capability. Although it's very important that GPA can profile performance, its debugging capability is absolutely critical to making sure each bucket works for all of the various configurations," said Smedberg.
In a typical scene lights, shadows, and post-processing effects are the three main culprits that monopolize valuable frame time. Using Intel GPA's Frame Analyzer, Epic Games engineers were able to capture and deeply analyze every draw call, uncovering exactly how much time was being spent and where; for example, on which shadows, on how many shadows, or on what kinds of shadows. This allowed them to make informed decisions about aspects such as which shadows to remove or optimize, and which lights to tweak, ultimately enabling the development of much smoother frame rates and optimizing the game for lower-end hardware, which historically has been ignored.
According to Smedberg, the ability to precisely measure and tweak these frame-time culprits was crucial. "Anything in the scene that is unnecessarily slow can degrade the user experience, just because of a mistake in a setting somewhere. With Intel GPA, these types of issues were all found and fixed. Otherwise we would have had to resort to trial-and-error debugging, which is very time-consuming."
Shaping the Future
Using Intel GPA, Epic Games was able to uncover optimization opportunities and improve UE3 to support games played on Intel processors, from budget laptops to high-performance gaming systems.
For Epic Games, Intel GPA was a clear choice over competitor tools. "It's very easy to set up and get started, and the layout, usability, and interface are really nice," said Smedberg, adding, "But in particular, the ability to keep taking frame captures and analyzing them without having to shut down the application is great for fast iteration time. In many ways, Intel GPA is better than any other tool on any platform."
The game industry is larger than ever, and the variety of gaming platforms is quickly expanding, due in part to the explosion of mobile platforms as well as to the "everywhereness" consumers increasingly expect. "We're in a transition period," said Smedberg. "You see a very mature set of consoles, but the PC is becoming more user-friendly than ever. As more Ultrabooks and PC tablets enter the market, we believe they will quicken the pace of the already fast-growing PC gaming market."
One thing is certain: Epic Games will continue to focus on innovating its products, optimizing its pipelines to laser-point perfection, and ultimately delivering smooth and visually impressive gaming experiences for all gamers.
Learn more about the Unreal Engine: www.unrealengine.com
Learn more about how Intel Graphics Performance Analyzers can help you optimize your game, or download a FREE copy: www.intel.com/software/gpa