Diego González, PhD
@diekus
Developer Advocate
Samsung Internet
Diego González, PhD
Senior Developer Advocate, Samsung
Google Developer Expert, Web Technologies
@diekus
• Chromium Based (9.2 beta M67)
• Evergreen browser
• Android L+
galaxy.store/internet
53.17% 25.34% 7.36% 5.53%
Source: http://gs.statcounter.com/browser-market-share/mobile/russian-federation/#monthly-201812-201902
XR 101
Hardware
Content Creation
Distribution
High-precision
Low-latency
Security/privacy
Hardware
opaque transparent
video
passthrough
Head Mounted Displays (HMDs) / XR devices
*HoloLensillustrationbyWillyRodafromtheNounProject
Hardware
opaque transparent
video
passthrough
Head Mounted Displays (HMD)
Samsung Odyssey
Hardware
opaque transparent
video
passthrough
Head Mounted Displays (HMD)
Microsoft Hololens
Hardware
opaque transparent
video
passthrough
Head Mounted Displays (HMD)
Samsung Galaxy S10+
Hardware
6 DoF3 DoF
Magic Window
/ARCore-Kit
Position tracking
Hardware
6 DoF3 DoF
Magic Window
/ARCore-Kit
Position tracking
Oculus Rift
Google Cardboard
Hardware
6 DoF3 DoF
Magic Window
/ARCore-Kit
Position tracking
Oculus Rift
Samsung Gear VR
Hardware
6 DoF3 DoF
Magic Window
/ARCore-Kit
Position tracking
Oculus Rift
Hardware
6 DoF3 DoF
Magic Window
/ARCore-Kit
Position tracking
Samsung Galaxy S10e
Content Creation
SDKs per device
Frameworks based
on an open standard
rift / rift S go/gear vr quest
PC
SDK
“easily port to
Oculus Quest”
when docs
launch
mobile
SDK
Android
NDK
C, C++
C#, BooC++C++ C#, BooC++
*And this is for 1 family of devices
Distribution
pre-approved
closed environment
wait several minutes download
100s of MBs experience you
discard after 1 use
open accessible
ecosystem
multi-device, multi-platform,
progressive enhanced
experiences
open accessible
ecosystem
fast
frictionless
cross-
device progressive
accessible
immediate
social
democratic
open accessible
ecosystem
fastfrictionless
cross-
device
progressive
accessible
immediate
social
democratic
WebXR
This specification describes support for accessing virtual reality
(VR) and augmented reality (AR) devices, including sensors and
head-mounted displays, on the Web.
WebXR navigator.xr
WebXR navigator.xr
• Entry point to the API
• Query XR features
• Initiates communication
with XR hardware
• Has a list of XR devices
• Including an active one
1. Check if the type of session we want is supported
enum XRSessionMode { "inline", "immersive-vr", "immersive-ar" };
2. Advertise this to the user
3. Wait for user activation event
4. Request an XRSession
5. If it succeeds, run Frame loop
WebXRHow to
• Poll device pose
• Query info about the environment
• Present imagery to user
WebXR - XRSessionHow to
Support: Browsers
WebVR1.1WebXR*
Browsers – New kind
Support: Hardware
VR 0DoF VR 3DoF VR 6DoF AR 6DoF
*
Who’s using it?
Dance Tonite
LCD SoundSystem
/ Google
A-Painter
Mozilla
Renault Kadjar
Little Workshop
Dr. Who Time Travel
BBC / goodboy
Immersed in the Web
Gamepad API
Web Bluetooth, WebRTC
Progressive Web Apps
Web Audio
APIs
WebAuthn
Web Payments
and many more!
WebGL
Immersed in the Web
JavaScript
69.8%
Most commonly used
programming languages*
“close alignment in the technology
choices of professional developer
and the developer population
overall”*
HTML
68.5%
CSS
65.1%
SQL
57.0%
Java
45.3%
Immersed in the Web
BabylonJS A-Frame Simbol
three.js
3D assets into the mix
Paint3D
blender
Maya
3DS Max
Sketchfab
Google Poly
Remix3D
Hands on
+ Web Component
+ Progressive Web App
+ Web Component
+
• Component:
• Loads engine scripts
• Sets up the 3D environment
• Loads the 3D model
• Listening for changes
• BabylonJS
• Everything happens in
createScene
• You can easily add VR to the
scene
Bit.ly/3dmodels-website
+ Progressive Web App
+
• A-Frame:
• Declarative way of doing VR
• PWA:
• Offline VR experience
• Remove browser chrome
• No barriers to the experience
Limitations
• Performance is still a bit lower than native XR
• Resolution is a bit lower than native XR
• AR is still experimental
• Specification is under development
• Size of assets on mobile connections might be too
big
What’s next?
• AR on WebXR
• 5G for better, faster experiences
• New devices with growing capabilities
• Declarative Depth? CSS 3D?
Diego González, PhD
@diekus
https://samsunginter.net
Спасибо

Immersed in the Web