@needle-tools/engine 4.8.6 → 4.8.7-next.3c34e8b

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.
Files changed (85) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/components.needle.json +1 -1
  3. package/dist/{gltf-progressive-DXRy9EQz.js → gltf-progressive-BcHT3Nyo.js} +1 -1
  4. package/dist/{gltf-progressive-C-U_onhf.umd.cjs → gltf-progressive-CH3Q4H06.umd.cjs} +1 -1
  5. package/dist/{gltf-progressive-DViD_J_l.min.js → gltf-progressive-DR6HqF_h.min.js} +1 -1
  6. package/dist/{needle-engine.bundle-CaNItSG7.umd.cjs → needle-engine.bundle-BgFqEj5W.umd.cjs} +128 -128
  7. package/dist/{needle-engine.bundle-CQIq7Zg-.min.js → needle-engine.bundle-BthqMTPI.min.js} +128 -128
  8. package/dist/{needle-engine.bundle-BTJDRZkJ.js → needle-engine.bundle-Fj5SzBaF.js} +4378 -4355
  9. package/dist/needle-engine.js +402 -400
  10. package/dist/needle-engine.min.js +1 -1
  11. package/dist/needle-engine.umd.cjs +1 -1
  12. package/dist/{postprocessing-61aXdqNz.umd.cjs → postprocessing-CVb_x9YY.umd.cjs} +1 -1
  13. package/dist/{postprocessing-D9jDHD0U.js → postprocessing-ORx-0eCx.js} +1 -1
  14. package/dist/{postprocessing-Be9Ds4NK.min.js → postprocessing-Ywv5oKkX.min.js} +1 -1
  15. package/dist/three-examples-BX_Sktc9.min.js +501 -0
  16. package/dist/{three-examples-BihZ_R96.js → three-examples-CNexix3E.js} +2436 -2781
  17. package/dist/{three-examples-Ce6Th3bv.umd.cjs → three-examples-DWxXVnws.umd.cjs} +21 -21
  18. package/dist/{vendor-BRpzuoJE.min.js → vendor-C43vobGc.min.js} +37 -37
  19. package/dist/{vendor-p_xp9KuJ.js → vendor-Z4SPrTcP.js} +2402 -2047
  20. package/dist/vendor-xfQ8tKF3.umd.cjs +1121 -0
  21. package/lib/engine/api.d.ts +2 -0
  22. package/lib/engine/api.js +2 -0
  23. package/lib/engine/api.js.map +1 -1
  24. package/lib/engine/engine_addressables.d.ts +12 -12
  25. package/lib/engine/engine_addressables.js +30 -23
  26. package/lib/engine/engine_addressables.js.map +1 -1
  27. package/lib/engine/engine_animation.d.ts +1 -3
  28. package/lib/engine/engine_animation.js +15 -9
  29. package/lib/engine/engine_animation.js.map +1 -1
  30. package/lib/engine/engine_feature_flags.d.ts +3 -0
  31. package/lib/engine/engine_feature_flags.js +6 -0
  32. package/lib/engine/engine_feature_flags.js.map +1 -0
  33. package/lib/engine/engine_gameobject.js +0 -4
  34. package/lib/engine/engine_gameobject.js.map +1 -1
  35. package/lib/engine/engine_loaders.js +15 -11
  36. package/lib/engine/engine_loaders.js.map +1 -1
  37. package/lib/engine/engine_mainloop_utils.d.ts +2 -1
  38. package/lib/engine/engine_mainloop_utils.js +18 -6
  39. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  40. package/lib/engine/engine_pmrem.d.ts +6 -0
  41. package/lib/engine/engine_pmrem.js +9 -40
  42. package/lib/engine/engine_pmrem.js.map +1 -1
  43. package/lib/engine/extensions/extensions.js +2 -2
  44. package/lib/engine/extensions/extensions.js.map +1 -1
  45. package/lib/engine/js-extensions/Object3D.js +19 -0
  46. package/lib/engine/js-extensions/Object3D.js.map +1 -1
  47. package/lib/engine-components/Animation.js +2 -1
  48. package/lib/engine-components/Animation.js.map +1 -1
  49. package/lib/engine-components/AnimationUtilsAutoplay.js +1 -6
  50. package/lib/engine-components/AnimationUtilsAutoplay.js.map +1 -1
  51. package/lib/engine-components/DropListener.d.ts +17 -12
  52. package/lib/engine-components/DropListener.js +34 -31
  53. package/lib/engine-components/DropListener.js.map +1 -1
  54. package/lib/engine-components/LookAtConstraint.d.ts +5 -1
  55. package/lib/engine-components/LookAtConstraint.js +8 -0
  56. package/lib/engine-components/LookAtConstraint.js.map +1 -1
  57. package/lib/engine-components/OrbitControls.d.ts +5 -7
  58. package/lib/engine-components/OrbitControls.js +12 -11
  59. package/lib/engine-components/OrbitControls.js.map +1 -1
  60. package/lib/engine-components/Skybox.js +9 -3
  61. package/lib/engine-components/Skybox.js.map +1 -1
  62. package/lib/engine-components/webxr/WebXRImageTracking.d.ts +1 -1
  63. package/lib/engine-components/webxr/WebXRImageTracking.js +12 -10
  64. package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
  65. package/package.json +4 -3
  66. package/plugins/vite/alias.js +45 -23
  67. package/src/engine/api.ts +3 -1
  68. package/src/engine/engine_addressables.ts +44 -33
  69. package/src/engine/engine_animation.ts +17 -9
  70. package/src/engine/engine_feature_flags.ts +8 -0
  71. package/src/engine/engine_gameobject.ts +0 -4
  72. package/src/engine/engine_loaders.ts +18 -13
  73. package/src/engine/engine_mainloop_utils.ts +24 -8
  74. package/src/engine/engine_pmrem.ts +9 -45
  75. package/src/engine/extensions/extensions.ts +2 -2
  76. package/src/engine/js-extensions/Object3D.ts +25 -2
  77. package/src/engine-components/Animation.ts +1 -1
  78. package/src/engine-components/AnimationUtilsAutoplay.ts +1 -6
  79. package/src/engine-components/DropListener.ts +40 -31
  80. package/src/engine-components/LookAtConstraint.ts +9 -1
  81. package/src/engine-components/OrbitControls.ts +19 -16
  82. package/src/engine-components/Skybox.ts +8 -4
  83. package/src/engine-components/webxr/WebXRImageTracking.ts +16 -14
  84. package/dist/three-examples-DKY9Nfge.min.js +0 -501
  85. package/dist/vendor-Ja-vKV-a.umd.cjs +0 -1121
@@ -1 +1 @@
1
- {"version":3,"file":"Skybox.js","sourceRoot":"","sources":["../../src/engine-components/Skybox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Skybox.js","sourceRoot":"","sources":["../../src/engine-components/Skybox.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,7 @@ export declare class WebXRImageTrackingModel {
64
64
  * @group Components
65
65
  */
66
66
  export declare class WebXRImageTracking extends Behaviour {
67
- trackedImages?: WebXRImageTrackingModel[];
67
+ trackedImages: WebXRImageTrackingModel[];
68
68
  /** Applies smoothing based on detected jitter to the tracked image. */
69
69
  smooth: boolean;
70
70
  private readonly trackedImageIndexMap;
@@ -14,6 +14,7 @@ import { imageToCanvas } from "../../engine-components/export/usdz/ThreeUSDZExpo
14
14
  import { USDZExporter } from "../../engine-components/export/usdz/USDZExporter.js";
15
15
  import { Behaviour, GameObject } from "../Component.js";
16
16
  import { Renderer } from "../Renderer.js";
17
+ import { Context } from "../../engine/engine_context.js";
17
18
  // https://github.com/immersive-web/marker-tracking/blob/main/explainer.md
18
19
  const debug = getParam("debugimagetracking");
19
20
  export class WebXRTrackedImage {
@@ -142,6 +143,9 @@ class ImageTrackingExtension {
142
143
  this.imageData = imageData;
143
144
  this.widthInMeters = widthInMeters;
144
145
  }
146
+ getImageTrackingComponents() {
147
+ return GameObject.findObjectsOfType(WebXRImageTracking, Context.Current).filter(c => c.trackedImages && c.trackedImages.length > 0 && c.activeAndEnabled);
148
+ }
145
149
  onAfterHierarchy(_context, writer) {
146
150
  const iOSVersion = DeviceUtilities.getiOSVersion();
147
151
  const majorVersion = iOSVersion ? parseInt(iOSVersion.split(".")[0]) : 18;
@@ -153,11 +157,9 @@ class ImageTrackingExtension {
153
157
  writer.closeBlock();
154
158
  }
155
159
  onBeforeBuildDocument(_context) {
156
- const imageTracking = GameObject.findObjectOfType(WebXRImageTracking);
157
- if (!imageTracking || !imageTracking.trackedImages)
158
- return;
160
+ const imageTracking = this.getImageTrackingComponents()[0];
159
161
  // Warn if more than one tracked image is used for USDZ; that's not supported at the moment.
160
- if (imageTracking.trackedImages.length > 1) {
162
+ if (imageTracking && imageTracking.trackedImages?.length > 1) {
161
163
  if (isDevEnvironment())
162
164
  showBalloonWarning("USDZ: Only one tracked image is supported.");
163
165
  console.warn("USDZ: Only one tracked image is supported.");
@@ -167,14 +169,14 @@ class ImageTrackingExtension {
167
169
  context.files['image_tracking/' + this.filename] = this.imageData;
168
170
  }
169
171
  onExportObject(object, model, _context) {
170
- const imageTracking = GameObject.findObjectOfType(WebXRImageTracking);
171
- if (!imageTracking || !imageTracking.trackedImages)
172
+ const imageTracking = this.getImageTrackingComponents()[0];
173
+ if (!imageTracking || !imageTracking.trackedImages?.length)
174
+ return;
175
+ const exporter = GameObject.findObjectOfType(USDZExporter);
176
+ if (!exporter)
172
177
  return;
173
178
  for (const trackedImage of imageTracking.trackedImages) {
174
179
  if (trackedImage.object?.asset === object) {
175
- const exporter = GameObject.findObjectOfType(USDZExporter);
176
- if (!exporter)
177
- continue;
178
180
  const { scale, target } = exporter.getARScaleAndTarget();
179
181
  // We have to reset the image tracking object's position and rotation, because QuickLook applies them.
180
182
  // On Android WebXR they're replaced by the tracked data
@@ -211,7 +213,7 @@ class ImageTrackingExtension {
211
213
  * @group Components
212
214
  */
213
215
  export class WebXRImageTracking extends Behaviour {
214
- trackedImages;
216
+ trackedImages = [];
215
217
  /** Applies smoothing based on detected jitter to the tracked image. */
216
218
  smooth = true;
217
219
  trackedImageIndexMap = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"WebXRImageTracking.js","sourceRoot":"","sources":["../../../src/engine-components/webxr/WebXRImageTracking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebXRImageTracking.js","sourceRoot":"","sources":["../../../src/engine-components/webxr/WebXRImageTracking.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@needle-tools/engine",
3
- "version": "4.8.6",
3
+ "version": "4.8.7-next.3c34e8b",
4
4
  "description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.",
5
5
  "main": "dist/needle-engine.min.js",
6
6
  "exports": {
@@ -94,6 +94,7 @@
94
94
  "dependencies": {
95
95
  "@dimforge/rapier3d-compat": "^0.14.0",
96
96
  "@needle-tools/gltf-progressive": "3.3.2",
97
+ "@needle-tools/three-animation-pointer": "1.0.1",
97
98
  "@webxr-input-profiles/motion-controllers": "^1.0.0",
98
99
  "flatbuffers": "2.0.4",
99
100
  "md5": "^2.3.0",
@@ -102,7 +103,7 @@
102
103
  "postprocessing": "^6.36.6",
103
104
  "simplex-noise": "^4.0.1",
104
105
  "stats.js": "^0.17.0",
105
- "three": "npm:@needle-tools/three@0.169.9",
106
+ "three": "npm:@needle-tools/three@0.169.10",
106
107
  "three-mesh-bvh": "^0.9.1",
107
108
  "three-mesh-ui": "npm:@needle-tools/three-mesh-ui@^7.1.5-alpha.5",
108
109
  "three.quarks": "0.15.6",
@@ -167,4 +168,4 @@
167
168
  "module": "lib/needle-engine.js",
168
169
  "typings": "lib/needle-engine.d.ts",
169
170
  "types": "lib/needle-engine.d.ts"
170
- }
171
+ }
@@ -26,9 +26,7 @@ const packages_to_resolve = {
26
26
  'three/nodes': (res, packageName, index, path) => {
27
27
  return "three/examples/jsm/nodes/Nodes.js";
28
28
  },
29
- 'three': (res, packageName, index, _path) => {
30
- return path.resolve(projectDir, 'node_modules', 'three');
31
- },
29
+ 'three': "auto-resolve",
32
30
 
33
31
  // Handle all previous imports where users did import using @needle-engine/src
34
32
  '@needle-tools/engine/src': (res, packageName, index, path) => {
@@ -61,6 +59,9 @@ const packages_to_resolve = {
61
59
  'three-mesh-bvh': "auto-resolve",
62
60
  'postprocessing': "auto-resolve",
63
61
  '@dimforge/rapier3d-compat': "auto-resolve",
62
+
63
+ '@needle-tools/gltf-progressive': "auto-resolve",
64
+ '@needle-tools/materialx': "auto-resolve",
64
65
  }
65
66
 
66
67
  /**
@@ -76,10 +77,13 @@ export const needleViteAlias = (command, config, userSettings) => {
76
77
  let outputDebugFile = null;
77
78
  function log(...msg) {
78
79
  console.log(...msg);
79
- if (debug && outputDebugFile) outputDebugFile.write(msg.join(" ") + "\n");
80
+ if (debug) logToFile(...msg);
81
+ }
82
+ function logToFile(...msg) {
83
+ outputDebugFile?.write(msg.join(" ") + "\n");
80
84
  }
81
85
  if (debug) {
82
- const outputFilePath = path.resolve(projectDir, 'node_modules/.vite/needle.alias.log');
86
+ const outputFilePath = path.resolve(projectDir, 'node_modules/.needle/needle.alias.log');
83
87
  const outputDirectory = path.dirname(outputFilePath);
84
88
  if (!existsSync(outputDirectory)) mkdirSync(outputDirectory, { recursive: true });
85
89
  outputDebugFile = createWriteStream(outputFilePath, { flags: "a" });
@@ -105,6 +109,18 @@ export const needleViteAlias = (command, config, userSettings) => {
105
109
  }
106
110
  }
107
111
 
112
+
113
+ // is needle engine a local package?
114
+ // This will cause local changes to not be reflected anymore...
115
+ const localEnginePath = path.resolve(projectDir, 'node_modules/', '@needle-tools/engine', 'node_modules');
116
+ if (existsSync(localEnginePath)) {
117
+ config.optimizeDeps ??= {};
118
+ config.optimizeDeps.exclude ??= [];
119
+ config.optimizeDeps.exclude.push('@needle-tools/engine');
120
+ log("[needle-alias] Detected local @needle-tools/engine package: will exclude it from optimization");
121
+ }
122
+
123
+
108
124
  if (debug) {
109
125
  const testResults = [];
110
126
  for (const name in aliasDict) {
@@ -118,6 +134,7 @@ export const needleViteAlias = (command, config, userSettings) => {
118
134
  },
119
135
  }
120
136
 
137
+ /** @type {string|undefined} */
121
138
  let lastImporter = "";
122
139
  /** This plugin logs all imports. This helps to find cases where incorrect folders are found/resolved. */
123
140
 
@@ -140,15 +157,16 @@ export const needleViteAlias = (command, config, userSettings) => {
140
157
  // verbose logging for all imports
141
158
  if (lastImporter !== importer) {
142
159
  lastImporter = importer;
143
- log(`[needle-alias] Resolving: ${importer} (file${options?.ssr ? ", SSR" : ""})`);
160
+ logToFile(`[needle-alias] Resolving: ${importer} (file${options?.ssr ? ", SSR" : ""})`);
144
161
  }
145
- log(`[needle-alias] → ${id}`);
162
+ logToFile(`[needle-alias] → ${id}`);
146
163
  return;
147
164
  },
148
165
  }
149
166
  if (debug) return [debuggingPlugin, aliasPlugin];
150
167
  return [aliasPlugin];
151
168
 
169
+
152
170
  /**
153
171
  * Adds a path resolver to the alias dictionary.
154
172
  * @param {string} name - The name of the package to resolve.
@@ -163,25 +181,29 @@ export const needleViteAlias = (command, config, userSettings) => {
163
181
  const callback = typeof value === "function" ? value : null;
164
182
 
165
183
  let fullpath = path.resolve(projectDir, 'node_modules', name);
166
- if (!existsSync(fullpath)) {
167
- fullpath = path.resolve(projectDir, 'node_modules', "@needle-tools/engine", "node_modules", name);
184
+ // if (!existsSync(path.resolve(fullpath, "package.json")))
185
+ {
186
+ const pathInEngine = path.resolve(projectDir, 'node_modules', "@needle-tools/engine", "node_modules", name);
187
+ if (existsSync(pathInEngine)) {
188
+ fullpath = pathInEngine;
189
+ }
168
190
  }
169
191
 
170
- if (existsSync(fullpath)) {
171
- aliasDict[name] = (packageName, index, path) => {
172
- if (callback !== null) {
173
- const overrideResult = callback(fullpath, packageName, index, path);
174
- if (typeof overrideResult === "string")
175
- if (existsSync(overrideResult)) {
176
- if (debug) console.warn(`[needle-alias] \"${path}\" was requested and resolved to \"${overrideResult}\"`);
177
- return overrideResult;
178
- }
179
- }
180
-
181
- if (debug && path != packageName) {
182
- console.warn(`[needle-alias] \"${path}\" was requested and resolved to \"${fullpath}\"`);
183
- }
192
+ const workingDirectory = `${process.cwd()}/`;
193
+ const pathExists = existsSync(fullpath);
194
+
195
+ aliasDict[name] = (packageName, index, path) => {
196
+ if (callback !== null) {
197
+ const overrideResult = callback(fullpath, packageName, index, path);
198
+ if (typeof overrideResult === "string")
199
+ if (existsSync(overrideResult)) {
200
+ if (debug && overrideResult !== packageName) log(`[needle-alias] Resolved \"${path}\" → \"${overrideResult.substring(workingDirectory.length).replaceAll("\\", "/")}\"`);
201
+ return overrideResult;
202
+ }
203
+ }
184
204
 
205
+ if (pathExists) {
206
+ if (debug && path !== packageName) log(`[needle-alias] Resolved \"${path}\" → \"${fullpath.substring(workingDirectory.length).replaceAll("\\", "/")}\"`);
185
207
  return fullpath;
186
208
  }
187
209
  }
package/src/engine/api.ts CHANGED
@@ -33,6 +33,7 @@ export * from "./engine_context.js";
33
33
  export * from "./engine_context_registry.js";
34
34
  export * from "./engine_coroutine.js"
35
35
  export * from "./engine_create_objects.js";
36
+ export * from "./engine_feature_flags.js"
36
37
  export * from "./engine_gameobject.js";
37
38
  export { Gizmos } from "./engine_gizmos.js"
38
39
  export * from "./engine_gltf.js";
@@ -42,7 +43,7 @@ export { InstancingUtil } from "./engine_instancing.js";
42
43
  export { hasCommercialLicense, hasIndieLicense, hasProLicense } from "./engine_license.js";
43
44
  export * from "./engine_lifecycle_api.js";
44
45
  export { NeedleEngineModelLoader } from "./engine_loaders.callbacks.js";
45
- export { loadAsset, loadSync,parseSync } from "./engine_loaders.js";
46
+ export { loadAsset, loadSync, parseSync } from "./engine_loaders.js";
46
47
  export * from "./engine_math.js";
47
48
  export { MODULES as NEEDLE_ENGINE_MODULES } from "./engine_modules.js";
48
49
  export * from "./engine_networking.js";
@@ -59,6 +60,7 @@ export * from "./engine_physics.js";
59
60
  export * from "./engine_physics.types.js";
60
61
  export * from "./engine_physics_rapier.js";
61
62
  export * from "./engine_playerview.js";
63
+ export { loadPMREM } from "./engine_pmrem.js";
62
64
  export * from "./engine_scenelighting.js";
63
65
  export * from "./engine_serialization.js";
64
66
  export { type ISerializable } from "./engine_serialization_core.js";
@@ -8,7 +8,7 @@ import { BlobStorage } from "./engine_networking_blob.js";
8
8
  import { registerPrefabProvider, syncInstantiate, SyncInstantiateOptions } from "./engine_networking_instantiate.js";
9
9
  import { SerializationContext, TypeSerializer } from "./engine_serialization_core.js";
10
10
  import { Context } from "./engine_setup.js";
11
- import type { GLTF, IComponent, IGameObject, SourceIdentifier } from "./engine_types.js";
11
+ import type { GLTF, IComponent, IGameObject, Model, SourceIdentifier } from "./engine_types.js";
12
12
 
13
13
  const debug = getParam("debugaddressables");
14
14
 
@@ -138,21 +138,35 @@ export class AssetReference {
138
138
  return ref;
139
139
  }
140
140
 
141
- private static currentlyInstantiating: Map<string, number> = new Map<string, number>();
142
141
 
143
- /** @returns true if this is an AssetReference instance */
144
- get isAssetReference() { return true; }
145
142
 
146
- /** The loaded asset */
143
+
144
+
145
+
146
+ readonly isAssetReference = true;
147
+
148
+ /**
149
+ * This is the loaded asset root object. If the asset is a glb/gltf file this will be the {@link three#Scene} object.
150
+ */
151
+ get rawAsset(): any { return this._rawAsset; }
152
+
153
+ /** The loaded asset root
154
+ */
147
155
  get asset(): Object3D | null {
148
- return this._glbRoot ?? this._asset;
156
+ return this._glbRoot ?? (this._rawAsset?.scene || null);
149
157
  }
150
158
 
151
- protected set asset(val: any) {
152
- this._asset = val;
159
+ protected set asset(val: Object3D | null) {
160
+ if (val) {
161
+ this._rawAsset = {
162
+ animations: val.animations,
163
+ scene: val,
164
+ scenes: [val],
165
+ }
166
+ }
167
+ else this._rawAsset = null;
153
168
  }
154
169
 
155
- private _loading?: PromiseLike<any>;
156
170
 
157
171
  /** The url of the loaded asset (or the asset to be loaded)
158
172
  * @deprecated use url */
@@ -177,12 +191,7 @@ export class AssetReference {
177
191
  (this._url.startsWith("http") || this._url.startsWith("blob:") || this._url.startsWith("www.") || this._url.includes("/"));
178
192
  }
179
193
 
180
- /**
181
- * This is the loaded asset root object. If the asset is a glb/gltf file this will be the {@link three#Scene} object.
182
- */
183
- get rawAsset(): any { return this._asset; }
184
-
185
- private _asset: any;
194
+ private _rawAsset: Model | null = null;
186
195
  private _glbRoot?: Object3D | null;
187
196
  private _url: string;
188
197
  private _urlName: string;
@@ -207,7 +216,7 @@ export class AssetReference {
207
216
  else {
208
217
  this._urlName = uri;
209
218
  }
210
-
219
+
211
220
  if (asset !== null) this.asset = asset;
212
221
  registerPrefabProvider(this._url, this.onResolvePrefab.bind(this));
213
222
  }
@@ -226,6 +235,8 @@ export class AssetReference {
226
235
  return !this.asset || (this.asset as any).__destroyed === true || isDestroyed(this.asset) === true;
227
236
  }
228
237
 
238
+ private _loadingPromise: Promise<Model | null | undefined> | null = null;
239
+
229
240
  /**
230
241
  * @returns `true` if the asset has been loaded (via preload) or if it exists already (assigned to `asset`) */
231
242
  isLoaded() { return this._rawBinary || this.asset !== undefined }
@@ -242,7 +253,7 @@ export class AssetReference {
242
253
  this.asset = null;
243
254
  this._rawBinary = undefined;
244
255
  this._glbRoot = null;
245
- this._loading = undefined;
256
+ this._loadingPromise = null;
246
257
  if (Context.Current) {
247
258
  Context.Current.addressables.unregisterAssetReference(this);
248
259
  }
@@ -267,16 +278,14 @@ export class AssetReference {
267
278
  /** Loads the asset and creates one instance (assigned to `asset`)
268
279
  * @returns the loaded asset
269
280
  */
270
- async loadAssetAsync(prog?: ProgressCallback | null) {
271
- if (debug)
272
- console.log("loadAssetAsync", this.url);
281
+ async loadAssetAsync(prog?: ProgressCallback | null): Promise<Object3D | null> {
282
+ if (debug) console.log("[AssetReference] loadAssetAsync", this.url);
273
283
  if (!this.mustLoad) return this.asset;
274
284
 
275
285
  if (prog) this._progressListeners.push(prog);
276
-
277
- if (this._loading !== undefined) {
278
- // console.warn("Wait for other loading thiny");
279
- return this._loading.then(_ => this.asset);
286
+
287
+ if (this._loadingPromise !== null) {
288
+ return this._loadingPromise.then(_ => this.asset);
280
289
  }
281
290
  const context = Context.Current;
282
291
  // TODO: technically we shouldnt call awake only when the object is added to a scene
@@ -285,31 +294,30 @@ export class AssetReference {
285
294
  // console.log("START LOADING");
286
295
  if (this._rawBinary) {
287
296
  if (!(this._rawBinary instanceof ArrayBuffer)) {
288
- console.error("Failed loading: Invalid raw binary data. Must be of type ArrayBuffer. " + (typeof this._rawBinary));
297
+ console.error("[AssetReference] Failed loading Invalid data. Must be of type ArrayBuffer. " + (typeof this._rawBinary));
289
298
  return null;
290
299
  }
291
- this._loading = getLoader().parseSync(context, this._rawBinary, this.url, null);
300
+ this._loadingPromise = getLoader().parseSync(context, this._rawBinary, this.url, null);
292
301
  this.raiseProgressEvent(new ProgressEvent("progress", { loaded: this._rawBinary.byteLength, total: this._rawBinary.byteLength }));
293
302
  }
294
303
  else {
295
304
  if (debug) console.log("Load async", this.url);
296
- this._loading = getLoader().loadSync(context, this.url, this.url, null, prog => {
305
+ this._loadingPromise = getLoader().loadSync(context, this.url, this.url, null, prog => {
297
306
  this.raiseProgressEvent(prog);
298
307
  });
299
308
  }
300
- const res = await this._loading;
309
+ this._loadingPromise.finally(() => this._loadingPromise = null);
310
+ const res = await this._loadingPromise;
301
311
  // clear all progress listeners after download has finished
302
312
  this._progressListeners.length = 0;
303
313
  this._glbRoot = this.tryGetActualGameObjectRoot(res);
304
- this._loading = undefined;
305
314
  if (res) {
306
315
  // Make sure the loaded roots all have a reference to this AssetReference
307
316
  // that was originally loading it.
308
317
  // We need this when the loaded asset is being disposed
309
318
  // TODO: we have to prevent disposing resources that are still in use
310
319
  res[$assetReference] = this;
311
- if (this._glbRoot)
312
- this._glbRoot[$assetReference] = this;
320
+ if (this._glbRoot) this._glbRoot[$assetReference] = this;
313
321
  if (this.asset) this.asset[$assetReference] = this;
314
322
 
315
323
  // we need to handle the pre_setup callsbacks before instantiating
@@ -317,7 +325,7 @@ export class AssetReference {
317
325
  processNewScripts(context);
318
326
 
319
327
  if (res.scene !== undefined) {
320
- this.asset = res;
328
+ this._rawAsset = res;
321
329
  }
322
330
  return this.asset;
323
331
  }
@@ -352,6 +360,9 @@ export class AssetReference {
352
360
  }
353
361
  }
354
362
 
363
+
364
+ private static readonly currentlyInstantiating: Map<string, number> = new Map<string, number>();
365
+
355
366
  private async onInstantiate(opts?: Object3D | IInstantiateOptions | SyncInstantiateOptions | null, networked: boolean = false, saveOnServer?: boolean): Promise<Object3D | null> {
356
367
  const context = Context.Current;
357
368
 
@@ -544,7 +555,7 @@ export class ImageReference {
544
555
  console.error("Can not load texture without url");
545
556
  return failedTexturePromise;
546
557
  }
547
-
558
+
548
559
  if (!this.loader) this.loader = new TextureLoader();
549
560
  this.loader.setCrossOrigin("anonymous");
550
561
  return this.loader.loadAsync(this.url).then(res => {
@@ -2,6 +2,7 @@ import { AnimationAction, AnimationClip, AnimationMixer, Object3D, PropertyBindi
2
2
 
3
3
  import type { Context } from "./engine_context.js";
4
4
  import { GLTF, IAnimationComponent, Model } from "./engine_types.js";
5
+ import { TypeStore } from "./engine_typestore.js";
5
6
 
6
7
  /**
7
8
  * Registry for animation related data. Use {@link registerAnimationMixer} to register an animation mixer instance.
@@ -88,12 +89,15 @@ export class AnimationUtils {
88
89
  * This method will look for objects in the scene that have animations and assign them to the correct objects.
89
90
  * @param file The GLTF file to assign the animations from
90
91
  */
91
- static assignAnimationsFromFile(file: Pick<Model, "animations" | "scene">, opts?: { createAnimationComponent(obj: Object3D, animation: AnimationClip): IAnimationComponent }) {
92
+ static autoplayAnimations(file: Object3D | Pick<Model, "animations" | "scene">): Array<IAnimationComponent> | null {
92
93
  if (!file || !file.animations) {
93
94
  console.debug("No animations found in file");
94
- return;
95
+ return null;
95
96
  }
96
97
 
98
+ const scene = "scene" in file ? file.scene : file as Object3D;
99
+ const animationComponents = new Array<IAnimationComponent>();
100
+
97
101
  for (let i = 0; i < file.animations.length; i++) {
98
102
  const animation = file.animations[i];
99
103
  if (!animation.tracks || animation.tracks.length <= 0) {
@@ -103,12 +107,12 @@ export class AnimationUtils {
103
107
  for (const t in animation.tracks) {
104
108
  const track = animation.tracks[t];
105
109
  const parsedPath = PropertyBinding.parseTrackName(track.name);
106
- let obj = PropertyBinding.findNode(file.scene, parsedPath.nodeName);
110
+ let obj = PropertyBinding.findNode(scene, parsedPath.nodeName);
107
111
  if (!obj) {
108
112
  const objectName = track["__objectName"] ?? track.name.substring(0, track.name.indexOf("."));
109
113
  // let obj = gltf.scene.getObjectByName(objectName);
110
114
  // this finds unnamed objects that still have tracks targeting them
111
- obj = file.scene.getObjectByProperty('uuid', objectName);
115
+ obj = scene.getObjectByProperty('uuid', objectName);
112
116
 
113
117
  if (!obj) {
114
118
  // console.warn("could not find " + objectName, animation, gltf.scene);
@@ -116,19 +120,23 @@ export class AnimationUtils {
116
120
  }
117
121
  }
118
122
 
119
- let animationComponent = findAnimationGameObjectInParent(obj);
123
+ let animationComponent = findAnimationGameObjectInParent(obj) || findAnimationGameObjectInParent(scene);
120
124
  if (!animationComponent) {
121
- if (!opts?.createAnimationComponent) {
122
- console.warn("No AnimationComponent found in parent hierarchy of object and no 'createAnimationComponent' callback was provided in options.")
123
- continue;
125
+ const anim = TypeStore.get("Animation");
126
+ animationComponent = scene.addComponent(anim);
127
+ if (!animationComponent) {
128
+ console.error("Failed creating Animation component: No 'Animation' component found in TypeStore");
129
+ break;
124
130
  }
125
- animationComponent = opts.createAnimationComponent(file.scene, animation)
126
131
  }
132
+ animationComponents.push(animationComponent);
127
133
  if (animationComponent.addClip) {
128
134
  animationComponent.addClip(animation);
129
135
  }
130
136
  }
131
137
  }
138
+ return animationComponents;
139
+
132
140
  function findAnimationGameObjectInParent(obj): IAnimationComponent | null {
133
141
  if (!obj) return null;
134
142
  const components = obj.userData?.components;
@@ -0,0 +1,8 @@
1
+
2
+
3
+ export namespace NEEDLE_ENGINE_FEATURE_FLAGS {
4
+
5
+ // eslint-disable-next-line prefer-const
6
+ export let experimentalSmartHierarchyUpdate = false;
7
+
8
+ }