[webkit-dev] WebVR on WebKit

Sergio Villar Senin svillar at igalia.com
Thu Aug 3 15:06:27 PDT 2017


O Xov, 03-08-2017 ás 10:56 -0700, Alexis Menard escribiu:
> Hi,
> 
> > On Aug 3, 2017, at 9:19 AM, Sergio Villar Senin <svillar at igalia.com
> > > wrote:
> > 
> > O Xov, 03-08-2017 ás 08:44 -0700, Alexis Menard escribiu:
> > > Hi,
> > > 
> > > > On Aug 3, 2017, at 7:52 AM, Dean Jackson <dino at apple.com>
> > > > wrote:
> > > > 
> > > > 
> > > > 
> > > > > On 2 Aug 2017, at 19:55, Sergio Villar Senin <svillar at igalia.
> > > > > com>
> > > > > wrote:
> > > > > 
> > > > > 
> > > > > Our main interest is to eventually have some implementation
> > > > > working on
> > > > > WebKitGtk and/or WPE on Linux but obviously there is a lot of
> > > > > cross-
> > > > > platform work that needs to be done as well. Our initial idea
> > > > > would be
> > > > > to use the OpenVR API as Valve released a Linux version of
> > > > > their
> > > > > SDK
> > > > > some months ago. Looks like a safe bet as other vendors like
> > > > > Firefox or
> > > > > Chromium already include it in their trees as third party.
> > > > 
> > > > I agree with the idea to assume use of the OpenVR SDK at the
> > > > moment. It
> > > > is the only major VR SDK that is available for macOS, Linux and
> > > > Windows.
> > > > 
> > > > So maybe our platform API should be very similar to the OpenVR
> > > > API?
> > > > I haven't looked at other SDKs like Oculus, but hopefully it
> > > > isn't
> > > > too
> > > > different.
> > > 
> > > You should also keep an eye on OpenXR which is being discussed in
> > > Khronos. These seems like the future standard API for
> > > applications to
> > > hook into to support VR (independently of the underlaying VR
> > > runtime). More info there : https://www.khronos.org/openxr
> > 
> > Right I'm aware of that effort. The thing is that using OpenXR does
> > not
> > imply that you can get rid of native SDKs anyway. From
> > conversations I
> > had with some other people involved in WebVR efforts it looks like
> > the
> > main SDKs (like Oculus or Vive's) will be used anyway if available
> > and
> > that OpenXR would be more like a fallback for the hundreds of
> > devices
> > that will hit the market soon.
> 
> That’s correct that native VR runtimes will still be a requirements
> but they are going to be under the OpenXR application layer (read
> Oculus and Steam will most likely make their runtime OpenXR
> compliant). The benefits of OpenXR for WebKit (or any engine) is that
> you’ll have a unique backend to talk to a VR runtime (whatever the
> user has installed).

That's clear, having a unified interface for VR is something that was
never there and one of the reasons why the market has been always that
fragmented.

> Please note that OpenXR is two folds, an application interface/API
> for applications (say in this case WebKit) to talk to a VR runtime
> and render stuff (as well as getting information from the device) and
> a Device Layer used by HMDs manufacturers (or hundred devices as you
> say) so that VR runtimes can talk to any OpenXR compliant devices.
> This will help for example SteamVR or Oculus Runtime to be compatible
> with the gazillions of devices flooding the market at some point
> provided the later are compliant with OpenXR.

Right, let's hope that those two extra layers wouldn't cause any
significant performance issue, something that is still not clear IMO.

> But OpenXR is 2018 material so indeed OpenVR is probably a good bet
> for immediate support. Please note that SteamVR allows you to use
> Oculus Rift HMD not just HTC Vive so in theory (but I haven’t tried
> it with OpenVR) you shouldn’t need a dedicated backend for Oculus.

That supports my point, but that's only for Windows (as it requires
Oculus SDK if I am not wrong), isn't it? In any case, from the WebKit's
POV, OpenVR must not be a requirement, it is just one of the potential
platform libs and we'd have to design some platform API anyway. Should
we base it on OpenVR is something that could be changed in the future
to make it more friendly for other backends (like OpenXR). After all,
all the SDKs share more or less the same concepts.

BR


More information about the webkit-dev mailing list