VR Interior Designer

A product-focused approach to VR. Designed to be expanded to multiple models and layouts. Visualize your dream interior and customize the materials used in all aspects of the room. All assets are modeled in Maya and textured in Substance Painter. Created with Unreal Engine 4.

Initial blockout.
Lighting test.
No items found.
Download Process
Book

Process

For this project, I took a book of old Victorian wallpapers and photographed the designs. Using Photoshop, I turned the photos into tillable textures. Which I could then bring into Substance painter. I also got to do a full dive into creating a responsive UI panel for VR. Connecting various elements in a blueprint through an array-powered system to control exactly what is being displayed.

Next Steps

I want to contact a few of my Interior design friends and optimize their models for VR. Work with them on bringing their vision to life so they can experience it. With the hopes of not only having different textures but different models. Adding more customization options to the experience.

Learned

I learned how to set up reflection probes and how to create tillable textures based on photographs. Using my existing blueprinting knowledge, I expanded on projects I’ve done in the past. Allowing me to set up the complex system to react entirely to the UI. While I made it a stand at the front of the experience, this could simply be shrunk down and attached to the player. Which would allow them to explore the space and change it in a larger setting. For example, a full room or home.

These are the 4 buttons on the home screen. Once the player interacts with a button it sets the Object Chosen and material index for the UI.
Overview of material arrows. Each object screen requires a slightly different approach to updating the UI texture image. Since all the images are loaded into a single array.
Then the event fires the Set Object and Close Home events. Next, it moves the appropriate buttons into place for the object selected.
Checks for players interacting with the forward arrow. In this instance, the object is set to 0 it will change the couch base. If it was set to 1 it would change the couch pillows.
This will then increment the UI image index and the object chosen index. Since all the UI images are in the same array and not all the objects have the same UI images needed it will skip the correct ones.
This event casts to the UI widget and plays the open home screen transition animation. Also, sets the home screen UI button location.
The last thing it does is set the last chosen index for that object so it remembers where the player left off. This is the driving functionality for knowing which object is selected and what material should be applied to it.
This event casts to the UI widget and plays the close home screen transition animation. Also, sets the home screen UI buttons to the closed location.
The material arrows also work in reverse.
Overview of the function that switches the material on the objects.
This event casts to the UI widget and grabs the set object chosen and material UI index number. The UI widget knows which image to pull from the arrays to display the correct objects.
Switching on the chosen object, this function then grabs the correct object texture index. Which was set by the material arrows. To change the texture maps of that object's mesh.
This event casts to the UI widget and grabs the set object chosen and material UI index number. Using those numbers the UI widget knows which image to pull from the arrays to display the correct objects.
When the player selects part of the table from the screen it switches the object chosen number. Also, it sets the material UI index number to the last chosen one for that object.
When the player selects part of the room from the screen it switches the object chosen number. Also, it sets the material UI index number to the last chosen one for that object.
When the player selects part of the room from the screen it switches the object chosen number. Also, it sets the material UI index number to the last chosen one for that object.
The close buttons load in the home screen and send the object’s buttons to the closed position.
This event plays the close animation for the UI panel. It uses the Object Chosen and material UI index to show the correct images.
When the player selects part of the lamp from the screen it switches the object chosen number. Also, it sets the material UI index number to the last chosen one for that object. The lamp also includes a light switch.
This material’s attributes are changed based on the index numbers set by the Switch Material function.
No items found.