Manchester Central Library is one of the most iconic buildings in the center of Manchester. It recently underwent a complete refurbishment. We created a “walk and interact” tour of the library. Players were able to interact with a number of consoles within the environment to find out more information about the refurbishment. We also created an Oculus Rift version for a greater immersive experience.
The project was centered around the use of a BIM ( Building Information Model ) within a realtime environment. This project had a number of challenges that needed addressing. Firstly architectural models are typically used for Offline rendering purposes, creating a true to life render is so important that a large polygon count is required to achieve such realistic results. In Realtime rendering however we aren’t afforded the luxury of an almost unlimited polygon allowance, so instead we used a number of techniques to help give the impression of detail without it physically being there. In this project we used Detail Mapping, Occlusion Culling and Normal Smoothing groups to help bring in detail where we had to strip away geometry.
BIM models also tend to have a lot of repeated elements. Elements such as windows and door are option have the exact same geometric structure, but just slightly different transform properties. The standard model output formats such as FBX don’t deal with instancing of objects so we had to develop a set of algorithms to recognise repeated geometry and create an instance of those common objects. Having instances of objects helped the engines dynamic batching and reduced the overall draw calls hugely.
We also found that inside buildings you often don’t see beyond the room you are within. This can be handled nicely with Occlusion Culling but there is still of an unnecessary performance overhead.
The gameplay logic was relatively simple so my efforts were mainly in the visual aspects of this project. I created a large range a shaders designed to emulate the surface properties of the building materials that were being used in reality. I also was responsible for the implementation of the Oculus SDK into UE4.