webXRWebGLLayer.d.ts 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import type { RenderTargetTexture } from "../Materials/Textures/renderTargetTexture";
  2. import type { Viewport } from "../Maths/math.viewport";
  3. import type { Scene } from "../scene";
  4. import type { Nullable } from "../types";
  5. import { WebXRLayerWrapper } from "./webXRLayerWrapper";
  6. import { WebXRLayerRenderTargetTextureProvider } from "./webXRRenderTargetTextureProvider";
  7. /**
  8. * Wraps xr webgl layers.
  9. * @internal
  10. */
  11. export declare class WebXRWebGLLayerWrapper extends WebXRLayerWrapper {
  12. readonly layer: XRWebGLLayer;
  13. /**
  14. * @param layer is the layer to be wrapped.
  15. * @returns a new WebXRLayerWrapper wrapping the provided XRWebGLLayer.
  16. */
  17. constructor(layer: XRWebGLLayer);
  18. }
  19. /**
  20. * Provides render target textures and other important rendering information for a given XRWebGLLayer.
  21. * @internal
  22. */
  23. export declare class WebXRWebGLLayerRenderTargetTextureProvider extends WebXRLayerRenderTargetTextureProvider {
  24. readonly layerWrapper: WebXRWebGLLayerWrapper;
  25. protected _framebufferDimensions: {
  26. framebufferWidth: number;
  27. framebufferHeight: number;
  28. };
  29. private _rtt;
  30. private _framebuffer;
  31. private _layer;
  32. constructor(scene: Scene, layerWrapper: WebXRWebGLLayerWrapper);
  33. trySetViewportForView(viewport: Viewport, view: XRView): boolean;
  34. getRenderTargetTextureForEye(eye: XREye): Nullable<RenderTargetTexture>;
  35. getRenderTargetTextureForView(view: XRView): Nullable<RenderTargetTexture>;
  36. }