SlideShare a Scribd company logo
1 of 68
Download to read offline
单击此处添加文本
GOSIM
Conference
Web browsing on
Extended Reality
Felipe Erias
2
Presentation
• Felipe Erias
Software engineer and interaction designer
felipeerias@igalia.com
• Igalia
Igalia is a Free Software consultancy specialised in
open source technologies on a wide set of platforms
https://igalia.com
3
Introduction
• Challenges and opportunities of Web browsing on Extended Reality
(
XR
)
,
drawing from Igalia’s experience creating the Wolvic browser
• Web browsing on XR enables users to navigate and interact with
traditional web-based content as well as immersive experiences
• Wolvic is an Open Source Web browser for XR devices which supports
immersive experiences
• Wolvic is the only multi-platform Web browser for XR
4
The traditional Web
Traditional Web browsing
• On desktop PCs and smartphones
• Windows and tabs, back/forward navigation
• Bookmarks, downloads, history
• Password management
• Support DRM media playback
• Extensions, private mode, etc.
• Some Web APIs need to be specifically implemented for XR
6
Input methods
• Typically, XR devices use handheld controllers and/or hand gestures
Other methods are supported by some devices
• But most of the Web is made for desktops and touchscreens
• This mismatch can be noticeable for content that is not designed for XR
• Websites may use input modes which can not be replicated easily with
VR controllers, like pinching and dragging, or keyboard shortcuts
• In Wolvic, we usually “pretend” to be a touchscreen or a desktop;
we are also working to integrate external keyboards and voice input
14
16
Readability
• Reading documents is the most basic way to use the traditional Web
• On XR, the reading experience is limited by the resolution of the headset
• In Wolvic, we use a large window size with large text
• But there are several trade-offs with this solution
The screen can not be too large: it would cover the user’s field of vision
The text can not be too large either: the page would be harder to use
• Hopefully this limitation will get better as the hardware improves
17
Productivity
• The large virtual space provides great flexibility to the UI
• We can arrange content to leverage spatial thinking and memory
• We can experiment with richer ways to present information to the user
• UI elements can be positioned on the edge of the user's field of vision,
leveraging peripheral awareness
• XR has the potential to become a productive and flexible way to work
19
20
21
22
Video and entertainment
• Usually provided as regular 2D video; also 3D stereoscopic video
• Popular streaming video platforms
YouTube, etc.
Platform must provide playback functionality via the Web (not only app)
DRM media content must be supported by the browser engine
Examples: Disney+, HBO Max, Prime, Xigua Video, Apple TV, U
-
NEXT…
26
27
Disney+
Disney+: Spider-Man: into the…
YouTube: Graham Norton Show
YouTube: 3D Trailer
•
Avatar 2
The immersive Web
Immersive video
• Served over the Internet as a regular video media file
Can be distributed via YouTube, etc.
The video needs the right metadata so it can be displayed correctly
• The XR browser displays the video according to a specific geometry
Monoscopic: same image for both eyes
Stereoscopic: one image for each eye
Field of view: 180º, 360º
32
AirPano: Santorini, Greece
AirPano: Cancun, Mexico
35
AirPano: Everest
Hellblade - delight-vr.com
Immersive experiences: WebXR
• WebXR is a collection of Web APIs that allow the development of
immersive XR experiences on the Web
https://immersiveweb.dev
https://immersive-web.github.io
https://www.w3.org/immersive-web
https://github.com/immersive-web
• In Wolvic, WebXR is mostly implemented by the Web engine, but
we still need to connect it to the graphical layers, input, etc.
37
WebXR
sprayspace.art
Brush Work
Silk Brush
Education
• Both immersive video and interactive content
• XR is the best way to experience immersive information
• The Web makes it very easy to distribute this content
No need to create a separate app, release it on each app store, etc.
• Even existing platforms like YouTube and WikiMedia can be used
41
YouTube: 360° Airline Pilot's View
anzcrewdg.360vr.world
nationalgallery.org.uk
magische-spiegelungen.de
magische-spiegelungen.de
accessmars.withgoogle.com
accessmars.withgoogle.com
accessmars.withgoogle.com
Gaming
• One of the most popular use cases for XR
• Limitations to deliver large assets
• Performance may be lower than in native applications
• Creative indie game developers
50
plockle.com
Boulderworld - heyvr.io
Moon Rider - moonrider.xyz
Moon Rider - moonrider.xyz
The Wolvic project
Wolvic: origins
• Wolvic started out as Firefox Reality
Initial release September 2018
Goal: bring Firefox to standalone VR headsets
Support the traditional Web plus immersive experiences
Part of a wider “mixed reality” initiative at Mozilla
• Handed over to Igalia in 2022
• https://wolvic.com
56
Components overview
• Custom 3D library (based on GLES2
)
• Web engine
(
Gecko, Chromium)
• Android UI components
• Mozilla mobile Android components (browser functionality)
• OpenXR to access device capabilities
• Some platform-specific libraries
57
Web engines
• Web engine: the component that interprets and renders Web content
• Gecko
Used by Mozilla Firefox
Provides a standalone Android library
• Chromium
Used by Google Chrome
Wolvic support currently under development
58
Multiplatform
• Wolvic uses OpenXR as abstraction layer to access most XR functionality
• But we still need to cover for devices with different capabilities
• We need to test specifically with each device (and work around bugs)
• We need to take device format into account:
VR headset, AR goggles, phone-tethered glasses…
• Different platforms provide different APIs and capabilities
For example, there isn’t an unified way to create a “desktop” app in XR
59
Developed in the open
• Mozilla Public License Version 2.0
• GitHub (code and issues): https://github.com/Igalia/wolvic
• Distribution
App stores: Huawei, Meta Quest, Pico XR
Side-loading packages: https://wolvic.com/dl/
• Funded through OpenCollective: https://opencollective.com/wolvic
60
github.com/Igalia/wolvic
wolvic.com/dl
opencollective.com/wolvic
Conclusions
Conclusions
• Web browsing on XR has great potential for a wide range of use cases,
from education and productivity to entertainment and gaming
• The Web lowers the cost of experimentation and distribution
• The Web can be a venue for innovation and creativity in the XR field
• Still open questions: UI design, input, interoperability…
• Wolvic is key as the open source and multi-platform Web browser for XR
65
Thank you!
felipeerias@igalia.com
https://wolvic.com
https://igalia.com
单击此处添加文本
THANK YOU

More Related Content

Similar to Felipe Erias: Wolvic: Web Browsing on Extended Reality

Phoenix Emulator PPT
Phoenix Emulator PPTPhoenix Emulator PPT
Phoenix Emulator PPTVineet Kumar
 
Sinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the cornerSinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the cornerCatalin Gheorghiu
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Transmission2 25.11.2009
Transmission2 25.11.2009Transmission2 25.11.2009
Transmission2 25.11.2009Patrick Lauke
 
Introduction to WebGL - 1st WebGL meetup Amsterdam
Introduction to WebGL - 1st WebGL meetup AmsterdamIntroduction to WebGL - 1st WebGL meetup Amsterdam
Introduction to WebGL - 1st WebGL meetup AmsterdamThreeDee Media
 
The Mobile Development Landscape
The Mobile Development LandscapeThe Mobile Development Landscape
The Mobile Development LandscapeAmbert Ho
 
Mobile Web Development with HTML5
Mobile Web Development with HTML5Mobile Web Development with HTML5
Mobile Web Development with HTML5Roy Clarkson
 
Build (Web)VR with A-Frame (COSCUP 2019 Taipei)
Build (Web)VR with A-Frame (COSCUP 2019 Taipei)Build (Web)VR with A-Frame (COSCUP 2019 Taipei)
Build (Web)VR with A-Frame (COSCUP 2019 Taipei)Robert 'Bob' Reyes
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating systemNishant Mehare
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?Reto Meier
 
Tools For Mobile Web Design and App Creation
Tools For Mobile Web Design and App CreationTools For Mobile Web Design and App Creation
Tools For Mobile Web Design and App CreationCarli Spina
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5Muhamad Arief
 
Rich Web Applications with Aspenware
Rich Web Applications with AspenwareRich Web Applications with Aspenware
Rich Web Applications with AspenwareAspenware
 
Android development
Android developmentAndroid development
Android developmentRaynax668
 
CHIRIMEN open hardware became open source (English)
CHIRIMEN open hardware became open source  (English)CHIRIMEN open hardware became open source  (English)
CHIRIMEN open hardware became open source (English)Satoru Takagi
 

Similar to Felipe Erias: Wolvic: Web Browsing on Extended Reality (20)

Phoenix Emulator PPT
Phoenix Emulator PPTPhoenix Emulator PPT
Phoenix Emulator PPT
 
Sinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the cornerSinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the corner
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Transmission2 25.11.2009
Transmission2 25.11.2009Transmission2 25.11.2009
Transmission2 25.11.2009
 
Introduction to WebGL - 1st WebGL meetup Amsterdam
Introduction to WebGL - 1st WebGL meetup AmsterdamIntroduction to WebGL - 1st WebGL meetup Amsterdam
Introduction to WebGL - 1st WebGL meetup Amsterdam
 
My androidpresentation
My androidpresentationMy androidpresentation
My androidpresentation
 
The Mobile Development Landscape
The Mobile Development LandscapeThe Mobile Development Landscape
The Mobile Development Landscape
 
Mobile Web Development with HTML5
Mobile Web Development with HTML5Mobile Web Development with HTML5
Mobile Web Development with HTML5
 
Build (Web)VR with A-Frame (COSCUP 2019 Taipei)
Build (Web)VR with A-Frame (COSCUP 2019 Taipei)Build (Web)VR with A-Frame (COSCUP 2019 Taipei)
Build (Web)VR with A-Frame (COSCUP 2019 Taipei)
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating system
 
Android Presentation
Android PresentationAndroid Presentation
Android Presentation
 
Transforming the web into a real application platform
Transforming the web into a real application platformTransforming the web into a real application platform
Transforming the web into a real application platform
 
DjangoSki
DjangoSkiDjangoSki
DjangoSki
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
 
Tools For Mobile Web Design and App Creation
Tools For Mobile Web Design and App CreationTools For Mobile Web Design and App Creation
Tools For Mobile Web Design and App Creation
 
Gideros introduction
Gideros introductionGideros introduction
Gideros introduction
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5
 
Rich Web Applications with Aspenware
Rich Web Applications with AspenwareRich Web Applications with Aspenware
Rich Web Applications with Aspenware
 
Android development
Android developmentAndroid development
Android development
 
CHIRIMEN open hardware became open source (English)
CHIRIMEN open hardware became open source  (English)CHIRIMEN open hardware became open source  (English)
CHIRIMEN open hardware became open source (English)
 

More from Igalia

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEIgalia
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Automated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesAutomated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesIgalia
 
Embedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceEmbedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceIgalia
 
Optimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfOptimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfIgalia
 
Running JS via WASM faster with JIT
Running JS via WASM      faster with JITRunning JS via WASM      faster with JIT
Running JS via WASM faster with JITIgalia
 
To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!Igalia
 
Implementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerImplementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerIgalia
 
8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in MesaIgalia
 
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIntroducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIgalia
 
2023 in Chimera Linux
2023 in Chimera                    Linux2023 in Chimera                    Linux
2023 in Chimera LinuxIgalia
 
Building a Linux distro with LLVM
Building a Linux distro        with LLVMBuilding a Linux distro        with LLVM
Building a Linux distro with LLVMIgalia
 
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsturnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsIgalia
 
Graphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesGraphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesIgalia
 
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSDelegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSIgalia
 
MessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webMessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webIgalia
 
Replacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersReplacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersIgalia
 
I'm not an AMD expert, but...
I'm not an AMD expert, but...I'm not an AMD expert, but...
I'm not an AMD expert, but...Igalia
 
Status of Vulkan on Raspberry
Status of Vulkan on RaspberryStatus of Vulkan on Raspberry
Status of Vulkan on RaspberryIgalia
 

More from Igalia (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPE
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Automated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesAutomated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded Devices
 
Embedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceEmbedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to Maintenance
 
Optimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfOptimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdf
 
Running JS via WASM faster with JIT
Running JS via WASM      faster with JITRunning JS via WASM      faster with JIT
Running JS via WASM faster with JIT
 
To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!
 
Implementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerImplementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamer
 
8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa
 
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIntroducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
 
2023 in Chimera Linux
2023 in Chimera                    Linux2023 in Chimera                    Linux
2023 in Chimera Linux
 
Building a Linux distro with LLVM
Building a Linux distro        with LLVMBuilding a Linux distro        with LLVM
Building a Linux distro with LLVM
 
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsturnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
 
Graphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesGraphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devices
 
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSDelegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
 
MessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webMessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the web
 
Replacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersReplacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shaders
 
I'm not an AMD expert, but...
I'm not an AMD expert, but...I'm not an AMD expert, but...
I'm not an AMD expert, but...
 
Status of Vulkan on Raspberry
Status of Vulkan on RaspberryStatus of Vulkan on Raspberry
Status of Vulkan on Raspberry
 

Recently uploaded

Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
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 WorkerThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Recently uploaded (20)

Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
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
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Felipe Erias: Wolvic: Web Browsing on Extended Reality

  • 2. Web browsing on Extended Reality Felipe Erias 2
  • 3. Presentation • Felipe Erias Software engineer and interaction designer felipeerias@igalia.com • Igalia Igalia is a Free Software consultancy specialised in open source technologies on a wide set of platforms https://igalia.com 3
  • 4. Introduction • Challenges and opportunities of Web browsing on Extended Reality ( XR ) , drawing from Igalia’s experience creating the Wolvic browser • Web browsing on XR enables users to navigate and interact with traditional web-based content as well as immersive experiences • Wolvic is an Open Source Web browser for XR devices which supports immersive experiences • Wolvic is the only multi-platform Web browser for XR 4
  • 6. Traditional Web browsing • On desktop PCs and smartphones • Windows and tabs, back/forward navigation • Bookmarks, downloads, history • Password management • Support DRM media playback • Extensions, private mode, etc. • Some Web APIs need to be specifically implemented for XR 6
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. Input methods • Typically, XR devices use handheld controllers and/or hand gestures Other methods are supported by some devices • But most of the Web is made for desktops and touchscreens • This mismatch can be noticeable for content that is not designed for XR • Websites may use input modes which can not be replicated easily with VR controllers, like pinching and dragging, or keyboard shortcuts • In Wolvic, we usually “pretend” to be a touchscreen or a desktop; we are also working to integrate external keyboards and voice input 14
  • 15.
  • 16. 16
  • 17. Readability • Reading documents is the most basic way to use the traditional Web • On XR, the reading experience is limited by the resolution of the headset • In Wolvic, we use a large window size with large text • But there are several trade-offs with this solution The screen can not be too large: it would cover the user’s field of vision The text can not be too large either: the page would be harder to use • Hopefully this limitation will get better as the hardware improves 17
  • 18.
  • 19. Productivity • The large virtual space provides great flexibility to the UI • We can arrange content to leverage spatial thinking and memory • We can experiment with richer ways to present information to the user • UI elements can be positioned on the edge of the user's field of vision, leveraging peripheral awareness • XR has the potential to become a productive and flexible way to work 19
  • 20. 20
  • 21. 21
  • 22. 22
  • 23.
  • 24.
  • 25.
  • 26. Video and entertainment • Usually provided as regular 2D video; also 3D stereoscopic video • Popular streaming video platforms YouTube, etc. Platform must provide playback functionality via the Web (not only app) DRM media content must be supported by the browser engine Examples: Disney+, HBO Max, Prime, Xigua Video, Apple TV, U - NEXT… 26
  • 32. Immersive video • Served over the Internet as a regular video media file Can be distributed via YouTube, etc. The video needs the right metadata so it can be displayed correctly • The XR browser displays the video according to a specific geometry Monoscopic: same image for both eyes Stereoscopic: one image for each eye Field of view: 180º, 360º 32
  • 37. Immersive experiences: WebXR • WebXR is a collection of Web APIs that allow the development of immersive XR experiences on the Web https://immersiveweb.dev https://immersive-web.github.io https://www.w3.org/immersive-web https://github.com/immersive-web • In Wolvic, WebXR is mostly implemented by the Web engine, but we still need to connect it to the graphical layers, input, etc. 37 WebXR
  • 41. Education • Both immersive video and interactive content • XR is the best way to experience immersive information • The Web makes it very easy to distribute this content No need to create a separate app, release it on each app store, etc. • Even existing platforms like YouTube and WikiMedia can be used 41
  • 42. YouTube: 360° Airline Pilot's View
  • 50. Gaming • One of the most popular use cases for XR • Limitations to deliver large assets • Performance may be lower than in native applications • Creative indie game developers 50
  • 53. Moon Rider - moonrider.xyz
  • 54. Moon Rider - moonrider.xyz
  • 56. Wolvic: origins • Wolvic started out as Firefox Reality Initial release September 2018 Goal: bring Firefox to standalone VR headsets Support the traditional Web plus immersive experiences Part of a wider “mixed reality” initiative at Mozilla • Handed over to Igalia in 2022 • https://wolvic.com 56
  • 57. Components overview • Custom 3D library (based on GLES2 ) • Web engine ( Gecko, Chromium) • Android UI components • Mozilla mobile Android components (browser functionality) • OpenXR to access device capabilities • Some platform-specific libraries 57
  • 58. Web engines • Web engine: the component that interprets and renders Web content • Gecko Used by Mozilla Firefox Provides a standalone Android library • Chromium Used by Google Chrome Wolvic support currently under development 58
  • 59. Multiplatform • Wolvic uses OpenXR as abstraction layer to access most XR functionality • But we still need to cover for devices with different capabilities • We need to test specifically with each device (and work around bugs) • We need to take device format into account: VR headset, AR goggles, phone-tethered glasses… • Different platforms provide different APIs and capabilities For example, there isn’t an unified way to create a “desktop” app in XR 59
  • 60. Developed in the open • Mozilla Public License Version 2.0 • GitHub (code and issues): https://github.com/Igalia/wolvic • Distribution App stores: Huawei, Meta Quest, Pico XR Side-loading packages: https://wolvic.com/dl/ • Funded through OpenCollective: https://opencollective.com/wolvic 60
  • 65. Conclusions • Web browsing on XR has great potential for a wide range of use cases, from education and productivity to entertainment and gaming • The Web lowers the cost of experimentation and distribution • The Web can be a venue for innovation and creativity in the XR field • Still open questions: UI design, input, interoperability… • Wolvic is key as the open source and multi-platform Web browser for XR 65