123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- import type { Nullable } from "../types";
- import type { WebXRLayerRenderTargetTextureProvider } from "./webXRRenderTargetTextureProvider";
- import type { WebXRSessionManager } from "./webXRSessionManager";
- /** Covers all supported subclasses of WebXR's XRCompositionLayer */
- export type WebXRCompositionLayerType = "XRProjectionLayer";
- export type WebXRQuadLayerType = "XRQuadLayer";
- /** Covers all supported subclasses of WebXR's XRLayer */
- export type WebXRLayerType = "XRWebGLLayer" | WebXRCompositionLayerType | WebXRQuadLayerType;
- /**
- * Wrapper over subclasses of XRLayer.
- * @internal
- */
- export declare class WebXRLayerWrapper {
- /** The width of the layer's framebuffer. */
- getWidth: () => number;
- /** The height of the layer's framebuffer. */
- getHeight: () => number;
- /** The XR layer that this WebXRLayerWrapper wraps. */
- readonly layer: XRLayer;
- /** The type of XR layer that is being wrapped. */
- readonly layerType: WebXRLayerType;
- /** Create a render target provider for the wrapped layer. */
- private _createRenderTargetTextureProvider;
- private _rttWrapper;
- /**
- * Check if fixed foveation is supported on this device
- */
- get isFixedFoveationSupported(): boolean;
- /**
- * Get the fixed foveation currently set, as specified by the webxr specs
- * If this returns null, then fixed foveation is not supported
- */
- get fixedFoveation(): Nullable<number>;
- /**
- * Set the fixed foveation to the specified value, as specified by the webxr specs
- * This value will be normalized to be between 0 and 1, 1 being max foveation, 0 being no foveation
- */
- set fixedFoveation(value: Nullable<number>);
- /**
- * Create a render target provider for the wrapped layer.
- * @param xrSessionManager The XR Session Manager
- * @returns A new render target texture provider for the wrapped layer.
- */
- createRenderTargetTextureProvider(xrSessionManager: WebXRSessionManager): WebXRLayerRenderTargetTextureProvider;
- dispose(): void;
- protected constructor(
- /** The width of the layer's framebuffer. */
- getWidth: () => number,
- /** The height of the layer's framebuffer. */
- getHeight: () => number,
- /** The XR layer that this WebXRLayerWrapper wraps. */
- layer: XRLayer,
- /** The type of XR layer that is being wrapped. */
- layerType: WebXRLayerType,
- /** Create a render target provider for the wrapped layer. */
- _createRenderTargetTextureProvider: (xrSessionManager: WebXRSessionManager) => WebXRLayerRenderTargetTextureProvider);
- }
|