@galacean/engine-xr 2.0.0-alpha.5 → 2.0.0-alpha.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.js +51 -88
- package/dist/browser.js.map +1 -1
- package/dist/browser.min.js +1 -1
- package/dist/browser.min.js.map +1 -1
- package/dist/main.js +51 -88
- package/dist/main.js.map +1 -1
- package/dist/module.js +52 -89
- package/dist/module.js.map +1 -1
- package/package.json +6 -5
- package/types/XRManagerExtended.d.ts +75 -5
- package/types/feature/XRFeature.d.ts +38 -0
- package/types/feature/camera/XRCameraManager.d.ts +29 -4
- package/types/feature/trackable/XRRequestTracking.d.ts +11 -1
- package/types/feature/trackable/XRTrackableFeature.d.ts +12 -10
- package/types/input/XRCamera.d.ts +3 -1
- package/types/input/XRInput.d.ts +4 -0
- package/types/input/XRInputManager.d.ts +26 -5
- package/types/session/XRSessionManager.d.ts +47 -8
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@galacean/engine-xr",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.51",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -11,8 +11,9 @@
|
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"main": "dist/main.js",
|
|
13
13
|
"module": "dist/module.js",
|
|
14
|
+
"unpkg": "dist/browser.min.js",
|
|
15
|
+
"jsdelivr": "dist/browser.min.js",
|
|
14
16
|
"debug": "src/index.ts",
|
|
15
|
-
"browser": "dist/browser.js",
|
|
16
17
|
"types": "types/index.d.ts",
|
|
17
18
|
"umd": {
|
|
18
19
|
"name": "Galacean.XR",
|
|
@@ -26,11 +27,11 @@
|
|
|
26
27
|
"types/**/*"
|
|
27
28
|
],
|
|
28
29
|
"devDependencies": {
|
|
29
|
-
"@galacean/engine
|
|
30
|
-
"@galacean/engine": "2.0.0-alpha.
|
|
30
|
+
"@galacean/engine": "2.0.0-alpha.51",
|
|
31
|
+
"@galacean/engine-design": "2.0.0-alpha.51"
|
|
31
32
|
},
|
|
32
33
|
"peerDependencies": {
|
|
33
|
-
"@galacean/engine": "2.0.0-alpha.
|
|
34
|
+
"@galacean/engine": "2.0.0-alpha.51"
|
|
34
35
|
},
|
|
35
36
|
"scripts": {
|
|
36
37
|
"b:types": "tsc"
|
|
@@ -1,13 +1,59 @@
|
|
|
1
|
-
import { Entity } from "@galacean/engine";
|
|
1
|
+
import { CameraClearFlags, CameraType, Engine, Entity, XRManager } from "@galacean/engine";
|
|
2
|
+
import { IXRDevice } from "@galacean/engine-design";
|
|
2
3
|
import { XRFeature } from "./feature/XRFeature";
|
|
4
|
+
import { XRFeatureType } from "./feature/XRFeatureType";
|
|
3
5
|
import { XRCameraManager } from "./feature/camera/XRCameraManager";
|
|
4
6
|
import { XRInputManager } from "./input/XRInputManager";
|
|
5
7
|
import { XRSessionManager } from "./session/XRSessionManager";
|
|
6
8
|
import { XRSessionMode } from "./session/XRSessionMode";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export declare class XRManagerExtended extends XRManager {
|
|
13
|
+
/** @internal */
|
|
14
|
+
static _featureMap: Map<TFeatureConstructor<XRFeature>, XRFeatureType>;
|
|
15
|
+
inputManager: XRInputManager;
|
|
16
|
+
sessionManager: XRSessionManager;
|
|
17
|
+
cameraManager: XRCameraManager;
|
|
18
|
+
/** @internal */
|
|
19
|
+
_platformDevice: IXRDevice;
|
|
20
|
+
private _features;
|
|
21
|
+
private _origin;
|
|
22
|
+
get features(): XRFeature[];
|
|
23
|
+
get origin(): Entity;
|
|
24
|
+
set origin(value: Entity);
|
|
25
|
+
isSupportedFeature<T extends XRFeature>(feature: TFeatureConstructor<T>): boolean;
|
|
26
|
+
addFeature<T extends new (xrManager: XRManagerExtended, ...args: any[]) => XRFeature>(type: T, ...args: TFeatureConstructorArguments<T>): InstanceType<T> | null;
|
|
27
|
+
getFeature<T extends XRFeature>(type: TFeatureConstructor<T>): T | undefined;
|
|
28
|
+
enterXR(sessionMode: XRSessionMode, autoRun?: boolean): Promise<void>;
|
|
29
|
+
exitXR(): Promise<void>;
|
|
30
|
+
_initialize(engine: Engine, xrDevice: IXRDevice): void;
|
|
31
|
+
_update(): void;
|
|
32
|
+
_destroy(): void;
|
|
33
|
+
_getRequestAnimationFrame(): (callback: FrameRequestCallback) => number;
|
|
34
|
+
_getCancelAnimationFrame(): (id: number) => void;
|
|
35
|
+
_getCameraIgnoreClearFlags(type: CameraType): CameraClearFlags;
|
|
36
|
+
/**
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
_onSessionStop(): void;
|
|
40
|
+
/**
|
|
41
|
+
* @internal
|
|
42
|
+
*/
|
|
43
|
+
_onSessionInit(): void;
|
|
44
|
+
/**
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
_onSessionStart(): void;
|
|
48
|
+
/**
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
_onSessionExit(): void;
|
|
10
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
56
|
+
export declare function registerXRFeature<T extends XRFeature>(type: XRFeatureType): (feature: TFeatureConstructor<T>) => void;
|
|
11
57
|
type TFeatureConstructor<T extends XRFeature> = new (xrManager: XRManagerExtended, ...args: any[]) => T;
|
|
12
58
|
type TFeatureConstructorArguments<T extends new (xrManager: XRManagerExtended, ...args: any[]) => XRFeature> = T extends new (xrManager: XRManagerExtended, ...args: infer P) => XRFeature ? P : never;
|
|
13
59
|
declare module "@galacean/engine" {
|
|
@@ -44,7 +90,7 @@ declare module "@galacean/engine" {
|
|
|
44
90
|
* @param type - The type of the feature
|
|
45
91
|
* @returns The feature which match type
|
|
46
92
|
*/
|
|
47
|
-
getFeature<T extends XRFeature>(type: TFeatureConstructor<T>): T |
|
|
93
|
+
getFeature<T extends XRFeature>(type: TFeatureConstructor<T>): T | undefined;
|
|
48
94
|
/**
|
|
49
95
|
* Enter XR immersive mode, when you call this method, it will initialize and display the XR virtual world.
|
|
50
96
|
* @param sessionMode - The mode of the session
|
|
@@ -57,6 +103,30 @@ declare module "@galacean/engine" {
|
|
|
57
103
|
* @returns A promise that resolves if the XR virtual world is destroyed, otherwise rejects
|
|
58
104
|
*/
|
|
59
105
|
exitXR(): Promise<void>;
|
|
106
|
+
/**
|
|
107
|
+
* @internal
|
|
108
|
+
*/
|
|
109
|
+
_initialize(engine: Engine, xrDevice: IXRDevice): void;
|
|
110
|
+
/**
|
|
111
|
+
* @internal
|
|
112
|
+
*/
|
|
113
|
+
_getRequestAnimationFrame(): (callback: FrameRequestCallback) => number;
|
|
114
|
+
/**
|
|
115
|
+
* @internal
|
|
116
|
+
*/
|
|
117
|
+
_getCancelAnimationFrame(): (id: number) => void;
|
|
118
|
+
/**
|
|
119
|
+
* @internal
|
|
120
|
+
*/
|
|
121
|
+
_getCameraIgnoreClearFlags(type: CameraType): CameraClearFlags;
|
|
122
|
+
/**
|
|
123
|
+
* @internal
|
|
124
|
+
*/
|
|
125
|
+
_update(): void;
|
|
126
|
+
/**
|
|
127
|
+
* @internal
|
|
128
|
+
*/
|
|
129
|
+
_destroy(): void;
|
|
60
130
|
}
|
|
61
131
|
}
|
|
62
132
|
export {};
|
|
@@ -7,10 +7,48 @@ import { XRFeatureType } from "./XRFeatureType";
|
|
|
7
7
|
export declare abstract class XRFeature<T extends IXRPlatformFeature = IXRPlatformFeature> {
|
|
8
8
|
protected _xrManager: XRManagerExtended;
|
|
9
9
|
protected _type: XRFeatureType;
|
|
10
|
+
/** @internal */
|
|
11
|
+
_platformFeature: T;
|
|
10
12
|
protected _enabled: boolean;
|
|
11
13
|
/**
|
|
12
14
|
* Returns whether the feature is enabled.
|
|
13
15
|
*/
|
|
14
16
|
get enabled(): boolean;
|
|
15
17
|
set enabled(value: boolean);
|
|
18
|
+
/**
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
constructor(_xrManager: XRManagerExtended, _type: XRFeatureType, ...args: any[]);
|
|
22
|
+
/**
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
_onEnable(): void;
|
|
26
|
+
/**
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
_onDisable(): void;
|
|
30
|
+
/**
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
_onUpdate(): void;
|
|
34
|
+
/**
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
_onSessionInit(): void;
|
|
38
|
+
/**
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
_onSessionStart(): void;
|
|
42
|
+
/**
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
_onSessionStop(): void;
|
|
46
|
+
/**
|
|
47
|
+
* @internal
|
|
48
|
+
*/
|
|
49
|
+
_onSessionExit(): void;
|
|
50
|
+
/**
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
_onDestroy(): void;
|
|
16
54
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Camera } from "@galacean/engine";
|
|
1
|
+
import { Camera, CameraClearFlags, CameraType } from "@galacean/engine";
|
|
2
|
+
import { XRManagerExtended } from "../../XRManagerExtended";
|
|
2
3
|
import { XRTrackedInputDevice } from "../../input/XRTrackedInputDevice";
|
|
3
4
|
/**
|
|
4
5
|
* The manager of XR camera.
|
|
@@ -6,10 +7,14 @@ import { XRTrackedInputDevice } from "../../input/XRTrackedInputDevice";
|
|
|
6
7
|
export declare class XRCameraManager {
|
|
7
8
|
private _xrManager;
|
|
8
9
|
/**
|
|
9
|
-
*
|
|
10
|
+
* Fixed foveation, or `undefined` if unsupported by the active session.
|
|
10
11
|
*/
|
|
11
|
-
get fixedFoveation(): number;
|
|
12
|
+
get fixedFoveation(): number | undefined;
|
|
12
13
|
set fixedFoveation(value: number);
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
constructor(_xrManager: XRManagerExtended);
|
|
13
18
|
/**
|
|
14
19
|
* Attach the camera to the specified input type(Camera, LeftCamera or RightCamera).
|
|
15
20
|
* The camera entity need to be moved to the XROrigin entity.
|
|
@@ -22,5 +27,25 @@ export declare class XRCameraManager {
|
|
|
22
27
|
* @param type - The input type
|
|
23
28
|
* @returns The camera that was detached
|
|
24
29
|
*/
|
|
25
|
-
detachCamera(type: XRTrackedInputDevice.Camera | XRTrackedInputDevice.LeftCamera | XRTrackedInputDevice.RightCamera): Camera;
|
|
30
|
+
detachCamera(type: XRTrackedInputDevice.Camera | XRTrackedInputDevice.LeftCamera | XRTrackedInputDevice.RightCamera): Camera | null;
|
|
31
|
+
/**
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
_onSessionStart(): void;
|
|
35
|
+
/**
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
_onUpdate(): void;
|
|
39
|
+
/**
|
|
40
|
+
* @internal
|
|
41
|
+
*/
|
|
42
|
+
_onSessionExit(): void;
|
|
43
|
+
/**
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
_getIgnoreClearFlags(cameraType: CameraType): CameraClearFlags;
|
|
47
|
+
/**
|
|
48
|
+
* @internal
|
|
49
|
+
*/
|
|
50
|
+
_onDestroy(): void;
|
|
26
51
|
}
|
|
@@ -1 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
import { XRRequestTrackingState } from "./XRRequestTrackingState";
|
|
2
|
+
import { XRTracked } from "./XRTracked";
|
|
3
|
+
/**
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export declare abstract class XRRequestTracking<T extends XRTracked> {
|
|
7
|
+
/** The status of the current request tracking. */
|
|
8
|
+
state: XRRequestTrackingState;
|
|
9
|
+
/** Tracked instances, make up from the tracking data returned by Session. */
|
|
10
|
+
tracked: T[];
|
|
11
|
+
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Signal } from "@galacean/engine";
|
|
1
2
|
import { IXRTrackablePlatformFeature } from "@galacean/engine-design";
|
|
2
3
|
import { XRTrackingState } from "../../input/XRTrackingState";
|
|
3
4
|
import { XRFeature } from "../XRFeature";
|
|
@@ -8,28 +9,29 @@ import { XRTracked } from "./XRTracked";
|
|
|
8
9
|
*/
|
|
9
10
|
export declare abstract class XRTrackableFeature<T extends XRTracked = XRTracked, K extends XRRequestTracking<T> = XRRequestTracking<T>> extends XRFeature<IXRTrackablePlatformFeature<T, K>> {
|
|
10
11
|
protected static _uuid: number;
|
|
12
|
+
/** Signal emitted when tracked objects change. */
|
|
13
|
+
readonly onChanged: Signal<[readonly T[], readonly T[], readonly T[]]>;
|
|
11
14
|
protected _requestTrackings: K[];
|
|
12
15
|
protected _tracked: T[];
|
|
13
16
|
protected _added: T[];
|
|
14
17
|
protected _updated: T[];
|
|
15
18
|
protected _removed: T[];
|
|
16
19
|
protected _statusSnapshot: Record<number, XRTrackingState>;
|
|
17
|
-
|
|
20
|
+
_onUpdate(): void;
|
|
21
|
+
_onSessionStop(): void;
|
|
22
|
+
_onSessionExit(): void;
|
|
23
|
+
protected _addRequestTracking(requestTracking: K): void;
|
|
24
|
+
protected _removeRequestTracking(requestTracking: K): void;
|
|
25
|
+
protected _removeAllRequestTrackings(): void;
|
|
26
|
+
protected abstract _generateTracked(): T;
|
|
18
27
|
/**
|
|
19
28
|
* Add a listening function for tracked object changes.
|
|
20
|
-
* @
|
|
29
|
+
* @deprecated Use `onChanged.on(listener)` instead.
|
|
21
30
|
*/
|
|
22
31
|
addChangedListener(listener: (added: readonly T[], updated: readonly T[], removed: readonly T[]) => void): void;
|
|
23
32
|
/**
|
|
24
33
|
* Remove a listening function of tracked object changes.
|
|
25
|
-
* @
|
|
34
|
+
* @deprecated Use `onChanged.off(listener)` instead.
|
|
26
35
|
*/
|
|
27
36
|
removeChangedListener(listener: (added: readonly T[], updated: readonly T[], removed: readonly T[]) => void): void;
|
|
28
|
-
_onUpdate(): void;
|
|
29
|
-
_onSessionStop(): void;
|
|
30
|
-
_onSessionExit(): void;
|
|
31
|
-
protected _addRequestTracking(requestTracking: K): void;
|
|
32
|
-
protected _removeRequestTracking(requestTracking: K): void;
|
|
33
|
-
protected _removeAllRequestTrackings(): void;
|
|
34
|
-
protected abstract _generateTracked(): T;
|
|
35
37
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IXRCamera } from "@galacean/engine-design";
|
|
2
|
-
import { Matrix, Rect } from "@galacean/engine";
|
|
2
|
+
import { Matrix, Rect, Camera } from "@galacean/engine";
|
|
3
3
|
import { XRPose } from "../XRPose";
|
|
4
4
|
import { XRInput } from "./XRInput";
|
|
5
5
|
/**
|
|
@@ -12,4 +12,6 @@ export declare class XRCamera extends XRInput implements IXRCamera {
|
|
|
12
12
|
viewport: Rect;
|
|
13
13
|
/** The projection matrix of the camera. */
|
|
14
14
|
projectionMatrix: Matrix;
|
|
15
|
+
/** @internal */
|
|
16
|
+
_camera: Camera | null;
|
|
15
17
|
}
|
package/types/input/XRInput.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { Engine, Signal } from "@galacean/engine";
|
|
2
|
+
import { XRManagerExtended } from "../XRManagerExtended";
|
|
3
|
+
import { XRCamera } from "./XRCamera";
|
|
4
|
+
import { XRController } from "./XRController";
|
|
1
5
|
import { XRInput } from "./XRInput";
|
|
2
6
|
import { XRTrackedInputDevice } from "./XRTrackedInputDevice";
|
|
3
7
|
/**
|
|
@@ -6,27 +10,44 @@ import { XRTrackedInputDevice } from "./XRTrackedInputDevice";
|
|
|
6
10
|
export declare class XRInputManager {
|
|
7
11
|
private _xrManager;
|
|
8
12
|
private _engine;
|
|
13
|
+
/** Signal emitted when tracked devices change. */
|
|
14
|
+
readonly onTrackedDeviceChanged: Signal<[readonly XRInput[], readonly XRInput[]]>;
|
|
15
|
+
/** @internal */
|
|
16
|
+
_cameras: XRCamera[];
|
|
17
|
+
/** @internal */
|
|
18
|
+
_controllers: XRController[];
|
|
9
19
|
private _added;
|
|
10
20
|
private _removed;
|
|
11
21
|
private _trackedDevices;
|
|
12
22
|
private _statusSnapshot;
|
|
13
|
-
|
|
23
|
+
/**
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
constructor(_xrManager: XRManagerExtended, _engine: Engine);
|
|
14
27
|
/**
|
|
15
28
|
* Returns the tracked device instance.
|
|
16
29
|
* @param type - The tracked input device type
|
|
17
30
|
* @returns The input instance
|
|
18
31
|
*/
|
|
19
32
|
getTrackedDevice<T extends XRInput>(type: XRTrackedInputDevice): T;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
_onUpdate(): void;
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
_onDestroy(): void;
|
|
41
|
+
private _handleEvent;
|
|
42
|
+
private _makeUpPointerEvent;
|
|
20
43
|
/**
|
|
21
44
|
* Add a listener for tracked device changes.
|
|
22
|
-
* @
|
|
45
|
+
* @deprecated Use `onTrackedDeviceChanged.on(listener)` instead.
|
|
23
46
|
*/
|
|
24
47
|
addTrackedDeviceChangedListener(listener: (added: readonly XRInput[], removed: readonly XRInput[]) => void): void;
|
|
25
48
|
/**
|
|
26
49
|
* Remove a listener of tracked device changes.
|
|
27
|
-
* @
|
|
50
|
+
* @deprecated Use `onTrackedDeviceChanged.off(listener)` instead.
|
|
28
51
|
*/
|
|
29
52
|
removeTrackedDeviceChangedListener(listener: (added: readonly XRInput[], removed: readonly XRInput[]) => void): void;
|
|
30
|
-
private _handleEvent;
|
|
31
|
-
private _makeUpPointerEvent;
|
|
32
53
|
}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { Engine, Signal } from "@galacean/engine";
|
|
2
|
+
import { IXRSession } from "@galacean/engine-design";
|
|
3
|
+
import { XRManagerExtended } from "../XRManagerExtended";
|
|
4
|
+
import { XRFeature } from "../feature/XRFeature";
|
|
1
5
|
import { XRSessionMode } from "./XRSessionMode";
|
|
2
6
|
import { XRSessionState } from "./XRSessionState";
|
|
3
7
|
/**
|
|
@@ -6,12 +10,15 @@ import { XRSessionState } from "./XRSessionState";
|
|
|
6
10
|
export declare class XRSessionManager {
|
|
7
11
|
private _xrManager;
|
|
8
12
|
private _engine;
|
|
13
|
+
/** Signal emitted when session state changes. */
|
|
14
|
+
readonly onStateChanged: Signal<[XRSessionState]>;
|
|
15
|
+
/** @internal */
|
|
16
|
+
_platformSession: IXRSession | null;
|
|
9
17
|
private _mode;
|
|
10
18
|
private _state;
|
|
11
19
|
private _rhi;
|
|
12
20
|
private _raf;
|
|
13
21
|
private _caf;
|
|
14
|
-
private _listeners;
|
|
15
22
|
/**
|
|
16
23
|
* The current session mode( AR or VR ).
|
|
17
24
|
*/
|
|
@@ -21,13 +28,17 @@ export declare class XRSessionManager {
|
|
|
21
28
|
*/
|
|
22
29
|
get state(): XRSessionState;
|
|
23
30
|
/**
|
|
24
|
-
*
|
|
31
|
+
* Supported frame rates, or `undefined` if unsupported. Only available in-session.
|
|
25
32
|
*/
|
|
26
|
-
get supportedFrameRate(): Float32Array;
|
|
33
|
+
get supportedFrameRate(): Float32Array | undefined;
|
|
27
34
|
/**
|
|
28
|
-
*
|
|
35
|
+
* Current frame rate, or `undefined` if unsupported. Only available in-session.
|
|
29
36
|
*/
|
|
30
|
-
get frameRate(): number;
|
|
37
|
+
get frameRate(): number | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
constructor(_xrManager: XRManagerExtended, _engine: Engine);
|
|
31
42
|
/**
|
|
32
43
|
* Check if the specified mode is supported.
|
|
33
44
|
* @param mode - The mode to check
|
|
@@ -42,15 +53,43 @@ export declare class XRSessionManager {
|
|
|
42
53
|
* Stop the session.
|
|
43
54
|
*/
|
|
44
55
|
stop(): void;
|
|
56
|
+
/**
|
|
57
|
+
* @internal
|
|
58
|
+
*/
|
|
59
|
+
_setState(value: XRSessionState): void;
|
|
60
|
+
/**
|
|
61
|
+
* @internal
|
|
62
|
+
*/
|
|
63
|
+
_initialize(mode: XRSessionMode, features: XRFeature[]): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* @internal
|
|
66
|
+
*/
|
|
67
|
+
_onUpdate(): void;
|
|
68
|
+
/**
|
|
69
|
+
* @internal
|
|
70
|
+
*/
|
|
71
|
+
_getRequestAnimationFrame(): (callback: FrameRequestCallback) => number;
|
|
72
|
+
/**
|
|
73
|
+
* @internal
|
|
74
|
+
*/
|
|
75
|
+
_getCancelAnimationFrame(): (id: number) => void;
|
|
76
|
+
/**
|
|
77
|
+
* @internal
|
|
78
|
+
*/
|
|
79
|
+
_exit(): Promise<void>;
|
|
80
|
+
private _onSessionExit;
|
|
81
|
+
/**
|
|
82
|
+
* @internal
|
|
83
|
+
*/
|
|
84
|
+
_onDestroy(): void;
|
|
45
85
|
/**
|
|
46
86
|
* Add a listening function for session state changes.
|
|
47
|
-
* @
|
|
87
|
+
* @deprecated Use `onStateChanged.on(listener)` instead.
|
|
48
88
|
*/
|
|
49
89
|
addStateChangedListener(listener: (state: XRSessionState) => void): void;
|
|
50
90
|
/**
|
|
51
91
|
* Remove a listening function of session state changes.
|
|
52
|
-
* @
|
|
92
|
+
* @deprecated Use `onStateChanged.off(listener)` instead.
|
|
53
93
|
*/
|
|
54
94
|
removeStateChangedListener(listener: (state: XRSessionState) => void): void;
|
|
55
|
-
private _onSessionExit;
|
|
56
95
|
}
|