Geo Nodes Building
By Austin W. Dunham, V
Blender Version: 4.2
Introduction / Credits
I really enjoyed Kent Trammell’s geometry nodes buildings in the CGCookie Cubicity Course, as well as Jonathan Lampel’s dive into Geometry nodes in CGCookie’s Assemble course. This page will use a lot of Kent’s approach to creating buildings, but I’m using it for more realistic structures. With the correct materials the structures could look realistic or cartoony.
Planned Plugin Use
Aside from some of the standards, like Node Wrangler, I believe the following plugins will be helpful:
- Scattershot for some of the stone or concrete like materials
- blanchsb’s Vertex Painter Pro add-on for better vertex color management. I don’t know if it was ever released outside of the CGCookie’s Peacemaker Protocol collaboration.
I’m not certain how much I want to go with image projection vs creating more generative materials. I guess that’ll depend on how good my generative materials are.
Determining Dimensions
As a rule I like to work at 1:1 scale when modeling. I’m also a heathen from the United States of America and switch Blender to Imperial with separate units. I get that metric is the superior system, but a lifetime of thinking in inches and feet is difficult to overcome, and most American Dimensions are in inches and feet.
Google Maps
When I’m modeling buildings that exist, but that I do not have blueprints for, sometimes I have difficulty with the building’s dimensions. In a city often one can only see the front facade of the building, which doesn’t help much if you want to rough out an interior. I find that Google Maps, or your mapping program of choice, can be a great help. While you shouldn’t use the street view images in your materials without Google’s permission, just having the general top-down outline of the building can be a great resource for making sure your building’s dimensions make sense.
Further, from the top down view one may right click on a corner of the building and choose Measure distance. Then right click on another corner of the building and choose Distance to hear. Voila, you’ve blocked out at least the width and height of your building! If there are cut outs in the building hidden from the street, you also have somewhat reasonable measurements of those too.
Standard Building Measurements
Most buildings follow standards for door sizes, window panes, etc. Looking up these standard sizes is another way to ensure your measurements make sense.
Tape Measure
For smaller dimensions a tape measure, or, I believe, a laser tape measure can be handy. It might be a little unusual to walk up to a building and start measuring things, but it should only take a moment and confirm what you expect for sizes, assuming you can reach what you’re measuring. A laser tape measure could be another help. It’s something I’ve wanted, but do not have.
What I’m Modeling
There are two buildings that are very similar, but have a different paint job and entrance. I am going to use geometry nodes to make these buildings configurable. Hopefully I’ll be able to choose the color scheme, 1st floor layout, turn on and off fire escapes and other details like the hookups for the firehoses.
If I get really fancy I may try to switch between realistic and a more cartoony color scheme.
Here is the brick building:
And here is the neighboring building, painted white:
Blocking Out The Building
I will often create a cube to represent the overall size of the building, and slap a picture of the side of the building onto it to ensure I accurately place windows, doors, and other features.
Breaking the Structure Into Pieces
After roughly determining the building’s dimensions, to use geometry nodes one must break the building into pieces.
- First floor
- Door, including frame and entryway
- All first floor windows, frames, etc.
- Every other floor
- Double hung windows, and frames
I created a Geometry Nodes Window Tutorial!
- Double hung windows, and frames
- Roof Detail, which I believe is called an Entablature
- Fire Escape
- Plumbing for firehose
- Maybe interior metal frame for earthquake reinforcement, since it shows through windows
- Making sure the brickwork cutouts are done right going up the building
In particular the brickwork between the first and second floors is quite different than between every other floor
Done properly one could have this building be as wide, tall, and deep as needed. Conceivably one could have different first floors, or floors above the first floor, as long as the dimensions were similar enough. I don’t know if this would be easier with geometry nodes or just layering the floors like a big Lego construct. I like the idea of not just random buildings, but random floors on the buildings.
One step at a time though.