| // Copyright 2024 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| dictionary XRGPUProjectionLayerInit { |
| required GPUTextureFormat colorFormat; |
| GPUTextureFormat? depthStencilFormat; |
| GPUTextureUsageFlags textureUsage = 0x10; // GPUTextureUsage.RENDER_ATTACHMENT |
| double scaleFactor = 1.0; |
| }; |
| |
| [ |
| SecureContext, |
| Exposed=Window, |
| RuntimeEnabled=WebXRLayers |
| ] interface XRGPUBinding { |
| [RaisesException] constructor(XRSession session, GPUDevice device); |
| |
| readonly attribute double nativeProjectionScaleFactor; |
| |
| [RaisesException] |
| XRProjectionLayer createProjectionLayer(XRGPUProjectionLayerInit init); |
| |
| [RaisesException] |
| XRGPUSubImage getViewSubImage(XRProjectionLayer layer, XRView view); |
| |
| GPUTextureFormat getPreferredColorFormat(); |
| }; |