Check out the finished presentation here:

Consumer VR in 2020 by Elijah Tai on Scribd

The Oculus Quest was released by Facebook in May 2019 to little fanfare outside of the niche VR community. It was the first virtual reality headset offered by the company that offered full 6 degrees of freedom and a mobile form factor, wherein which the user did not need to be plugged into a high-powered gaming PC to use it.

Prior to the Oculus Quest, I have always been uncertain of the ways in which virtual reality would become a part of our daily lives outside of gaming. However, there were a couple of ways in which the Oculus Quest has been moving forward as a product that got me very excited by the opportunity in consumer VR.

I previously published a deck in March this year that provided a high level overview of how I understood the industry and interpreted the various moves that Facebook was making in the space. However, I feel that a blog post would be another way for me to hash out my ideas and share my thoughts on the space as someone who has been following the space closely since summer of 2019.

The deck I published in March covered the industry along six different axes:

  • Hardware
  • Audience
  • Web
  • Content
  • Marketplace
  • Developers

I'll start with the first three for now.

The web was important because the presence of a Web browser (first introduced in the Oculus Go, and then the Quest) in my opinion, is one of the earliest signals of an emerging platform being built on top of an operating system that could extend the platform beyond gaming.

The VR flywheel that drives value increase and through which value flows from node to node.

Hardware

Facebook acquired Oculus in March 2014 for US$2.3 B, two years after Oculus’ Kickstarter campaign, which raised over $2.4 M in 2012. Oculus shipped two developer kits as pre-production models, and the very first consumer-ready product, the Oculus Rift, was released on March 2016. Oculus dabbled in mobile VR in 2015 through its partnership with Samsung, which led to Gear VR. In May 2018, Oculus released a slightly underpowered version of the Oculus Quest, the Oculus Go. It was the first standalone VR device released by Oculus, with one controller for only one hand and 3 DOF, which limited immersion and movement.

2019 was the year manufacturers gave up on smartphone-based VR.  Samsung’s latest phones (Note10, Note10+) no longer support Gear VR. Google killed project Daydream in November 2019, a mobile VR experience delivered through its Pixel phones. Though Samsung and Google look like they’ve folded their hands, mobile VR wasn’t a complete failure; it was an important stepping stone towards the Oculus Quest. The no-PC-required Quest runs on the same core hardware as the Pixel 2. It will be the main hardware in focus in this doc. Aside from the job-to-be-done of the Oculus Quest primarily in gaming, applications such as BigscreenVR, Netflix, Amazon Video, Skybox, and YouTube enable more immersive forms of content consumption.

Much like the iPhone, you know that there has been noticeable growth in the market when a product begins to drive the manufacturing of third-party accessories.

Today, standalone, PC-free headsets with inside-out (beacon-less) tracking and 6 degrees of freedom have become the new industry benchmark thanks to the Oculus Quest. Many of the learnings from the failed experiment in mobile VR have carried over, and the priority today is in making the headsets lighter, more portable and drive better graphics. The overall macro direction in which semiconductors  are moving towards with better battery efficiency and performance brings the goalpost closer with time. I predict that the release of Apple Glasses will pull the entire industry into mainstream awareness, in the next 2-3 years.

Audience

I think that the Oculus Quest has pulled in a lot of previously non-believers into the community, from those who own a headset and are enjoying and sharing their experiences with others to those who are on the sidelines exploring their options. From analyzing Google search trends, it's clear that the Oculus Quest has seen significantly more search traffic than the previous headsets to have been released. The Reddit community is clearly very active and growing quickly, at roughly 7-10% month-over-month.

What's interesting also is that almost every single game that has a title out on the Oculus Store, or on a third-party marketplace such as SideQuest, has a Discord channel for developers to stay connected to their users and for users to congregate with one another. In these communities, players of the game can share with the developers bugs that need to be fixed, or suggest features that they would like to see.

Web

In addition to native VR experiences built using Unity or Unreal, the goal of WebXR is to make VR accessible to the Web.

WebXR is a Device API Specification written through the W3C which enables VR and AR devices to access immersive content on the Web. It defines standards for how to think about sessions, spaces, frame loops, poses, inputs, as well as instructions on handling sensitive information. As of December 10, 2019, Chrome 79 and Oculus Browser 7.0 and up have released support for WebXR. Combined with the device penetration in the consumer market of the Oculus Quest, we are excited by the future possibilities of the immersive Web that will be enabled through this API.

Developers who wish to build for WebXR have a few choices to choose from when it comes to web frameworks. A-Frame, initially started at Mozilla, is by far the most popular, with 10.9K stars on their main Github repo and used by 2.6K packages. Babylon.js, which is maintained by Microsoft, is a close second, with 10.6K stars on their main Github repo and used by 1.5K packages. From our experience working with A-Frame, we have found it to be a simpler and more accessible option for beginners who wish to release something quickly for WebXR-compatible browsers. The alternative to building for WebXR is to use a library such as three.js, which has direct bindings to the WebGL API. Three.js requires the developer to write more verbose code, but provides finer control over different aspects of the graphics.