< All Topics

World partition


This technical explanation of World Partition and HLODs can be translated into professional game development terminology as follows:

1. Spatially Loaded

In the Details panel of any Actor, under the World Partition section, you will find a checkbox labeled “Is Spatially Loaded.”

  • When Checked (True):
    • This actor is dynamic in terms of memory. It loads when the player/camera approaches and is unloaded (freed from RAM) when the camera moves away.
    • Usage: 99% of your city objects—buildings, trees, streetlights, cars, trash cans—should have this enabled.
  • When Unchecked (False):
    • This actor is always loaded. No matter where you are on the map—even if the player is 100km away—this object stays in memory and continues to tick/render.
    • Usage: Reserved for “Global” actors only. Examples: Sky Sphere, Directional Light, Exponential Height Fog, ambient sounds that cover the entire map, or core Manager Actors (logic controllers).
  • Warning: If you uncheck this for thousands of buildings, you effectively disable World Partition, and your PC will lag significantly as it tries to keep everything in memory at once.

2. HLOD (Hierarchical Level of Detail)

This is the “greatest illusion” in game optimization.

Standard LOD (Level of Detail) works like this: when you get close to a building, it looks high-quality; when you move away, it switches to a low-poly version. However, if you have 1,000 buildings, rendering 1,000 low-poly meshes still strains the CPU (resulting in 1,000 Draw Calls).

HLOD solves this by:

  1. Taking a “neighborhood” (e.g., a cluster of 50 buildings).
  2. Merging them into a single, simplified object called a “Proxy Mesh.”
  3. Combining all their materials into a single image called an “Atlas Texture.”

How it works in practice:

  • Imagine you are in District A. The engine renders District A in high detail.
  • District B is far in the distance. World Partition unloads the actual buildings in District B (because they are Spatially Loaded).
  • In their place, the engine spawns the HLOD version (a single-piece “maquette” or proxy) of District B.
  • Instead of 500 individual buildings, the engine only has to draw one single shape.

Why it’s vital for your project:
If you want to see a vast city skyline with distant buildings, HLODs are mandatory. Without them, as World Partition unloads distant objects to save memory, your horizon will simply disappear, making the city look empty and “broken.”

How to implement:

  • You must generate these proxies via the Build -> Build HLODs menu.
  • Note: Depending on the scale of your scene, this process can take several hours to complete.
  • Once finished, your horizons will look full and dense, but your performance will remain high.

Summary

  • Spatially Loaded: “Load me when I’m close, delete me when I’m far.” (Enable this for buildings).
  • HLOD: “Don’t leave a hole in the map when distant objects are deleted; put a cheap ‘fake’ version there instead.” (You must Build this for your city skyline).