top of page
Untitled video - Made with Clipchamp (2).gif

Building Generator

Final Product:
The Goal:
Create a building generator with modkit assets
The Solution:
Use volumes to create point data.
Creating Main Walls:

After sampling the collision volume I added in an actor blueprint, I generated point data from the volume and spawned main walls with the data after the transform node.   To add walls with windows, I added two more static mesh types in the static mesh spawner node.

image_edited.jpg
image.png
Adding Ceilings and Floors:

With the same method I used to create the main walls, I transformed the points to generate ceiling and floor meshes for the building.

image.png
image.png

To give the ceiling a more sophisticated look, I added ceiling trims around the ceiling mesh.

image.png
image.png

I created points to add railing on top of the ceiling trims and used a branch node for the user to decide if railing meshes would be spawned, allowing more variation in the mesh generations.

image.png
2025-02-15 17-10-36.gif

To add more set-dressing props on the roof, I copied point data from the mesh I used to generate the ceiling and use normal to density to get the points on top of the mesh. I added signal pole, roof exit, and potential roof bushes (users are allowed to choose if they want to have bushes).

image_edited.png
image.png
Make The Building More Interesting!

I added bricks to the corners of the building by subtracting points on the walls next to each other. For example, to get the corner points between the +Y and +X walls, I subtracted the point data between those walls.

image.png
image.png

I wanted to add meshes on the wall panels that don't have windows, so I used attribute filter nodes to filter out points that have the window mesh strings. Getting the difference between points from all wall panels and the results from the attribute filter nodes, I got points that are only spawning empty wall panels to add meshes like AC units, signs. Using the same method, I could add shades on top of the window meshes.

image.png
image.png
Sidewalks and Props:

I used create point grid node to generate new points to have sidewalks around the building. With public variables in the actor blurpint, the user can control the grid extent and size, and the grid would generate according to the location of the building.

image_edited.png
image.png
image.png
image.png
Doorway Volume:

I used a volume with a doorway tag to create a mask for the doorway mesh to spawn when the volume gets to a certain distance near the building walls. 

image.png
2025-02-15 18-01-01.gif
Graph Overview:
image.png
Resource:

Building Reference made by Dzmitry Doryn https://www.artstation.com/artwork/lVEmGe

  • Email
  • LinkedIn

© 2025 by RANRAN JIANG.

bottom of page