Bug 222173 - Implement OpenXR port graphics binding
Summary: Implement OpenXR port graphics binding
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebXR (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on: 222263
Blocks: 208988
  Show dependency treegraph
 
Reported: 2021-02-19 07:55 PST by Imanol Fernandez
Modified: 2021-02-26 03:54 PST (History)
8 users (show)

See Also:


Attachments
Patch (64.94 KB, patch)
2021-02-19 08:33 PST, Imanol Fernandez
no flags Details | Formatted Diff | Diff
Patch (25.06 KB, patch)
2021-02-24 07:07 PST, Imanol Fernandez
no flags Details | Formatted Diff | Diff
Patch (25.06 KB, patch)
2021-02-24 07:09 PST, Imanol Fernandez
svillar: review+
svillar: commit-queue-
Details | Formatted Diff | Diff
Patch for landing (24.62 KB, patch)
2021-02-26 02:39 PST, Imanol Fernandez
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Imanol Fernandez 2021-02-19 07:55:58 PST
Headless session is not valid for tracking or rendering, and we need a graphics binding to create a non headless XrSession.
Comment 1 Imanol Fernandez 2021-02-19 08:33:35 PST
Created attachment 420972 [details]
Patch
Comment 2 Imanol Fernandez 2021-02-22 02:39:18 PST
Comment on attachment 420972 [details]
Patch

I splitted the file refactor into a different patch: https://bugs.webkit.org/show_bug.cgi?id=222263

I'll rebase this one when 222264 is merged
Comment 3 Imanol Fernandez 2021-02-24 07:07:35 PST
Created attachment 421405 [details]
Patch

Rebase onto main
Comment 4 Imanol Fernandez 2021-02-24 07:09:30 PST
Created attachment 421406 [details]
Patch

Fix nit in changelog
Comment 5 Sergio Villar Senin 2021-02-26 02:12:20 PST
Comment on attachment 421406 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=421406&action=review

> Source/WebCore/platform/xr/openxr/OpenXRExtensions.cpp:78
> +        reinterpret_cast<PFN_xrVoidFunction*>(&m_methods.xrGetOpenGLGraphicsRequirementsKHR));

Use a single line here

> Source/WebCore/platform/xr/openxr/OpenXRUtils.h:30
> +typedef __eglMustCastToProperFunctionPointerType (*PFNEGLGETPROCADDRESSPROC)(const char *proc);

Seems superweird having to add this.

Style wise the asterisk should go always next to the type, void *EGL -> void* EGL, char *... etc

> Source/WebCore/platform/xr/openxr/PlatformXROpenXR.cpp:265
> +    return features;

So this is how we avoid having to create the session too early. nice! I should have researched a bit more about it.
Comment 6 Imanol Fernandez 2021-02-26 02:39:47 PST
Created attachment 421630 [details]
Patch for landing

Address review feedback
Comment 7 EWS 2021-02-26 03:53:12 PST
Committed r273549: <https://commits.webkit.org/r273549>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 421630 [details].
Comment 8 Radar WebKit Bug Importer 2021-02-26 03:54:13 PST
<rdar://problem/74785342>