WebVR: A look at hubs by Mozilla

The browser-independent virtual meeting platform

Introduction

What is WebVR? I like to think of it as a push for a Z-axis to become optional or even conventional for browsing the web. For those unfamiliar with what a Z axis is, think of it like a way to move into a website as if you are traveling through it. If 99% of websites on the web today only allow the user to navigate with the X (left and right) and Y (up and down) axis, then the addition of a Z (forward and back) axis may come as a surprise- especially when using the WASD keys to move through the scene. Since WebVR experiences utilize a camera inside of the scene, if the rotation of the camera is modified, then perception of travel along the axes will be modified as well. For example, Y becomes Z from the user’s perspective if the camera is rotated 90 degrees on the Y axis.

Over the past few months I’ve been experimenting with A-Frame, a language for programming WebVR experiences using HTML and JavaScript. Currently I’m in the process of learning how multi-user experiences work which is why I was surprised when Mozilla Hubs (https://hubs.mozilla.com) was released. It is a shared virtual experience between anyone who can access it via a web browser.

Currently the software is pretty bare-bones and limited in terms of features. That being said, the technology is powerful and viable, and it’s future looks bright based on Mozilla’s ventures in the WebVR space. (e.g. WebVR API, WebGL, Firefox Reality and A-Frame)

What is Mozilla Hubs?

To use Mozilla’s words —

Hubs is an immersive social experience that is delivered through the browser. You simply click on a web link to begin interacting with others inside virtual reality.

Hubs allows for a shared experience within a WebVR site between anyone who has a unique randomly-generated web link. Hubs is both accessible and browser-independent- allowing someone to enter a virtual meeting from practically any device with access to the web. I think that, if fleshed out, Hubs could provide the perfect, controlled collaboration platform for WebVR as a place that provides accessibility and collaborative tools for remote teams- enhancing productivity and communication.

How do I get started?

The UX of Hubs shows a trend seen in launching browser-independent collaboration sessions- for example, starting a new JoinMe session or Glitch website. This is a very quick process that has as little friction as possible and focuses only on the most essential elements towards getting the user started. The system provides the users with a flow of all of the necessary steps required to launch a new session, or join an existing one, and start chatting with attendees.

One-click launch of your virtual environment- name it something unique or go with the flow.

Submit a URL/session ID for the site - Users are also provided with the freedom to add their own unique name for their session, or they may use an automatically-generated one for ease of access. This link should be shared with everyone else who will enter the environment. Select how you would like to enter the session e.g. with a mobile device or a desktop browser. Grant Mic permissions — this allows the browser to record the user’s voice so that others in the session can hear them. Test your audio- This allows the user to make sure the correct mic is enabled and that it is working as expected before entering the environment. Select your avatar and select a name- This screen allows the user to select a uniquely colored avatar. Currently the offerings for avatars are uniform (see image below). Your avatar identity seems to be cached between sessions which allows you to easily recall the avatar upon joining a new hub (from the same browser). Enter the WebVR environment and join your team.

These six steps prepare the user with their own identity/avatar in VR along with microphone access. They essentially have everything they need to get started in Hubs.

Build an identity with your own name and avatar

I handed off Hubs to a friend and ran a quick usability test just to see how far they could get. Not to my surprise, they made it through the process quickly and showed up with me in the virtual session. They chose not to grant mic access since they did not trust the browser.

Where is this technology going next?

The infrastructure for Hubs is in place and the usability is there, so what’s next- where will this technology ultimately go? Right now Hubs might seem like nothing more than a multiplayer game on a browser. Without using an HMD (or another form of immersive technology) combined with the phenomenon of presence- isn’t this experience all too similar to a first-person multiplayer game to distinguish it as virtual reality? At the moment, yes.

Rubber Ducky wars

An initial observation I have is the lack of stereoscopic support for entering VR Mode on my iPhone 8 device. Typically in an A-Frame scene, a user can change their display by pressing a button on the bottom-right of the screen that allows the screen to switch to a stereoscopic view for looking at the scene through a VR headset.

Since Hubs is browser-independent, it would hypothetically allow users to enter the virtual environments using a less-expensive headset like GearVR, VROne or even Cardboard by using their cellphone as a display rather than the more expensive OLED computer-powered counterparts like Vive or Oculus.