Game engine work

Cities: Skylines II

Engine work on a large-scale city simulator: managing tens of thousands of simultaneous agents and optimizing Unity Engine for massive simulation.

Paradox Interactive
Publisher
Colossal Order
Development studio
Unity Engine
Engine
Oct 24, 2023
Release (PC)

Screenshots

Industrial harbor and city skyline
Industrial harbor and city skyline
Aerial view with an airship over the city
Aerial view with an airship over the city
Road design tool
Road design tool
City by the lake, mountains in the background
City by the lake, mountains in the background
Highway interchange at sunset
Highway interchange at sunset
City waterfront with mountains in the background
City waterfront with mountains in the background
Designing a traffic roundabout
Designing a traffic roundabout
Night skyline with the aurora borealis
Night skyline with the aurora borealis

Screenshots and promotional images provided for this case study — © Paradox Interactive / Colossal Order.

About the game

Cities: Skylines II is the sequel to the most-played city-building simulator in its genre, originally developed by Colossal Order and published by Paradox Interactive. It simulates thousands of individual citizens, each with their own routine, job, and commute, on a map that can grow into a full metropolis.

What is "the engine" in a simulator like this?

The engine is the software underneath the game: it doesn't decide what a building looks like or what taxes city hall charges — it decides how every frame gets rendered, how each car moves through its lane, how much memory each simulated citizen takes up, and when to stop drawing a distant building to save resources. The game is the rules; the engine is what makes those rules run 30 or 60 times a second without choking the computer. Here it also has to sustain an entire city, calculating every car's route, every citizen's commute, and every public service's load, frame by frame — all at once, without the game slowing down as the map grows. It's the genre's toughest performance problem: the more agents it simulates, the more expensive every frame gets.

A launch with plenty of performance problems

Cities: Skylines II launched on PC on October 24, 2023, to a rocky reception: even on high-end graphics cards the framerate would tank, there was constant stuttering as the map grew, and the console version had to be delayed — it still doesn't have a confirmed date. A big part of the problem came down to how the engine handled level of detail (LOD) and culling: distant models weren't simplified in time, and things off-screen weren't stopped from being drawn, so every frame carried more geometry than it needed to.

Colossal Order — and, since Iceflake Studios took over development in 2026, them too — responded with near-weekly performance patches for months, and publicly committed to not shipping paid content until it was fixed. That's exactly where our engine work came in: decongesting that LOD and culling bottleneck without shrinking the scale of the simulation — more agents per frame, not fewer, just without each one costing as much as it did at launch.

That promise didn't fully hold: the first paid content, the Beach Properties asset pack, shipped on March 25, 2024 with performance still not fully resolved — the community backlash was so bad that Colossal Order pulled it from sale weeks later and made it free. The "Economy 2.0" update (June 2024) and a run of patches focused on per-character LOD and mesh batching marked, month by month, the real path to a game that today performs well above where it did at launch.

Sources: console version delay, Beach Properties pulled and made free.

Our engine work

Unity Engine optimization for simulations with tens of thousands of active agents
Traffic and commute systems: routing, congestion, and citizen behavior
Memory management on long-running saves with very large cities
Cross-platform performance: PC, PlayStation 5, and Xbox Series X|S
Mesh batching and per-character LOD to cut draw calls in densely populated cities

Available on

← Back to Gabriel Díaz Bernal