← Back to release summary

WebXR Depth Sensing Performance Improvements

Category
Device
Type
New or changed feature
Status
Proposed (Chrome Proposed)
Intent stage
None

Summary

Exposes several new mechanisms to customize the behavior of the depth sensing feature within a WebXR session, with the goal of improving the performance of the generation or consumption of the depth buffer. The key mechanisms exposed are: the ability to request the raw or smooth depth buffer, the ability to request that the runtime stop or resume providing the depth buffer, and the ability to expose a depth buffer that does not align with the user's view exactly, so that the user agent does not need to perform unnecessary re-projections every frame.

Motivation

Web Developers use the depth sensing feature for a number of reasons; however, the existing shape of the API needs some tweaking to accommodate for changes in hardware (non-eye-aligned depth buffers), and to improve performance of developer experiences who often don't need depth sensing during the full scope of their experience.

Standards & signals

Docs: https://docs.google.com/document/d/1Nx3hCHqq8UZ6E1nxctmkr6BBQKwf3AgIai7WVsQ_nUM/edit?usp=sharing

Samples: https://immersive-web.github.io/webxr-samples/layers-samples/proj-multiview-occlusion.html https://immersive-web.github.io/webxr-samples/proposals/phone-ar-depth-gpu.html https://immersive-web.github.io/webxr-samples/proposals/phone-ar-depth.html

Explainers: https://github.com/immersive-web/depth-sensing/blob/main/explainer.md

View on chromestatus.com