Realistic, Customizable City-Scale Simulation

CityLife is dedicated to moving beyond great tools for building AI from the ground up, to instead populating worlds with humans and animals largely automatically, showing a rich set of interactions and individual motivations.


We use an advanced agent scheduling system to reproduce traffic at the scale expected of an urban city. Our agents follow individual schedules, and dynamically react when required - for example, if a player were to run into the road.

Our system also boasts support for a range of complicated road layouts - merging, intersecting lanes, forking and more.

A zoomed-out, basic city created in Unreal Engine. It shows a representation of traffic.

Pedestrian and vehicle behaviour has been effectively replicated, allowing cars to follow the rules of the road such as speed limits and traffic signals, while pedestrians follow sidewalks and avoid one another.

Importantly, they will react to player involvement and flee from dangerous situations.

A basic city created in Unreal Engine with debug draw enabled, showing an intersection with the representations of vehicles following the rules of the road.

We automate agent spawning based upon configurable LOD bubble and density settings - and always ensure that agents spawn with realistic initial positions and speeds.

Whole segment spawning populates entire roads and pavements as the player moves around the world, while boundary spawning maintains population by spawning agents into the LOD bubble at its boundaries.

A basic city created in Unreal Engine, with debug draw enabled, that shows the intersection of a street.