Customer story: South of Midnight

Written by Theodore Scott, Lead Technical Artist, Compulsion Games
The Game

South of Midnight is a third-person action-adventure game from Compulsion Games set in a fantastical, Southern Gothic reimagining of the American Deep South. In the game, players explore a world full of myth and folklore following a devastating hurricane.
The award winning game was praised for its performance on Xbox Series S. Given our small team size, we would not have been able to achieve this without accessible performance tools to multiply our efforts.
The Challenge
The game’s target for visual fidelity was very high. Commenters often mistake the game for an Unreal Engine 5 game, but it was built in Unreal Engine 4. In order to enable the art teams to shoot for rich and hand-crafted imagery, we aggressively pursued tried and true optimization solutions such as LODs, HLODs, and impostors.
The game was set in diverse locations, such as in towns, the hurricane-devastated countryside, wilderness locations, in caves, and in parallel dimensions. Consequently, the volume and variety of environment assets was huge, and difficult to manage with a small team. We identified early on we needed mesh optimization solutions that were:
- Centralized
- In editor
- Easy to use
- Easy to iterate with
- Scalable
LOD Recipes
Early in development, we realized we needed a more customized LOD solution for our project. We needed a front-facing, artist friendly way to visualize, edit, maintain, and manage categories of LODs. We found that LOD Recipes were perfect for us. We started off with broad categories of LOD recipes for organic meshes, foliage of different sizes, architectural pieces, and so on. Since LOD Recipes allow for different mesh simplification pipelines per LOD level, it made experimentation with different techniques very easy. After changing LOD pipelines in the LOD Recipe Asset user interface, we could build LODs on individual meshes, or all meshes in the recipe, and see the difference in the editor in real time. If the recipe settings were working with some but not all meshes in the recipe, it was easy to make a copy of the recipe with tweaked settings for the new special case. In many instances, this is how we established our final library of LOD Recipes.
Once the Tech Art team established some good settings, we onboarded our art team. We found that the hands-on nature of LOD Recipes enabled adventurous artists to try them out, test their theories quickly, and get instantaneous feedback on their settings. Putting the art team at the wheel, with solid examples, and the support of the performance team, enabled the highest possible visual quality and was a good choice for the demands of South of Midnight.
As mentioned, LOD Recipes allow artists to choose an LOD mesh creation pipeline per LOD level. This enabled us to make and iterate on impostor LODs with simplified materials for scores of assets at once, and evaluate them in gyms or in our actual levels. For large foliage types, these were then often fed into the HLOD system for use as instanced impostors.
HLODs
Our game has expansive vistas, built up areas, and rugged wilderness with very high object counts. We built many of our sets and props from kits and dressing. Therefore simple distance culling was not adequate. Even if it was, there were too many small triangles to draw even at the maximum LODs given the object sizes. Our solution was to use the Simplygon Plugin’s Simplify Mesh functionality to produce good looking and performant HLOD meshes with well harmonized detail levels and switch distances. Almost every mesh in the playable area of any level that’s too large to be culled is part of an HLOD with a simplified mesh.
This particular HLOD is a random building in the alternate-dimensional town. With very little effort, it was converted from 407 objects with 300,000 tris to 1 object with 10,000 tris. This reduction in render calls, mesh complexity, shader complexity, and texture density looked good enough from afar and offered the performance increase we needed. There were hundreds of such buildings, so it was important to adopt a workflow with a high return for artist effort.
The building at foreground centre is 406 objects and 300,000 triangles. The impostor is 1 object and 10,000 triangles. The smaller objects and lights that are not part of the HLOD mesh would be distance culled at high distances.
Stand-Ins
Continuing on with the theme of experimentation, iteration, and art team accessibility, we utilized Simplygon Stand-Ins to generate simplified meshes out of our foreground props to place in our vistas. This is another example of Simplygon’s tools opening up possibilities for artists using in-editor tools and instant iteration.
Our levels often have open sight lines to both previous levels, and levels the player hasn't got to yet. The player can sometimes see landmarks from two levels in the past or future. Using the Stand-Ins outliner, we were able to capture exact representations of very large sets at various detail levels. For instance, the Sawmill from Chapter 7 can be seen as a fully realized set composed of 6,631 objects and 6,633,401 triangles. It is seen in the distance of Chapter 6 as a remeshed watertight mesh produced by the far stand-in pipeline with 25,900 triangles. It can be seen again in Chapter 8 at an even smaller size and detail level. Including cleaning up the original data and putting it through the pipeline, these models were ready in an afternoon.
Our most novel use case was to use them to enhance our cinematics. As with the vista versions of our major landmarks, we used the Stand In interface, we were able to peruse mesh aggregation and simplification pipelines and choose the settings that were best for the performance and quality of our shots. We would select meshes in the world and create a stand in actor, simplify it, then export it using the ‘save to package’ functionality. We could then use the simplified mesh to enhance our shot compositions. We transported a whole mansion set to a different location for dramatic effect using this method.
Conclusion
Simplygon's suite of optimization tools proved invaluable in achieving South of Midnight's ambitious visual targets while maintaining smooth 60 fps performance on Xbox Series S. The accessibility and iteration speed of LOD Recipes empowered our art team to take ownership of optimization and visual quality, while HLODs and Stand-Ins allowed us to populate expansive, well performing environments and distant vistas quickly. By utilizing these workflows in the Unreal Engine editor, Simplygon enabled our small team to efficiently manage the massive variety of assets required for our diverse Southern Gothic world. The combination of artist-friendly tools and powerful mesh simplification pipelines was essential to delivering stable 60 fps performance, proving that with the right tools, a small team can achieve world class quality and optimization.