This script, written in Python and compiled and rendered in Blender, generates a random layout of city blocks and then populates them with a differing number of buildings of various heights separated by thin alleys. The city streets are laid out in a Western-style grid at right angles, and each block supports either several buildings, or features no construction and instead represents a common area such as an urban park or playground.

The city shown below is 15 by 15 blocks, and so spans 125 square and rectangular city blocks, though the script can be scaled to grow a city of any size.

Next up, diagonal street intersections, procedural architecture to flesh out the building shape, and water towers.

Leave a Reply