Website powered by

ONEiRA PCG Temple Rooms/Corridors

This system was used in ONEIRA to generate the structural “bones” of temple levels using Unreal Engine PCG and a layered data-asset driven grammar approach. Walls, floors, ceilings, and room/hallway grouping are all defined through modular data assets. Swapping a wall definition in the data asset can completely restyle an entire level without touching the PCG graph.

The system integrates with a general scatter framework to populate rooms and corridors automatically, as well as a project standard eraser actor for cutting holes into the walls.

This allowed rapid iteration of large temple layouts while remaining fully art-directable.
An optional lighting module can be enabled which procedurally places optimized spot lights along corridors.

The PCG graph calculates spacing, attenuation, and cone angles to minimize overlap while achieving consistent corridor illumination.

Lighting behavior is fully controlled through a dedicated data asset, allowing different temple styles to define their own lighting rules without modifying the graph.

Easily define/combine various styles of walls and floors

Easily define/combine various styles of walls and floors

Corridors have fully dynamic width/height

Corridors have fully dynamic width/height

Material Map System enables defining different material sets to define different versions of the temple

Material Map System enables defining different material sets to define different versions of the temple

Automatic Cooridor Light Placement minimal overlap and customizable spawn settings using lighting data asset

Automatic Cooridor Light Placement minimal overlap and customizable spawn settings using lighting data asset

Floor/Wall Config Data Assets defines pcg grammar rules and modules

Floor/Wall Config Data Assets defines pcg grammar rules and modules

Demonstration of the 3 stages of PCG Grammar used to create walls. 
1. Primary Horizontal subdivision
2. Primary Vertical Subdivision
3. Secondary Horizontal subdivision (optional)

Demonstration of the 3 stages of PCG Grammar used to create walls.
1. Primary Horizontal subdivision
2. Primary Vertical Subdivision
3. Secondary Horizontal subdivision (optional)

Cooridors integrate with my own custom scatter library, generating pcg surfaces along floors

Cooridors integrate with my own custom scatter library, generating pcg surfaces along floors

Automatic Lighting Data Asset

Automatic Lighting Data Asset

Corridor Tool Full Details Panel

Corridor Tool Full Details Panel

RoomSpline uses the same wall config as corridors, but use PCG-Ex mesh collections for floor generation

RoomSpline uses the same wall config as corridors, but use PCG-Ex mesh collections for floor generation