LGTM1

On Thu, Nov 13, 2025 at 9:25 PM Rik Cabanier <[email protected]> wrote:

> Thanks Alex! I'm excited to see this shipped in Chrome.
>
> This feature is currently behind an experimental flag in the Meta Quest
> Browser because the underlying OpenXR API has a bug that will be fixed in
> the next version of our OS.
> Once that goes out, we will remove the experimental flag and I'll work on
> adding support in three.js.
>
> On Fri, Nov 14, 2025 at 8:25 AM Chromestatus <
> [email protected]> wrote:
>
>> *Contact emails*
>> [email protected]
>>
>> *Specification*
>>
>> https://immersive-web.github.io/webxr/#xrvisibilitymaskchangeevent-interface
>>
>> *Summary*
>> Adds an XRVisibilityMaskChange event that will provide a list of vertices
>> and a list of indices to represent the mesh of the visible portion of the
>> user's viewport. This data can then be used to confidently limit the amount
>> of the viewport drawn to in order to improve performance. To better support
>> this event, XRView's are also given unique identifiers to allow easier
>> pairing with the associated masks. This is an extension to the core WebXR
>> specification.
>>
>> *Blink component*
>> Blink>WebXR
>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EWebXR%22>
>>
>> *Web Feature ID*
>> webxr-device <https://webstatus.dev/features/webxr-device>
>>
>> *Motivation*
>> Without this change, pages are forced to draw to the full texture
>> provided for the corresponding viewport, when portions of this viewport
>> will not even be visible to the user, resulting in wasted work. By
>> providing an event to describe the clipped-to area of the viewport,
>> developers can save on per-frame work, and improve performance of their
>> experiences, by reducing the required fill rate by 5-10% depending on
>> device. This is given as an event because some system-level functionality
>> may in fact capture the entire viewport, and thus those systems would like
>> to toggle between having developers draw the entire viewport versus only
>> the area visible to the active user.
>>
>> *Initial public proposal*
>> *No information provided*
>>
>> *TAG review*
>> *No information provided*
>>
>> *TAG review status*
>> Not applicable
>>
>> *Risks*
>>
>>
>> *Interoperability and Compatibility*
>> *No information provided*
>>
>> *Gecko*: Positive (
>> https://github.com/mozilla/standards-positions/issues/218)
>>
>
Note: is is for the WebXR device API generally, not for this addition.


>
>> *WebKit*: No signal (
>> https://github.com/WebKit/standards-positions/issues/155) Note that the
>> Apple Vision Pro does ship WebXR behind a flag.
>>
>> *Web developers*: Positive Note that Meta has a pending change to merge
>> into one of the popular WebXR libraries pending this shipping in other
>> browsers.
>>
>> *Other signals*: The feature was proposed by Meta, who I believe has
>> this implemented in the Quest browser.
>>
>> *Ergonomics*
>> This is an event that is fired with a typically smallish amount of data,
>> but also expected to only be triggered infrequently. The feature itself is
>> designed to help developers improve performance of their experiences by
>> reducing needless work.
>>
>> *Activation*
>> The structure of the event is designed to cleanly work with clipping
>> logic within glsl, and developers from Meta already have draft changes to
>> merge into THREE.js, a popular WebXR library to take advantage of this.
>>
>> *Security*
>> N/a
>>
>> *WebView application risks*
>>
>> Does this intent deprecate or change behavior of existing APIs, such that
>> it has potentially high risk for Android WebView-based applications?
>> Feature is not exposed on WebView
>>
>>
>> *Debuggability*
>> *No information provided*
>>
>> *Will this feature be supported on all six Blink platforms (Windows, Mac,
>> Linux, ChromeOS, Android, and Android WebView)?*
>> No
>> WebXR is not supported on WebView. Sessions are really only possible on
>> Windows and Android, but types are not blocked on other Desktop platforms.
>>
>> *Is this feature fully tested by web-platform-tests
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
>> Yes
>> https://wpt.fyi/results/webxr?label=experimental&label=master&aligned
>> Note that tests *do* run on the CQ. Results on wpt.fyi are blocked by
>> crbug.com/410607164
>>
>> *Flag name on about://flags*
>> *No information provided*
>>
>> *Finch feature name*
>> WebXRVisibilityMask
>>
>> *Rollout plan*
>> Will ship enabled for all users
>>
>> *Requires code in //chrome?*
>> False
>>
>> *Tracking bug*
>> https://issues.chromium.org/issues/450538226
>>
>> *Availability expectation*
>> Feature should be available on Meta Quest browser either now or soon.
>>
>> *Estimated milestones*
>> Shipping on desktop 144
>> Shipping on Android 144
>>
>> *Anticipated spec changes*
>>
>> Open questions about a feature may be a source of future web compat or
>> interop issues. Please list open issues (e.g. links to known github issues
>> in the project for the feature specification) whose resolution may
>> introduce web compat/interop risk (e.g., changing to naming or structure of
>> the API in a non-backward-compatible way).
>> None expected
>>
>> *Link to entry on the Chrome Platform Status*
>> https://chromestatus.com/feature/5073760055066624?gate=6599862548299776
>>
>> This intent message was generated by Chrome Platform Status
>> <https://chromestatus.com>.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/69166702.050a0220.b6611.00a2.GAE%40google.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/69166702.050a0220.b6611.00a2.GAE%40google.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGN7qDAqivD%2BX0g_HdexXTEbhMwvNc93rJMM696k%3DouHEKvNVA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGN7qDAqivD%2BX0g_HdexXTEbhMwvNc93rJMM696k%3DouHEKvNVA%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw8igREieby9s1jy9zctkG6eBBnUj0oRMN5KDj9R9U2z7w%40mail.gmail.com.

Reply via email to