@galacean/engine-xr 1.2.0-beta.5 → 1.2.0-beta.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galacean/engine-xr",
3
- "version": "1.2.0-beta.5",
3
+ "version": "1.2.0-beta.7",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -23,11 +23,11 @@
23
23
  "types/**/*"
24
24
  ],
25
25
  "devDependencies": {
26
- "@galacean/engine": "1.2.0-beta.5",
27
- "@galacean/engine-design": "1.2.0-beta.5"
26
+ "@galacean/engine-design": "1.2.0-beta.7",
27
+ "@galacean/engine": "1.2.0-beta.7"
28
28
  },
29
29
  "peerDependencies": {
30
- "@galacean/engine": "1.2.0-beta.5"
30
+ "@galacean/engine": "1.2.0-beta.7"
31
31
  },
32
32
  "scripts": {
33
33
  "b:types": "tsc"
@@ -34,7 +34,7 @@ export declare class XRManagerExtended extends XRManager {
34
34
  * @param args - The constructor params of the feature
35
35
  * @returns The feature which has been added
36
36
  */
37
- addFeature<T extends new (xrManager: XRManagerExtended, ...args: any[]) => XRFeature>(type: T, ...args: TFeatureConstructorArguments<T>): XRFeature | null;
37
+ addFeature<T extends new (xrManager: XRManagerExtended, ...args: any[]) => XRFeature>(type: T, ...args: TFeatureConstructorArguments<T>): InstanceType<T> | null;
38
38
  /**
39
39
  * Get feature which match the type.
40
40
  * @param type - The type of the feature
@@ -0,0 +1,10 @@
1
+ import { Script } from "@galacean/engine";
2
+ import { XRTracked } from "../feature/trackable/XRTracked";
3
+ export declare class TrackedComponent<T extends XRTracked> extends Script {
4
+ private _data;
5
+ private _destroyedOnRemoval;
6
+ get destroyedOnRemoval(): boolean;
7
+ set destroyedOnRemoval(value: boolean);
8
+ get data(): T;
9
+ set data(value: T);
10
+ }
File without changes
@@ -0,0 +1,16 @@
1
+ import { Script } from "@galacean/engine";
2
+ import { XRTracked } from "../feature/trackable/XRTracked";
3
+ export declare class XRTrackedComponent<T extends XRTracked> extends Script {
4
+ private _data;
5
+ private _destroyedOnRemoval;
6
+ /**
7
+ * Tracking data of the TrackedObject.
8
+ */
9
+ get data(): T;
10
+ set data(value: T);
11
+ /**
12
+ * Whether to destroy when tracking is removed, default is true.
13
+ */
14
+ get destroyedOnRemoval(): boolean;
15
+ set destroyedOnRemoval(value: boolean);
16
+ }
@@ -0,0 +1,27 @@
1
+ import { Entity, Script, XRManager } from "@galacean/engine";
2
+ import { XRFeature } from "../feature/XRFeature";
3
+ import { XRTrackableFeature } from "../feature/trackable/XRTrackableFeature";
4
+ import { XRTracked } from "../feature/trackable/XRTracked";
5
+ import { XRTrackedComponent } from "./XRTrackedComponent";
6
+ /**
7
+ * 被追踪到的所有对象
8
+ */
9
+ export declare class XRTrackedObjectManager<T extends XRTracked> extends Script {
10
+ private _prefab;
11
+ private _trackIdToIndex;
12
+ private _feature;
13
+ private _trackedComponents;
14
+ get prefab(): Entity;
15
+ set prefab(value: Entity);
16
+ getTrackedComponentByTrackId(trackId: number): XRTrackedComponent<T>;
17
+ constructor(entity: Entity, feature: TFeatureConstructor<XRTrackableFeature>);
18
+ onEnable(): void;
19
+ onDisable(): void;
20
+ private _onXRSessionInit;
21
+ private _onXRSessionExit;
22
+ private _onChanged;
23
+ private _createOrUpdateTrackedComponents;
24
+ private _createTrackedComponents;
25
+ }
26
+ type TFeatureConstructor<T extends XRFeature> = new (xrManager: XRManager, ...args: any[]) => T;
27
+ export {};
@@ -0,0 +1,40 @@
1
+ import { IReferable, IScene, ISceneConfig, IVector3, IVector4 } from "@galacean/engine";
2
+ import { XRFeatureType } from "../feature/XRFeatureType";
3
+ import { XRPlaneMode } from "../feature/trackable/plane/XRPlaneMode";
4
+ interface IXRSceneConfig extends ISceneConfig {
5
+ xr?: {
6
+ sessionMode: number;
7
+ origin: string;
8
+ camera: string;
9
+ leftCamera: string;
10
+ rightCamera: string;
11
+ features: IXRFeatureSchema[];
12
+ };
13
+ }
14
+ export interface IXRScene extends Omit<IScene, "scene"> {
15
+ scene: IXRSceneConfig;
16
+ }
17
+ export interface IXRFeatureSchema {
18
+ type: XRFeatureType;
19
+ enable: boolean;
20
+ }
21
+ export interface IAnchorTrackingSchema extends IXRFeatureSchema {
22
+ anchors: IAnchor[];
23
+ prefab: null | IReferable;
24
+ }
25
+ export interface IImageTrackingSchema extends IXRFeatureSchema {
26
+ images: IReferable[];
27
+ prefab: null | IReferable;
28
+ }
29
+ export interface IHitTestSchema extends IXRFeatureSchema {
30
+ prefab: null | IReferable;
31
+ }
32
+ export interface IPlaneTrackingSchema extends IXRFeatureSchema {
33
+ detectionMode: XRPlaneMode;
34
+ prefab: null | IReferable;
35
+ }
36
+ export interface IAnchor {
37
+ position: IVector3;
38
+ rotation: IVector4;
39
+ }
40
+ export {};
@@ -0,0 +1,9 @@
1
+ import { Engine, IScene, ParserContext, Scene } from "@galacean/engine";
2
+ export declare class XRExtendParser {
3
+ parse(engine: Engine, context: ParserContext<IScene, Scene>, data: IScene): Promise<void>;
4
+ private _addImageTracking;
5
+ private _addPlaneTracking;
6
+ private _addAnchorTracking;
7
+ private _addHitTest;
8
+ private _setCamera;
9
+ }
@@ -0,0 +1,5 @@
1
+ import { BufferReader, Engine } from "@galacean/engine";
2
+ import { XRReferenceImage } from "../feature/trackable/image/XRReferenceImage";
3
+ export declare class XRReferenceImageDecoder {
4
+ static decode(engine: Engine, bufferReader: BufferReader): Promise<XRReferenceImage>;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { AssetPromise, Loader, LoadItem, ResourceManager } from "@galacean/engine";
2
+ import { XRReferenceImage } from "../feature/trackable/image/XRReferenceImage";
3
+ export declare class XRReferenceImageLoader extends Loader<XRReferenceImage> {
4
+ load(item: LoadItem, resourceManager: ResourceManager): AssetPromise<XRReferenceImage>;
5
+ }
@@ -0,0 +1,4 @@
1
+ import { CustomParser, Engine, IScene, Scene } from "@galacean/engine";
2
+ export declare class XRSceneCustomParser extends CustomParser {
3
+ onAfterSceneParse(engine: Engine, data: IScene, scene: Scene): void;
4
+ }
@@ -0,0 +1,9 @@
1
+ import { Engine, IScene, ParserContext, Scene } from "@galacean/engine";
2
+ export declare class XRSceneExtendParser {
3
+ static parse(engine: Engine, context: ParserContext<IScene, Scene>, data: IScene): Promise<void>;
4
+ private static _addImageTracking;
5
+ private static _addPlaneTracking;
6
+ private static _addAnchorTracking;
7
+ private static _addHitTest;
8
+ private static _setCamera;
9
+ }
@@ -0,0 +1,37 @@
1
+ import { IReferable, IVector3, IVector4 } from "@galacean/engine";
2
+ import { XRFeatureType } from "../feature/XRFeatureType";
3
+ import { XRPlaneMode } from "../feature/trackable/plane/XRPlaneMode";
4
+ declare module "@galacean/engine" {
5
+ interface ISceneConfig {
6
+ xr: {
7
+ sessionMode: number;
8
+ origin: string;
9
+ camera: string;
10
+ leftCamera: string;
11
+ rightCamera: string;
12
+ features: IXRFeatureSchema[];
13
+ };
14
+ }
15
+ }
16
+ export interface IXRFeatureSchema {
17
+ type: XRFeatureType;
18
+ enable: boolean;
19
+ }
20
+ export interface IAnchorTrackingSchema extends IXRFeatureSchema {
21
+ anchors: IAnchor[];
22
+ prefab: null | IReferable;
23
+ }
24
+ export interface IImageTrackingSchema extends IXRFeatureSchema {
25
+ images: IReferable[];
26
+ prefab: null | IReferable;
27
+ }
28
+ export interface IHitTestSchema extends IXRFeatureSchema {
29
+ }
30
+ export interface IPlaneTrackingSchema extends IXRFeatureSchema {
31
+ detectionMode: XRPlaneMode;
32
+ prefab: null | IReferable;
33
+ }
34
+ export interface IAnchor {
35
+ position: IVector3;
36
+ rotation: IVector4;
37
+ }