Normal Maps

‘Nanite Lumen Test’ level in new project.

The Nanite Lumen Test level was originally made to test out Nanite (Unreal Engine 5’s virtual geometry) and Lumen (Unreal Engine 5’s real time global illumination). It was important to understand the limitations of both systems both in terms of how they performed and how far they could be stretched.

‘Nanite Lumen Test’ level in new project: Fly Through

Nanite sounds good. Virtualized geometry that allows for billions of triangles to be on screen. Almost too good to be true. There are downsides, like that you can’t use Nanite with thin meshes, like trees or foliage, and Nanite doesn’t work for skinned meshes, like characters & enemies, but you still have massive gains from using Nanite for the world even with the overhead that Nanite introduces.

Left: Lit. Right: Nanite.

Lumen also sounds too good to be true. High-quality, realistic, subtle, bounced lighting without having to build lighting? Yes, Please. Previously, for Mortal Rite 0.2.0, to build lighting for the older test level, I had to spend just about an entire weekend using an NVIDIA RTX 3070 building lighting. Even using Unreal Engine 4’s GPU Lightmass, which is much faster than using just a CPU to build lighting, it took hours and hours to build the lighting and came right up to the edge of using all of the RTX 3070’s 8GB of VRAM. I spent a lot of time failing GPU Lightmass builds because of the RTX 3070’s 8GB of VRAM and found that the only way to properly build lighting was to load sections of the map that effected the lighting of each other and build the test map’s lighting section by section. This time sink was a large part of why the team wanted to move to Unreal Engine 5 and use Lumen as fast as possible.

Fast forward to being out of time (again) and needing a test level to provide play testers. What level do we use? Well, we have this Nanite Lumen Test level that looked a lot better than the other test maps that we have created. We can just put all of the enemies in there and have people get a vertical slice of what Mortal Rite is currently.

Each team member added and tweaked the Nanite Lumen Test level as they had time. Adding enemies. Adding hidden fun things. Just doing whatever seemed like fun. After a lot of internal play testing, tweaking and iteration, the Nanite Lumen Test level became the main level in the Mortal Rite Play Test and Mortal Rite Demo that people were able to play.

Now that we have moved from Unreal Engine 5 Early Access to Unreal Engine 5, we’ve decided that we are going to use the Nanite Lumen Test level as a real level that players will be able to play in the final game.

Over the course of the last 2 weeks, I’ve been carefully migrating the Nanite Lumen Test level and the other levels that are seen in the Mortal Rite Trailer. Currently the level layouts from the old project have been successfully migrated to the new project so that we don’t have to start over from nothing and, going forward, we can populate these levels with the enemies and gameplay features that we need to make the next version of Mortal Rite.