Show/Hide Mobile Menu

Landscape in Unreal

14.10.2022

After doing a landscape in Unity I decided to do something similar in Unreal to see how the two game engines compare. And what's my conclusion? The engines in general are quite similar but the main difference is that the rendering in Unreal is more photorealistic out of the box but Unreal is harder to get into. It requires a beefier machine and can take ages to compile shaders. I encountered two non-trivial bugs though I was using version 5.0.3 so it could have been teething problems with the new version. Overall I was impressed with the range and quality of the features it had to offer.

Technologies Used
Unreal 5, Houdini, Final Cut Pro

This project was done during an Unreal Bootcamp with Max Prediger. Max created the castle and the island while I concentrated on the landscape and the final video.

Landscape

The landscape was created in Houdini and brought into Unreal via Houdini Engine. I started off scouting for locations in the UK in Google Earth and decided on a Buttermere in the Lake District. High resolution LIDAR data is available for all of England where as in Ireland it is only available around urban areas. Four 5km x 5km tiles where downloaded and merged together and from that a 3.5km x 3.5km tile was chosen. Masks were created for each of the material layers that would be applied to the landscape e.g. rock, gravel, sediment, lake and road. For the gravel layer I made use of the slumping node so that it looks like the gravel is moving down the hillside. For sediment I created a flow map which simulates the flow of water i.e. the location of streams flowing down the hill. Another mask was created for where trees would be scattered. Unreal tree instances were randomly assigned to these randomly scattered points.

Unreal landscape: Houdini
Visualisation of the weight map masks and trees in Houdini

Houdini Engine was used to bring the landscape into Unreal. Another way of doing it is to export the height map and weight maps from Houdini and import them into Unreal manually though updating changes is quicker with Houdini Engine.

Material

I created a landscape material in Unreal that piped the weight maps through unused material attributes. Weight maps are greyscale images that determine how much of each material layer is visible on the landscape. This allows a landscape to have multiple materials applied to it. Inside each of the material layer blends the weight map was extracted from the material attribute.

Unreal landscape: material
The landscape material makes use of Unreal's new material layer feature