Procedural City

For my Master’s thesis at NYU, I worked toward creating an animated short set in the Irish Countryside. In doing my research, I noticed that all of the buildings looked similar, with only a few differentiating variables. I started modeling the buildings individually and immediately found this was an inefficient way to model an entire city. I quickly changed gears and began developing a set of procedural tools to be used in Maya via Houdini Engine that allow for the maximum amount of variation while cutting the modeling time down dramatically.

Early iterations of this tool required that the artist manually make a selection for each of the 189 parameters for each building. This too proved laborious and inefficient. For a city composed of 300 buildings, such as the one in my short, this would require an artist to make 56,700 choices to make each building completely unique to the others.

Utilizing python, I was able to develop a custom UI that randomly chooses a setting within a predetermined range for each of these 189 parameters. Not only did this shave hours off of the time required to produce each building, but it generated surprising and interesting results that I might have never selected otherwise. This was an incredible step forward, but it wasn’t enough. I needed to be able to save time while maintaining the ability to override the generator if need be. Perhaps the most important and unique feature of this tool is the artist’s ability to accept and reject individual randomized parameters and either randomly or manually select new options.

Modeling an entire city is a daunting task for any production. These tools allow 3D artists to make a completely unique city with high level of variation in a fraction of the time. Furthermore, because every aspect is entirely procedural, a road can be redirected, a building shortened, a store front modified or even the entire land landscape swapped out for another and it won’t require starting from scratch or render previous work unusable.

This work was presented at SIGGRAPH 2015 Dailies.


  • Houdini
  • Maya