What does Oculus VR's technology stack consist of?

October 07, 2024

What does Oculus VR's technology stack consist of?

Please note that: I do not work for Oculus  and nor I am affiliated with Oculus and its  affiliated or parent companies responsible for the Oculus VR, intellectual property. This is just some insight thoughts and my knowledge as I read it on some web sites how the process typically works.

Every technology stack basically comes down to both software and hardware. First, there’s user hardware like the Oculus Rift, as you quoted specifically about Oculus VR , which is high-end pc-based VR device. For all those types of machines you need to use software to play VR on those devices say headsets.

The Oculus Rift sports 1080p Samsung OLED screens (960 x 1080 in each eye) with a 110 degree field of vision and is paired with an infrared camera for depth tracking, along with 40 infrared emitters within the headset. It can be joined together with a Leap Motion controller for an intense sense of immersion.

Hardware The Rift

In order to work, the Rift must be connected by a cable to a PC running Microsoft Windows that will run the software (it is not a standalone device). This computer should be equipped with a powerful GPU at least equivalent to a NVIDIA GeForce GTX 970 orAMD R9 290, and a CPU at least equivalent to Intel i5-4590.

The Rift uses an OLED panel for each eye, each having a resolution of 1080×1200. These panels have a refresh rate of 90 Hz and globally refresh, rather than scanning out in lines. They also use low persistence, meaning that they only display an image for 2 milliseconds of each frame. This combination of the high refresh rate, global refresh and low persistence means that the user experiences none of the motion blurring or judder that is experienced on a regular monitor. It uses high quality lenses to allow for a wide field of view.

The separation of the lenses is adjustable by a dial on the bottom of the device, in order to accommodate a wide range of interpupillary distances. The same pair of lenses are used for all users, however there are multiple facial interfaces so that the user's eyes can be positioned at a different distance. This also allows for users wearing glasses to use the Rift, as well as users with widely varying facial shapes.

Headphones are integrated, which provide real time 3D audio effect. This was developed from technology licensed from RealSpace 3D Audio, by Visisonics.

The Rift has full 6 degree of freedom rotational and positional tracking. This tracking is performed by Oculus's Constellation tracking system, and is precise, low-latency, and sub-millimeter accurate.

Constellation

Oculus's positional tracking system, used to track the position of the user's head as well as other VR devices, is called 'Constellation',

consisting of external infrared tracking sensors which optically track specially designed VR devices. The sensors come with a stand of a desk lamp form factor, but have standard screw holes and can be detached from this stand and mounted anywhere appropriate.

The Rift, or any other device being tracked by the system, is fitted with a series of precisely positioned infrared LEDs under or above the surface, set to blink in a specific pattern. By knowing the configuration of the LEDs on the objects and their pattern, the system can determine the precise position of the device with sub-millimeter accuracy and near-zero latency.

Constellation can be used with a single tracking sensor or with multiple sensors working together. One sensor is included with the Rift (without Touch), since in this scenario there are no tracked controllers that could occlude this sensor.

If the user also purchases the Touch controllers, another sensor is included in order to prevent the issue that the single sensor could be easily occluded by one or more of the Touch controllers, and hence block tracking of the other controller, the headset, or both.

In this configuration, the system is capable of tracking an entire room, known as "room scale" virtual reality.

Oculus allows third party peripheral manufacturers to create their own devices that are tracked by the system, providing an API for them to use.

Gamepad

Main article: Xbox One Controller

As a result of a partnership with Microsoft, every Rift sold will include an Xbox One Wireless Gamepad.

The purpose of this inclusion is that the majority of virtual reality games that have been in development over the past few years require a gamepad (and do not use motion controllers such as Oculus Touch), so this will allow all users to play those games without needing to purchase third party hardware.

Oculus Touch

Oculus is also releasing a pair of controllers to be used with the Rift, called Oculus Touch. The controllers are sold as a pair, and are mirrors of each other- one for each hand. They are lightweight, wireless, handheld motion controllers featuring a joystick, buttons, and two triggers- one for grabbing and one for shooting or firing. The controllers are fully tracked in 3D space by the Constellation system, so that the user sees them in virtual reality responding to their real world counterpart, giving the user the sensation of their hands being present in the virtual space.

Oculus Touch also features a system for detecting finger gestures made when holding the devices. This allows the user to perform actions like giving the thumbs up or pointing to objects or other users in virtual reality.

Oculus Touch will not be included with the Rift, and will instead be sold separately, releasing in the second half of 2016.

System requirements

Video Card NVIDIA GTX 970 / AMD R9 290 equivalent or greater
CPU Intel i5-4590 equivalent or greater
Memory 8GB+ RAM
Video Output Compatible HDMI 1.3 video output
USB Ports 3x USB 3.0 ports plus 1x USB 2.0 port
OS Windows 7 SP1 64 bit or newer
Software

Oculus Home

When the user puts on the Rift and no other content is being output to the headset, they are presented with Oculus Home. This is the default environment of the Rift, allowing the user to launch VR applications they own, see if their friends are using the Rift, and purchase virtual reality content on the Oculus Home store from the headset.

Oculus Home's store is curated to only allow applications that run smoothly on the recommended hardware, and experiences are given ratings for their comfort (such as causing motion sickness or jump scares), however developers do not have to useOculus Home to distribute content for the Rift, it is entirely optional.

Notably, Oculus Home allows users to buy an application while inside a VR environment preview of that application rather than a conventional store page.

Runtime/drivers

The Rift does not appear to the user's operating system as a monitor. Instead, custom Oculus drivers and a runtime service are used to allow applications to output directly to the Rift, bypassing the operating system and allowing for high refresh rates and low latency regardless of the user's setup.

The user must have this Oculus PC runtime and the drivers installed in order to use the Rift. The runtime service facilitates stereoscopic separation, lens optical distortion, and the advanced rendering and driver techniques needed to deliver a high quality VR experience.

SDK

Content for the Rift is developed using the Oculus PC SDK, a free proprietary SDK available for Microsoft Windows (OSX and Linux support is planned for the future).

This is a feature complete SDK which handles for the developer the various aspects of making virtual reality content, such as the optical distortion and advanced rendering techniques.

The Oculus SDK is directly integrated with the popular game engines Unity 5, Unreal Engine 4, and Cryengine. This allows for developers already familiar with these engines to create VR content with little to no VR-specific code.

The Rift is an open platform, and thus developers do not need any approval or verification to develop, distribute, or sell content for it, and do not have to pay any licensing fees. The SDK however cannot be modified or reused for other purposes or hardware without permission.

For both cinematic VR (realistic experiences) and gaming VR (interactive in-engine experiences) Oculus VR use the Unity or Unreal engines to create 3D environments. For certain applications you need to develop your own engines, especially if you want to push performances. Well note thats thats a hell lot of work! Developing such a engine is huge task plus it requires whole lot of different skill sets.

To make assets in 3D I use programs like Maya and Cinema4D, and import them into Unity for instance. Next to that we use anyting from Indesign to Photoshop to polish those assets.

For any tech startup let it be say oculus VR itself, right people equipped with up-to-date tech stack to off-load common tasks, and using them in a right combination, will give you better chance of success.

Right now facebook's acquisition of Oculus, the stack may have change and boost with latest technology + money power. For its own part, though, Facebook appears to be setting itself up for the long game when it comes to the Rift.

When Oculus VR was acquired by Facebook last March, Mark Zuckerburg was quoted as saying, "Strategically we want to start building the next major computing platform that will come after mobile There are not many things that are candidates to be the next major computing platform. [This acquisition is a] long-term bet on the future of computing."

Hope this answers helps you getting understanding about Oculus VR's technology stack. have a good day.