After some trial and error we have come to the conclusion that it’s best to build most of our scene geometry using a number of building blocks, such as wall or floor pieces of a fixed size. These small entities are easy to control and can be modified at any time. When instancing the pieces, changing the base piece will update all child pieces. This way we can make significant changes to our environments even after they’ve been built.
Small base elements are also helpful when it comes to UV mapping, lightmap generation and collision mesh generation. They have a low memory footprint, they load rapidly and last but not least they may even allow us to build scenes semi-procedurally. Either way, putting together game environments with this technique is a quick and easy process. It’s a bit like playing with Lego bricks, except we get to fully customize their look and shape.
Goran, our designated environment artist, is certainly having fun with the concept of using simple elements to build scenes that look very complex. We are always amazed how he starts with a few blocks and ends up with these fascinating spaces. We’re even more amazed when he tells us that he used only three different pieces to generate the whole thing.
This said, scene geometry is only half of the equation. Lighting, too, will play a big role in getting the atmosphere right, and Goran is already taking Unity apart to get the most out of it in terms of visual fidelity. Masters will be a glorious sight to experience in VR, that’s a promise!