Building Generator - Cyberpunk City

Final Render

Final Render

Before & After comparison of the blocked out buildings.

Showcase of how the tool can be used in Unreal Engine 5

Shows the process of turning the Input Mesh into floors by using a Boolean Intersect with the mesh to the right.

Shows the process of turning the Input Mesh into floors by using a Boolean Intersect with the mesh to the right.

Showing the process of distinguishing inner corners from outer corners as well as how I detect a corner from a non corner using a curvature value on the points.

Showing the process of distinguishing inner corners from outer corners as well as how I detect a corner from a non corner using a curvature value on the points.

This is how I generate points on the walls of the buildings. I first remove the corners from the mesh and then generate on each face individually using VEX code.

This is how I generate points on the walls of the buildings. I first remove the corners from the mesh and then generate on each face individually using VEX code.

Just generating points randomly didn't look great so I created a pattern generator that determines where certain variant of meshes goes. The pattern was inspired by my primary reference for the scene.

Just generating points randomly didn't look great so I created a pattern generator that determines where certain variant of meshes goes. The pattern was inspired by my primary reference for the scene.

I've always loved creating environments but usually it's very difficult to create large scale environments, especially on your own. Therefore I decided to try my hand at making a generator that creates randomized buildings from a modular building kit. I worked on this project for 5 weeks with 2 of those being fulltime. There were two primary motivators to why I chose this project:
Explore & Learn Houdini
Integrating The Tool In Unreal Engine
---
This was quite a big project and my first big project in Houdini. A lot of time was also invested in the creation of the scene itself with everything from sourcing textures to lighting the scene. The scene itself was inspired by a piece of concept art from Cyberpunk 2077 which was made by Ward Lindhout (https://www.artstation.com/artwork/8wb0kG). It served as my main reference for the buildings as well as the composition of the scene.
While I created the modular kit myself as well as the billboards the textures were sourced from megascans to save on time. I also made use of a Spline Tool I created previously to place out things like roads, bridges, monorail & the lights for the roads.
--- If I had more time ---
A lot of areas for this project could have been expanded but the area of the tool itself that I would dedicate the most amount of time to would be to create additional patterns for how the buildings can look to allow for more diversity.
In addition to this optimizing and testing the tool with users to get valuable feedback on performance and usability would have been something that could be really beneficial for the tool itself and to future tools that I'll make.
---
“I am part of The Game Assembly’s internship program. As per the agreement between the Games Industry and The Game Assembly, neither student nor company may be in contact with one another regarding internships before April 23rd. Any internship offers can be made on May 5th, at the earliest.”