Objective
Mozilla wanted to extend their iconic browser into the VR space to enable VR users to access 360 videos and immersive webXR experiences.
Result
We created a VR browser that would be scalable for future 6DoF standalone devices, desktop HMDs, and AR glasses. The product enabled Mozilla to cement partnerships with various VR headset manufacturers as their native browsers.
Challenges
We needed to create a product that would excite consumers and ease the barrier of entry for webXR content, while working within the limitations of Qualcomm Snapdragon mobile processors running on Android-based operating systems with 3DoF input.
As we built the product, more robust devices with different input modalities (6DoF controllers, hand-tracking, eye gazing, AR glasses, etc) were released. We needed to plan for the evolving nature of VR and make sure that Firefox Reality would continue to be a relevant product in the market.
Process
This was a research and innovation project that quickly ramped into a product. Because this project launched in the early days of VR, there was a small pool of non-power users to gather data from. Ideation and design explorations became a vital part of our process in order to understand and materialize the concept of webXR. Our design process helped us find boundaries, explore frameworks and VR interaction patterns, and establish a baseline MVP product.
User Interface Elements
Awesome Bar
Tray
Settings Menu
Keyboard
Voice Search
Experience Architecture
As we continued to add features, we quickly learned we needed to create an app-wide interaction pattern in order to create a scalable product for future releases. Each group of UI is labeled below with their core functions.
3D Layering System
Modes
We used the concept of modes in order to allow contextual UI elements to surface. The ideation and conceptualization of these modes relied heavily on using user flow diagrams to communicate the interaction models.
360 Movie Mode
Private Browsing
Resize Mode
Multiple Windows
Multiple windows posed a challenge especially when scaling for resize-able windows. We used a few tools in order to ideate and conceptualize the feature. Prototyping tools include: Blender, Sketchbox, and Unity.
Tabs
Our goal was to incorporate Firefox's iconic 'Send Tab to Device' feature from desktop to HMD. This was an integral part of Mozilla's product, therefore we designed a tab system that was a combination of desktop and mobile browsers. Users would have three windows and an overflow of tabs to interact with.
Settings
We created a master dialog that users see when they click the settings button on the tray with smaller dialogs with lists of features. Since these pieces of UI were consistently used throughout the app, we created a style library in which dialog boxes and components could be referenced.
Content Feed
We wanted to make it as easy as possible for users to find VR content on the web. This was a web design project nested within the project that utilized containers and basic web interaction styles in order to create a media feed.
Reflections & Learnings
Be a lifetime student. When I began working on Firefox Reality, I had no professional experience working with VR software. During the course of this project, I realized that there was a vast network of knowledge within the 3D sphere that I needed to understand and fully grasp in order to create the experiences that I envisioned. This meant I needed to be a lifetime student and constantly grow in my technical skills.
VR/AR/XR is awesome! This project has catapulted me into the world of mixed reality and I'm obsessed with learning more. Since we are so early in the VR development, there are no existing UI and interaction patterns and it's really exciting to be a part of the creation of these. There are so many ideas out there and we as early influencers in this world get to be hugely impactful in our decisions. I feel like a pioneer paving the way for the future and am excited to continue this journey in creating innovative software and experiences.