Fundamental VR Interactions
// interaction design thesis project
Project Reel (1:00)
Client. IxD Senior Thesis Project
Timeframe. 8 weeks
- UX design and research
- Designed, prototyped and tested user experience
- Produced all 3D assets
A good user experience is the bridge between the potential of an emerging technology like XR and mass adoption by the users it can really benefit from it.
When looking at precedents of past technology like the smartphone or personal computer, mass adoption of the technology only occurs when the user experience makes it accessible. The touch screen interface and gestures of the iPhone unlocked the potential of smartphone technology and people didn't start using PCs until the GUI replaced command line input.
Research. Subject Matter Expert Interviews
To get a better understanding of the current state of VR interaction design I reached out to XR designers on LinkedIn to conduct SME interviews. These conversations gave me great insight about the design decisions and how to approach this unique challenge of 3 dimensional user experience
"Think of VR as a small part of of the product that goes beyond the headset. You cycle first time users to power users by walking them through the early steps"
Soh, Oculus & Apple
"For early projects we started with determining whether VR adds something to the experience. There has to be a reason it's better to do this in VR."
Michael, Hololense MRTK
"Design decisions always start with empathy for the user. If the user expects to learn the product you can put in more features and more complex mechanics."
Alejandro, OssoVR & Disney
Research. Competitive Analysis
I studied interaction systems of existing VR content focusing on the micro interactions, feedback and affordances. The goal is to identify some commonly used interaction gestures and how they were implemented both as a user interface and as code in Unity. I created sketches to help take notes and process the details of the micro interactions
From my research I was able to identify three fundamental interaction gestures that I wanted to study and prototype because these gestures are the way users touch and interact and change their virtual environment.
Touch or Button Press
- Used to trigger discrete actions
- Most intuitive to teach
- Used for continuous interactions
- Initiated by onGrab, stopped by offGrab
- Action performed if (isGrabbed == true)
- Used to interact with environment
- Similarities to mouse and desktop interface
- Can utilize hover states, tooltips and long press
Through research I found there’s a typical structure of stages that interactions go through listed at the top. As the user input triggers each different stage, feedback is required to keep the user informed of what is happening, which can come in the form of animation, visual changes, sound or haptic vibration from the controller. This chart how I designed different feedback and affordance mechanisms for each interaction type through each step of the interaction process.
This design structure dictated how I organized the code in Unity. This keeps the code organized and modular because the functions of each script are well defined and loosely coupled from the other scripts
Prototype. User Testing Scenarios
The next step for me was to combine these interaction gestures into a system that allowed you to actually do something. I decided to create scenario to look at and interact with a car because it allowed me to script tasks to perform during user testing.
Testing prototype reel (1:00)
Teleport user sketch
Manipulate vehicle sketch
Grab and Manipulate sketch
More user testing and iteration. The 8 week timeline of the project only allowed for one round of user testing. I'd like to continue with more user testing and use those findings to iterate the design.
Polish and personality with animations. There was a time when I wanted to be a character animator and so I have a great appreciation for how animation principles like easing in and out, squash and stretch, can add a more natural pleasant experience and give character and personality to interactions and the overall product.
Visual polish. As someone who started his design career in architectural visualization, it’s important to me to eventually put this in a beautifully rendered space, along with pleasing sounds and ambience. I have a great appreciation for how much the surrounding environment can affect how a user perceives an experience.