VR Interaction Design for Interior design application
Architects and interior designers need to have a clear understanding of the spatial qualities of their designs. However, imagination and 3D visualization of spaces are the only prototyping tools that are insufficient. Wrong decisions in designs can cost a lot of money, material, and other resources.
Designing a VR prototyping application for architects and interior designers to empower them in their design decision-making process
Designing an immersive experience to help interior designers be able to review and modify their design works interactively
After doing some research on the subject, the design phase started with finding out the basic interactions that an interior designer need to have in a VR app to be able to review and modify their design work. After identifying interactions that are necessary for the experience, I started prototyping for making those interactions doable and tested with different use cases and users during the process.
The following demo shows what was the result of this project as a lo-fi VR design and development project.
Individual independent work
XR Interaction Toolkit
1st iteration May - Sep 2020
2nd iteration Mar - May 2022
I updated this experience based on the experts review feedback and my own personal findings from testing with some users. This demo is recorded using a VR headset and the video edited in Adobe After Effects to highlight critical moments in the experience.
Experts reviews on the first iteration and major changes are explained on this page.
Second iteration demo
Updated Spring 2022
For starting this project, I interviewed 5 interior designers about their basic needs in reviewing an interior design schema. Through these interviews I found the following as the basic interactions that they expect from an app
I started prototyping for the tool by making a minimum viable program at Unity that allowed users to manipulate some basic objects in the space. Basic manipulations were:
Also in this stage, I tested some 2D and 3D interfaces for further design and development. A demo of the work at this stage is shown below:
Moving Objects in the space
Rotating Objects around their axis
Changing lighting settings
Changing materials and colors
After selecting the platform and getting basic user inputs, I started defining the interactions that were considered vital to the existence of the application and mapping them to the possible user inputs from the selected device. I designed and developed those interactions and made my prototype. The result was 2 iterations that I put some parts of the 1st iterations and all of the 2nd iteration designs here.
First Iteration (Summer 2020)
In the first iteration, active objects were enclosed in a transparent box to show their active status and an interaction UI showed the current interaction in text format
In the first iteration, the 2D UI was of Head-Up-Display (HUD) that appeared when an interactable object was selected and disappeared when it was unselected
In the first iteration, there were some UI elements that appeared by pressing buttons on the controller which were removed in the 2nd iteration from the experience
After making the first iteration demo in summer 2020, I sent it to some of the well-known experts that work in the industry and academia and asked them for feedback. Here is some of the feedback that I received
UX Design Lead for YouTube VR
" Interior design is definitely one of the most valuable use cases for headsets, as well as architecture... Regarding the interface, I'd recommend moving the buttons you've got from the face to the non-dominant hand. Then you can hold up the menu with one hand and point at it with the other. Tilt-brush is an example of one of many apps that do this. "
XR Senior Designer at Microsoft
" My only feedback will be trying to make the tool less modal. Right now it seems like the user needs to switch between modes (translate, rotate, scale, etc..) very often. That'd probably make a slow workflow for him. Rather than that, I think your tool is super neat! Congrats! "
Senior Designer at Microsoft
" What I recommend to increase the affordance/reduce friction are: 1) provide a grid system to know where your object is placed (especially a symmetry is required). 2) pre-configured rotation to make it simpler (custom rotation option can be provided as well). I would also consider more UI feedback on object selection and what editing mode the user is in. It was difficult for me to tell what object is being copied, etc."
Second Iteration (Spring 2022)
In the 2nd iteration, I tried to move the work forward based on the feedback that I received from experts. In this iteration, all the possible interactions are reflected in a hand-held menu on the non-dominant hand of the user that user can hide/unhide and can swap hands if they prefer to do so.
Also a there is a spatial guiding grind that user can hide/unhide in the space and use it for aligning objects when needed.
Hand-held menu UI
Turn the guiding grid on/off
Swap hands for holding the menu
By selecting the Move interaction from the UI for the selected object. The Thumbstick on the right controller will no longer work for locomotion but it will only work only for moving objects in the space.
By selecting the Rotate interaction from the UI for the selected object. The Thumbstick on the right controller will only work for Rotating the object around its own axis that is perpendicular to the plane that the object is located on.
By selecting the Duplicate interaction from the UI for the selected object, the object will be duplicated and user can select it to move, rotate or do other interactions on it.
By selecting the Remove interaction from the UI for the selected object, another overlay 2D UI will appear to ask the user if they are sure about removing the object. By selecting Yes, the object will be removed from the scene.
Turn on/off Light
If the selected object is one that holds light objects, the user can see the Light button is activated on the 2D UI and can turn on/off the light on that object.
By selecting daylight button the user will see the UI with the slider that allows them to change the time of the day and see the result as a change in the ambient light of the space.
On the first iteration of this project, I learned a ton about designing for immersive experiences and specifically VR platforms. My understanding of design and prototyping for VR totally changed during this project and I found that engineering the ideas to a testable prototype is the main challenge of this process.
On the second iteration, I found out how important clear documentation and implementation of the work is. Fortunately, I did a very well documentation of this project on Notion and made a very organized Unity file that helped me a lot to get back on the project after more than a year of the first iteration and being able to work on it and fix the areas that I wanted to.
I Achieved in the 2nd iteration to think of ways to change interaction modes without calling the appearance of the 2D menu.
I Achieved in the 2nd iteration to use a handheld menu instead of the head-dependent menu. So there is no need to hide the menu and the interaction will be so much easier.