Medieval Game Environment

Inside the Medieval Game Environment, now updated for UE5

September 26, 2023
Hey everyone—we’re excited to share an upgrade of our Medieval Game Environment, originally released for Unreal Engine 4.26 back in February 2021. 

We’ve updated the environment to use all of Unreal Engine 5’s latest features, and fully upgraded the audio. You can download the new Medieval Game Environment right here from the Unreal Engine Marketplace.
 

Wait, what’s the story with the original Medieval Game Environment? 

The Medieval Game Environment is a next-gen-quality playable experience created by the Quixel team here at Epic—you might know them as the makers of Megascans. We originally released it with Unreal Engine 4.26 in February 2021. With 5.3 out now, we decided to give this environment a refresh to take advantage of the latest Engine features. 

Here’s a closer look at some of the updates we made and how we made them.
 

Upgrading to UE5

Converting a project from UE4 means it still uses the UE4 defaults, but some important settings have changed between 4.26 and 5.3. If you’ve seen our guide to upgrading your project in UE5, then you already know the basics of the upgrade process. 

We switched all the project settings for the environment: DX12, SM6, Shadow Method, Dynamic Global Illumination Method, Reflection Method, and disabled Allow Static Lighting. This improved performance compared to the original. 
(Left) Unreal Engine 5 | (Right) Unreal Engine 4

Making the most of Nanite

We think things just look a little better when they’re using the latest in virtualized geometry. Everything in this project that could be Nanite is now converted to Nanite, and we’ve replaced some objects with their Nanite-res counterparts from the Megascans library. 

Is it perfect now? Not quite. Trees that exhibited an issue (specifically, appearing to lose all leaves at a distance) had “Preserve Area” checked in their Nanite settings; some spline meshes needed to be replaced with Instanced Static Meshes, in part because spline mesh support for Nanite is still in the experimental phase. 

We’ve also changed our World Position Offset settings in the project. This was done to reduce VSM cache invalidations caused by WPO at a distance. 
 

Turning up the lights with Lumen

We’ve switched our Dynamic Global Illumination Method and Reflection Method to Lumen, which brings it up to the UE 5.3 performance standard and significantly improves the photorealism of the scene. Because we converted the foliage to Nanite, it’s able to contribute to Lumen, too, meaning the lighting in the scene more accurately reflects the world. Local exposure has also been tuned for improved interior lighting. 
(Left) Unreal Engine 5 | (Right) Unreal Engine 4

Adjusting our virtual shadow maps 

We’ve switched the project to Virtual Shadow Maps over from Cascading Shadow Maps to improve our shadow resolution. This upgrades performance in a couple of ways. First, it corrects issues with contact shadows—many small foliage meshes were causing unnecessary shadow cache invalidations, for example, and were switched over to exclusively use contact shadows. We’ve adjusted several settings (for example, setting directional light to only cast contact shadows on otherwise non-shadow-casing meshes) to fix this.

We also made sure everything that could invalidate shadow cache pages had its mobility set to Movable. This means our WPO, skeletal meshes, and more are all using the new settings throughout the project. 
 

World partitioning

The original project didn’t have any kind of streaming capability, so we’ve converted the level to World Partition using UE’s built-in tools, and set World Partition HLODs to help reduce draw costs at a distance. Switching to World Partition means we can let the engine better stream content in and out, and use hierarchical HLODs for better performance on distant geometry.


Converting to Niagara

Full transparency here: Cascade was deprecated as of UE5 and is no longer supported, so we had to do this conversion. In the process, the VFX artist was able to condense some of the original Cascade assets into one Niagara system, further improving performance.
 
(Left) Unreal Engine 5 | (Right) Unreal Engine 4

Temporal super-resolution

The project has been tuned for TSR and dynamic resolution on consoles. Because the other next-gen graphics features are resolution dependent, using TSR means we can render fewer pixels at higher quality while still maintaining a 4k output resolution. So: faster, better, and more efficient for everybody.
 

Totally fresh, fully upgraded audio

We weren’t fully happy with the audio in our first version, and knew we could make it significantly better. To do that, we’ve switched many of our legacy systems to leverage Metasounds, our procedural audio system that first shipped with UE5. What this means:

First, we removed all SoundClasses from the project using exclusively Submix buses and AudioModulations, enabling us a fresh start in terms of gain staging, routing and our general approach to the mixing process. 

Second, we did some cleanup by renaming all files for consistency across asset types and deleting any unreferenced audio assets. This is mostly invisible to you as a user, but it does significantly de-bloat the size of the project, and the unused assets no longer clutter the project’s content folder.

We’re also taking advantage of soundscapes tied with dynamic time of day. These time-sensitive triggers are integrated into the Soundscape manager blueprints, with new nighttime versions of Soundscape Palettes for Forest and Cornfield. We think this adaptive approach to sound makes the entire scene more dynamic and immersive than the previous version. 

    So now what?

    Medieval Game Environment 2.0 is now available on the Unreal Engine Marketplace. Check it out and let us know what you think on the forums. 
    Join us online or in person at GDC 2024
    Event
    February 13

    Join us online or in person at GDC 2024

    Tune in to the State of Unreal for the latest announcements from Epic and our partners, dive deep with our tech talks, and get inspired and informed with our sessions and learning theater.
    Join us online or in person at GDC 2024
    Event

    Join us online or in person at GDC 2024

    Tune in to the State of Unreal for the latest announcements from Epic and our partners, dive deep with our tech talks, and get inspired and informed with our sessions and learning theater.
    February Marketplace sale: get 50% off over 2,000 products
    News
    February 15

    February Marketplace sale: get 50% off over 2,000 products

    Retro cafes, rustic interiors, low-poly towns, customizable NPC characters…February’s Marketplace sale has something for everyone. Act now to get this month’s selection of goodies at half price.
    February Marketplace sale: get 50% off over 2,000 products
    News

    February Marketplace sale: get 50% off over 2,000 products

    Retro cafes, rustic interiors, low-poly towns, customizable NPC characters…February’s Marketplace sale has something for everyone. Act now to get this month’s selection of goodies at half price.
    Featured free Unreal Marketplace content—February 2024
    News
    February 6

    Featured free Unreal Marketplace content—February 2024

    Fantasy interiors, stylized crystal mines, a trip back to the 90s, and more—February’s free 3D assets from the Unreal Engine Marketplace have landed!
    Featured free Unreal Marketplace content—February 2024
    News

    Featured free Unreal Marketplace content—February 2024

    Fantasy interiors, stylized crystal mines, a trip back to the 90s, and more—February’s free 3D assets from the Unreal Engine Marketplace have landed!