Alien: Isolation™ hits the streets today promising to test your fortitude for playing in the dark. While you’re busy skulking through Alien-infested corridors, no doubt hiding from those crazy telescoping jaws and a river of acid spit, have a pause to admire the world around you. That world is jam-packed with truly state-of-the-art rendering technology. Today we’ll be exploring how AMD and The Creative Assembly utilized the resources of the AMD Gaming Evolved program to develop and optimize those technologies for DirectX® 11-ready AMD Radeon™ graphics cards.
NERD WARNING: Serious tech talk ahead! PC graphics junkies are in for a treat, but we’re going into exhaustive detail. Buckle up!
BUT FIRST, A LITTLE ABOUT THE GAME
Discover the true meaning of fear in Alien: Isolation, a survival horror set in an atmosphere of constant dread and mortal danger. Fifteen years after the events of Alien™, Ellen Ripley's daughter, Amanda enters a desperate battle for survival, on a mission to unravel the truth behind her mother's disappearance.
As Amanda, you will navigate through an increasingly volatile world as you find yourself confronted on all sides by a panicked, desperate population and an unpredictable, ruthless Alien.
Underpowered and underprepared, you must scavenge resources, improvise solutions and use your wits, not just to succeed in your mission, but to simply stay alive.
Want to see more of Alien: Isolation™? More killer videos are right over here.
PC gamers are in for a treat when they dial up the settings of Alien: Isolation. Alien: Isolation’s engine is all-new, written from the ground up to provide all of the advanced effects discussed in this blog. PC gamers will be delighted to learn that both console and PC performance envelopes were specifically targeted to provide a unique, highly-optimized experience on any system Alien: Isolation can be played.
ILLUMINATING THE SEVASTOPOL
To achieve the dramatic lighting effects on the Sevastopol, a setting in Alien: Isolation, a “deferred renderer” lies at the heart of its engine. This kind of renderer renders the entire scene visible to the player in a single pass, then stores all properties (e.g. positions and materials) required for beautiful lighting in a “G-Buffer.” The stored properties that matter to scene lighting can now be deferred until after the scene geometry is rendered, which makes the processing effort of lighting proportional only to the lighting complexity rather than lighting and geometry complexity. In short, the deferred renderer allows artists to place hundreds of dynamic lights in the scene and achieve great geometric detail simultaneously.
TOP LEFT: Albedo, TOP RIGHT: Normal mapping, LOWER LEFT: Shininess, LOWER RIGHT: Fully-lit scene!
But the benefits of a deferred renderer are matched by some drawbacks. Foremost: limited support for diverse material types (e.g. metal, cloth, wood, skin, hair, etc.) and proper illumination of semi-transparent objects.
Classically, diverse material types must be rendered as a separate pass after the deferred lighting—a performance penalty. Alternatively, diverse materials can be treated with a grossly simplified physical model that doesn’t effectively simulate the true properties of those materials. Can you avoid sacrificing performance and/or quality if you want good lighting and realistic materials? Alien: Isolation proves that you can.
Alien: Isolation circumvents the materials issue through novel use of the GPU’s stencil buffer to tag the objects that use a unique material in the scene. The lighting/material interaction for each unique material type is rendered using a classic multi-pass technique, with the unique exception that the engine also tests the visibility of each material to the player’s field of view. Unseen materials are rejected in the graphics pipeline objects to avoid paying the rendering penalty typically associated with the multi-pass lighting we mentioned above.
And where semi-transparent objects are usually difficult for a deferred renderer, Alien: Isolation works around this as well. Only solid/opaque geometry can be rendered into the engine’s G-buffer, which means the semi-transparent geometry is normally rendered after the scene is composed using a reduced number of lights to conserve performance. The Creative Assembly’s solution is to dynamically generate a light map for each semi-transparent object. The light map is populated on-the-fly with the lighting data from the G-buffer, meaning translucent objects receive correct lighting regardless of scene complexity.
More technical details behind The Creative Assembly’s brilliant lighting model can be found in this presentation.
REAL-TIME RADIOSITY IN DIRECTCOMPUTE
Lighting an in-game world with direct sources like lamps and sunlight is not enough to achieve believable or realistic lighting. Here in the real world, rays of light bounce off of all kinds of reflective surfaces and scatter light into the surrounding area; those light rays continue to bounce around the room until all the energy from the rays has been absorbed. That bouncing and reflectivity is called “radiosity.”
Radiosity is an insanely difficult problem to solve in real-time graphics, and most games only fake it by using some form of full-scene ambient lighting. “Approximation” was not good enough for The Creative Assembly, who developed a full real-time radiosity engine for Alien: Isolation.
At the highest level, Alien: Isolation’s engine is constantly updating the radiosity model for the entire scene. This is achieved by placing a set of invisible “light probes” throughout the scene. Using Microsoft’s DirectCompute, these probes process how much light they are receiving from the lighting coming out of the deferred renderer. Lighting contributions from emissive surfaces, like computer screens and LED signs, are added to the data processed by the probe and combined with indirect (reflected) lighting coming from the previously-rendered frame. To light fixed or static objects in the scene visible to the player, the light probe data is crunched into lightmaps, applied to the geometry and rendered out.
LEFT: The radiosity lightmaps, RIGHT: The world lit only with lightmap data. Notice how precise the real-time lighting is.
For the dynamic objects in the world, such as characters and particle effects, the light probes are used to generate radiosity cubemaps via DirectCompute.
Finally, the use of DirectCompute for AMD Radeon™ graphics customers is especially important, as the award-winning Graphics Core Next (GCN) architecture was
specifically designed with such “general purpose” languages in mind. Though that general purpose-ness was originally intended to be used in non-gaming scenarios, modern game engines have made great use of DirectCompute to quickly crunch highly-parallelized data. Awesome!
LEFT: Full engine render with radiosity disabled, RIGHT: Render with radiosity enabled. Notice the more subtle lighting throughout the scene, which fully accommodates reflections from metallic surfaces.
HIGH DEFINITION AMBIENT OCCLUSION+ (HDAO+)
To complement Alien: Isolation’s dynamic lighting and real-time radiosity, the renderer also uses HDAO+ (an AMD-developed technique) to calculate the shadows that are created when lighting reaches cracks and crevasses throughout the scene. HDAO+ uses DirectCompute (good for AMD Radeon™ graphics!) to calculate the size and strength of these shadows. HDAO+ uses the information coming out of the G-buffer and computes at multiple resolutions to help achieve the best balance of quality and performance.
TOP LEFT: HDAO+ disabled, TOP RIGHT: HDAO+ enabled, LOWER LEFT: All the shadows that would never get rendered without HDAO+.
BETTER TEXTURES IN THE YEAR 2137
Texture compression is essential for good performance in content-heavy games. With texture compression, developers can cram more textures into a scene without overloading the GPU’s framebuffers or exhausting memory bandwidth while loading those textures into VRAM.
The industry has long relied on “DXT” compression which compresses each 4x4 block of pixels from the original image into a data set that’s one quarter to one eighth the size. These textures can be decompressed on the fly with dedicated capabilities in AMD Radeon™ graphics hardware.
The problem with compressing textures is that artifacts are introduced due to the compression scheme. You’ve seen pixilated and blocky JPEG files, and the DXT artifacts are not dissimilar. The Abs Error column below isolates these errors, with more color indicating a higher artifact quantity.
DirectX® 11 introduced a better, more complex, compression scheme called “BC7” that still compresses to a quarter of the size of the original image but significantly reduces the artifacts normally associated with the older DXT methods like BC3. AMD Radeon™ graphics hardware is ready for DirectX® 11.2, meaning those gamers will have access to the BC7-compressed texture pack for superior texture fidelity.
The high artifact depicted in the BC3 abs error column would be seen as fuzzy or blocky textures by the player. The low abs error rate on BC7 texture compression preserves performance and quality for AMD Radeon™ graphics users.
LURKING IN THE SHADOWS
Realistic shadowing is an essential ingredient of Alien: Isolation’s creepy atmosphere. To make these shadows as realistic as possible, The Creative Assembly team tapped AMD’s “contact hardening shadow” technology. This technique dynamically hardens or soften a shadow’s edges depending on the distance of the shadow from the light source and object casting that shadow.
While shadowing techniques are incredibly efficient on the Graphics Core Next (GCN) architecture in contemporary AMD Radeon™ graphics products, this technique nevertheless requires a powerful GPU and can only be enabled when the “ultra” in-game graphics preset is enabled.
LEFT: Contact Hardening Shadows disabled, RIGHT: Contact Hardening Shadows enabled. Notice that the shadows are softer and more realistically diffuse with this effect enabled.
The particle effects in Alien: Isolation breathe life into the eerie setting of the Sevastopol. From fire and smoke effects, to the streams of sparks generated by Ripley’s blow torch, an efficient way to simulate the thousands of simultaneous particles is to run a physical simulation on an AMD Radeon™ GPU.
The different characteristics of these particle types are artist-controlled using parameters baked into the metadata of a texture. Particles can be affected by velocity fields and bounced off the scene geometry by reading data out of the G-buffer. When it's time to render for the player, the particle physics are GPU-accelerated with DirectCompute on AMD Radeon™ graphics cards!
Affected by thermoclines and world geometry, embers soar into the sky backed by a real physics simulation calculated on an AMD Radeon™ graphics card.
SMOOTHIN’ THOSE SURFACES
Throughout Alien: Isolation, the Graphics Core Next architecture’s prowess with geometry tessellation is put to excellent use with silhouette-enhancing tessellation. This kind of tessellation smartly adds detail to a scene by dynamically increasing geometric complexity only on the edges of objects visible to the player. This calculated exercise of tessellation improves details on pipes, padding and alien hives without wasting GPU cycles on invisible work.
TOP LEFT: Tessellation disabled, TOP RIGHT: Tessellation enabled, LOWER LEFT: Tessellation disabled (wireframe), LOWER RIGHT: Tessellation enabled (wireframe). Notice the increased geometric complexity and detail.
Now that you’ve seen how AMD and The Creative Assembly collaborated to implement a host of AMD Radeon™ graphics-optimized effects in this stellar new game engine, let’s see how it performs! We’ll let the charts speak for themselves—AMD dominates!
When you’re done messing your knickers and fleeing from Aliens, stop to appreciate what’s around you:
Those are our top missions in the AMD Gaming Evolved program, and we’re proud to support developers, like The Creative Assembly, who are equally passionate about PC gaming.
Speaking of AMD Gaming Evolved, you may have heard of our new Never Settle: Space Edition promotion. Never Settle: Space Edition leverages the AMD Gaming Evolved partnerships we have with developers like The Creative Assembly to give you complimentary codes for games, like Alien: Isolation, with the purchase of an eligible AMD Radeon™ R9 Series GPU from a participating retailer.
Alien: Isolation is a technology partner in the AMD Gaming Evolved program. Robert Hallock does Technical Communications for Desktop Graphics at AMD. His postings are his own opinions and may not represent AMD’s positions, strategies or opinions. Links to third party sites, and references to third party trademarks, are provided for convenience and illustrative purposes only. Unless explicitly stated, AMD is not responsible for the contents of such links, and no third party endorsement of AMD or any of its products is implied.
*Originally posted by Robert Hallock in AMD Gaming on Oct 7, 2014 9:03:00 AM