Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

3.
The Next Computing Platform
Billions invested
$14B to $120B market by 2020
A few million units have shipped
The industry is anticipating scaling
to billions within five years
Q: How do we reach a billion headsets?
A: Not one app at a time.

6.
How it Works
Render 3D scene in
WebGL - rendering standard
runs on all browsers
3B computers and devices!
Use new browser APIs to
track HMD pose
Experimental API - need
development version of
browsers
Browser API extensions for
6DOF input controllers

11.
Refreshing the VR Display
function onAnimationFrame (t) {
// request another animation frame for next time through
vrDisplay.requestAnimationFrame(onAnimationFrame);
// do the work: this is where the application
// gets the latest HMD position/orientation,
// updates the scene objects and animations,
// and renders using WebGL;
// ... code omitted ...
// finally, submit the frame
vrDisplay.submitFrame();
}
// start up the run loop
vrDisplay.requestAnimationFrame(onAnimationFrame);
copy the bits
from the canvas
set up
callback to
refresh
display (90hz!)

12.
Head Tracking
function onAnimationFrame (t) {
// request another animation frame for next time through
vrDisplay.requestAnimationFrame(onAnimationFrame);
// do the work: this is where the application
// gets the latest HMD position/orientation:
var pose = vrDisplay.getPose();
// now we update scene objects and animations,
// based on the pose value, time and other inputs;
// and render using WebGL;
// ... code omitted ...
// finally, submit the frame
vrDisplay.submitFrame(pose);
}
// start up the run loop
vrDisplay.requestAnimationFrame(onAnimationFrame);
get HMD
position/orientation