[wpe-webkit] Status of WebXR on OpenXR

Jakob Bornecrantz wallbraker at gmail.com
Fri Apr 9 09:00:43 PDT 2021


Hello Imanol,

Very happy that you guys are making progress, I see that the Opaque
Framebuffer patches have landed. We just landed improvements to our
frame timing code that should make VR experience better, hopefully we
will have frame warping in there soon as well.

How are things going now?

Cheers, Jakob.

On Thu, Mar 11, 2021 at 3:36 PM Imanol Fernandez <ifernandez at igalia.com> wrote:
>
> Hi Jabob,
>
> The Opaque Framebuffer patch is already in the review process:
> https://bugs.webkit.org/show_bug.cgi?id=222607
>
> You can also see a video of a running WebXR sample.
>
> Regarding Mozilla Hubs, I haven't tried it yet. A-frame/hubs relies in
> some WebXR events and controllers that are still missing, so I don't
> expect it to work yet. We want to land WebXR controllers support next
> with the milestone of running a cool complete demo such as Hello WebXR.
> Mozilla Hubs should be close once we get that one working correctly.
>
> On 2/25/21 6:45 PM, Jakob Bornecrantz wrote:
> > Hello Imanol,
> >
> > Thank you for your detailed reply, answers inline.
> >
> > On Thu, Feb 25, 2021 at 4:23 PM Imanol Fernandez <ifernandez at igalia.com> wrote:
> >> Hi Jakob,
> >>
> >> I'm Imanol Fernandez, and I'm currently working on the WPE WebXR and OpenXR platform implementation. We are using Monado to test the OpenXR runtime (using a HTC Vive), thanks for your great job on the runtime!
> > Thank you very much!
> >
> >> We have landed several base functionality patches and WPE is already passing the XRReferenceSpace, getPose, getViewerPose and RAF related tests. We are currently working on all the rendering stuff and getting the Opaque Framebuffer implementation correctly rendering into OpenXR. Here [1] is a video of the tracking working on a hacked inline session.
> > Oh that's cool, making progress I see.
> >
> >> If you want to test the current implementation you can compile the main WPE branch, enable the webxr pref, and apply this patch (https://bugs.webkit.org/show_bug.cgi?id=222173). I recommend that you wait for the upcoming OpaqueFramebuffer patch though, because I've been using some locally modified WebXR sample for the tests, and that code is not on the repository. The Opaque FBO patch should be ready for review in the next few days and with that patch applied you should be able to run the first WebXR samples without any modification.
> > Thank you, I will probably wait until the Opaque FBO patch goes in
> > then. That does probably answer my follow up question of 'Does it run
> > Mozilla hubs?'.
> >
> > If there is a flatpak/snap/deb package down the line I could install
> > down the line it would be really nice (and point potential tests/users
> > to as well).
> >
> >> One thing that would be great to have from Monado is the support for direct HMD rendering in Wayland. From what I tested using some native openxr-samples, Monado only supports direct rendering when using X11. WPE is expected to run on Wayland, so if we can have that support on Monado it would be really nice to get the best WebXR experience on Linux. Could you share the status or plans on that support?
> > We are concentrating on getting a single setup working really well
> > (tbh 'really well' is more like being a proper XR runtime that doesn't
> > make the users puke), in this case: AMD, X11, Index (and Vive). After
> > that branching out to work really well on other setups (North Star,
> > Wayland, long tail of devices), we got direct mode for free with X11
> > and we are working on trying to upstream much needed display timing
> > work into Mesa to get the good enough display timing information
> > needed for XR. Currently there is no upstream support for direct mode
> > in neither the Wayland protocol, Wayland Compositors or a Vulkan
> > extension.
> >
> > But all that said we would love to support direct mode on Wayland,
> > there is code out there that works. We recently did a push to try and
> > get everything, but got bikeshedded at the finish line and we ran out
> > of time to do any more work on it. So either it will take a while
> > until we can free up resources to work on it again, or somebody else
> > picks up the work. All of the MR's are basically ready to go. And
> > Lubosz even made arch packages for everything to let people try it
> > out.
> >
> > Display timing: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9016
> >
> > Monado: https://gitlab.freedesktop.org/monado/monado/-/merge_requests/683
> > Mesa: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8981
> > Vulkan: https://github.com/KhronosGroup/Vulkan-Docs/pull/1450
> > Arch packages: https://gitlab.freedesktop.org/lubosz/wlxr-pkgbuilds
> >
> > Cheers, Jakob.
> >
> >> [1] https://www.dropbox.com/s/natdozbo0v6o32b/webxr_inline_and_tracking.mkv?dl=0
> >>
> >> On 2/25/21 4:03 PM, Jakob Bornecrantz wrote:
> >>
> >> Hello
> >>
> >> A short introduction I'm Jakob Bornecrantz working on the Monado[1]
> >> project aiming to implement a complete open source OpenXR runtime on
> >> Linux. We just recently officially became a conformant OpenXR
> >> implementation.
> >>
> >> One thing we are missing is a browser that support WebXR on Linux that
> >> uses OpenXR. I have seen some patches float by in the commits
> >> mentioning OpenXR and WPE, so I'm wondering what the status of
> >> WebXR/OpenXR is on Linux? What is the easiest way to try this out? Are
> >> there any opportunities for collaboration?
> >>
> >> Cheers, Jakob.
> >>
> >> [1] https://monado.freedesktop.org/
> >>   _______________________________________________
> >> Do not post admin requests to the list. They will be ignored.
> >> webkit-wpe mailing list      (webkit-wpe at lists.webkit.org)
> >> Help/Unsubscribe/Update your Subscription:
> >> https://lists.webkit.org/mailman//listinfo/webkit-wpe
> >>
> >>   _______________________________________________
> >> Do not post admin requests to the list. They will be ignored.
> >> webkit-wpe mailing list      (webkit-wpe at lists.webkit.org)
> >> Help/Unsubscribe/Update your Subscription:
> >> https://lists.webkit.org/mailman//listinfo/webkit-wpe


More information about the webkit-wpe mailing list