Oculus Quest, Oculus Rift and portable Roadshow
October 25, 2021
Unreal Engine/ Blueprints/ Material Shaders/ Blender/ C++/ Adobe Suite/ Figma/ Perforce
The user flow was designed with an interaction mechanic that was easy to teach and versatile enough to handle all the interactions throughout the experience. The first interaction is a simple "point and click" mechanic, demonstrated in a stress-free and easily understood manner. In case of inactivity, timeouts are in place to ensure users progress through the experience, which is crucial for high throughput and provides a defined maximum time for the experience. It was important to have a accurate representation of the environment when viewing the trees from above. To achieve this, the sky and landscape needed to reflect the Waipoua forest accurately. To get the correct star positions, I used the "Ultra Dynamic Sky" Unreal plugin, which allowed me to input the latitude, longitude, date, and time for a real-life star layout. However, this was not compatible with the Oculus Quest, so I captured 360-degree images of the sky, one for night and one for sunrise, and blended between them to create the illusion of a night to day transition.
For the landscape, I utilized image and height data from Google Earth, which was then mapped to a mesh. To optimize performance, I implemented a distance-based level of detail (LOD) system that reduces the number of vertices as the user moves further away from the play area.
One of the most popular features was the ability to see through the ground and observe the roots. This was achieved by using a global material parameter collection that accepted a world position vector, creating a sphere mask around it to make anything inside it invisible. To enhance the effect, I added a glowing outline along the edge of the mask.
To visualize the mycelial mat, I employed the use of a Niagara particle system. I created leader particles that emitted in a noisy, displaced pattern, which in turn spawned trail particles to form ribbons. At random intervals, the leader particles also triggered an event that spawned another type of particle, which was a 3D model of an oospore. Additionally, I integrated a commercially available microbe pack to add vibrant color to the visualization.