Skip to main content

Introduction

Errant Landscape includes a dedicated module for modifying the Unreal's standard landscape at runtime, as part of the gameplay. This feature allows adjusting the landscape's heightmap, weightmaps, and collision and can be used in multiplayer games.

It unlocks many new possibilities for game developers:

  • Creating terrains procedurally as the game loads
  • Altering terrain through gameplay actions such as digging, raising, and leveling
  • Reacting to explosions, magic spells, and destruction
  • Adjusting terrain for buildings and roads
  • Compressing vast landscapes into small sizes by storing only the list of applied stamps.

Limitations

The current version comes with certain limitations that we hope to alleviate in the future. Please read those first to see if Runtime Landscape can be used in your project.

Dedicated Servers

This feature currently doesn't support dedicated servers.

Errant Landscape relies on the GPU for processing and dedicated server configurations in Unreal Engine use NullRHI mode, which means there is no GPU-support and nothing can be rendered. Additionally, GPUs are often unavailable on dedicated server infrastructure.

Another issue is that dedicated server configurations are stripped of landscape heightmap/weightmap data and store only the collision and physical material data. Errant Landscape thus have no data to work with.

We believe that we can add support for dedicated servers over time, potentially via minimal engine modifications. We will also likely need to add CPU processing in Errant Landscape to handle the lack of GPU-support.

Mobile

This feature isn't currently supported on mobile devices because it relies on GPU capabilities that are not available in the OpenGL ES 3.1 shader backend used by Unreal Engine on Android. The iOS/Android version also needs further testing. We expect to remove this limitation in the future.

Physical Materials

At the current state of development, when a runtime brush paints a weightmap, it doesn't modify the underlying Physical Material.

Adjusting foliage

We don't yet provide a system for adjusting the foliage spawned on top of the modified landscape. Users need to find Instance Static Mesh components within the modified area and remove or adjust the spawned instances themselves.

Adjusting the foliage will be the focus of our development after the initial version of Runtime Landscape is released.

Activation

Errant Landscape Runtime can be enabled/disabled in the Project Settings.

The setting can be found under Plugins->Errant Landscape->Enable Runtime Landscape

project settings

info

Errant Landscape Runtime is disabled by default

If the feature is disabled or license check failed, we display an error notification the first time the game tries to spawn a runtime brush. In such scenario, the brush won't be spawned.

disabled notification

License

Runtime Landscape feature uses separate license seats from the editor features. When purchasing the license online, you receive 5 runtime seats for each purchased editor seat (read more about our licensing model here).

The runtime seat is required only when testing the game in the Editor. We DO NOT check for licenses in the packaged build of the game.

World Partition / Streaming

Runtime brushes are compatible with World Partition and streaming. As soon as a new landscape area is loaded in World Partition, nearby runtime brushes will update that region.

Runtime brushes should be always loaded.