@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
29 lines (28 loc) • 1.37 kB
TypeScript
/// <reference types="webxr" />
import { Vector3, Matrix4, Quaternion, WebGLRenderer, Camera } from 'three';
import { PolyScene } from '../../../engine/scene/PolyScene';
import { CoreWebXRARControllerOptions } from './CommonAR';
import { BaseCoreWebXRController, OnWebXRSessionStartedCallback } from '../_BaseCoreWebXRController';
export declare class CoreWebXRARController extends BaseCoreWebXRController {
protected options: CoreWebXRARControllerOptions;
private hitTestSource;
private hitTestSourceRequested;
private _hitDetected;
private _hitMatrix;
private _hitPosition;
private _hitQuaternion;
constructor(scene: PolyScene, renderer: WebGLRenderer, camera: Camera, canvas: HTMLCanvasElement, options: CoreWebXRARControllerOptions);
createButton(): HTMLElement;
attachButton(parentElement: HTMLElement, buttonElement: HTMLElement): void;
requestSession(sessionInit: XRSessionInit, onSessionStarted: OnWebXRSessionStartedCallback): Promise<void | undefined>;
private _estimatedLightController;
private _previousSceneBackground;
protected _onSessionStart(): void;
protected _onSessionEnd(): void;
hitMatrix(target: Matrix4): void;
hitPosition(target: Vector3): void;
hitQuaternion(target: Quaternion): void;
hitDetected(): boolean;
process(frame?: XRFrame): void;
private _resolveHit;
}