@needle-tools/engine 4.8.6 → 4.8.7-next.011f757
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/CHANGELOG.md +4 -0
- package/components.needle.json +1 -1
- package/dist/{gltf-progressive-DXRy9EQz.js → gltf-progressive-BcHT3Nyo.js} +1 -1
- package/dist/{gltf-progressive-C-U_onhf.umd.cjs → gltf-progressive-CH3Q4H06.umd.cjs} +1 -1
- package/dist/{gltf-progressive-DViD_J_l.min.js → gltf-progressive-DR6HqF_h.min.js} +1 -1
- package/dist/{needle-engine.bundle-CQIq7Zg-.min.js → needle-engine.bundle-A4MqukqV.min.js} +137 -137
- package/dist/{needle-engine.bundle-BTJDRZkJ.js → needle-engine.bundle-BcKlrcH5.js} +6559 -6499
- package/dist/{needle-engine.bundle-CaNItSG7.umd.cjs → needle-engine.bundle-D4U_nRHo.umd.cjs} +139 -139
- package/dist/needle-engine.js +402 -400
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/{postprocessing-61aXdqNz.umd.cjs → postprocessing-CVb_x9YY.umd.cjs} +1 -1
- package/dist/{postprocessing-D9jDHD0U.js → postprocessing-ORx-0eCx.js} +1 -1
- package/dist/{postprocessing-Be9Ds4NK.min.js → postprocessing-Ywv5oKkX.min.js} +1 -1
- package/dist/three-examples-BX_Sktc9.min.js +501 -0
- package/dist/{three-examples-BihZ_R96.js → three-examples-CNexix3E.js} +2436 -2781
- package/dist/{three-examples-Ce6Th3bv.umd.cjs → three-examples-DWxXVnws.umd.cjs} +21 -21
- package/dist/{vendor-BRpzuoJE.min.js → vendor-C43vobGc.min.js} +37 -37
- package/dist/{vendor-p_xp9KuJ.js → vendor-Z4SPrTcP.js} +2402 -2047
- package/dist/vendor-xfQ8tKF3.umd.cjs +1121 -0
- package/lib/engine/api.d.ts +2 -0
- package/lib/engine/api.js +2 -0
- package/lib/engine/api.js.map +1 -1
- package/lib/engine/engine_addressables.d.ts +12 -12
- package/lib/engine/engine_addressables.js +30 -23
- package/lib/engine/engine_addressables.js.map +1 -1
- package/lib/engine/engine_animation.d.ts +1 -3
- package/lib/engine/engine_animation.js +15 -9
- package/lib/engine/engine_animation.js.map +1 -1
- package/lib/engine/engine_camera.d.ts +8 -1
- package/lib/engine/engine_camera.js +25 -0
- package/lib/engine/engine_camera.js.map +1 -1
- package/lib/engine/engine_context.d.ts +9 -0
- package/lib/engine/engine_context.js +15 -0
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_feature_flags.d.ts +3 -0
- package/lib/engine/engine_feature_flags.js +6 -0
- package/lib/engine/engine_feature_flags.js.map +1 -0
- package/lib/engine/engine_gameobject.js +0 -4
- package/lib/engine/engine_gameobject.js.map +1 -1
- package/lib/engine/engine_loaders.js +15 -11
- package/lib/engine/engine_loaders.js.map +1 -1
- package/lib/engine/engine_mainloop_utils.d.ts +2 -1
- package/lib/engine/engine_mainloop_utils.js +18 -6
- package/lib/engine/engine_mainloop_utils.js.map +1 -1
- package/lib/engine/engine_pmrem.d.ts +6 -0
- package/lib/engine/engine_pmrem.js +9 -40
- package/lib/engine/engine_pmrem.js.map +1 -1
- package/lib/engine/extensions/extensions.js +2 -2
- package/lib/engine/extensions/extensions.js.map +1 -1
- package/lib/engine/js-extensions/Object3D.js +19 -0
- package/lib/engine/js-extensions/Object3D.js.map +1 -1
- package/lib/engine-components/Animation.js +2 -1
- package/lib/engine-components/Animation.js.map +1 -1
- package/lib/engine-components/AnimationUtilsAutoplay.js +1 -6
- package/lib/engine-components/AnimationUtilsAutoplay.js.map +1 -1
- package/lib/engine-components/DropListener.d.ts +17 -12
- package/lib/engine-components/DropListener.js +34 -31
- package/lib/engine-components/DropListener.js.map +1 -1
- package/lib/engine-components/LookAtConstraint.d.ts +5 -1
- package/lib/engine-components/LookAtConstraint.js +8 -0
- package/lib/engine-components/LookAtConstraint.js.map +1 -1
- package/lib/engine-components/OrbitControls.d.ts +5 -7
- package/lib/engine-components/OrbitControls.js +12 -11
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/Skybox.js +9 -3
- package/lib/engine-components/Skybox.js.map +1 -1
- package/lib/engine-components/export/usdz/Extension.d.ts +1 -1
- package/lib/engine-components/export/usdz/ThreeUSDZExporter.js +1 -1
- package/lib/engine-components/export/usdz/ThreeUSDZExporter.js.map +1 -1
- package/lib/engine-components/export/usdz/USDZExporter.d.ts +7 -0
- package/lib/engine-components/export/usdz/USDZExporter.js +8 -1
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
- package/lib/engine-components/webxr/WebXRImageTracking.d.ts +4 -2
- package/lib/engine-components/webxr/WebXRImageTracking.js +117 -81
- package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
- package/package.json +4 -3
- package/plugins/vite/alias.js +45 -23
- package/src/engine/api.ts +3 -1
- package/src/engine/engine_addressables.ts +44 -33
- package/src/engine/engine_animation.ts +17 -9
- package/src/engine/engine_camera.ts +40 -1
- package/src/engine/engine_context.ts +21 -1
- package/src/engine/engine_feature_flags.ts +8 -0
- package/src/engine/engine_gameobject.ts +0 -4
- package/src/engine/engine_loaders.ts +18 -13
- package/src/engine/engine_mainloop_utils.ts +24 -8
- package/src/engine/engine_pmrem.ts +9 -45
- package/src/engine/extensions/extensions.ts +2 -2
- package/src/engine/js-extensions/Object3D.ts +25 -2
- package/src/engine-components/Animation.ts +1 -1
- package/src/engine-components/AnimationUtilsAutoplay.ts +1 -6
- package/src/engine-components/DropListener.ts +40 -31
- package/src/engine-components/LookAtConstraint.ts +9 -1
- package/src/engine-components/OrbitControls.ts +19 -16
- package/src/engine-components/Skybox.ts +8 -4
- package/src/engine-components/export/usdz/Extension.ts +1 -1
- package/src/engine-components/export/usdz/ThreeUSDZExporter.ts +1 -1
- package/src/engine-components/export/usdz/USDZExporter.ts +21 -12
- package/src/engine-components/webxr/WebXRImageTracking.ts +138 -90
- package/dist/three-examples-DKY9Nfge.min.js +0 -501
- package/dist/vendor-Ja-vKV-a.umd.cjs +0 -1121
package/lib/engine/api.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export * from "./engine_context.js";
|
|
|
32
32
|
export * from "./engine_context_registry.js";
|
|
33
33
|
export * from "./engine_coroutine.js";
|
|
34
34
|
export * from "./engine_create_objects.js";
|
|
35
|
+
export * from "./engine_feature_flags.js";
|
|
35
36
|
export * from "./engine_gameobject.js";
|
|
36
37
|
export { Gizmos } from "./engine_gizmos.js";
|
|
37
38
|
export * from "./engine_gltf.js";
|
|
@@ -58,6 +59,7 @@ export * from "./engine_physics.js";
|
|
|
58
59
|
export * from "./engine_physics.types.js";
|
|
59
60
|
export * from "./engine_physics_rapier.js";
|
|
60
61
|
export * from "./engine_playerview.js";
|
|
62
|
+
export { loadPMREM } from "./engine_pmrem.js";
|
|
61
63
|
export * from "./engine_scenelighting.js";
|
|
62
64
|
export * from "./engine_serialization.js";
|
|
63
65
|
export { type ISerializable } from "./engine_serialization_core.js";
|
package/lib/engine/api.js
CHANGED
|
@@ -32,6 +32,7 @@ export * from "./engine_context.js";
|
|
|
32
32
|
export * from "./engine_context_registry.js";
|
|
33
33
|
export * from "./engine_coroutine.js";
|
|
34
34
|
export * from "./engine_create_objects.js";
|
|
35
|
+
export * from "./engine_feature_flags.js";
|
|
35
36
|
export * from "./engine_gameobject.js";
|
|
36
37
|
export { Gizmos } from "./engine_gizmos.js";
|
|
37
38
|
export * from "./engine_gltf.js";
|
|
@@ -58,6 +59,7 @@ export * from "./engine_physics.js";
|
|
|
58
59
|
export * from "./engine_physics.types.js";
|
|
59
60
|
export * from "./engine_physics_rapier.js";
|
|
60
61
|
export * from "./engine_playerview.js";
|
|
62
|
+
export { loadPMREM } from "./engine_pmrem.js";
|
|
61
63
|
export * from "./engine_scenelighting.js";
|
|
62
64
|
export * from "./engine_serialization.js";
|
|
63
65
|
export * from "./engine_test_utils.js";
|
package/lib/engine/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/engine/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/G,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC3F,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/engine/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/G,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC3F,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrE,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACvE,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAE1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC9D,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,kCAAkC,CAAC;AACjD,cAAc,0CAA0C,CAAC;AACzD,cAAc,aAAa,CAAA"}
|
|
@@ -51,13 +51,15 @@ export declare class AssetReference {
|
|
|
51
51
|
* AssetReferences are cached so calling this method multiple times with the same arguments will always return the same AssetReference.
|
|
52
52
|
*/
|
|
53
53
|
static getOrCreate(sourceId: SourceIdentifier | IComponent, url: string, context?: Context): AssetReference;
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
readonly isAssetReference = true;
|
|
55
|
+
/**
|
|
56
|
+
* This is the loaded asset root object. If the asset is a glb/gltf file this will be the {@link three#Scene} object.
|
|
57
|
+
*/
|
|
58
|
+
get rawAsset(): any;
|
|
59
|
+
/** The loaded asset root
|
|
60
|
+
*/
|
|
58
61
|
get asset(): Object3D | null;
|
|
59
|
-
protected set asset(val:
|
|
60
|
-
private _loading?;
|
|
62
|
+
protected set asset(val: Object3D | null);
|
|
61
63
|
/** The url of the loaded asset (or the asset to be loaded)
|
|
62
64
|
* @deprecated use url */
|
|
63
65
|
get uri(): string;
|
|
@@ -69,11 +71,7 @@ export declare class AssetReference {
|
|
|
69
71
|
* @returns true if the uri is a valid URL (http, https, blob)
|
|
70
72
|
*/
|
|
71
73
|
get hasUrl(): boolean;
|
|
72
|
-
|
|
73
|
-
* This is the loaded asset root object. If the asset is a glb/gltf file this will be the {@link three#Scene} object.
|
|
74
|
-
*/
|
|
75
|
-
get rawAsset(): any;
|
|
76
|
-
private _asset;
|
|
74
|
+
private _rawAsset;
|
|
77
75
|
private _glbRoot?;
|
|
78
76
|
private _url;
|
|
79
77
|
private _urlName;
|
|
@@ -84,6 +82,7 @@ export declare class AssetReference {
|
|
|
84
82
|
constructor(uri: string, _hash?: string, asset?: any);
|
|
85
83
|
private onResolvePrefab;
|
|
86
84
|
private get mustLoad();
|
|
85
|
+
private _loadingPromise;
|
|
87
86
|
/**
|
|
88
87
|
* @returns `true` if the asset has been loaded (via preload) or if it exists already (assigned to `asset`) */
|
|
89
88
|
isLoaded(): boolean | ArrayBuffer;
|
|
@@ -94,7 +93,7 @@ export declare class AssetReference {
|
|
|
94
93
|
/** Loads the asset and creates one instance (assigned to `asset`)
|
|
95
94
|
* @returns the loaded asset
|
|
96
95
|
*/
|
|
97
|
-
loadAssetAsync(prog?: ProgressCallback | null): Promise<Object3D
|
|
96
|
+
loadAssetAsync(prog?: ProgressCallback | null): Promise<Object3D | null>;
|
|
98
97
|
/** loads and returns a new instance of `asset` */
|
|
99
98
|
instantiate(parent?: Object3D | IInstantiateOptions | null): Promise<Object3D<import("three").Object3DEventMap> | null>;
|
|
100
99
|
/** loads and returns a new instance of `asset` - this call is networked so an instance will be created on all connected users */
|
|
@@ -102,6 +101,7 @@ export declare class AssetReference {
|
|
|
102
101
|
beginListenDownload(evt: ProgressCallback): void;
|
|
103
102
|
endListenDownload(evt: ProgressCallback): void;
|
|
104
103
|
private raiseProgressEvent;
|
|
104
|
+
private static readonly currentlyInstantiating;
|
|
105
105
|
private onInstantiate;
|
|
106
106
|
/**
|
|
107
107
|
* try to ignore the intermediate created object
|
|
@@ -120,17 +120,27 @@ export class AssetReference {
|
|
|
120
120
|
addressables.registerAssetReference(ref);
|
|
121
121
|
return ref;
|
|
122
122
|
}
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
isAssetReference = true;
|
|
124
|
+
/**
|
|
125
|
+
* This is the loaded asset root object. If the asset is a glb/gltf file this will be the {@link three#Scene} object.
|
|
126
|
+
*/
|
|
127
|
+
get rawAsset() { return this._rawAsset; }
|
|
128
|
+
/** The loaded asset root
|
|
129
|
+
*/
|
|
127
130
|
get asset() {
|
|
128
|
-
return this._glbRoot ?? this.
|
|
131
|
+
return this._glbRoot ?? (this._rawAsset?.scene || null);
|
|
129
132
|
}
|
|
130
133
|
set asset(val) {
|
|
131
|
-
|
|
134
|
+
if (val) {
|
|
135
|
+
this._rawAsset = {
|
|
136
|
+
animations: val.animations,
|
|
137
|
+
scene: val,
|
|
138
|
+
scenes: [val],
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
else
|
|
142
|
+
this._rawAsset = null;
|
|
132
143
|
}
|
|
133
|
-
_loading;
|
|
134
144
|
/** The url of the loaded asset (or the asset to be loaded)
|
|
135
145
|
* @deprecated use url */
|
|
136
146
|
get uri() {
|
|
@@ -152,11 +162,7 @@ export class AssetReference {
|
|
|
152
162
|
return this._url !== undefined &&
|
|
153
163
|
(this._url.startsWith("http") || this._url.startsWith("blob:") || this._url.startsWith("www.") || this._url.includes("/"));
|
|
154
164
|
}
|
|
155
|
-
|
|
156
|
-
* This is the loaded asset root object. If the asset is a glb/gltf file this will be the {@link three#Scene} object.
|
|
157
|
-
*/
|
|
158
|
-
get rawAsset() { return this._asset; }
|
|
159
|
-
_asset;
|
|
165
|
+
_rawAsset = null;
|
|
160
166
|
_glbRoot;
|
|
161
167
|
_url;
|
|
162
168
|
_urlName;
|
|
@@ -195,6 +201,7 @@ export class AssetReference {
|
|
|
195
201
|
get mustLoad() {
|
|
196
202
|
return !this.asset || this.asset.__destroyed === true || isDestroyed(this.asset) === true;
|
|
197
203
|
}
|
|
204
|
+
_loadingPromise = null;
|
|
198
205
|
/**
|
|
199
206
|
* @returns `true` if the asset has been loaded (via preload) or if it exists already (assigned to `asset`) */
|
|
200
207
|
isLoaded() { return this._rawBinary || this.asset !== undefined; }
|
|
@@ -211,7 +218,7 @@ export class AssetReference {
|
|
|
211
218
|
this.asset = null;
|
|
212
219
|
this._rawBinary = undefined;
|
|
213
220
|
this._glbRoot = null;
|
|
214
|
-
this.
|
|
221
|
+
this._loadingPromise = null;
|
|
215
222
|
if (Context.Current) {
|
|
216
223
|
Context.Current.addressables.unregisterAssetReference(this);
|
|
217
224
|
}
|
|
@@ -240,14 +247,13 @@ export class AssetReference {
|
|
|
240
247
|
*/
|
|
241
248
|
async loadAssetAsync(prog) {
|
|
242
249
|
if (debug)
|
|
243
|
-
console.log("loadAssetAsync", this.url);
|
|
250
|
+
console.log("[AssetReference] loadAssetAsync", this.url);
|
|
244
251
|
if (!this.mustLoad)
|
|
245
252
|
return this.asset;
|
|
246
253
|
if (prog)
|
|
247
254
|
this._progressListeners.push(prog);
|
|
248
|
-
if (this.
|
|
249
|
-
|
|
250
|
-
return this._loading.then(_ => this.asset);
|
|
255
|
+
if (this._loadingPromise !== null) {
|
|
256
|
+
return this._loadingPromise.then(_ => this.asset);
|
|
251
257
|
}
|
|
252
258
|
const context = Context.Current;
|
|
253
259
|
// TODO: technically we shouldnt call awake only when the object is added to a scene
|
|
@@ -256,24 +262,24 @@ export class AssetReference {
|
|
|
256
262
|
// console.log("START LOADING");
|
|
257
263
|
if (this._rawBinary) {
|
|
258
264
|
if (!(this._rawBinary instanceof ArrayBuffer)) {
|
|
259
|
-
console.error("Failed loading
|
|
265
|
+
console.error("[AssetReference] Failed loading – Invalid data. Must be of type ArrayBuffer. " + (typeof this._rawBinary));
|
|
260
266
|
return null;
|
|
261
267
|
}
|
|
262
|
-
this.
|
|
268
|
+
this._loadingPromise = getLoader().parseSync(context, this._rawBinary, this.url, null);
|
|
263
269
|
this.raiseProgressEvent(new ProgressEvent("progress", { loaded: this._rawBinary.byteLength, total: this._rawBinary.byteLength }));
|
|
264
270
|
}
|
|
265
271
|
else {
|
|
266
272
|
if (debug)
|
|
267
273
|
console.log("Load async", this.url);
|
|
268
|
-
this.
|
|
274
|
+
this._loadingPromise = getLoader().loadSync(context, this.url, this.url, null, prog => {
|
|
269
275
|
this.raiseProgressEvent(prog);
|
|
270
276
|
});
|
|
271
277
|
}
|
|
272
|
-
|
|
278
|
+
this._loadingPromise.finally(() => this._loadingPromise = null);
|
|
279
|
+
const res = await this._loadingPromise;
|
|
273
280
|
// clear all progress listeners after download has finished
|
|
274
281
|
this._progressListeners.length = 0;
|
|
275
282
|
this._glbRoot = this.tryGetActualGameObjectRoot(res);
|
|
276
|
-
this._loading = undefined;
|
|
277
283
|
if (res) {
|
|
278
284
|
// Make sure the loaded roots all have a reference to this AssetReference
|
|
279
285
|
// that was originally loading it.
|
|
@@ -288,7 +294,7 @@ export class AssetReference {
|
|
|
288
294
|
// because that is where deserialization happens
|
|
289
295
|
processNewScripts(context);
|
|
290
296
|
if (res.scene !== undefined) {
|
|
291
|
-
this.
|
|
297
|
+
this._rawAsset = res;
|
|
292
298
|
}
|
|
293
299
|
return this.asset;
|
|
294
300
|
}
|
|
@@ -317,6 +323,7 @@ export class AssetReference {
|
|
|
317
323
|
list(this, prog);
|
|
318
324
|
}
|
|
319
325
|
}
|
|
326
|
+
static currentlyInstantiating = new Map();
|
|
320
327
|
async onInstantiate(opts, networked = false, saveOnServer) {
|
|
321
328
|
const context = Context.Current;
|
|
322
329
|
// clone the instantiate options immediately
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_addressables.js","sourceRoot":"","sources":["../../src/engine/engine_addressables.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine_addressables.js","sourceRoot":"","sources":["../../src/engine/engine_addressables.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,5 @@ export declare class AnimationUtils {
|
|
|
37
37
|
* This method will look for objects in the scene that have animations and assign them to the correct objects.
|
|
38
38
|
* @param file The GLTF file to assign the animations from
|
|
39
39
|
*/
|
|
40
|
-
static
|
|
41
|
-
createAnimationComponent(obj: Object3D, animation: AnimationClip): IAnimationComponent;
|
|
42
|
-
}): void;
|
|
40
|
+
static autoplayAnimations(file: Object3D | Pick<Model, "animations" | "scene">): Array<IAnimationComponent> | null;
|
|
43
41
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PropertyBinding } from "three";
|
|
2
|
+
import { TypeStore } from "./engine_typestore.js";
|
|
2
3
|
/**
|
|
3
4
|
* Registry for animation related data. Use {@link registerAnimationMixer} to register an animation mixer instance.
|
|
4
5
|
* Can be accessed from {@link Context.animations} and is used internally e.g. when exporting GLTF files.
|
|
@@ -77,11 +78,13 @@ export class AnimationUtils {
|
|
|
77
78
|
* This method will look for objects in the scene that have animations and assign them to the correct objects.
|
|
78
79
|
* @param file The GLTF file to assign the animations from
|
|
79
80
|
*/
|
|
80
|
-
static
|
|
81
|
+
static autoplayAnimations(file) {
|
|
81
82
|
if (!file || !file.animations) {
|
|
82
83
|
console.debug("No animations found in file");
|
|
83
|
-
return;
|
|
84
|
+
return null;
|
|
84
85
|
}
|
|
86
|
+
const scene = "scene" in file ? file.scene : file;
|
|
87
|
+
const animationComponents = new Array();
|
|
85
88
|
for (let i = 0; i < file.animations.length; i++) {
|
|
86
89
|
const animation = file.animations[i];
|
|
87
90
|
if (!animation.tracks || animation.tracks.length <= 0) {
|
|
@@ -91,30 +94,33 @@ export class AnimationUtils {
|
|
|
91
94
|
for (const t in animation.tracks) {
|
|
92
95
|
const track = animation.tracks[t];
|
|
93
96
|
const parsedPath = PropertyBinding.parseTrackName(track.name);
|
|
94
|
-
let obj = PropertyBinding.findNode(
|
|
97
|
+
let obj = PropertyBinding.findNode(scene, parsedPath.nodeName);
|
|
95
98
|
if (!obj) {
|
|
96
99
|
const objectName = track["__objectName"] ?? track.name.substring(0, track.name.indexOf("."));
|
|
97
100
|
// let obj = gltf.scene.getObjectByName(objectName);
|
|
98
101
|
// this finds unnamed objects that still have tracks targeting them
|
|
99
|
-
obj =
|
|
102
|
+
obj = scene.getObjectByProperty('uuid', objectName);
|
|
100
103
|
if (!obj) {
|
|
101
104
|
// console.warn("could not find " + objectName, animation, gltf.scene);
|
|
102
105
|
continue;
|
|
103
106
|
}
|
|
104
107
|
}
|
|
105
|
-
let animationComponent = findAnimationGameObjectInParent(obj);
|
|
108
|
+
let animationComponent = findAnimationGameObjectInParent(obj) || findAnimationGameObjectInParent(scene);
|
|
106
109
|
if (!animationComponent) {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
+
const anim = TypeStore.get("Animation");
|
|
111
|
+
animationComponent = scene.addComponent(anim);
|
|
112
|
+
if (!animationComponent) {
|
|
113
|
+
console.error("Failed creating Animation component: No 'Animation' component found in TypeStore");
|
|
114
|
+
break;
|
|
110
115
|
}
|
|
111
|
-
animationComponent = opts.createAnimationComponent(file.scene, animation);
|
|
112
116
|
}
|
|
117
|
+
animationComponents.push(animationComponent);
|
|
113
118
|
if (animationComponent.addClip) {
|
|
114
119
|
animationComponent.addClip(animation);
|
|
115
120
|
}
|
|
116
121
|
}
|
|
117
122
|
}
|
|
123
|
+
return animationComponents;
|
|
118
124
|
function findAnimationGameObjectInParent(obj) {
|
|
119
125
|
if (!obj)
|
|
120
126
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_animation.js","sourceRoot":"","sources":["../../src/engine/engine_animation.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4D,eAAe,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"engine_animation.js","sourceRoot":"","sources":["../../src/engine/engine_animation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Camera, Object3D } from "three";
|
|
1
|
+
import { Camera, Object3D, PerspectiveCamera, WebGLRenderer } from "three";
|
|
2
2
|
import type { ICameraController } from "./engine_types.js";
|
|
3
3
|
/** Get the camera controller for the given camera (if any)
|
|
4
4
|
*/
|
|
@@ -11,3 +11,10 @@ export declare function useForAutoFit(obj: Object3D): boolean;
|
|
|
11
11
|
* Enable or disable autofitting for the given object
|
|
12
12
|
*/
|
|
13
13
|
export declare function setAutoFitEnabled(obj: Object3D, enabled: boolean): void;
|
|
14
|
+
export type FocusRect = DOMRect | Element | {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
};
|
|
20
|
+
export declare function updateCameraFocusRect(focusRect: FocusRect, dt: number, camera: PerspectiveCamera, renderer: WebGLRenderer): void;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Mathf } from "./engine_math.js";
|
|
1
2
|
const $cameraController = "needle:cameraController";
|
|
2
3
|
/** Get the camera controller for the given camera (if any)
|
|
3
4
|
*/
|
|
@@ -28,4 +29,28 @@ export function useForAutoFit(obj) {
|
|
|
28
29
|
export function setAutoFitEnabled(obj, enabled) {
|
|
29
30
|
obj[autofit] = enabled;
|
|
30
31
|
}
|
|
32
|
+
let rendererRect = undefined;
|
|
33
|
+
let overlapRect = { x: 0, y: 0, width: 0, height: 0 };
|
|
34
|
+
export function updateCameraFocusRect(focusRect, dt, camera, renderer) {
|
|
35
|
+
if (focusRect instanceof Element) {
|
|
36
|
+
focusRect = focusRect.getBoundingClientRect();
|
|
37
|
+
}
|
|
38
|
+
rendererRect = renderer.domElement.getBoundingClientRect();
|
|
39
|
+
const rect = overlapRect;
|
|
40
|
+
rect.x = focusRect.x;
|
|
41
|
+
rect.y = focusRect.y;
|
|
42
|
+
rect.width = focusRect.width;
|
|
43
|
+
rect.height = focusRect.height;
|
|
44
|
+
rect.x -= rendererRect.x;
|
|
45
|
+
rect.y -= rendererRect.y;
|
|
46
|
+
let targetX = rect.width / -2 - (rect.x - (rendererRect.width / 2));
|
|
47
|
+
let targetY = rect.height / -2 - (rect.y - (rendererRect.height / 2));
|
|
48
|
+
const view = camera.view;
|
|
49
|
+
let offsetX = view?.offsetX || 0;
|
|
50
|
+
let offsetY = view?.offsetY || 0;
|
|
51
|
+
offsetX = Mathf.lerp(offsetX, targetX, dt);
|
|
52
|
+
offsetY = Mathf.lerp(offsetY, targetY, dt);
|
|
53
|
+
camera.setViewOffset(rendererRect.width, rendererRect.height, offsetX, offsetY, rendererRect.width, rendererRect.height);
|
|
54
|
+
camera.updateProjectionMatrix();
|
|
55
|
+
}
|
|
31
56
|
//# sourceMappingURL=engine_camera.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_camera.js","sourceRoot":"","sources":["../../src/engine/engine_camera.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"engine_camera.js","sourceRoot":"","sources":["../../src/engine/engine_camera.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ import type { CoroutineData, ICamera, IComponent, IContext, ILight, Model, Vec2
|
|
|
19
19
|
import type { INeedleXRSessionEventReceiver, NeedleXRSession } from './engine_xr.js';
|
|
20
20
|
import { NeedleMenu } from './webcomponents/needle menu/needle-menu.js';
|
|
21
21
|
import type { NeedleEngineWebComponent } from './webcomponents/needle-engine.js';
|
|
22
|
+
import { FocusRect } from './engine_camera.js';
|
|
22
23
|
export declare const build_scene_functions: {
|
|
23
24
|
[name: string]: (context: Context) => Promise<void>;
|
|
24
25
|
};
|
|
@@ -455,6 +456,14 @@ export declare class Context implements IContext {
|
|
|
455
456
|
* If you just want to increase the accuracy of physics you can instead set the `physicsSteps` property to a higher value
|
|
456
457
|
* */
|
|
457
458
|
updatePhysics(steps: number): void;
|
|
459
|
+
/**
|
|
460
|
+
* Set a rect or dom element. The camera center will be moved to the center of the rect.
|
|
461
|
+
* This is useful if you have Needle Engine embedded in a HTML layout and while you want the webgl background to fill e.g. the whole screen you want to move the camera center to free space.
|
|
462
|
+
* For that you can simply pass in the rect or HMTL div that you want the camera to center on.
|
|
463
|
+
*/
|
|
464
|
+
setCameraFocusRect(rect: FocusRect | null): void;
|
|
465
|
+
get focusRect(): FocusRect | null;
|
|
466
|
+
private _focusRect;
|
|
458
467
|
private _lastTimestamp;
|
|
459
468
|
private _accumulatedTime;
|
|
460
469
|
private _dispatchReadyAfterFrame;
|
|
@@ -29,6 +29,7 @@ import { Time } from './engine_time.js';
|
|
|
29
29
|
import { patchTonemapping } from './engine_tonemapping.js';
|
|
30
30
|
import { deepClone, DeviceUtilities, getParam } from './engine_utils.js';
|
|
31
31
|
import { NeedleMenu } from './webcomponents/needle menu/needle-menu.js';
|
|
32
|
+
import { updateCameraFocusRect } from './engine_camera.js';
|
|
32
33
|
const debug = getParam("debugcontext");
|
|
33
34
|
const stats = getParam("stats");
|
|
34
35
|
const debugActive = getParam("debugactive");
|
|
@@ -1256,6 +1257,16 @@ export class Context {
|
|
|
1256
1257
|
updatePhysics(steps) {
|
|
1257
1258
|
this.internalUpdatePhysics(steps);
|
|
1258
1259
|
}
|
|
1260
|
+
/**
|
|
1261
|
+
* Set a rect or dom element. The camera center will be moved to the center of the rect.
|
|
1262
|
+
* This is useful if you have Needle Engine embedded in a HTML layout and while you want the webgl background to fill e.g. the whole screen you want to move the camera center to free space.
|
|
1263
|
+
* For that you can simply pass in the rect or HMTL div that you want the camera to center on.
|
|
1264
|
+
*/
|
|
1265
|
+
setCameraFocusRect(rect) {
|
|
1266
|
+
this._focusRect = rect;
|
|
1267
|
+
}
|
|
1268
|
+
get focusRect() { return this._focusRect; }
|
|
1269
|
+
_focusRect = null;
|
|
1259
1270
|
_lastTimestamp = 0;
|
|
1260
1271
|
_accumulatedTime = 0;
|
|
1261
1272
|
_dispatchReadyAfterFrame = false;
|
|
@@ -1366,6 +1377,10 @@ export class Context {
|
|
|
1366
1377
|
this.internalUpdatePhysics(this.physicsSteps);
|
|
1367
1378
|
}
|
|
1368
1379
|
if (this.isVisibleToUser || this.runInBackground) {
|
|
1380
|
+
if (this._focusRect) {
|
|
1381
|
+
if (this.mainCamera instanceof PerspectiveCamera)
|
|
1382
|
+
updateCameraFocusRect(this._focusRect, this.time.deltaTime / .05, this.mainCamera, this.renderer);
|
|
1383
|
+
}
|
|
1369
1384
|
this._currentFrameEvent = FrameEvent.OnBeforeRender;
|
|
1370
1385
|
// should we move these callbacks in the regular three onBeforeRender events?
|
|
1371
1386
|
for (let i = 0; i < this.scripts_onBeforeRender.length; i++) {
|