import { Camera } from "../../Cameras/camera.pure.js"; import { UniversalCamera } from "../../Cameras/universalCamera.pure.js"; import { type Scene } from "../../scene.js"; import { Vector3 } from "../../Maths/math.vector.pure.js"; import { type Nullable } from "../../types.js"; /** * Camera used to simulate stereoscopic rendering on real screens (based on UniversalCamera) * @see https://doc.babylonjs.com/features/featuresDeepDive/cameras */ export declare class StereoscopicScreenUniversalCamera extends UniversalCamera { private _distanceToProjectionPlane; private _distanceBetweenEyes; set distanceBetweenEyes(newValue: number); /** * distance between the eyes */ get distanceBetweenEyes(): number; set distanceToProjectionPlane(newValue: number); /** * Distance to projection plane (should be the same units the like distance between the eyes) */ get distanceToProjectionPlane(): number; /** * Creates a new StereoscopicScreenUniversalCamera * @param name defines camera name * @param position defines initial position * @param scene defines the hosting scene * @param distanceToProjectionPlane defines distance between each color axis. The rig cameras will receive this as their negative z position! * @param distanceBetweenEyes defines is stereoscopic is done side by side or over under */ constructor(name: string, position: Vector3, scene?: Scene, distanceToProjectionPlane?: number, distanceBetweenEyes?: number); /** * Gets camera class name * @returns StereoscopicScreenUniversalCamera */ getClassName(): string; /** * @internal */ createRigCamera(name: string): Nullable; /** * @internal */ _updateRigCameras(): void; private _updateCamera; protected _setRigMode(): void; }