SlideShare una empresa de Scribd logo
1 de 8
virtually anywhere:
VR and the open web
Tony Parisi
Vizi, inc.
June 11, 2014
VR today
closed-system development
native code + proprietary development tools (Unity, UDK)
integration with web is whatever you get from those tools…
fine for high-performance games and single isolated
experiences…
MASSIVE downloads
6/11/2014http://www.tonyparisi.com
the open web
60FPS mind-blowing graphics in WebGL
programming in JavaScript
all your web data at your fingertips
NO downloads
6/11/2014http://www.tonyparisi.com
two great tastes… ?
6/11/2014http://www.tonyparisi.com
Oculus Rift™ and browsers
no native browser support for stereo rendering and head tracking… yet
OculusBridge
https://github.com/Instrument/oculus-bridge
Three.js-based renderer and camera controller
native app does head tracking; sends updates to browser via Web Sockets
10ms+ latency, not great
vr.js
https://github.com/benvanik/vr.js
Three.js-based renderer and camera controller
browser extension (Chrome and FF) does head tracking in native code, talks to
JavaScript via plugin API
< 10ms latency, better
it would be ideal if browsers had built-in support
head tracking
stereo rendering
or at least a USB interface… (not in an extension)
6/11/2014http://www.tonyparisi.com
early experiments
6/11/2014http://www.tonyparisi.com
water world
paint with particles!
http://vizi.gl/engine/tests/waterworld/waterRif
t.html
based on PartiArt
by Eric Levin (@ericrius)
http://ericrius1.github.io/PartiArt/
Futurgo city
car test drive
http://vizi.gl/engine/tests/futurgo/futurgoCity
Rift.html
based on Futurgo City
from my book examples
https://github.com/tparisi/Programming3DAp
plications/
frame rate: good
latency: seems ok.
experience: fun.
frame rate: ok
latency: not great.
experience: meh.
the stack:
vr.js
OculusBridge
Three.js
Vizi
GLAM (GL And Markup) - a
declarative language for 3D web
content
https://github.com/tparisi/glam/
define 3D scene content in markup;
style it in CSS
vr + ml
6/11/2014http://www.tonyparisi.com
<glam>
<renderer type="rift"></renderer>
<scene>
<controller
type="rift"></controller>
<background id="sb1"
class="skybox"></background>
<group y ='1' z='-3'>
<sphere class="bubble
skybox" animation="bubbleBounce"></sphere>
<sphere x='-1' z='-2'
class="bubble skybox"
animation="bubbleBounce2"></sphere>
</group>
…
the markup
<style>
.skybox {
envmap-right:url(../images/Park2/posx.jpg);
…
}
.bubble {
radius:.5;
shader-vertex:url(../shaders/fresnel.vs);
shader-fragment:url(../shaders/fresnel.fs);
shader-uniforms:mRefractionRatio f 1.02
mFresnelBias f 0.1 mFresnelPower f 2.0 mFresnelScale
f 1.0 tCube t null;
}
#sb1 {
background-type:box;
}
</style>
the CSS
links
the demos (require vr.js)
http://vizi.gl/engine/tests/waterworld/waterRift.html
http://vizi.gl/engine/tests/futurgo/futurgoCityRift.html
http://vizi.gl/glam/examples/glamcityvr.html
http://vizi.gl/glam/examples/glamshaderfresnelvr.html
tools and libs
Oculus Bridge https://github.com/Instrument/oculus-bridge
vr.js https://github.com/benvanik/vr.js
Three.js https://github.com/mrdoob/three.js/
Vizi https://github.com/tparisi/vizi
GLAM https://github.com/tparisi/glam/
6/11/2014http://www.tonyparisi.com

Más contenido relacionado

La actualidad más candente

OzAltNet Fast-ANDroid-furious
OzAltNet Fast-ANDroid-furiousOzAltNet Fast-ANDroid-furious
OzAltNet Fast-ANDroid-furious
Craig Dunn
 
Adobe gaming today tomorrow Trento
Adobe gaming today tomorrow TrentoAdobe gaming today tomorrow Trento
Adobe gaming today tomorrow Trento
InSide Training
 

La actualidad más candente (20)

Firefox OS Perspective
Firefox OS Perspective Firefox OS Perspective
Firefox OS Perspective
 
從 Google i/o 2015 看下半年 mobile 應用發展趨勢
從 Google i/o 2015 看下半年 mobile 應用發展趨勢從 Google i/o 2015 看下半年 mobile 應用發展趨勢
從 Google i/o 2015 看下半年 mobile 應用發展趨勢
 
Flutter for web
Flutter for webFlutter for web
Flutter for web
 
Top 10 Differences between developing Windows Phone and Store apps
Top 10 Differences between developing Windows Phone and Store appsTop 10 Differences between developing Windows Phone and Store apps
Top 10 Differences between developing Windows Phone and Store apps
 
Flutter introduction
Flutter introductionFlutter introduction
Flutter introduction
 
Mono for Android... for Google Devs
Mono for Android... for Google DevsMono for Android... for Google Devs
Mono for Android... for Google Devs
 
Steps to contribute to firefox os (gaia)
Steps to contribute to firefox os (gaia)Steps to contribute to firefox os (gaia)
Steps to contribute to firefox os (gaia)
 
OzAltNet Fast-ANDroid-furious
OzAltNet Fast-ANDroid-furiousOzAltNet Fast-ANDroid-furious
OzAltNet Fast-ANDroid-furious
 
Presentazione Corso LAP 2 A.A. 2016/2017
Presentazione Corso LAP 2 A.A. 2016/2017Presentazione Corso LAP 2 A.A. 2016/2017
Presentazione Corso LAP 2 A.A. 2016/2017
 
Adobe gaming today tomorrow Trento
Adobe gaming today tomorrow TrentoAdobe gaming today tomorrow Trento
Adobe gaming today tomorrow Trento
 
Windows 10 & Raspberry Pi 2
Windows 10 & Raspberry Pi 2Windows 10 & Raspberry Pi 2
Windows 10 & Raspberry Pi 2
 
Windows 10 on Raspberry PI 2
Windows 10 on Raspberry PI 2Windows 10 on Raspberry PI 2
Windows 10 on Raspberry PI 2
 
Tearing down the //build/ 2016 conference
Tearing down the //build/ 2016 conferenceTearing down the //build/ 2016 conference
Tearing down the //build/ 2016 conference
 
Indie Game Development
Indie Game DevelopmentIndie Game Development
Indie Game Development
 
Firefox os
Firefox osFirefox os
Firefox os
 
Build mini - Windows 10 Dev & Cross platform Dev
Build mini - Windows 10 Dev & Cross platform DevBuild mini - Windows 10 Dev & Cross platform Dev
Build mini - Windows 10 Dev & Cross platform Dev
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginners
 
Distribution and development of mobile social browser games
Distribution and development of mobile social browser gamesDistribution and development of mobile social browser games
Distribution and development of mobile social browser games
 
LAP2 iOS and Android Development environment setup
LAP2 iOS and Android Development environment setupLAP2 iOS and Android Development environment setup
LAP2 iOS and Android Development environment setup
 
IE9 the story so far
IE9 the story so farIE9 the story so far
IE9 the story so far
 

Destacado

Stirling Henry Us Aust Corp Immi May 2010
Stirling Henry Us Aust Corp Immi May 2010Stirling Henry Us Aust Corp Immi May 2010
Stirling Henry Us Aust Corp Immi May 2010
tim_denney
 
Nascholing fysiotherapeuten
Nascholing fysiotherapeutenNascholing fysiotherapeuten
Nascholing fysiotherapeuten
zaansmc
 
Rpl 7 ppl dan metrik proyek (2)
Rpl 7 ppl dan metrik proyek (2)Rpl 7 ppl dan metrik proyek (2)
Rpl 7 ppl dan metrik proyek (2)
Komang Yogi
 
The digital self
The digital selfThe digital self
The digital self
8jt43
 

Destacado (20)

Stirling Henry Us Aust Corp Immi May 2010
Stirling Henry Us Aust Corp Immi May 2010Stirling Henry Us Aust Corp Immi May 2010
Stirling Henry Us Aust Corp Immi May 2010
 
Chaq ama
Chaq amaChaq ama
Chaq ama
 
Malmöhus
MalmöhusMalmöhus
Malmöhus
 
Invento
InventoInvento
Invento
 
Nascholing fysiotherapeuten
Nascholing fysiotherapeutenNascholing fysiotherapeuten
Nascholing fysiotherapeuten
 
Digital Marketing Campaign
Digital Marketing CampaignDigital Marketing Campaign
Digital Marketing Campaign
 
CTO Playbook
CTO PlaybookCTO Playbook
CTO Playbook
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Rpl 7 ppl dan metrik proyek (2)
Rpl 7 ppl dan metrik proyek (2)Rpl 7 ppl dan metrik proyek (2)
Rpl 7 ppl dan metrik proyek (2)
 
Print Work
Print WorkPrint Work
Print Work
 
Relatório
RelatórioRelatório
Relatório
 
BillingViews Facebook Success Index
BillingViews Facebook Success IndexBillingViews Facebook Success Index
BillingViews Facebook Success Index
 
The digital self
The digital selfThe digital self
The digital self
 
Ppv en clavede servicio
Ppv en clavede servicioPpv en clavede servicio
Ppv en clavede servicio
 
AcneRoot Cream Brochure
AcneRoot Cream BrochureAcneRoot Cream Brochure
AcneRoot Cream Brochure
 
Por qué estudiar electrónica
Por qué estudiar electrónicaPor qué estudiar electrónica
Por qué estudiar electrónica
 
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
 
Perth Corporate Immigration Presentation July 2010
Perth Corporate Immigration Presentation July 2010Perth Corporate Immigration Presentation July 2010
Perth Corporate Immigration Presentation July 2010
 
Presentación Corporativa Gyga
Presentación Corporativa Gyga Presentación Corporativa Gyga
Presentación Corporativa Gyga
 
Arkadaşımsın
ArkadaşımsınArkadaşımsın
Arkadaşımsın
 

Similar a Virtually Anywhere

WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014
Tsahi Levent-levi
 

Similar a Virtually Anywhere (20)

The Browser As Console - HTML5 and WebGL for Game Development
The Browser As Console - HTML5 and WebGL for Game DevelopmentThe Browser As Console - HTML5 and WebGL for Game Development
The Browser As Console - HTML5 and WebGL for Game Development
 
The Power, and Pain, of Cordova Plugins
The Power, and Pain, of Cordova PluginsThe Power, and Pain, of Cordova Plugins
The Power, and Pain, of Cordova Plugins
 
WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014WebRTC State of the Market, Dec 2014
WebRTC State of the Market, Dec 2014
 
SovTech DevChat: AR Using Unity and Vuforia
SovTech DevChat: AR Using Unity and VuforiaSovTech DevChat: AR Using Unity and Vuforia
SovTech DevChat: AR Using Unity and Vuforia
 
Foundations of the Immersive Web
Foundations of the Immersive WebFoundations of the Immersive Web
Foundations of the Immersive Web
 
Getting started with PhoneGap
Getting started with PhoneGapGetting started with PhoneGap
Getting started with PhoneGap
 
JS digest, March 2017
JS digest, March 2017JS digest, March 2017
JS digest, March 2017
 
2014 HTML5 총정리
2014 HTML5 총정리2014 HTML5 총정리
2014 HTML5 총정리
 
The Publisher's Response, Digiday WTF VR, May 11th, 2016
The Publisher's Response, Digiday WTF VR, May 11th, 2016The Publisher's Response, Digiday WTF VR, May 11th, 2016
The Publisher's Response, Digiday WTF VR, May 11th, 2016
 
Unity XR platform has a new architecture – Unite Copenhagen 2019
Unity XR platform has a new architecture – Unite Copenhagen 2019Unity XR platform has a new architecture – Unite Copenhagen 2019
Unity XR platform has a new architecture – Unite Copenhagen 2019
 
HTML5 & JavaScript Games
HTML5 & JavaScript GamesHTML5 & JavaScript Games
HTML5 & JavaScript Games
 
Web technology is getting physical, join the journey
Web technology is getting physical, join the journeyWeb technology is getting physical, join the journey
Web technology is getting physical, join the journey
 
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
 
Cordova and PhoneGap Insights
Cordova and PhoneGap InsightsCordova and PhoneGap Insights
Cordova and PhoneGap Insights
 
Panther loves Symfony apps
Panther loves Symfony appsPanther loves Symfony apps
Panther loves Symfony apps
 
Baby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC TutorialBaby Steps: A WebRTC Tutorial
Baby Steps: A WebRTC Tutorial
 
GITS Class #17: Coding Multiple Apps with Flutter
GITS Class #17: Coding Multiple Apps with FlutterGITS Class #17: Coding Multiple Apps with Flutter
GITS Class #17: Coding Multiple Apps with Flutter
 
Frontend development of the (current) future
Frontend development of the (current) futureFrontend development of the (current) future
Frontend development of the (current) future
 
Intro to Mobile Game Development
Intro to Mobile Game DevelopmentIntro to Mobile Game Development
Intro to Mobile Game Development
 
Firefox OS App Development
Firefox OS App DevelopmentFirefox OS App Development
Firefox OS App Development
 

Más de Tony Parisi

Más de Tony Parisi (20)

The New Fine Arts
The New Fine ArtsThe New Fine Arts
The New Fine Arts
 
Face the Future: Computing in an Augmented World
Face the Future: Computing in an Augmented WorldFace the Future: Computing in an Augmented World
Face the Future: Computing in an Augmented World
 
Powering the VR/AR Ecosystem 2017-01-17
Powering the VR/AR Ecosystem 2017-01-17Powering the VR/AR Ecosystem 2017-01-17
Powering the VR/AR Ecosystem 2017-01-17
 
WebVR: Developing for the Immersive Web
WebVR: Developing for the Immersive WebWebVR: Developing for the Immersive Web
WebVR: Developing for the Immersive Web
 
Introduction to WebVR Autodesk Forge 2016
Introduction to WebVR Autodesk Forge 2016Introduction to WebVR Autodesk Forge 2016
Introduction to WebVR Autodesk Forge 2016
 
WebVR Ecosystem and API Update
WebVR Ecosystem and API UpdateWebVR Ecosystem and API Update
WebVR Ecosystem and API Update
 
The Immersive Web
The Immersive WebThe Immersive Web
The Immersive Web
 
Virtually Anyone
Virtually AnyoneVirtually Anyone
Virtually Anyone
 
React-VR: An Early Experiment with React and WebGL for VR Development
React-VR: An Early Experiment with React and WebGL for VR DevelopmentReact-VR: An Early Experiment with React and WebGL for VR Development
React-VR: An Early Experiment with React and WebGL for VR Development
 
WebGL: The Next Generation
WebGL:  The Next GenerationWebGL:  The Next Generation
WebGL: The Next Generation
 
Vrml, or There and Back Again
Vrml, or There and Back AgainVrml, or There and Back Again
Vrml, or There and Back Again
 
The Coming Distribution War
The Coming Distribution WarThe Coming Distribution War
The Coming Distribution War
 
Browser-Based Virtual Reality April 2015
Browser-Based Virtual Reality April 2015Browser-Based Virtual Reality April 2015
Browser-Based Virtual Reality April 2015
 
VR Without Borders RIVER WebVR April 2015
VR Without Borders RIVER WebVR April 2015VR Without Borders RIVER WebVR April 2015
VR Without Borders RIVER WebVR April 2015
 
glTF and the WebGL Art Pipeline March 2015
glTF and the WebGL Art Pipeline March 2015glTF and the WebGL Art Pipeline March 2015
glTF and the WebGL Art Pipeline March 2015
 
An Introduction to Web VR January 2015
An Introduction to Web VR January 2015An Introduction to Web VR January 2015
An Introduction to Web VR January 2015
 
Up And Running With Web VR Fall 2014
Up And Running With Web VR Fall 2014Up And Running With Web VR Fall 2014
Up And Running With Web VR Fall 2014
 
The Web Eats Everything In Its Path Fall 2014
The Web Eats Everything In Its Path Fall 2014The Web Eats Everything In Its Path Fall 2014
The Web Eats Everything In Its Path Fall 2014
 
Hacking Reality: Browser-Based VR with HTML5
Hacking Reality: Browser-Based VR with HTML5Hacking Reality: Browser-Based VR with HTML5
Hacking Reality: Browser-Based VR with HTML5
 
WebGL, WebVR and the Metaverse
WebGL, WebVR and the MetaverseWebGL, WebVR and the Metaverse
WebGL, WebVR and the Metaverse
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Virtually Anywhere

  • 1. virtually anywhere: VR and the open web Tony Parisi Vizi, inc. June 11, 2014
  • 2. VR today closed-system development native code + proprietary development tools (Unity, UDK) integration with web is whatever you get from those tools… fine for high-performance games and single isolated experiences… MASSIVE downloads 6/11/2014http://www.tonyparisi.com
  • 3. the open web 60FPS mind-blowing graphics in WebGL programming in JavaScript all your web data at your fingertips NO downloads 6/11/2014http://www.tonyparisi.com
  • 4. two great tastes… ? 6/11/2014http://www.tonyparisi.com
  • 5. Oculus Rift™ and browsers no native browser support for stereo rendering and head tracking… yet OculusBridge https://github.com/Instrument/oculus-bridge Three.js-based renderer and camera controller native app does head tracking; sends updates to browser via Web Sockets 10ms+ latency, not great vr.js https://github.com/benvanik/vr.js Three.js-based renderer and camera controller browser extension (Chrome and FF) does head tracking in native code, talks to JavaScript via plugin API < 10ms latency, better it would be ideal if browsers had built-in support head tracking stereo rendering or at least a USB interface… (not in an extension) 6/11/2014http://www.tonyparisi.com
  • 6. early experiments 6/11/2014http://www.tonyparisi.com water world paint with particles! http://vizi.gl/engine/tests/waterworld/waterRif t.html based on PartiArt by Eric Levin (@ericrius) http://ericrius1.github.io/PartiArt/ Futurgo city car test drive http://vizi.gl/engine/tests/futurgo/futurgoCity Rift.html based on Futurgo City from my book examples https://github.com/tparisi/Programming3DAp plications/ frame rate: good latency: seems ok. experience: fun. frame rate: ok latency: not great. experience: meh. the stack: vr.js OculusBridge Three.js Vizi
  • 7. GLAM (GL And Markup) - a declarative language for 3D web content https://github.com/tparisi/glam/ define 3D scene content in markup; style it in CSS vr + ml 6/11/2014http://www.tonyparisi.com <glam> <renderer type="rift"></renderer> <scene> <controller type="rift"></controller> <background id="sb1" class="skybox"></background> <group y ='1' z='-3'> <sphere class="bubble skybox" animation="bubbleBounce"></sphere> <sphere x='-1' z='-2' class="bubble skybox" animation="bubbleBounce2"></sphere> </group> … the markup <style> .skybox { envmap-right:url(../images/Park2/posx.jpg); … } .bubble { radius:.5; shader-vertex:url(../shaders/fresnel.vs); shader-fragment:url(../shaders/fresnel.fs); shader-uniforms:mRefractionRatio f 1.02 mFresnelBias f 0.1 mFresnelPower f 2.0 mFresnelScale f 1.0 tCube t null; } #sb1 { background-type:box; } </style> the CSS
  • 8. links the demos (require vr.js) http://vizi.gl/engine/tests/waterworld/waterRift.html http://vizi.gl/engine/tests/futurgo/futurgoCityRift.html http://vizi.gl/glam/examples/glamcityvr.html http://vizi.gl/glam/examples/glamshaderfresnelvr.html tools and libs Oculus Bridge https://github.com/Instrument/oculus-bridge vr.js https://github.com/benvanik/vr.js Three.js https://github.com/mrdoob/three.js/ Vizi https://github.com/tparisi/vizi GLAM https://github.com/tparisi/glam/ 6/11/2014http://www.tonyparisi.com