Website powered by

Procedural Background Environments

In Spectr Bim, we needed some way of letting our clients generate an environment around their uploaded model. It could be very simple and crude. The most important parts were that it had to be fast, performant, and had to visualize some typical belgian settings. This is the first iteration of that feature.

Using a layered voronoi pattern, I managed to generate a road hierarchy going from highways to alleys. These get projected on a terrain which is deformed with a simple perlin noise. Offsetted on these roads, are the buildings. After all these some trees get instantiated.

Although the feature got put on hold due to other pressing issues, it taught me a lot on geometry algorithms and code optimizations and marks an important milestone in my personal development at Spectr XR.

To imitate dense urban areas, a structured road pattern is generated alongside typical residential buildings.

To imitate dense urban areas, a structured road pattern is generated alongside typical residential buildings.

The buildings themselves reuse as many assets as possible alongside low resolution trim textures and low poly models to minimize performance impact in addition to using standard GPU instancing.

The buildings themselves reuse as many assets as possible alongside low resolution trim textures and low poly models to minimize performance impact in addition to using standard GPU instancing.

More countryside styles get less structure, many road segments get removed post-voronoi, the terrain's amplitude gets increased and buildings get minor extensions. Since more space is left, more trees will also get instanced.

More countryside styles get less structure, many road segments get removed post-voronoi, the terrain's amplitude gets increased and buildings get minor extensions. Since more space is left, more trees will also get instanced.

Industrial areas get very structured roads as well, but with lower density and wider. Their buildings are larger, more boring, and well... industrial.

Industrial areas get very structured roads as well, but with lower density and wider. Their buildings are larger, more boring, and well... industrial.

A combination of layered voronoi patterns, testing the limits using randomness, inverse relaxation, removal rate and rotations rotations

A combination of layered voronoi patterns, testing the limits using randomness, inverse relaxation, removal rate and rotations rotations