Virtual Reality as a technology has seen rapid innovation in the past decade, moving from a niche research product to consumer ready devices incredibly fast. I spent this year exploring this technology by way of creating multiple different prototype applications, each with their own unique use cases and underlying technologies. I created two applications for virtual reality devices, one which allows people to observe a real life location using geographic data, and another that can display graphs of interconnected data nodes to the user.
The first application allows the user to view a simulation of a tsunami hitting the city Seaside, OR. This application was built using Unreal Engine 4 for graphics and interaction systems and used multiple geographic data processing programs like ArcGIS Pro and CityEngine to process the geographic data into a format that was capable of being used in Unreal Engine. It also involved writing a shader capable of manipulating a model to match the height of the tsunami simulation over time and implementing interactions to control the playback of the simulation.
The second application is to explore data visualization, specifically the graph data type, within virtual reality. It is built using the Unity engine and is capable of taking specifically structured JSON data files and rendering them into multiple different types of graphs called layouts. One layout places data nodes into specific clusters, and places those clusters evenly on a sphere around the user. The other applies physical forces onto these nodes, such that they move away from other nodes but are pulled together by their connecting edges. It also allows for interactions with the graph and the data itself, by manipulating the graph as a whole or the location of individual nodes.
Through these projects I have been able to learn the tools necessary to work with Virtual Reality technologies, as well as tools related to geographic data processing. More than that though, through experimentation I have been able to learn a significant amount about designing software that works with virtual reality’s strengths to create a truly immersive and interactive experience not possible in other mediums.