SlideShare une entreprise Scribd logo
1  sur  49
Aaron Davies, Head of Developer Relations
Mobile 
Accessibility | Portability 
PC 
High Fidelity | Presence
Free store 
launches first — 
commerce to follow
GETTING HIGH 
RES IMAGES
LET’S TALK ABOUT VR TECH
Tracker CPU GPU Display Photons Optics 
Input 
USB 
Game 
Engine 
New 
Image 
Pixel 
Switching 
Write 
Display
TRACKING 
6DOF, 360 tracking 
sub-mm accuracy, no jitter noise 
comfortable tracking volume
LATENCY 
< 20ms motion to last photon 
fuse optical tracking and IMU 
minimize loop: tracker->CPU->GPU->display->photons
PERSISTENCE 
Currently less than 3ms 
turn on/off quickly to avoid retinal blur 
90hz+ refresh rate to avoid visible flicker
RESOLUTION 
correct stereo 
at least 1K x 1K 
no visible pixel structure
OPTICS 
wide FOV: greater than 90 degrees 
comfortable eyebox 
high quality calibration and correction
SDK 
What’s in the box? 
?
DIRECT MODE 
RENDERING 
Headset not seen by the OS 
Avoid jumping windows and icons 
Decouples Rift v-sync from OS compositor 
Avoids extra GPU buffering for minimum latency 
Use ovrHmd_AttachToWindow 
Window swap chain output is directed to the Rift 
Supports display mirroring
LATENCY TESTING 
• Goal is < 20 ms, and hopefully close to 5 ms 
• DK1 External tester 
• Not very practical 
• Up to developer to test / update
LATENCY TESTING 
• Goal is < 20 ms, and hopefully close to 5 ms 
• DK2 Dynamic Latency Calculation 
• SDK :: Hardware coupling
PIXEL LUMINANCE 
OVERDRIVE 
• Artifact called “2-frame-rise-delay” 
• Display fails to hit requested luminance 
levels fast enough 
• Accounting for this in 0.4 SDK
Pixel driving voltage 
Pixel transmission 
Over Driving 
Transmission after 
one frame period 
1 frame Time 
Pixel driving voltage 
Pixel transmission 
Normal Driving 
Transmission after 
one frame period 
1 frame Time
FOV 
• SDK provides recommended FOVs 
• FOV port: Left, Right, Top, Bottom tangent angles 
• Helpers to convert FOV Port to projection matrix 
• Please: Do not cook up your own projection matrix that 
“looks good enough” using your own magic constants. 
• We have seen games with divergent stereo-parallax. 
BAD! 
Symmetric Projection 
Asymmetric Projection
TIME-WARP 
• Re-projects rendering for a later point in time 
• Done simultaneously with distortion 
• Reduces perceived latency 
• Accounts for DK2 rolling shutter 
• 0.4 SDK only handles orientation, positional possible
TIME-WARP AGAIN (ASYNC) 
• Time warp in a separate thread 
• Best hope for reducing Judder 
• Fill in the frames based on old rendering 
• Implemented on Android for Gear VR 
• Works well for smoothing head tracking on 30 fps game 
• Requires: 
• GPU Priorities 
• GPU Preemption
SDK RENDERING 0.4 
• Barrel distortion with chromatic aberration & time warp 
• Internal latency testing & dynamic prediction 
• Low-latency v-sync and flip (even better with direct-to-rift) 
• Pixel Luminance Overdrive 
• Health & Safety Warning 
• If your engine cannot use SDK rendering, then *please* let us know why not!
DESIGNING FOR VR 
How is this black box different? 
? 
? 
? 
?
COMFORT IS KEY 
• Motion is not easy to get right 
• Acceleration causes disconnect 
• Sensory hints help a lot 
• Understand how to “ground” your player
COMFORT IS KEY 
• FPSs are difficult 
• Explore genres : so much to learn 
• 3rd person perspectives can be very compelling 
• Platformers can work really well
UI IS A CHALLENGE
REALITY != PRESENCE 
• Presence doesn’t take photo-realism 
• Presence doesn’t mean first person gameplay 
• Presence can be achieved in the simplest of 
worlds
THREE FOR THE WIN
ONE
TWO
THREE
THREE FOR THE TEXTBOOK
ONE
ONE
TWO
TWO
THREE
THREE
ROOM FOR INNOVATION 
• So much to explore… 
• So much to learn… 
• Build teams 
• Engage with us 
• Rely on us
Thank You!

Contenu connexe

Tendances

Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Jean-Philippe Doiron
 
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...VideoConferenceGear.com
 
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...VideoConferenceGear.com
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...
Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...
Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...VideoConferenceGear.com
 
Kinect for Windows Quickstart Series
Kinect for Windows Quickstart SeriesKinect for Windows Quickstart Series
Kinect for Windows Quickstart SeriesRoberto Reto
 
SAE AR/VR - The challenges of creating a VR application with Unity
SAE AR/VR - The challenges of creating a VR application with UnitySAE AR/VR - The challenges of creating a VR application with Unity
SAE AR/VR - The challenges of creating a VR application with UnitySebastien Kuntz
 
Basic photography intro
Basic photography introBasic photography intro
Basic photography introjduchesne
 
VR - Creating the ultimate reality
VR - Creating the ultimate realityVR - Creating the ultimate reality
VR - Creating the ultimate realitySebastien Kuntz
 
Photographic Film and Slide Scanning Alternatives
Photographic Film and Slide Scanning AlternativesPhotographic Film and Slide Scanning Alternatives
Photographic Film and Slide Scanning Alternativesmdruziak
 
Infinity Blade and beyond
Infinity Blade and beyondInfinity Blade and beyond
Infinity Blade and beyondozlael ozlael
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...VideoConferenceGear.com
 
Kit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle Rooms
Kit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle RoomsKit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle Rooms
Kit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle RoomsVideoConferenceGear.com
 
Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...
Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...
Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...VideoConferenceGear.com
 
In-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and More
In-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and MoreIn-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and More
In-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and MoreRichard Harrington
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...VideoConferenceGear.com
 
Nokia N8 Imaging & Video Tips
Nokia N8 Imaging & Video TipsNokia N8 Imaging & Video Tips
Nokia N8 Imaging & Video TipsJames Whatley
 

Tendances (20)

Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill)
 
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
 
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
Zoom Rooms Kit from Video Conference Gear featuring the Logitech Rally Camera...
 
E ball ppt1
E ball ppt1E ball ppt1
E ball ppt1
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...
Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...
Zoom Rooms Kit from Video Conference Gear featuring the Poly Studio Video Sou...
 
Kinect for Windows Quickstart Series
Kinect for Windows Quickstart SeriesKinect for Windows Quickstart Series
Kinect for Windows Quickstart Series
 
SAE AR/VR - The challenges of creating a VR application with Unity
SAE AR/VR - The challenges of creating a VR application with UnitySAE AR/VR - The challenges of creating a VR application with Unity
SAE AR/VR - The challenges of creating a VR application with Unity
 
Basic photography intro
Basic photography introBasic photography intro
Basic photography intro
 
VR - Creating the ultimate reality
VR - Creating the ultimate realityVR - Creating the ultimate reality
VR - Creating the ultimate reality
 
LCD Hd TVs
LCD Hd TVs
LCD Hd TVs
LCD Hd TVs
 
Photographic Film and Slide Scanning Alternatives
Photographic Film and Slide Scanning AlternativesPhotographic Film and Slide Scanning Alternatives
Photographic Film and Slide Scanning Alternatives
 
Cameras & lenses
Cameras & lensesCameras & lenses
Cameras & lenses
 
Infinity Blade and beyond
Infinity Blade and beyondInfinity Blade and beyond
Infinity Blade and beyond
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
 
Kit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle Rooms
Kit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle RoomsKit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle Rooms
Kit of the Day feature the Zoom Rooms Poly Studio Solution for Huddle Rooms
 
Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...
Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...
Zoom Rooms Kit from Video Conference Gear featuring the AVer CAM540 and Phoen...
 
In-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and More
In-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and MoreIn-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and More
In-Depth: 
4K Mirrorless Cameras: Sony A7 Series, Panasonic GH4, and More
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
 
E ballseminar
E ballseminarE ballseminar
E ballseminar
 
Nokia N8 Imaging & Video Tips
Nokia N8 Imaging & Video TipsNokia N8 Imaging & Video Tips
Nokia N8 Imaging & Video Tips
 

Similaire à Oculus insight building the best vr aaron davies

Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex Vlachos
 
Making VR with Unreal Engine Luis Cataldi
Making VR with Unreal Engine  Luis CataldiMaking VR with Unreal Engine  Luis Cataldi
Making VR with Unreal Engine Luis CataldiUnreal Engine
 
Introduction to 360 Video
Introduction to  360 VideoIntroduction to  360 Video
Introduction to 360 VideoSeung-Bum Lee
 
De Re PlayStation Vita
De Re PlayStation VitaDe Re PlayStation Vita
De Re PlayStation VitaSlide_N
 
Hosting AAA Multiplayer Experiences with Multiplay
Hosting AAA Multiplayer Experiences with MultiplayHosting AAA Multiplayer Experiences with Multiplay
Hosting AAA Multiplayer Experiences with MultiplayUnity Technologies
 
How we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters AdventureHow we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters AdventureFelipe Lira
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Tiago Sousa
 
@Bristol Data Dome workshop - NSC Creative
@Bristol Data Dome workshop - NSC Creative@Bristol Data Dome workshop - NSC Creative
@Bristol Data Dome workshop - NSC CreativeSouth West Data Meetup
 
Write retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with AzureWrite retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with AzureMarco Parenzan
 
Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015Shanee Nishry
 
Build Your Own VR Display Course - SIGGRAPH 2017: Part 1
Build Your Own VR Display Course - SIGGRAPH 2017: Part 1Build Your Own VR Display Course - SIGGRAPH 2017: Part 1
Build Your Own VR Display Course - SIGGRAPH 2017: Part 1StanfordComputationalImaging
 
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...Unity Technologies
 
Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016
Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016
Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016Codemotion
 
Distributed high-quality image manipulation and review in a virtual collabora...
Distributed high-quality image manipulation and review in a virtual collabora...Distributed high-quality image manipulation and review in a virtual collabora...
Distributed high-quality image manipulation and review in a virtual collabora...ETCenter
 
BSidesDelhi 2018: Headshot - Game Hacking on macOS
BSidesDelhi 2018: Headshot - Game Hacking on macOSBSidesDelhi 2018: Headshot - Game Hacking on macOS
BSidesDelhi 2018: Headshot - Game Hacking on macOSBSides Delhi
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis Cataldi
 
Developing Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedDeveloping Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedMartin Climatiano
 
Fifteen O7 Media Equipment Q3 2014
Fifteen O7 Media Equipment Q3 2014Fifteen O7 Media Equipment Q3 2014
Fifteen O7 Media Equipment Q3 2014FifteenOSevenMedia
 

Similaire à Oculus insight building the best vr aaron davies (20)

Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
 
Making VR with Unreal Engine Luis Cataldi
Making VR with Unreal Engine  Luis CataldiMaking VR with Unreal Engine  Luis Cataldi
Making VR with Unreal Engine Luis Cataldi
 
A funtro to real-time ray-tracing
A funtro to real-time ray-tracingA funtro to real-time ray-tracing
A funtro to real-time ray-tracing
 
Introduction to 360 Video
Introduction to  360 VideoIntroduction to  360 Video
Introduction to 360 Video
 
De Re PlayStation Vita
De Re PlayStation VitaDe Re PlayStation Vita
De Re PlayStation Vita
 
Hosting AAA Multiplayer Experiences with Multiplay
Hosting AAA Multiplayer Experiences with MultiplayHosting AAA Multiplayer Experiences with Multiplay
Hosting AAA Multiplayer Experiences with Multiplay
 
How we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters AdventureHow we optimized our Game - Jake & Tess' Finding Monsters Adventure
How we optimized our Game - Jake & Tess' Finding Monsters Adventure
 
Hacking for salone: drone races
Hacking for salone: drone racesHacking for salone: drone races
Hacking for salone: drone races
 
Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)Crysis Next-Gen Effects (GDC 2008)
Crysis Next-Gen Effects (GDC 2008)
 
@Bristol Data Dome workshop - NSC Creative
@Bristol Data Dome workshop - NSC Creative@Bristol Data Dome workshop - NSC Creative
@Bristol Data Dome workshop - NSC Creative
 
Write retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with AzureWrite retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with Azure
 
Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015Make believe - Droidcon UK 2015
Make believe - Droidcon UK 2015
 
Build Your Own VR Display Course - SIGGRAPH 2017: Part 1
Build Your Own VR Display Course - SIGGRAPH 2017: Part 1Build Your Own VR Display Course - SIGGRAPH 2017: Part 1
Build Your Own VR Display Course - SIGGRAPH 2017: Part 1
 
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
Unite Berlin 2018 - Book of the Dead Optimizing Performance for High End Cons...
 
Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016
Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016
Hacking for Salone: Drone Races - Di Saverio; Lippolis - Codemotion Milan 2016
 
Distributed high-quality image manipulation and review in a virtual collabora...
Distributed high-quality image manipulation and review in a virtual collabora...Distributed high-quality image manipulation and review in a virtual collabora...
Distributed high-quality image manipulation and review in a virtual collabora...
 
BSidesDelhi 2018: Headshot - Game Hacking on macOS
BSidesDelhi 2018: Headshot - Game Hacking on macOSBSidesDelhi 2018: Headshot - Game Hacking on macOS
BSidesDelhi 2018: Headshot - Game Hacking on macOS
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2
 
Developing Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedDeveloping Games For VR - Lessons Learned
Developing Games For VR - Lessons Learned
 
Fifteen O7 Media Equipment Q3 2014
Fifteen O7 Media Equipment Q3 2014Fifteen O7 Media Equipment Q3 2014
Fifteen O7 Media Equipment Q3 2014
 

Plus de Mary Chan

Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...
Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...
Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...Mary Chan
 
Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...
Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...
Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...Mary Chan
 
Benoit fouletier guillaume martin unity day- modern 2 d techniques-gce2014
Benoit fouletier guillaume martin   unity day- modern 2 d techniques-gce2014Benoit fouletier guillaume martin   unity day- modern 2 d techniques-gce2014
Benoit fouletier guillaume martin unity day- modern 2 d techniques-gce2014Mary Chan
 
Amigues marie aaa_loc-gce2014
Amigues marie aaa_loc-gce2014Amigues marie aaa_loc-gce2014
Amigues marie aaa_loc-gce2014Mary Chan
 
Amigues Marie-Laurence - Localizing on a shoestring GCE2014
Amigues Marie-Laurence - Localizing on a shoestring GCE2014Amigues Marie-Laurence - Localizing on a shoestring GCE2014
Amigues Marie-Laurence - Localizing on a shoestring GCE2014Mary Chan
 
Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...
Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...
Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...Mary Chan
 
Etienne Belmar Affiliate fraud in Browser and Mobile gce2014
Etienne Belmar Affiliate fraud in Browser and Mobile gce2014Etienne Belmar Affiliate fraud in Browser and Mobile gce2014
Etienne Belmar Affiliate fraud in Browser and Mobile gce2014Mary Chan
 
Moving to virtual reality chet faliszek
Moving to virtual reality    chet faliszekMoving to virtual reality    chet faliszek
Moving to virtual reality chet faliszekMary Chan
 
Engage and keep your community alive best practises and keys to success - s...
Engage and keep your community alive   best practises and keys to success - s...Engage and keep your community alive   best practises and keys to success - s...
Engage and keep your community alive best practises and keys to success - s...Mary Chan
 
Go big or go home jillian mood
Go big or go home   jillian moodGo big or go home   jillian mood
Go big or go home jillian moodMary Chan
 
The toolbox approach to f2 p design nicholas lovell
The toolbox approach to f2 p design   nicholas lovellThe toolbox approach to f2 p design   nicholas lovell
The toolbox approach to f2 p design nicholas lovellMary Chan
 
Session rahim attaba - wargaming europe sas
Session   rahim attaba - wargaming europe sasSession   rahim attaba - wargaming europe sas
Session rahim attaba - wargaming europe sasMary Chan
 
Connect to the consumer john clark
Connect to the consumer   john clarkConnect to the consumer   john clark
Connect to the consumer john clarkMary Chan
 
Organizational structure how to build an effective free to-play studio- andre...
Organizational structure how to build an effective free to-play studio- andre...Organizational structure how to build an effective free to-play studio- andre...
Organizational structure how to build an effective free to-play studio- andre...Mary Chan
 
What interior design teaches us about environment art dan cox
What interior design teaches us about environment art   dan coxWhat interior design teaches us about environment art   dan cox
What interior design teaches us about environment art dan coxMary Chan
 
Staying competitive when your brand new thing becomes the same old thing s...
Staying competitive when your brand new thing becomes the same old thing   s...Staying competitive when your brand new thing becomes the same old thing   s...
Staying competitive when your brand new thing becomes the same old thing s...Mary Chan
 
Lessons from the community building an open development dna jeff spock
Lessons from the community building an open development dna   jeff spockLessons from the community building an open development dna   jeff spock
Lessons from the community building an open development dna jeff spockMary Chan
 
Only in battlefield” how user generated video took center stage in the battle...
Only in battlefield” how user generated video took center stage in the battle...Only in battlefield” how user generated video took center stage in the battle...
Only in battlefield” how user generated video took center stage in the battle...Mary Chan
 
Playing with chance good luck marc pestka
Playing with chance good luck   marc pestkaPlaying with chance good luck   marc pestka
Playing with chance good luck marc pestkaMary Chan
 
Mixing for games levels and more... jocelyn daoust
Mixing for games levels and more...   jocelyn daoustMixing for games levels and more...   jocelyn daoust
Mixing for games levels and more... jocelyn daoustMary Chan
 

Plus de Mary Chan (20)

Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...
Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...
Session - Debugging memory stomps and other atrocities - Stefan Reinalter - T...
 
Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...
Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...
Jb ferder mc-10 steps to enhance the quality of your character art in zbrush-...
 
Benoit fouletier guillaume martin unity day- modern 2 d techniques-gce2014
Benoit fouletier guillaume martin   unity day- modern 2 d techniques-gce2014Benoit fouletier guillaume martin   unity day- modern 2 d techniques-gce2014
Benoit fouletier guillaume martin unity day- modern 2 d techniques-gce2014
 
Amigues marie aaa_loc-gce2014
Amigues marie aaa_loc-gce2014Amigues marie aaa_loc-gce2014
Amigues marie aaa_loc-gce2014
 
Amigues Marie-Laurence - Localizing on a shoestring GCE2014
Amigues Marie-Laurence - Localizing on a shoestring GCE2014Amigues Marie-Laurence - Localizing on a shoestring GCE2014
Amigues Marie-Laurence - Localizing on a shoestring GCE2014
 
Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...
Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...
Eugene Youn Let’s Go Whale Hunting: Discover the TRUE Value of your Players -...
 
Etienne Belmar Affiliate fraud in Browser and Mobile gce2014
Etienne Belmar Affiliate fraud in Browser and Mobile gce2014Etienne Belmar Affiliate fraud in Browser and Mobile gce2014
Etienne Belmar Affiliate fraud in Browser and Mobile gce2014
 
Moving to virtual reality chet faliszek
Moving to virtual reality    chet faliszekMoving to virtual reality    chet faliszek
Moving to virtual reality chet faliszek
 
Engage and keep your community alive best practises and keys to success - s...
Engage and keep your community alive   best practises and keys to success - s...Engage and keep your community alive   best practises and keys to success - s...
Engage and keep your community alive best practises and keys to success - s...
 
Go big or go home jillian mood
Go big or go home   jillian moodGo big or go home   jillian mood
Go big or go home jillian mood
 
The toolbox approach to f2 p design nicholas lovell
The toolbox approach to f2 p design   nicholas lovellThe toolbox approach to f2 p design   nicholas lovell
The toolbox approach to f2 p design nicholas lovell
 
Session rahim attaba - wargaming europe sas
Session   rahim attaba - wargaming europe sasSession   rahim attaba - wargaming europe sas
Session rahim attaba - wargaming europe sas
 
Connect to the consumer john clark
Connect to the consumer   john clarkConnect to the consumer   john clark
Connect to the consumer john clark
 
Organizational structure how to build an effective free to-play studio- andre...
Organizational structure how to build an effective free to-play studio- andre...Organizational structure how to build an effective free to-play studio- andre...
Organizational structure how to build an effective free to-play studio- andre...
 
What interior design teaches us about environment art dan cox
What interior design teaches us about environment art   dan coxWhat interior design teaches us about environment art   dan cox
What interior design teaches us about environment art dan cox
 
Staying competitive when your brand new thing becomes the same old thing s...
Staying competitive when your brand new thing becomes the same old thing   s...Staying competitive when your brand new thing becomes the same old thing   s...
Staying competitive when your brand new thing becomes the same old thing s...
 
Lessons from the community building an open development dna jeff spock
Lessons from the community building an open development dna   jeff spockLessons from the community building an open development dna   jeff spock
Lessons from the community building an open development dna jeff spock
 
Only in battlefield” how user generated video took center stage in the battle...
Only in battlefield” how user generated video took center stage in the battle...Only in battlefield” how user generated video took center stage in the battle...
Only in battlefield” how user generated video took center stage in the battle...
 
Playing with chance good luck marc pestka
Playing with chance good luck   marc pestkaPlaying with chance good luck   marc pestka
Playing with chance good luck marc pestka
 
Mixing for games levels and more... jocelyn daoust
Mixing for games levels and more...   jocelyn daoustMixing for games levels and more...   jocelyn daoust
Mixing for games levels and more... jocelyn daoust
 

Dernier

Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear RegressionRavindra Nath Shukla
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Centuryrwgiffor
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageMatteo Carbone
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesDipal Arora
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLSeo
 
Organizational Transformation Lead with Culture
Organizational Transformation Lead with CultureOrganizational Transformation Lead with Culture
Organizational Transformation Lead with CultureSeta Wicaksana
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMRavindra Nath Shukla
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756dollysharma2066
 
Pharma Works Profile of Karan Communications
Pharma Works Profile of Karan CommunicationsPharma Works Profile of Karan Communications
Pharma Works Profile of Karan Communicationskarancommunications
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyEthan lee
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒anilsa9823
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfAdmir Softic
 
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxB.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxpriyanshujha201
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdfRenandantas16
 

Dernier (20)

Regression analysis: Simple Linear Regression Multiple Linear Regression
Regression analysis:  Simple Linear Regression Multiple Linear RegressionRegression analysis:  Simple Linear Regression Multiple Linear Regression
Regression analysis: Simple Linear Regression Multiple Linear Regression
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 
Insurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usageInsurers' journeys to build a mastery in the IoT usage
Insurers' journeys to build a mastery in the IoT usage
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
Organizational Transformation Lead with Culture
Organizational Transformation Lead with CultureOrganizational Transformation Lead with Culture
Organizational Transformation Lead with Culture
 
Monte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSMMonte Carlo simulation : Simulation using MCSM
Monte Carlo simulation : Simulation using MCSM
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Pharma Works Profile of Karan Communications
Pharma Works Profile of Karan CommunicationsPharma Works Profile of Karan Communications
Pharma Works Profile of Karan Communications
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case studyThe Coffee Bean & Tea Leaf(CBTL), Business strategy case study
The Coffee Bean & Tea Leaf(CBTL), Business strategy case study
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒VIP Call Girls In Saharaganj ( Lucknow  ) 🔝 8923113531 🔝  Cash Payment (COD) 👒
VIP Call Girls In Saharaganj ( Lucknow ) 🔝 8923113531 🔝 Cash Payment (COD) 👒
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptxB.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
B.COM Unit – 4 ( CORPORATE SOCIAL RESPONSIBILITY ( CSR ).pptx
 
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf0183760ssssssssssssssssssssssssssss00101011 (27).pdf
0183760ssssssssssssssssssssssssssss00101011 (27).pdf
 

Oculus insight building the best vr aaron davies

  • 1. Aaron Davies, Head of Developer Relations
  • 2.
  • 3.
  • 4. Mobile Accessibility | Portability PC High Fidelity | Presence
  • 5.
  • 6.
  • 7.
  • 8. Free store launches first — commerce to follow
  • 10.
  • 12. Tracker CPU GPU Display Photons Optics Input USB Game Engine New Image Pixel Switching Write Display
  • 13. TRACKING 6DOF, 360 tracking sub-mm accuracy, no jitter noise comfortable tracking volume
  • 14. LATENCY < 20ms motion to last photon fuse optical tracking and IMU minimize loop: tracker->CPU->GPU->display->photons
  • 15. PERSISTENCE Currently less than 3ms turn on/off quickly to avoid retinal blur 90hz+ refresh rate to avoid visible flicker
  • 16. RESOLUTION correct stereo at least 1K x 1K no visible pixel structure
  • 17. OPTICS wide FOV: greater than 90 degrees comfortable eyebox high quality calibration and correction
  • 18.
  • 19.
  • 20.
  • 21. SDK What’s in the box? ?
  • 22. DIRECT MODE RENDERING Headset not seen by the OS Avoid jumping windows and icons Decouples Rift v-sync from OS compositor Avoids extra GPU buffering for minimum latency Use ovrHmd_AttachToWindow Window swap chain output is directed to the Rift Supports display mirroring
  • 23. LATENCY TESTING • Goal is < 20 ms, and hopefully close to 5 ms • DK1 External tester • Not very practical • Up to developer to test / update
  • 24. LATENCY TESTING • Goal is < 20 ms, and hopefully close to 5 ms • DK2 Dynamic Latency Calculation • SDK :: Hardware coupling
  • 25. PIXEL LUMINANCE OVERDRIVE • Artifact called “2-frame-rise-delay” • Display fails to hit requested luminance levels fast enough • Accounting for this in 0.4 SDK
  • 26. Pixel driving voltage Pixel transmission Over Driving Transmission after one frame period 1 frame Time Pixel driving voltage Pixel transmission Normal Driving Transmission after one frame period 1 frame Time
  • 27. FOV • SDK provides recommended FOVs • FOV port: Left, Right, Top, Bottom tangent angles • Helpers to convert FOV Port to projection matrix • Please: Do not cook up your own projection matrix that “looks good enough” using your own magic constants. • We have seen games with divergent stereo-parallax. BAD! Symmetric Projection Asymmetric Projection
  • 28. TIME-WARP • Re-projects rendering for a later point in time • Done simultaneously with distortion • Reduces perceived latency • Accounts for DK2 rolling shutter • 0.4 SDK only handles orientation, positional possible
  • 29. TIME-WARP AGAIN (ASYNC) • Time warp in a separate thread • Best hope for reducing Judder • Fill in the frames based on old rendering • Implemented on Android for Gear VR • Works well for smoothing head tracking on 30 fps game • Requires: • GPU Priorities • GPU Preemption
  • 30. SDK RENDERING 0.4 • Barrel distortion with chromatic aberration & time warp • Internal latency testing & dynamic prediction • Low-latency v-sync and flip (even better with direct-to-rift) • Pixel Luminance Overdrive • Health & Safety Warning • If your engine cannot use SDK rendering, then *please* let us know why not!
  • 31.
  • 32. DESIGNING FOR VR How is this black box different? ? ? ? ?
  • 33. COMFORT IS KEY • Motion is not easy to get right • Acceleration causes disconnect • Sensory hints help a lot • Understand how to “ground” your player
  • 34. COMFORT IS KEY • FPSs are difficult • Explore genres : so much to learn • 3rd person perspectives can be very compelling • Platformers can work really well
  • 35. UI IS A CHALLENGE
  • 36. REALITY != PRESENCE • Presence doesn’t take photo-realism • Presence doesn’t mean first person gameplay • Presence can be achieved in the simplest of worlds
  • 38. ONE
  • 39. TWO
  • 40. THREE
  • 41. THREE FOR THE TEXTBOOK
  • 42. ONE
  • 43. ONE
  • 44. TWO
  • 45. TWO
  • 46. THREE
  • 47. THREE
  • 48. ROOM FOR INNOVATION • So much to explore… • So much to learn… • Build teams • Engage with us • Rely on us

Notes de l'éditeur

  1. We’re on a mission to… Over the next decade, we want to connect a billion people through VR.
  2. We’re on a mission to… Over the next decade, we want to connect a billion people through VR.
  3. Aligned with that vision, we see two categories of VR - PC & Mobile. Each has unique advantages and challenges Today on PC, we’re able to deliver comfort, high fidelity and presence - the magic of VR. Using features like pos tracking, high frame rates, and powerful GPUs, you can build VR experiences unlike anything the world has ever seen. Again, this is just the beginning. Custom hardware will lead to incredible new breakthroughs. With Mobile, the magic is accessibility, ease of use and portability. Being untethered and not having the cable pulling at your head is very freeing and definitely a big part of the future. What Carmack and the team have accomplished on today’s mobile hardware is nothing short of incredible. Long term, we see the two categories continuing to compliment and overlap, especially as mobile rapidly improves. When we launched Oculus, our early prototypes were far from consumer ready. But we’ve made a tremendous amount of progress.
  4. DK2 - pos tracking, low persistence, and a high resolution display. There are all fundamental in the pursuit of presence. However, DK2 only provides hints of presence — it’s still very difficult for devs to create and sustain a powerful illusion of truly being teleported someplace else. Then just a few weeks ago… officially announced Gear VR Innovator Edition - begin as experiment and is now giving the world a glimpse at the future of mobile VR. And all of this started with the original Rift DK1 tech that the community Kickstarted.
  5. Over the past two years, we’ve been focused on helping developers connect with other developers. And that initiative started with Oculus Developer Center and Oculus Share.
  6. Share has grown immensely since we launched it in August of last year.
  7. Looking forward, we want to extend Share’s core feature set to build new tools and systems that developers can leverage to engage with a broader audience of users. These include services like identity, authentication, entitlement, distribution, and perhaps most important, monetization. The foundations of the Oculus platform will power Gear VR this fall, and these tools and services will be coming to PC in the future. And where other platforms are solely focused on content delivery, we see it as much more. We’re constantly thinking about the experience users have within the Oculus platform.
  8. When you turn on Gear VR, you drop into an experience we call Oculus Home. Some of you may have tried it on the Gear VR in our booth at PGW. Home is designed to let users interact with the Oculus platform in a variety of ways from within VR. Our team has focused on making Home as comfortable and intuitive as possible, so that anyone can dive in and get started exploring the ecosystem. Right now, the primary function of Home is content discovery and acquisition within a seamless VR experience, but you’ll see Home grow and evolve in the coming months. Gear VR, for example, will launch with dozens of experiences available from within Home, many of which were built by developers who are here today.
  9. I also want to emphasize that these systems and services aren’t limited to virtual reality. As part of Gear VR’s launch, we’ll be shipping a native, mobile app where users can access the platform from their Note 4/phone. We also have plans to let users discover content through a web portal, similar to Share.
  10. [motion->tracker->CPU->GPU->display->photons->optics->eye] This is the path of virtual vision. In our experience, there are five essential ingredients to getting this right.
  11. < 20ms motion to last photon fuse optical tracking and IMU to predict last 20ms minimize loop: tracker->CPU->GPU->display->photons
  12. correct stereo rendering at least 1K x 1K per eye no visible pixel structure
  13. wide FOV: greater than 90 degrees comfortable eyebox high quality calibration and correction
  14. You put these 5 together and the hardware is capable of delivering presence, even though a huge amount is still left up to the content. We think we’re very close to delivering the full system. Today, I’m excited to show you the progress in the form of a new feature prototype…
  15. Fixation is any case where your eyes are looking at a fixed object but the head is moving. Because we’re humans balancing our heads on a tall, unstable bipedal platform, this happens almost all the time, so this system needs to be really good, or we wouldn’t be able to see anything clearly. It’s so good you can read a stationary book while aggressively turning your head in all sorts of directions. This is a very fundamental reflex. You cannot turn it off, and it happens even in the dark or when your eyes are closed – if you rotate your head, your eyes WILL counter-rotate. Interestingly, not only is this not motion not saccadic, the VOR reflex actually causes saccades. If you try to follow a moving object with your head, or sweep your eyes smoothly around a room, the VOR reflex is constantly trying to keep your eyes pointed at a fixed point in space. So to keep following the moving object, or scanning the room, your eyes have to jump “past” the VOR reflex to catch up – saccades! If the object moves slower than 30 degrees/second, we can do non-saccadic smooth pursuit – but that’s a really slow speed!
  16. This is a simplification – the gain is not quite as hardwired as shown here. For example, people who wear glasses will usually have two settings of VOR gain – one with glasses and one without – and they can switch between them very quickly. However, both those modes take long-term training, and when they get a new set of glasses with a slightly different VOR gain, it takes 1-2 weeks to retrain one of those “slots”. In fact this is one of the dangers of developing in VR. If you get the settings wrong and don’t correct them, in a few weeks you can retrain one of the “slots” of your VOR gain to cope with the error. And then you simply WON’T see the error any more. In fact if you correct the error, now it will look wrong! This is why we as developers need to be very aware that “looks fine to me” is not only not useful, it’s often actively misleading data.
  17. Image off Wikipedia again – thanks! A halving in size means these are really strong glasses, and you can see the chromatic aberration at the right hand edge.
  18. Abbreviated for time. There are lots of other training feedback mechanisms for VOR gain that don’t require fixation. But the principle still stands – the brain is expecting a certain amount of retinal flow for any given head/eye motion, and the image on the HMD needs to match that to within a few percent to avoid simulator sickness and other problems.
  19. Michael Abrash is an example of someone sensitive to this problem even on a monitor. He has written about how developing Quake was a problem because it made him queasy if he played for too long. He is an incredibly useful guinea-pig – if Michael can play your game for more than a few minutes, you know you are doing something right! Another interesting side-effect I have noticed is that some people playing games on a monitor naturally move their heads into a spot so that the view looks right. I find myself leaning closer to the monitor with some FPSes than others, and I realized that this correlated with their FOV – the wider the FOV, the closer I’d move. I went around the office watching people playing TF2 fullscreen during a playtest, then measured where their eyes were relative to the size of the screen, and what their FOV settings were (default is 75 degrees, but it can be changed), and sure enough a significant proportion of them placed their eyes pretty much exactly at the realistic spot so that the monitor filled 75 degrees of their vision, even it that meant they hunched uncomfortably close to the screen – far closer than when they were just coding/designing/etc.
  20. In summary, trust the SDK. We give you these values for a very good reason – don’t play with them! This isn’t actually at all difficult to get right, it’s just that on monitors we’ve become so accustomed to being able to manipulate these values freely. To say it again – as developers, we get used to all sorts of crazy stuff, and changing the FOV might not seem that bad to us. But I guarantee you, you’re making life unpleasant for a significant chunk of your audience. Worse still – they won’t know why. Even when you know what you’re looking for, diagnosing incorrect FOV scale is amazingly difficult.
  21. Here is your typical VR user. Those of you under 25 may need to ask your parents who this chap is. (it always makes me happy when my audience laughs at my terrible jokes. I know it’s a tech-heavy GDC talk, but that doesn’t mean it has to be boring!)
  22. This is what we used to think – that all you needed was IPD and you’re good to go.
  23. Nose-to-eye and eye relief determine the translation of the virtual cameras for rendering. They also determine the edges of the FOV (e.g. a larger eye relief means a narrower FOV, because of the edge of the lenses), and the particular shape of the distortion function. Yup – we change the distortion function per-user, and in fact we do it per-eye as well. The SDK will take care of this for you, but just be aware that these values do all matter.
  24. The audio question is a bit larger than I had time for in the talk, but three reasonable places to put the audio listener are: Between the eyes. Between the ears, i.e. 3-4 inches further back. One listener per ear, i.e. 3-4 inches back, 4-6 inches outwards. Most HRTF algorithms do this for you. It is a good idea to have options for both speakers and headphones in your game. The crucial difference in VR is that headphones move with the head, while speakers do not. So if the player rotates their head left, the environmental sounds that speakers emit should not change, but with headphones the sounds should all rotate right. Treat audio listener position and orientation with just as much care as you do the cameras for rendering – mismatches can quickly ruin the effect of presence.
  25. The user’s “center” position will change slightly every time they sit down (e.g. on a couch), and so will their “zero yaw” direction (e.g. on a swivel chair), so it’s good to have a way to reset it in-game without having to exit to the desktop, run a separate app, etc. For the same reason, you want this option on the pause menu, not just at start of day. Also, DK1 doesn’t have a camera, and some locations don’t have enough field for the magnetometer to work, so they can still drift and need resetting.
  26. Note that even without a camera, e.g. the user has DK1, or using DK2 without a camera, the SDK has a kinetic “head model” that does a reasonable guess at the position of the head as long as the user doesn’t move their shoulders. The API is identical whichever mode is being used, and unless you explicitly query for it, you don’t really know or care which mode is in use at any one time.
  27. None of this is difficult, and the SDK feeds you all these numbers. This is just me banging on about how important it is to do the right thing and not cut corners or use fudge factors.
  28. “Three” = world-origin-to-center; center-to-left-eye; center-to-right-eye.
  29. “Three” = world-origin-to-center; center-to-left-eye; center-to-right-eye.
  30. Here the motion of the player’s head has not been scaled, but their center-to-eye vectors have been. This will cause simulator sickness – in fact we believe it’s one of the leading causes. It is very easy to forget to scale all three, or to have the center-to-eye vectors not match the players actual distances. It is also extremely difficult to diagnose – our conscious brains are incredibly bad at spotting that the center-to-eye vectors are wrong, even by multiple centimeters. But our lizard-brains are still sensitive, and errors of as little as 5% can make people ill. And they won’t know why! VR is annoying that way.
  31. Here the motion of the player’s head has not been scaled, but their center-to-eye vectors have been. This will cause simulator sickness – in fact we believe it’s one of the leading causes. It is very easy to forget to scale all three, or to have the center-to-eye vectors not match the players actual distances. It is also extremely difficult to diagnose – our conscious brains are incredibly bad at spotting that the center-to-eye vectors are wrong, even by multiple centimeters. But our lizard-brains are still sensitive, and errors of as little as 5% can make people ill. And they won’t know why! VR is annoying that way.
  32. “Convergence gets tricky” – what I mean is this: A normal distance to talk to someone is around 3 feet away. If you shrink the world by a factor of 12x, it’s really amusing, because everyone looks like Barbie and Ken. The problem is they now stand 3 inches away to talk to you – this is almost impossible to point your eyes at! But moderate scales like 2x or 3x are usually fine, and reduce intensity significantly for people who are sensitive.
  33. This is an example of where older research can be misleading. We’re not sure why they recommended monocular mode, but we believe it’s because their HW was what we’d call “terrible” by today’s standards – latencies of 100s of milliseconds, limited FOV and calibration, etc. Not their fault – it was the 80s, and the tech just wasn’t ready. But still bad. In that scenario, it may be that monocular made it slightly less bad. What we do know is that with modern tech, good calibration, and latencies below 40ms, monocular never seems to help, and in some people (e.g. myself) it is significantly worse than proper stereo. However, this does still need more thorough research, and it may turn out that different people simply prefer different things. We’ll keep the Best Practices Guide up to date on our findings.
  34. Everyone in TF2 is gigantically huge. As far as I know, the Engineer is one of the more physically-possible folks, at about 6-foot-6. So I guessed his eye height at about 6-foot – it makes the numbers nice. The SDK will do this for your players as well. Fortunately (as you will see), it doesn’t need to be all that precise.
  35. Here, we see that the Engi, playing himself in the virtual world, can tell how big a dispenser actually is, because he has his own height to use as a measuring stick.
  36. Heavy is one of the taller folks in TF2. So what if the Engi wanted to play as the Russian Behemoth instead?
  37. In fact, Heavy is around a foot taller than Engi. He also has a very small head, so his eyes are even higher than you’d think. I eyeballed it <ba-dum-tish>
  38. It seems to be totally fine to just move the eye height up, but leave the world scale as it is. This is fortunate because changing the eye height of a specific character in a game (James Bond, Gordon Freeman, etc) can cause all sorts of pain for level designers.
  39. …except for the problem of Floor-Dragging. I’m not sure if this has a formal name, but “floor-dragging” is what I call it.
  40. …except for the problem of Floor-Dragging. I’m not sure if this has a formal name, but “floor-dragging” is what I call it.
  41. …except for the problem of Floor-Dragging. I’m not sure if this has a formal name, but “floor-dragging” is what I call it.
  42. The exact eye-height of the player when sitting down will of course depend on the chair, but a normal office chair puts eyes at around 4 feet off the floor.
  43. This effect took a while to find. We couldn’t figure out why we felt so short. I spent a week looking for math errors. Then someone said “oh, you fixed it!” – err… no I didn’t. Then they realized they were standing up. Sit down, effect comes back, stand up, it goes away. Yet again, the weakest link in our perfect VR simulation is the wetware!
  44. The good news is this effect does not seem to cause any disorientation or sickness, and this is one reason we think it is a higher-level effect.
  45. Lucas Pope is going to hate me…
  46. The whole point of a bar stool is that people sitting on them are at eye-level, and can talk, with people standing up. So your eyes are at the same height as when you’re standing, and the world is perceived as being at the correct scale. After my GDC US talk, I had a chat with Brad Herman from Dreamworks, and he mentioned they have chairs that are just high enough off the ground so that peoples’ feet don’t touch. And this works, even though they aren’t as tall as bar stools. So my idea was somewhat flippant, but it turns out that any method of removing the pressure on the feet does indeed work – you don’t actually need the eye height to match standing. He also described a sort of “saddle chair” with stirrups to do the same thing and stop the feet touching the floor. Thanks Brad!
  47. This is the zeroth rule of VR.
  48. The knockdown itself is usually fast enough not to cause simulator sickness – it’s nearly a teleport. But getting up afterwards is five seconds of agony. Even though picking an object off the floor causes no overall translation, think about the head motion involved!
  49. The ghost option can be tough to retrofit nicely to an engine. None of these solutions are great. Hopefully people will experiment with others and find out what works. More importantly, tell each other what DOESN’T work – saves everyone a lot of time (and since you’re not going to use it, because it doesn’t work, it’s not any sort of trade secret)
  50. Brad Herman from Dreamworks suggested using a “blink” animation rather than a simple fade-to-black. He says even really slow blinks seem “natural” to people. Chris Pruett did some experimentation with much faster blinks, and was amazed to find that at a certain speed, he can’t consciously see them. Remember to keep head-tracking – during the fade or the blink, make sure if the player moves their head, the view will still move.
  51. One of the things I did while at Valve was port Team Fortress 2 to VR. TF2 is not a good game to convert to VR for many reasons – things move too quickly, and it’s much too intense – we chose to do TF2 for technical reasons rather than gameplay ones. But one thing that did work well were the avatars and the animations and the ways you can customize them – they are fantastic for immersion. When rendering on a monitor, there are a bunch of custom-made 1st-person avatar models, but they are usually just a pair of arms, and they’re rendered with an odd FOV. In the VR version, we stopped using those (because we needed you to have an entire body) and used the existing 3rd-person models – but the animations they play are the same as the monitor version.
  52. Again, first constraint is VR Rule Zero.
  53. Especially animations like the Soldier’s rocket-launcher reload anim – his head moves around a LOT.
  54. I see you shiver with antici…
  55. EW!
  56. “Meathook Avatar” is the name of my death-metal band. (this is an animated GIF and the cat is “dancing” – it’s an old internet meme I’m sure you’ve seen before)
  57. The War-Themed Hat Simulator team at Valve were devastated to discover we also had to turn off hats. The problem is that “hat” in TF2 includes things like glasses, masks & beards that don’t render correctly when the camera is in inside them.
  58. This picture is also animated – the position where the head would be is now fixed in a single place (i.e. where the player’s VR head is), while the body trashes around underneath it. This is where the “meathook” name comes from. Obviously only do this for the 1st-person view of the current player. Don’t do it for all the other characters in the game! Also, don’t do it for the player’s shadow, or any reflections. Yes, this means your feet and your shadow’s feet don’t quite match up – but you really don’t notice that much. Ditto foot-slip – you really don’t notice that they’re sliding across the floor, because you have to look a long way down to even see them. If you have a full-body IK system in your engine, you could possibly do this in a more elegant way – constrain feet and maybe hands to the animated positions, while moving the neck to the HMD-determined position, and let the waist sort itself out. But watch out for hand/face interactions e.g. the player holds a weapon up to their face, answers a telephone, lights a cigarette, etc. Now you need to start marking up animations to decide how the hands should IK – it can suddenly be a big increase in workload. Whereas this simple hack works fine – we didn’t need to modify any of the TF2 animations or meshes.
  59. Exaggerating for brevity – presence does actually have shades of grey, but they’re along other dimensions. In terms of framerate, there does seem to be a critical framerate at about 50fps, though for fast-moving scenes it can be higher. Note this is a different value from that required for “flicker fusion” which is significantly higher (varies widely, but around 90Hz seems to cover 90% of the population) – that’s something the HW designers need to worry about. However, there is a tricky interaction between the display rate and the rendering rate. We know that display at 75Hz and render at 50Hz is not very good – there is a “beat” between the two that is very visible. It will be interesting to see what happens with faster displays, e.g. a 120Hz display but 60Hz rendering.
  60. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  61. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  62. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  63. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  64. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  65. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  66. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  67. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  68. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  69. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.
  70. The SDK has functions to help you decide the optimal-quality size of the eye-render targets, but of course it has no idea how fast or slow your engine is. If you have to choose between quality and sustained performance, performance should win every time. Maintaining framerate is so much more important than extra pixel detail.