SlideShare a Scribd company logo
이호민Software Engineer / SDK team 
Oculus 
Developing with Oculus
1. Who is Oculus 
2. Oculus Rift DK2 
3. Positional Tracking 
4. SDK 
5. Latency 
6. Roadmap 
Contents
1. Who is Oculus 
Movie
Oculus is... 
• Palmer Luckey& John Carmack “homebrew” prototype at E3 2012 
• Oculus VR founded mid 2012 
• Successful Kickstarter campaign Sept 2012 (2.4 million) 
• First 10k devkits shipped March 2013 
• Over 50,000 devkits shipped to date 
• Over 60,000 developers on Oculus devportal 
• 100s of games in development for the Rift 
• 50+ top-tier show awards, best of CES 2013, E3 2013, CES 2014 
• Acquired by Facebook 
• Started DK2 shipping on August 2014 
• Announced mobile VR kit, Gear VR 
• Announced prototype of next version, Crescent bay at Oculus Connect 2014
2. Oculus Rift DK2
Oculus Rift DK2 
• 100 Degree Fov• 1080p OLED Screen, 960x1080 per eye 
• 75hz Low Persistence refresh rate 
• Full Persistence @ 60, 72 or 75 Hz 
• 1000Hz IMU tracks orientation and assists position 
• Sensor Fusion SW combines IMU(inertial measurement unit) 
and camera data for 6DOF tracking 
Crescent Bay 
• Better Screen Resolution 
• 90hz Low Persistence refresh rate 
• 360-degree tracking 
• Improved weight 
• Integrated audio
3. Positional Tracking
Positional Tracking 
• External camera looking at the user. 
• 72H x 52V Degrees FOV 
• 0.5m -2.5 meters tracking range 
• Placed on the desk or looking down at the user 
• Includes a tripod screw mount
• Relies on IR built into the Rift on all sides 
• Supports swaying side to side, front and back 
• Tracking works while looking up and down 
• Player can turn more than 110 degrees to each side 
Positional Tracking
4. Oculus SDK
Features of SDK 0.4 
• Support DK1 & DK2 
-New C Interface; recompile the game with new SDK 
• Positional tracking 
-Position origin is currently 1 meter from camera 
-SDK reports SensorStatewith predicted Pose state 
-Includes orientation, position and derivatives 
-Sets flags when out of tracking range 
-Falls back on head model 
• Direct-to-Rift and Extended Mode 
• OVR Configuration Utility
Where OVR Software Stack is Heading 
• C Interface: Easy to bind from other languages 
• Driver DLL: Automatically support changes in HW and functionality 
• OVR Service: Rift sharing and VRs transitions across apps
SDK Rendering vs. Game Rendering 
•0.2 SDK didn’t do any rendering 
•Only provided parameters needed for proper rendering 
•New rendering backend in SDK 0.4 
•Takes over critical rendering features 
•Game(App) layer gives SDK L & R eye textures to ovrHmd_EndFrame()
• General Work Flow 
-ovrHmd_CreateDistortionMesh 
Transforms the image through UVs 
More efficient to render then pixel shader 
Gives Oculus flexibility to change distortion 
-ovrHmd_BeginFrame 
-ovrHmd_GetEyePoses 
-Stereo rendering based on EyeRenderPose(Game Scene Render) 
-ovrHmd_EndFrame 
SDK Rendering vs. Game Rendering
Finishes rendering with the following features on SDK 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) 
•Health & Safety Warning 
SDK Rendering vs. Game Rendering
• Easy to integrate: 
-No shaders, meshes to create 
-Pass device/system pointers and eye texture(s) 
-Support OpenGL and D3D9/10/11 
-Must re-apply rendering state for next frame 
• Benefits: 
-Better compatibility with future Oculus HW and Features 
-Reduces graphics setup bugs 
-Support low-latency driver screen access such as front buffer rendering, etc. 
-Automatically support overlays: latency testing, camera guides, debug data, 
pass-through, platform overlays 
SDK Rendering vs. Game Rendering
Supporting Game Engine 
•Unity 3D, Unreal Engine 3 & 4 use SDK rendering 
•In some cases, what you think is unsupported by our SDK, might actually be supported, but we still want to know! 
Ping us. We will listen.
Extended Mode 
•Headset shows up as an OS Display 
•Application must place a window on Rift monitor 
•Icons and Windows in a wrong place 
•Windows compositor handles Present 
•There is usually at least one extra frame of latency 
•More latency if no CPU & GPU sync is done
Direct To Rift 
Outputs to Rift without Display being a part of the desktop 
•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 
Hope to see Direct Mode become the longer term solution
5. Latency
VR Motion to Photon Latency 
Input 
USB 
Game Engine 
Write Display 
Pixel Switching 
New Image
VR Motion to Photon Latency 
Keeping latency low is crucial for a solid VR experience 
Goal is < 20 ms, and hopefully close to 5 ms 
We’re almost there! (stay tuned for some numbers)
Reducing Latency -TimeWarp 
•Re-projects rendering for a later point in time 
•Done simultaneously with distortion 
•Reduces perceived latency 
•Accounts for DK2 rolling shutter 
•0.4 SDK handles orientation, positional possible
Reducing Latency -TimeWarp 
13.3 ms 
Any other way to apply sensor before the end of the frame? 
TimeWarp–Projected rendering -Pioneered by John 
75 FPS
Any other way to apply sensor before the end of the frame? 
TimeWarp–Projected rendering -Pioneered by John 
Reducing Latency -TimeWarp
Reducing Latency -TimeWarp
6. SDK Roadmap
SDK Roadmap –Short Term 
Driver Improvements & Fixes 
•Multi-Monitor fixes to v-sync related latency & judder 
•Reduce post-present latency 
•Handle Optimus and multi-GPU scenarios 
Linux Support 
Asynchronous/Adaptive Time warp 
•Reduce Judder by generating extra frames when needed 
Time warp Layers 
•Handle Cockpit and Overlays separately from the scene
Q&A

More Related Content

What's hot

Oculus rift
Oculus riftOculus rift
Oculus riftimvegita
 
Oculus rift
Oculus riftOculus rift
Oculus rift
Abhishek Rai
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2
Luis Cataldi
 
How to create powerfully interactive & collaborative VR applications - Sébast...
How to create powerfully interactive & collaborative VR applications - Sébast...How to create powerfully interactive & collaborative VR applications - Sébast...
How to create powerfully interactive & collaborative VR applications - Sébast...
WithTheBest
 
Eyes Wide Open - Amir Ebrahimi
Eyes Wide Open - Amir EbrahimiEyes Wide Open - Amir Ebrahimi
Eyes Wide Open - Amir Ebrahimi
WithTheBest
 
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile GamesUnreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Epic Games China
 
Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4
Unreal Engine
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Luis Cataldi
 
Oculus rift
Oculus riftOculus rift
Oculus rift
vivek patel
 
Improving the VR experience - VRST 2012
Improving the VR experience - VRST 2012Improving the VR experience - VRST 2012
Improving the VR experience - VRST 2012
Sebastien Kuntz
 
How to Develop VR Applications and Publish from Phone to Dome - Nils Andersson
How to Develop VR Applications and Publish from Phone to Dome - Nils AnderssonHow to Develop VR Applications and Publish from Phone to Dome - Nils Andersson
How to Develop VR Applications and Publish from Phone to Dome - Nils Andersson
WithTheBest
 
GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...
GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...
GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...
AMD Developer Central
 
Building Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKBuilding Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDK
DataLeader.io
 
Introduction to daydream for AnDevCon DC - 2017
Introduction to daydream for AnDevCon DC - 2017Introduction to daydream for AnDevCon DC - 2017
Introduction to daydream for AnDevCon DC - 2017
Jared Sheehan
 
Introduction to DaydreamVR from DevFestDC 2017
Introduction to DaydreamVR from DevFestDC 2017Introduction to DaydreamVR from DevFestDC 2017
Introduction to DaydreamVR from DevFestDC 2017
Jared Sheehan
 
Developing Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedDeveloping Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedMartin Climatiano
 
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
Unreal Engine
 
Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4
Huey Park
 
VR - Creating the ultimate reality
VR - Creating the ultimate realityVR - Creating the ultimate reality
VR - Creating the ultimate reality
Sebastien Kuntz
 
Synthetic environment
Synthetic environmentSynthetic environment
Synthetic environment
Ullas Gupta
 

What's hot (20)

Oculus rift
Oculus riftOculus rift
Oculus rift
 
Oculus rift
Oculus riftOculus rift
Oculus rift
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2
 
How to create powerfully interactive & collaborative VR applications - Sébast...
How to create powerfully interactive & collaborative VR applications - Sébast...How to create powerfully interactive & collaborative VR applications - Sébast...
How to create powerfully interactive & collaborative VR applications - Sébast...
 
Eyes Wide Open - Amir Ebrahimi
Eyes Wide Open - Amir EbrahimiEyes Wide Open - Amir Ebrahimi
Eyes Wide Open - Amir Ebrahimi
 
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile GamesUnreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
 
Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
 
Oculus rift
Oculus riftOculus rift
Oculus rift
 
Improving the VR experience - VRST 2012
Improving the VR experience - VRST 2012Improving the VR experience - VRST 2012
Improving the VR experience - VRST 2012
 
How to Develop VR Applications and Publish from Phone to Dome - Nils Andersson
How to Develop VR Applications and Publish from Phone to Dome - Nils AnderssonHow to Develop VR Applications and Publish from Phone to Dome - Nils Andersson
How to Develop VR Applications and Publish from Phone to Dome - Nils Andersson
 
GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...
GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...
GS-4145, Oxide discusses how Mantle enables game engine performance, by Dan B...
 
Building Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKBuilding Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDK
 
Introduction to daydream for AnDevCon DC - 2017
Introduction to daydream for AnDevCon DC - 2017Introduction to daydream for AnDevCon DC - 2017
Introduction to daydream for AnDevCon DC - 2017
 
Introduction to DaydreamVR from DevFestDC 2017
Introduction to DaydreamVR from DevFestDC 2017Introduction to DaydreamVR from DevFestDC 2017
Introduction to DaydreamVR from DevFestDC 2017
 
Developing Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedDeveloping Games For VR - Lessons Learned
Developing Games For VR - Lessons Learned
 
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
 
Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4Behavior Tree in Unreal engine 4
Behavior Tree in Unreal engine 4
 
VR - Creating the ultimate reality
VR - Creating the ultimate realityVR - Creating the ultimate reality
VR - Creating the ultimate reality
 
Synthetic environment
Synthetic environmentSynthetic environment
Synthetic environment
 

Viewers also liked

Digital проекты в российском спорте 2016
Digital проекты в российском спорте 2016Digital проекты в российском спорте 2016
Digital проекты в российском спорте 2016
Ivan Ryndin
 
Getting started with Unity3D and Oculus Rift
Getting started with Unity3D and Oculus RiftGetting started with Unity3D and Oculus Rift
Getting started with Unity3D and Oculus Rift
Maia Kord
 
Movie trailer analysis
Movie trailer analysisMovie trailer analysis
Movie trailer analysis
Sashawallen
 
Compare and contrast essay, English 2
Compare and contrast essay, English 2Compare and contrast essay, English 2
Compare and contrast essay, English 2
Yung Kai
 
Oculus in depth analysis
Oculus   in depth analysisOculus   in depth analysis
Oculus in depth analysisZiema2
 
Basic VR Development Tutorial Integrating Oculus Rift and Razer Hydra
Basic VR Development Tutorial Integrating Oculus Rift and Razer HydraBasic VR Development Tutorial Integrating Oculus Rift and Razer Hydra
Basic VR Development Tutorial Integrating Oculus Rift and Razer Hydra
Chris Zaharia
 
Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기
Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기
Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기
flashscope
 
All about Virtual Reality & Oculus Rift
All about Virtual Reality & Oculus RiftAll about Virtual Reality & Oculus Rift
All about Virtual Reality & Oculus Rift
Saurabh Sawhney
 
Your VR Experience (Oculus Presentation, Indiecade 2016)
Your VR Experience (Oculus Presentation, Indiecade 2016)Your VR Experience (Oculus Presentation, Indiecade 2016)
Your VR Experience (Oculus Presentation, Indiecade 2016)
Esteban Gallardo
 
Virtual Reality, Oculus Rift, Business Model
Virtual Reality, Oculus Rift, Business ModelVirtual Reality, Oculus Rift, Business Model
Virtual Reality, Oculus Rift, Business Model
Jeffrey Funk Business Models
 

Viewers also liked (10)

Digital проекты в российском спорте 2016
Digital проекты в российском спорте 2016Digital проекты в российском спорте 2016
Digital проекты в российском спорте 2016
 
Getting started with Unity3D and Oculus Rift
Getting started with Unity3D and Oculus RiftGetting started with Unity3D and Oculus Rift
Getting started with Unity3D and Oculus Rift
 
Movie trailer analysis
Movie trailer analysisMovie trailer analysis
Movie trailer analysis
 
Compare and contrast essay, English 2
Compare and contrast essay, English 2Compare and contrast essay, English 2
Compare and contrast essay, English 2
 
Oculus in depth analysis
Oculus   in depth analysisOculus   in depth analysis
Oculus in depth analysis
 
Basic VR Development Tutorial Integrating Oculus Rift and Razer Hydra
Basic VR Development Tutorial Integrating Oculus Rift and Razer HydraBasic VR Development Tutorial Integrating Oculus Rift and Razer Hydra
Basic VR Development Tutorial Integrating Oculus Rift and Razer Hydra
 
Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기
Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기
Unity + Oculus Rift + LeapMotion 우주 체험 프로젝트 후기
 
All about Virtual Reality & Oculus Rift
All about Virtual Reality & Oculus RiftAll about Virtual Reality & Oculus Rift
All about Virtual Reality & Oculus Rift
 
Your VR Experience (Oculus Presentation, Indiecade 2016)
Your VR Experience (Oculus Presentation, Indiecade 2016)Your VR Experience (Oculus Presentation, Indiecade 2016)
Your VR Experience (Oculus Presentation, Indiecade 2016)
 
Virtual Reality, Oculus Rift, Business Model
Virtual Reality, Oculus Rift, Business ModelVirtual Reality, Oculus Rift, Business Model
Virtual Reality, Oculus Rift, Business Model
 

Similar to [1C7] Developing with Oculus

Oculus 140420034011-phpapp02
Oculus 140420034011-phpapp02Oculus 140420034011-phpapp02
Oculus 140420034011-phpapp02
Kishan Singh
 
Introduction to 360 Video
Introduction to  360 VideoIntroduction to  360 Video
Introduction to 360 Video
Seung-Bum Lee
 
The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game Engines
Pooya Eimandar
 
Virtual Reality Application Development on Android using Google Cardboard
Virtual Reality Application Development on Android using Google CardboardVirtual Reality Application Development on Android using Google Cardboard
Virtual Reality Application Development on Android using Google Cardboard
Apurv Nigam
 
Developing Virtual Reality Application using Google Cardboard
Developing Virtual Reality Application using Google CardboardDeveloping Virtual Reality Application using Google Cardboard
Developing Virtual Reality Application using Google Cardboard
apurvmmmec
 
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
 
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Stephan Tanguay
 
Hacking for salone: drone races
Hacking for salone: drone racesHacking for salone: drone races
Hacking for salone: drone races
Emanuele Di Saverio
 
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
Codemotion
 
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
Marco Parenzan
 
Philipp Nagele (Wikitude): What's Next with Wikitude
Philipp Nagele (Wikitude): What's Next with WikitudePhilipp Nagele (Wikitude): What's Next with Wikitude
Philipp Nagele (Wikitude): What's Next with Wikitude
AugmentedWorldExpo
 
Alexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal EngineAlexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal Engine
White Nights Conference
 
Cocos2d programming
Cocos2d programmingCocos2d programming
Cocos2d programming
Changwon National University
 
Vuzix i wear vr920
Vuzix i wear vr920Vuzix i wear vr920
Vuzix i wear vr920
Aalaa Khattab
 
sdc-2016-gvrf-and-io_public
sdc-2016-gvrf-and-io_publicsdc-2016-gvrf-and-io_public
sdc-2016-gvrf-and-io_publicRick Lau
 
Using intel's real sense to create games with natural user interfaces justi...
Using intel's real sense to create games with natural user interfaces   justi...Using intel's real sense to create games with natural user interfaces   justi...
Using intel's real sense to create games with natural user interfaces justi...
BeMyApp
 
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex Vlachos
 
Kenn Song (VisionStar): EasyAR 2.0 - New Features and Changes
Kenn Song (VisionStar): EasyAR 2.0 - New Features and ChangesKenn Song (VisionStar): EasyAR 2.0 - New Features and Changes
Kenn Song (VisionStar): EasyAR 2.0 - New Features and Changes
AugmentedWorldExpo
 
Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt )
Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt ) Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt )
Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt )
Alina Vilk
 

Similar to [1C7] Developing with Oculus (20)

Oculus 140420034011-phpapp02
Oculus 140420034011-phpapp02Oculus 140420034011-phpapp02
Oculus 140420034011-phpapp02
 
Introduction to 360 Video
Introduction to  360 VideoIntroduction to  360 Video
Introduction to 360 Video
 
The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game Engines
 
Virtual Reality Application Development on Android using Google Cardboard
Virtual Reality Application Development on Android using Google CardboardVirtual Reality Application Development on Android using Google Cardboard
Virtual Reality Application Development on Android using Google Cardboard
 
Developing Virtual Reality Application using Google Cardboard
Developing Virtual Reality Application using Google CardboardDeveloping Virtual Reality Application using Google Cardboard
Developing Virtual Reality Application using Google Cardboard
 
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)
 
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
Virtual Reality: Learn to Maximize Present and Future Creative Possibilities!
 
ssssss
ssssssssssss
ssssss
 
Hacking for salone: drone races
Hacking for salone: drone racesHacking for salone: drone races
Hacking for salone: drone races
 
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
 
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
 
Philipp Nagele (Wikitude): What's Next with Wikitude
Philipp Nagele (Wikitude): What's Next with WikitudePhilipp Nagele (Wikitude): What's Next with Wikitude
Philipp Nagele (Wikitude): What's Next with Wikitude
 
Alexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal EngineAlexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal Engine
 
Cocos2d programming
Cocos2d programmingCocos2d programming
Cocos2d programming
 
Vuzix i wear vr920
Vuzix i wear vr920Vuzix i wear vr920
Vuzix i wear vr920
 
sdc-2016-gvrf-and-io_public
sdc-2016-gvrf-and-io_publicsdc-2016-gvrf-and-io_public
sdc-2016-gvrf-and-io_public
 
Using intel's real sense to create games with natural user interfaces justi...
Using intel's real sense to create games with natural user interfaces   justi...Using intel's real sense to create games with natural user interfaces   justi...
Using intel's real sense to create games with natural user interfaces justi...
 
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015Alex_Vlachos_Advanced_VR_Rendering_GDC2015
Alex_Vlachos_Advanced_VR_Rendering_GDC2015
 
Kenn Song (VisionStar): EasyAR 2.0 - New Features and Changes
Kenn Song (VisionStar): EasyAR 2.0 - New Features and ChangesKenn Song (VisionStar): EasyAR 2.0 - New Features and Changes
Kenn Song (VisionStar): EasyAR 2.0 - New Features and Changes
 
Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt )
Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt ) Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt )
Алексей Рыбаков (Senior Engineer,Technical Evangelist DataArt )
 

More from NAVER D2

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
NAVER D2
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
NAVER D2
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
NAVER D2
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
NAVER D2
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
NAVER D2
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
NAVER D2
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
NAVER D2
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
NAVER D2
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
NAVER D2
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
NAVER D2
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
NAVER D2
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
NAVER D2
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
NAVER D2
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
NAVER D2
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
NAVER D2
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
NAVER D2
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
NAVER D2
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
NAVER D2
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
NAVER D2
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
NAVER D2
 

More from NAVER D2 (20)

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
 

Recently uploaded

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 

[1C7] Developing with Oculus

  • 1.
  • 2.
  • 3. 이호민Software Engineer / SDK team Oculus Developing with Oculus
  • 4. 1. Who is Oculus 2. Oculus Rift DK2 3. Positional Tracking 4. SDK 5. Latency 6. Roadmap Contents
  • 5. 1. Who is Oculus Movie
  • 6. Oculus is... • Palmer Luckey& John Carmack “homebrew” prototype at E3 2012 • Oculus VR founded mid 2012 • Successful Kickstarter campaign Sept 2012 (2.4 million) • First 10k devkits shipped March 2013 • Over 50,000 devkits shipped to date • Over 60,000 developers on Oculus devportal • 100s of games in development for the Rift • 50+ top-tier show awards, best of CES 2013, E3 2013, CES 2014 • Acquired by Facebook • Started DK2 shipping on August 2014 • Announced mobile VR kit, Gear VR • Announced prototype of next version, Crescent bay at Oculus Connect 2014
  • 8. Oculus Rift DK2 • 100 Degree Fov• 1080p OLED Screen, 960x1080 per eye • 75hz Low Persistence refresh rate • Full Persistence @ 60, 72 or 75 Hz • 1000Hz IMU tracks orientation and assists position • Sensor Fusion SW combines IMU(inertial measurement unit) and camera data for 6DOF tracking Crescent Bay • Better Screen Resolution • 90hz Low Persistence refresh rate • 360-degree tracking • Improved weight • Integrated audio
  • 10. Positional Tracking • External camera looking at the user. • 72H x 52V Degrees FOV • 0.5m -2.5 meters tracking range • Placed on the desk or looking down at the user • Includes a tripod screw mount
  • 11. • Relies on IR built into the Rift on all sides • Supports swaying side to side, front and back • Tracking works while looking up and down • Player can turn more than 110 degrees to each side Positional Tracking
  • 13. Features of SDK 0.4 • Support DK1 & DK2 -New C Interface; recompile the game with new SDK • Positional tracking -Position origin is currently 1 meter from camera -SDK reports SensorStatewith predicted Pose state -Includes orientation, position and derivatives -Sets flags when out of tracking range -Falls back on head model • Direct-to-Rift and Extended Mode • OVR Configuration Utility
  • 14. Where OVR Software Stack is Heading • C Interface: Easy to bind from other languages • Driver DLL: Automatically support changes in HW and functionality • OVR Service: Rift sharing and VRs transitions across apps
  • 15. SDK Rendering vs. Game Rendering •0.2 SDK didn’t do any rendering •Only provided parameters needed for proper rendering •New rendering backend in SDK 0.4 •Takes over critical rendering features •Game(App) layer gives SDK L & R eye textures to ovrHmd_EndFrame()
  • 16. • General Work Flow -ovrHmd_CreateDistortionMesh Transforms the image through UVs More efficient to render then pixel shader Gives Oculus flexibility to change distortion -ovrHmd_BeginFrame -ovrHmd_GetEyePoses -Stereo rendering based on EyeRenderPose(Game Scene Render) -ovrHmd_EndFrame SDK Rendering vs. Game Rendering
  • 17. Finishes rendering with the following features on SDK 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) •Health & Safety Warning SDK Rendering vs. Game Rendering
  • 18. • Easy to integrate: -No shaders, meshes to create -Pass device/system pointers and eye texture(s) -Support OpenGL and D3D9/10/11 -Must re-apply rendering state for next frame • Benefits: -Better compatibility with future Oculus HW and Features -Reduces graphics setup bugs -Support low-latency driver screen access such as front buffer rendering, etc. -Automatically support overlays: latency testing, camera guides, debug data, pass-through, platform overlays SDK Rendering vs. Game Rendering
  • 19. Supporting Game Engine •Unity 3D, Unreal Engine 3 & 4 use SDK rendering •In some cases, what you think is unsupported by our SDK, might actually be supported, but we still want to know! Ping us. We will listen.
  • 20. Extended Mode •Headset shows up as an OS Display •Application must place a window on Rift monitor •Icons and Windows in a wrong place •Windows compositor handles Present •There is usually at least one extra frame of latency •More latency if no CPU & GPU sync is done
  • 21. Direct To Rift Outputs to Rift without Display being a part of the desktop •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 Hope to see Direct Mode become the longer term solution
  • 23. VR Motion to Photon Latency Input USB Game Engine Write Display Pixel Switching New Image
  • 24. VR Motion to Photon Latency Keeping latency low is crucial for a solid VR experience Goal is < 20 ms, and hopefully close to 5 ms We’re almost there! (stay tuned for some numbers)
  • 25. Reducing Latency -TimeWarp •Re-projects rendering for a later point in time •Done simultaneously with distortion •Reduces perceived latency •Accounts for DK2 rolling shutter •0.4 SDK handles orientation, positional possible
  • 26. Reducing Latency -TimeWarp 13.3 ms Any other way to apply sensor before the end of the frame? TimeWarp–Projected rendering -Pioneered by John 75 FPS
  • 27. Any other way to apply sensor before the end of the frame? TimeWarp–Projected rendering -Pioneered by John Reducing Latency -TimeWarp
  • 30. SDK Roadmap –Short Term Driver Improvements & Fixes •Multi-Monitor fixes to v-sync related latency & judder •Reduce post-present latency •Handle Optimus and multi-GPU scenarios Linux Support Asynchronous/Adaptive Time warp •Reduce Judder by generating extra frames when needed Time warp Layers •Handle Cockpit and Overlays separately from the scene
  • 31. Q&A