Build the Game
Use one pipeline for many cities and world extensions: playable, deterministic, open source.
Build the Game
Use one pipeline for many cities and world extensions: playable, deterministic, open source.
Shadow Wisdom
To achieve clean, believable shadows, we use Virtual Shadow Maps (VSM). VSM computes shadows primarily where the player is looking: nearby areas render in high detail, distant areas are simplified and streamed in on demand, without keeping full shadow maps in memory.
Flexible settings let us control resolution, edge softness, draw distance, and anti-aliasing - keeping the scene lively and readable.
In our tech stack, roles are split as follows: VSM provides direct lighting and shadows, Lumen handles indirect light and reflections, Nanite - renders ultra-detailed geometry, and post-processing polishes the final frame.
This approach delivers stable, artifact-free quality and preserves scene realism at a reasonable performance cost.
Control Randomness
To preserve variety in the environment without losing scene cohesion, it’s important to balance randomness and spatial harmony.
We achieve this with flexible Foliage Type settings - a special asset that links to vegetation meshes and small props. By tuning fine parameters - density distribution, scale, random rotation, surface alignment with slope and height in mind, as well as view distance - we can quickly and efficiently populate scenes, as if ‘painting’ the landscape with objects.
This approach delivers an organized, harmonious, and optimized environment without templated sameness, staying faithful to our references.
Black and white dances
The rhythm of the scene is set by a dynamic day-night cycle that runs on a combination of technologies - Lumen handles indirect light and reflections, VSM handles shadows, and post-processing polishes the final palette. This lets the player feel the natural passage of time - the essence of an open world - without precomputed light and sky maps.
The sun and moon update lighting in real time, shadows stay soft and detailed, and post-processing adapts color, contrast, and light effects to the current lighting - bringing to life a cold, fresh morning, a bright, clean day, and a warm, soft sunset.
Flexible settings let us control transition speed, atmosphere, clouds, fog, and flares.
(post deleted by author)
(post deleted by author)
Nanobots
Previously, having many detailed objects caused sharp FPS drops and required manual LODs. Now Nanite renders highly detailed models in real time without manual LODs: the engine streams detail where the player looks and simplifies distant objects, keeping the scene smooth.
Nanite prebuilds an optimized hierarchy of geometry and splits it into clusters, dynamically adjusting their detail by distance and visibility. We enable it deliberately - we profile and use it where it delivers real gains.
In Unreal, we use visualization modes to see how Nanite groups triangles into clusters, how detail changes with distance, where overdraw occurs, and which clusters are occluded from the camera - and we fine-tune rendering and scene performance based on that.
Lumen and Nanite are flagship Unreal Engine technologies for real-time lighting and ultra-detailed geometry