When Fortnite Battle Royale Chapter 4 Season 1 released in early December, players could not help but notice a generational leap in visual fidelity and detail. It’s no coincidence that the latest Chapter of the game makes use of Unreal Engine 5’s newest, most innovative features—like Lumen, Nanite, Virtual Shadow Maps, Temporal Super Resolution, and more—via Unreal Engine 5.1.
Fortnite Battle Royale Chapter 4 was a great example of our determination at Epic Games to “eat our own dogfood,” battle-testing new features under the pressures of live game development. The initiative drove improvements to the innovative feature set introduced in UE 5.0, which were then leveraged by the Fortnite team.
We had previously tested UE5 features with The Matrix Awakens: An Unreal Engine 5 Experience, showcasing a photoreal city running on the latest generation consoles at 30 fps. With Fortnite Battle Royale Chapter 4, the team faced the additional challenge of making sure the game runs at 60 fps on all platforms, while delivering the type of quality today’s players expect—demanding stylized graphics, detailed foliage and day/night cycles—all in a large dynamic open world that features both building and destruction.
In this blog, we’ll look at some of the features that benefited from being put through their paces in Chapter 4. We’ll also link to some deeper dive articles that look at improvements to Lumen, Nanite, and Virtual Shadow Maps in greater detail, and discuss the lessons learned from our work on Fortnite Battle Royale Chapter 4 that we believe are going to empower you to create more detailed and faster open world games with Unreal Engine 5.
Lumen is the new real-time global illumination and reflections solution introduced in Unreal Engine 5. Lumen uses both hardware and software ray tracing to provide realistic indirect bounce lighting, reflections, and shadows that dynamically react to changes in direct lighting and geometry. Some examples of what’s possible thanks to Lumen include a blue wall giving a hint of blue tint to all nearby objects or characters; golden hour sunlight streaming through a single window and lighting up the whole house without any local light; and light entering a room when an exterior door is opened.
For Fortnite Battle Royale Chapter 4, we improved Lumen in quite a few areas in Unreal Engine 5.1. We optimized the whole system to enable us to reach 60 fps on platforms supporting Lumen, while vastly improving the quality of both indirect lighting and reflections.
The Fortnite world is full of trees and grass and this gave us an ideal testing ground to improve the quality of Lumen’s indirect lighting in such environments.
You can get a more in-depth review of all the improvements to Lumen in Unreal Engine 5.1 in this blog post.
Nanite revolutionized the way artists and designers can build virtual worlds and pushed the boundaries of geometric detail while also simplifying the creation process. Artists no longer have to think about mesh LODs or the right amount of polygons for a given object to achieve the best visual quality and performance.
In UE 5.0, Nanite worked very well for opaque rigid geometry, and Fortnite fully embraces this in urban environments. Bricks, wood, and window trims are all modeled to show the intricate detail, no matter how close the camera gets.
Starting with UE 5.1, Nanite now supports World Position Offset and masked materials, enabling Fortnite artists to utilize it on incredibly detailed animated trees and foliage. The leaves and blades of grass are all modeled geometry moving naturally with the wind. We also introduced a new method for how Nanite deals with geometry simplification for foliage to keep all the important lush detail, no matter the distance at which the object is rendered.
For a deeper dive on all the improvements to Nanite in Unreal Engine 5.1, check out this dedicated blog post.
Virtual Shadow Maps
Virtual Shadow Maps (VSMs) go hand in hand with Nanite, emphasizing all that intricate geometric detail artists put into Fortnite Battle Royale Chapter 4. The greatest advantage of VSMs over traditional cascaded shadow maps is that they are able to provide nearly pixel-precise shadow detail for both objects right in front of the player, and those on the horizon.
New Fortnite geometry challenged us to improve VSMs even further to work well with foliage and a dynamic time of day system, both of which prevent many of the shadow caching schemes we previously relied on for performance. And of course, all fitting within the 60 fps budgets.
Fortnite now also uses a lot of smaller local lights in interiors such as lamps or ceiling lights. VSM caching works very well in these cases. Such heavy usage of local lights offered opportunities for further performance improvement of VSMs in UE 5.1. We can batch shadow updates of many lights into a single pass with a “one-pass projection” option for better GPU utilization. We also built in heuristics to amortize updates of shadows across multiple frames for very distant lights.
To find out more about improvements to Virtual Shadow Maps in Unreal Engine 5.1, take a look at this blog post.
Lumen enables artists to create scenes with extreme contrast, for example,brightly lit outdoors visible through a window of a much darker room or surfaces lit by bright sky and sun in the same view with nearly pitch-black interiors. A single exposure value for such a view would not work well: bright areas end up being over-exposed, while dark areas stay nearly black and unreadable.
The Exposure system in UE5 was improved for Fortnite Battle Royale Chapter 4, providing artists with more tools to achieve the desired art direction, along with better performance. Artists now have separate controls over how Local Exposure applies to highlights and shadows, helping to preserve details in high dynamic range lighting conditions. On top of that, Local Exposure is more deeply integrated with the rest of the post-processing pipeline, particularly Bloom and Lens Flares, for a more consistent result.
We have also added support for calculating auto exposure based on illuminance, ignoring material properties. This contributes to materials having a consistent look across different lighting conditions and improves image stability during gameplay.
Highlight and shadow detail preserved with Local Exposure, a new feature in UE 5.0. Local Exposure should always be set up when using Lumen!
Temporal Super Resolution
Temporal Super Resolution (TSR) enables us to render beautiful 4K images at a fraction of the cost by amortizing some of the costly rendering calculations across multiple frames. With its 60 fps target, Fortnite Battle Royale Chapter 4 required many performance and quality optimizations in TSR. As a result, TSR in UE 5.1 is much better and faster than the version we shipped in UE 5.0. We also improved scaling of TSR performance and quality depending on the profile used (Low, Medium, High, and Epic).
We’ll be taking a deeper dive into the technical details of these improvements in one of our upcoming blog posts.
Unreal Engine 5.1 improves cloud rendering quality to match the visual fidelity jump of Fortnite Battle Royale Chapter 4. Clouds in UE5 are rendered at lower resolution internally and upsampled in order to meet the strict performance budgets. Previously, this would result in incomplete edges around foreground meshes occluding clouds in the background, resulting in the bright sky color leaking around edges. With UE 5.1, we can now better resolve cloud upsampling at full resolution without such leaking. We have also improved temporal reconstruction of clouds from meshes traveling in front of them, effectively reducing trails from disocclusion.
Fortnite leverages the Niagara VFX system to create artist-driven procedural destruction effects. Reacting to gameplay, Niagara spawns and accurately simulates flying debris chunks on every weapon hit.
Fortnite Battle Royale Chapter 4’s new High Fidelity Fire uses a voxel-based propagation mechanism to better represent the spread of fire across surfaces and the landscape, while supporting fire transport by vehicles and physics objects. The system uses Niagara fluid simulations baked in-engine and applied to Niagara particles reading data from the fire gameplay system in order to correctly place and align flames to burning surfaces.
World building support
With the release of Chapter 4, Fortnite Battle Royale is now using the latest UE5 world building and automatic streaming solution on every platform. This includes World Partition, Data Layers, Level Instances, automatic HLODs, and One File Per Actor. This toolset facilitates more collaborative workflows and helps level designers and artists build worlds with greater efficiency.
One of the biggest differences from the custom streaming solution used in prior releases of Fortnite is that the new World Partition system is automatic and requires much less developer time—while at the same time, HLOD transitions are much more stable, delivering a better overall gameplay experience.
Chapter 4 contains over 100,000 Actor files; to make working with this many files more efficient, we made improvements to the changelist window, including a new UX, a new uncontrolled changelist type, and better integration with the Scene Outliner and the main viewport.
A further enhancement made to support Chapter 4 is that Navmesh Generation (Static and Dynamic) now supports World Partition. This means that you can load one world cell, generate the navmesh for it, serialize it, unload that cell, and move on to the next one.
These improvements are available to all developers in UE 5.1, and as the Fortnite team continues to battle-test these features, we can expect to see further enhancements in future releases.
Smart Objects and State Tree
Smart Objects expose the capability for AI to select an object or area on a level and dynamically inject a behavior. The relevant data and configuration, such as an animation, is stored on the object rather than on the agent, which makes it shareable across a large number of agents, leading to more efficient memory usage and better performance, and greater flexibility to extend default behaviors without editing core behaviors.
State Tree is a scalable and general-purpose state machine that combines the classic State Machine mechanisms within a flexible Decision Tree structure—along with an intuitive and compact UI—while remaining highly performant.
Both of these technologies were exposed as experimental features for the UE 5.0 release, but have been promoted to Production-Ready in 5.1, after being successfully deployed in Fortnite Battle Royale Chapter 4. Before Chapter 4, Smart Objects were solely used for AI to play a simple animation or emote. By integrating a State Tree in the flow of Smart Objects, we managed to achieve more complex and rich behaviors for the bots, for example, how they interact with the Fortnite campfires.
Improved developer efficiency
We’re continuously looking at ways to improve efficiency for developers, so they can focus on the creative process. Fortnite’s adoption of new graphics technologies such as Nanite that have a larger disk footprint challenged us to find ways to reduce the time our teams spend loading the game or just getting content from Perforce.
The large and very distributed Fortnite team benefited greatly from new Unreal Cloud DDC, a globally efficient model for our derived data cache that provides fast access to optimized versions of content such as textures or meshes, avoiding the need for local processing. As a result, Editor load times on Fortnite are at least two times faster.
Virtual Assets have reduced disk footprint for content and consequently sync times for Fortnite by over four times for a single workspace; even more savings can be gained through de-duplication of any data common to multiple workspaces. We strip the large bulk data such as raw texture pixels from the Unreal Asset’s much smaller class properties such as texture resolution, format, and so on, and store them separately. From the outside, Virtual Assets are indistinguishable from regular Unreal Assets but they are many times smaller. Developer workflows remain largely unchanged while clients spend significantly less time waiting for their Perforce syncs, only downloading data they actually need to use in the editor as they need it.
Unreal Engine’s Machine Learning (ML) Deformer enables you to create high-fidelity approximations of complex proprietary rigs—or any arbitrary deformation—by using a custom Maya plugin to train a machine learning model, which in turn runs in real time in Unreal Engine.
With Chapter 4, the Fortnite team used the ML Deformer to allow for higher-quality character deformations on muscles and cloth, with the Hulk and Sunlit characters being the first to benefit. The team was able to capture complex deformation and simulation from external DCCs and inject that geometric result into their gameplay rigs. As a result of this battle-testing, the ML Deformer moved from Experimental to Beta in UE 5.1, and the team’s close collaboration with the ML Deformer engineers offers the opportunity for the technology to be pushed further forward with new features and stability fixes planned for UE 5.2.
In Chapter 4, the Fortnite team worked closely with developers from 3Lateral and the MetaHuman team to upgrade the facial animation capabilities of Fortnite characters. This included several updates to character quality, such as increasing the number of expressions and joints on new characters, as well as creating new rigging and animation tools to push facial animation to new heights.
As a result, Unreal Engine 5.1 offers improvements to the runtime functionality of Rig Logic to adhere to performance constraints, as well as remapping nodes created specifically to support forwards and backwards compatibility of MetaHuman technology in Fortnite.
We hope you enjoy all of the improvements we’ve made to Unreal Engine 5.1 during development of Fortnite Battle Royal Chapter 4, and find them useful in taking your own titles to the next level of visual fidelity. We look forward to seeing the results!
Get Unreal Engine today!
Get the world’s most open and advanced creation tool.
With every feature and full source code access included, Unreal Engine comes fully loaded out of the box.