Connections
Procedurally generating 3D cities
Tools Used: Rhino3D, Grasshopper, Python
Connections is a collection of 3D models. The interconnected towers are inspired by cities with skywalks, such as those around the Indianapolis Convention Center that I visited the summer prior.
View CollectionScript Development:
This project explored parametric design, that is, the models are procedurally generated using the CAD software Rhino 3D and the node-based scripting plugin Grasshopper. Scripting nodes perform a calculation on some inputs and either let you use that results as an input for another node, or create a 3D shape from the result.
My script places cylindrical towers on top of various points on a grid, and then connects some spots on different towers with a tube-like skywalk. In addition to built-in nodes, I created a custom node using Python to help choose which towers to connect.
Some user-controlled inputs I defined, which influence the resulting 3D model, include city radius, tower frequency, tower height, tower variability, and skywalk frequency.
Final Designs:
For the final collection, I wanted to capture a variety of what can be accomplished using the different parameters.
The Castle is a small, medieval castle–inspired design.
The City is a bit larger and more densely connected.
Notably, wherever multiple skywalks meet at a tower, a cylindrical "hub" room protrudes outward, with the diameter increasing per screenshot. This ties together the physicality of the structures with the people in them; more skywalks means more people, and a bigger hub is required to facilitate the connections between them.
The Province explores a different direction—many low towers, sparsely connected.
And The Dream takes parameters similar to The City and heightens them, often literally.
I particularly like this inside view of The Dream, which highlights the inner latticework of the skywalks and what it might feel like to be inside of this space.
Please note: Images were rendered at a low resolution then upscaled using zyro.ai, so some details may appear inconsistent.