top of page

Cyberpunk Subway Station is my current 3D Tech Art project. I’m building most of the PCG tools in Houdini and setting everything up in Unreal Engine 5. I’m also using Substance Designer and Painter for some of the materials. I’ll keep updating this page as I go until it’s finished!

Modular Wall/Ground Placement Tool & Vertex Painting

Place 1×1 and 1×4 modular wall pieces in different sizes with curve in UE5!

Assets.png

Easy to drag and place, automatically calculates the required number of wall modules - saving time right now!

The tool automatically calculates how many of each module to place based on the curve length.

Houdini_placement_1.png
Gif_Wall_Placement.gif

Easy to replace, edit, and delete - maintains detailed visuals while keeping computation

Assets_computation.png
Gif_Wall_VP_new.gif

In-Scene Preview

image (1).png

Industrial Railing Stairs for Subway Station

Quickly set up a complete staircase with steps and landings using a single curve!

Automatically Sets Steps and Distinguishes Between Steps and Landings

stairs_stepdisplay.png
  • Measure Slope Length

  1. ​Use Measure to get the length of each curve segment.

  2. Use Attribute Promote to change the data from primitive to detail.

  3. In Attribute Wrangle, use VEX to calculate precise values.

  • Set Step Count

  1. In Resample, divide each segment's length by the step width to get the number of steps needed.

stair_stepsonslope.png

Avoids Texture Scratching and Distortion

Houdini_stair_2.png
Houdini_stair_3.png
NodeTree_stair_2.png

Stacking Simulation: Electrical Box Generator & Stacking Tool

Tools in that pack use real-time data transfer between Houdini and UE5, whick converting point data from Houdini into Unreal Instance for placement and control.

 

Stacking idea was significantly inspired by Thomas Tobin’s Stacking Tool tutorial, it’s magical how the UV Layout node can be used to randomly place objects in a controlled way! 

I built a new layer stacking simulation based on Thomas's way and further expanded it into a new tool for generating randomized electrical box clusters.

Data Transfer: assets stay in Unreal while simulations run in Houdini, avoid heavy computation and potential crashes

image (6).png
image (7).png
image (8).png
image (9).png

Simulation in Houdini

Sync in Unreal

With points Houdini creates and Unreal Instances provide in Data Table, static meshes in Unreal automatically get copied.

image (5).png
image (10).png
image (3).png
image (4).png

Current Tool Display!

HighresScreenshot00017.png
image (2).png

Linear Tool Pack! Curves Creat Everything

Waiting Seat & Ceiling Lights Modeling Tool

Auto-calculates asset count via bounding boxes

NodeTree_Lights_1.png
Houdini_Lights_2.png

Pipe & Airduct Tool

These two tools have similar core logic - taking an input curve and generating geometry using Sweep node. The Carve node slices the curve into primitives, and Group by Range selects alternating segments to differentiate elbows from normal pipes.

Elbows: Fixing Sweep Discontinuity

curve_elbow_before.png
curve_elbow_before.png
curve_elbow_after.png

To resolve disconnected geometry in Sweep, use Fuse and Polypath nodes:

  • Fuse: Merges nearby points, ensuring topological continuity.

  • Polypath: Combines segmented curves into a single continuous path, ensuring the Sweep node receives a single primitive. If the input curve has irregular point order or breaks in topology, Polypath automatically reconstructs a proper curve structure.

Freely Moving Decor Geo Along Curve

curve_decordisplay.png
curve_movedecorgeo.png

Using the valve in pipe_tool as an example: drag the First U to adjust the position of valve!

  1. Carve allows points to move freely along the input curve.

  2. Polyframe ensures correct normal orientation.

Hope you enjoy my works!

  • Art Station
  • LinkedIn
bottom of page