As part of my last week as a member of the research team at Iowa State University, I worked on a simulation for our VR navigation experiment data.

Our experiment involves participants completing a triangle completion task in virtual reality -- walking two legs of a triangle and trying to indicate where they think they started (completing the last leg of the triangle). Using the data we gathered from the experiment I wanted to create a 3D visualization of each of those trials.

The project I then worked on visualized the data by showing the points of the triangle and the participant's response. Here's a bit of what that looks like:




The Process
This was made using a data set based on the experiment I've been working with a team on making and running this summer (repo here). It was made in Unity, using similar assets to the one in the original project.

The data from the experiment recorded much of the data about each trial, including the marker position and response. One of my teammates extracted this data into a more meaningful .csv file, and I read that .csv file into Unity using the CSVReader script.

That script helped me to extract data from the .csv file so that those values -- for instance the values of the marker x and z coordinates -- could be used by other scripts to place different items and make landmarks appear and disappear when needed.

I then added UI elements that displayed the participant number and the navigation condition for each trial. I also added functionality to switch between an orthographic and perspective camera and let the camera move through the environment.

Future Goals
I'm hoping to add in data that uses the data on the time and HMD positions to create simulated recreations of the trials, complete with the participant's position over time and eventually their response.


Try the Demo
The project is built in Unity and available both as a Unity project and downloadable .exe from the Github repository: https://github.com/dacharya64/ViveSim