@needle-tools/engine 4.4.6 → 4.5.0-alpha.1

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 (79) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/{needle-engine.bundle-0359367a.js → needle-engine.bundle-3d05185b.js} +4960 -4918
  3. package/dist/{needle-engine.bundle-381aaeb9.light.min.js → needle-engine.bundle-b2e17f0e.light.min.js} +162 -162
  4. package/dist/{needle-engine.bundle-545dcd43.light.js → needle-engine.bundle-c44e02c7.light.js} +4959 -4917
  5. package/dist/{needle-engine.bundle-7919deac.light.umd.cjs → needle-engine.bundle-d7d53476.light.umd.cjs} +144 -144
  6. package/dist/{needle-engine.bundle-bd6721d2.min.js → needle-engine.bundle-e4ae93a2.min.js} +162 -162
  7. package/dist/{needle-engine.bundle-cb4d28f2.umd.cjs → needle-engine.bundle-f496c70e.umd.cjs} +143 -143
  8. package/dist/needle-engine.js +438 -438
  9. package/dist/needle-engine.light.js +438 -438
  10. package/dist/needle-engine.light.min.js +1 -1
  11. package/dist/needle-engine.light.umd.cjs +1 -1
  12. package/dist/needle-engine.min.js +1 -1
  13. package/dist/needle-engine.umd.cjs +1 -1
  14. package/lib/engine/api.d.ts +4 -4
  15. package/lib/engine/api.js +4 -4
  16. package/lib/engine/api.js.map +1 -1
  17. package/lib/engine/engine_application.d.ts +5 -0
  18. package/lib/engine/engine_application.js +11 -11
  19. package/lib/engine/engine_application.js.map +1 -1
  20. package/lib/engine/engine_context.js +14 -3
  21. package/lib/engine/engine_context.js.map +1 -1
  22. package/lib/engine/engine_hot_reload.d.ts +1 -0
  23. package/lib/engine/engine_hot_reload.js +16 -3
  24. package/lib/engine/engine_hot_reload.js.map +1 -1
  25. package/lib/engine/engine_lifecycle_api.d.ts +2 -1
  26. package/lib/engine/engine_lifecycle_api.js +2 -1
  27. package/lib/engine/engine_lifecycle_api.js.map +1 -1
  28. package/lib/engine/webcomponents/buttons.d.ts +15 -3
  29. package/lib/engine/webcomponents/buttons.js +32 -6
  30. package/lib/engine/webcomponents/buttons.js.map +1 -1
  31. package/lib/engine/webcomponents/needle-engine.ar-overlay.d.ts +21 -0
  32. package/lib/engine/webcomponents/needle-engine.ar-overlay.js +167 -0
  33. package/lib/engine/webcomponents/needle-engine.ar-overlay.js.map +1 -0
  34. package/lib/engine/webcomponents/needle-engine.attributes.d.ts +72 -0
  35. package/lib/engine/webcomponents/needle-engine.attributes.js +2 -0
  36. package/lib/engine/webcomponents/needle-engine.attributes.js.map +1 -0
  37. package/lib/engine/webcomponents/needle-engine.d.ts +113 -0
  38. package/lib/engine/webcomponents/needle-engine.extras.d.ts +6 -0
  39. package/lib/engine/webcomponents/needle-engine.extras.js +14 -0
  40. package/lib/engine/webcomponents/needle-engine.extras.js.map +1 -0
  41. package/lib/engine/webcomponents/needle-engine.js +832 -0
  42. package/lib/engine/webcomponents/needle-engine.js.map +1 -0
  43. package/lib/engine/webcomponents/needle-engine.loading.d.ts +44 -0
  44. package/lib/engine/webcomponents/needle-engine.loading.js +350 -0
  45. package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -0
  46. package/lib/engine/xr/NeedleXRSession.js +21 -0
  47. package/lib/engine/xr/NeedleXRSession.js.map +1 -1
  48. package/lib/engine-components/CameraUtils.js.map +1 -1
  49. package/lib/engine-components/Component.js +5 -0
  50. package/lib/engine-components/Component.js.map +1 -1
  51. package/lib/engine-components/SceneSwitcher.js +1 -1
  52. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  53. package/lib/engine-components/Skybox.js +1 -1
  54. package/lib/engine-components/Skybox.js.map +1 -1
  55. package/lib/engine-components/ui/EventSystem.js +1 -0
  56. package/lib/engine-components/ui/EventSystem.js.map +1 -1
  57. package/lib/needle-engine.d.ts +1 -1
  58. package/lib/needle-engine.js +1 -1
  59. package/lib/needle-engine.js.map +1 -1
  60. package/package.json +1 -1
  61. package/plugins/vite/reload.js +8 -20
  62. package/src/engine/api.ts +4 -4
  63. package/src/engine/engine_application.ts +11 -11
  64. package/src/engine/engine_context.ts +16 -3
  65. package/src/engine/engine_hot_reload.ts +16 -4
  66. package/src/engine/engine_lifecycle_api.ts +2 -1
  67. package/src/engine/webcomponents/buttons.ts +37 -8
  68. package/src/engine/{engine_element_overlay.ts → webcomponents/needle-engine.ar-overlay.ts} +2 -2
  69. package/src/engine/{engine_element_extras.ts → webcomponents/needle-engine.extras.ts} +1 -1
  70. package/src/engine/{engine_element_loading.ts → webcomponents/needle-engine.loading.ts} +6 -6
  71. package/src/engine/{engine_element.ts → webcomponents/needle-engine.ts} +15 -16
  72. package/src/engine/xr/NeedleXRSession.ts +26 -2
  73. package/src/engine-components/CameraUtils.ts +1 -1
  74. package/src/engine-components/Component.ts +51 -48
  75. package/src/engine-components/SceneSwitcher.ts +1 -1
  76. package/src/engine-components/Skybox.ts +1 -1
  77. package/src/engine-components/ui/EventSystem.ts +1 -0
  78. package/src/needle-engine.ts +1 -1
  79. /package/src/engine/{engine_element_attributes.ts → webcomponents/needle-engine.attributes.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"EventSystem.js","sourceRoot":"","sources":["../../../src/engine-components/ui/EventSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventSystem.js","sourceRoot":"","sources":["../../../src/engine-components/ui/EventSystem.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import "./engine/engine_element.js";
1
+ import "./engine/webcomponents/needle-engine.js";
2
2
  import "./engine/engine_setup.js";
3
3
  import "./engine/engine_audio.js";
4
4
  export * from "./engine/api.js";
@@ -1,4 +1,4 @@
1
- import "./engine/engine_element.js";
1
+ import "./engine/webcomponents/needle-engine.js";
2
2
  import "./engine/engine_setup.js";
3
3
  import "./engine/engine_audio.js";
4
4
  export * from "./engine/api.js";
@@ -1 +1 @@
1
- {"version":3,"file":"needle-engine.js","sourceRoot":"","sources":["../src/needle-engine.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAC;AACpC,OAAO,0BAA0B,CAAC;AAClC,OAAO,0BAA0B,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yCAAyC,CAAC;AACxD,cAAc,yBAAyB,CAAC;AAExC,0CAA0C;AAC1C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpK,MAAM,MAAM,GAAG;IACX,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO;IAChB,eAAe,EAAE,eAAe;IAChC,MAAM,EAAE;QACJ,WAAW,EAAE,SAAS;KACzB;IACD,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,aAAa;IAC5B,oBAAoB,EAAE,aAAa;IACnC,gBAAgB,EAAE,SAAS;IAC3B,cAAc,EAAE,OAAO;CAC1B,CAAC;AACF,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,KAAK,SAAS,EAAE;IAC7C,OAAO,CAAC,IAAI,CAAC,sCAAsC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;CACtF;AACD,SAAS,cAAc,CAAC,GAAW;IAC/B,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;QACnB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KAC1B;AACL,CAAC;AACD,OAAO,KAAK,SAAS,MAAM,kCAAkC,CAAC;AAC9D,cAAc,CAAC,SAAS,CAAC,CAAC;AAE1B,OAAO,KAAK,UAAU,MAAM,2CAA2C,CAAC;AACxE,cAAc,CAAC,UAAU,CAAC,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE;IACzD,QAAQ,MAAM,EAAE;QACZ,KAAK,WAAW,CAAC;QACjB,KAAK,aAAa,CAAC;QACnB,KAAK,QAAQ,CAAC;QACd,KAAK,MAAM;YACP,SAAS;QACb;YACI,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM;KACb;CACJ;AAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;IACvB,UAAU,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;CACjC;KACI;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;QACtB,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;KAC3C;CACJ;AAGD,wBAAwB;AACxB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;IACtB,UAAU,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;CAC/B;;IACI,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC"}
1
+ {"version":3,"file":"needle-engine.js","sourceRoot":"","sources":["../src/needle-engine.ts"],"names":[],"mappings":"AAAA,OAAO,yCAAyC,CAAC;AACjD,OAAO,0BAA0B,CAAC;AAClC,OAAO,0BAA0B,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yCAAyC,CAAC;AACxD,cAAc,yBAAyB,CAAC;AAExC,0CAA0C;AAC1C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACpK,MAAM,MAAM,GAAG;IACX,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,OAAO;IAChB,eAAe,EAAE,eAAe;IAChC,MAAM,EAAE;QACJ,WAAW,EAAE,SAAS;KACzB;IACD,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,aAAa;IAC5B,oBAAoB,EAAE,aAAa;IACnC,gBAAgB,EAAE,SAAS;IAC3B,cAAc,EAAE,OAAO;CAC1B,CAAC;AACF,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,KAAK,SAAS,EAAE;IAC7C,OAAO,CAAC,IAAI,CAAC,sCAAsC,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;CACtF;AACD,SAAS,cAAc,CAAC,GAAW;IAC/B,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;QACnB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KAC1B;AACL,CAAC;AACD,OAAO,KAAK,SAAS,MAAM,kCAAkC,CAAC;AAC9D,cAAc,CAAC,SAAS,CAAC,CAAC;AAE1B,OAAO,KAAK,UAAU,MAAM,2CAA2C,CAAC;AACxE,cAAc,CAAC,UAAU,CAAC,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE;IACzD,QAAQ,MAAM,EAAE;QACZ,KAAK,WAAW,CAAC;QACjB,KAAK,aAAa,CAAC;QACnB,KAAK,QAAQ,CAAC;QACd,KAAK,MAAM;YACP,SAAS;QACb;YACI,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM;KACb;CACJ;AAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;IACvB,UAAU,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;CACjC;KACI;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;QACtB,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;KAC3C;CACJ;AAGD,wBAAwB;AACxB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;IACtB,UAAU,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;CAC/B;;IACI,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@needle-tools/engine",
3
- "version": "4.4.6",
3
+ "version": "4.5.0-alpha.1",
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": {
@@ -267,28 +267,16 @@ function removeVersionQueryArgument(content) {
267
267
 
268
268
 
269
269
  function insertScriptRegisterHotReloadCode(src, filePath) {
270
- if (!filePath.includes("needle-engine.ts")) {
270
+
271
+ // We only want to inject the hot reload code in the needle-engine root file
272
+ if(!filePath.includes("/src/needle-engine.ts")) {
271
273
  return src;
272
274
  }
273
-
274
- // this code injects a register call into the component method
275
+ console.log("[Needle HMR] Hot reload is enabled");
276
+ // this code let's the engine know that we are in hot reload mode
275
277
  const code = `
276
-
277
- import { registerHotReloadType as register, unregisterHotReloadType as unregister } from "./engine/engine_hot_reload";
278
- import { Component as ComponentType } from "./engine-components/Component";
279
-
280
- const prototype = ComponentType.prototype;
281
- const created = prototype.__internalNewInstanceCreated;
282
- prototype.__internalNewInstanceCreated = function (...args) {
283
- created.call(this, ...args);
284
- register(this);
285
- }
286
- const destroy = prototype.__internalDestroy;
287
- prototype.__internalDestroy = function (...args) {
288
- destroy.call(this, ...args);
289
- unregister(this);
290
- }
291
- `
278
+ globalThis.NEEDLE_HOT_RELOAD_ENABLED = true;
279
+ `
292
280
  return code + src;
293
281
  }
294
282
 
@@ -357,7 +345,7 @@ if (import.meta.hot) {
357
345
  filesUsingHotReload.add(originalFilePath);
358
346
 
359
347
  return {
360
- code: code + src,
348
+ code: src + "\n" + code,
361
349
  map: null
362
350
  }
363
351
 
package/src/engine/api.ts CHANGED
@@ -22,7 +22,7 @@
22
22
  export * from "./debug/index.js";
23
23
  export * from "./engine_addressables.js";
24
24
  export { AnimationUtils } from "./engine_animation.js";
25
- export * from "./engine_application.js";
25
+ export { Application } from "./engine_application.js";
26
26
  export * from "./engine_assetdatabase.js";
27
27
  export { getCameraController, setAutoFitEnabled, setCameraController, useForAutoFit } from "./engine_camera.js"
28
28
  export * from "./engine_components.js";
@@ -33,9 +33,6 @@ 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_element.js";
37
- export * from "./engine_element_attributes.js";
38
- export * from "./engine_element_loading.js";
39
36
  export * from "./engine_gameobject.js";
40
37
  export { Gizmos } from "./engine_gizmos.js"
41
38
  export * from "./engine_gltf.js";
@@ -79,4 +76,7 @@ export * from "./export/index.js";
79
76
  export * from "./extensions/index.js";
80
77
  export * from "./js-extensions/index.js";
81
78
  export * from "./webcomponents/api.js"
79
+ export * from "./webcomponents/needle-engine.attributes.js";
80
+ export * from "./webcomponents/needle-engine.js";
81
+ export * from "./webcomponents/needle-engine.loading.js";
82
82
  export * from "./xr/api.js"
@@ -1,6 +1,5 @@
1
1
  import { isDevEnvironment } from "./debug/index.js";
2
2
  import { Context } from "./engine_setup.js";
3
- import { NeedleXRSession } from "./engine_xr.js";
4
3
 
5
4
  export enum ApplicationEvents {
6
5
  Visible = "application-visible",
@@ -10,7 +9,11 @@ export enum ApplicationEvents {
10
9
 
11
10
  let userInteractionRegistered = false;
12
11
  const userInteractionCallbacks: Function[] = [];
13
- function onUserInteraction() {
12
+ /**
13
+ * Invoked when the user interacts with the page (click, touch, keypress, etc) allowing to play media / audio / start XR
14
+ * @internal
15
+ */
16
+ export function internalOnUserInputRegistered() {
14
17
  if (userInteractionRegistered) return;
15
18
  if (isDevEnvironment()) console.debug("User interaction registered: audio can now be played");
16
19
  userInteractionRegistered = true;
@@ -18,15 +21,12 @@ function onUserInteraction() {
18
21
  userInteractionCallbacks.length = 0;
19
22
  copy.forEach(cb => cb());
20
23
  }
21
- document.addEventListener('mousedown', onUserInteraction);
22
- document.addEventListener('pointerup', onUserInteraction);
23
- document.addEventListener('click', onUserInteraction);
24
- document.addEventListener('dragstart', onUserInteraction);
25
- document.addEventListener('touchend', onUserInteraction);
26
- document.addEventListener('keydown', onUserInteraction);
27
- NeedleXRSession.onXRSessionStart(() => {
28
- onUserInteraction();
29
- })
24
+ document.addEventListener('mousedown', internalOnUserInputRegistered);
25
+ document.addEventListener('pointerup', internalOnUserInputRegistered);
26
+ document.addEventListener('click', internalOnUserInputRegistered);
27
+ document.addEventListener('dragstart', internalOnUserInputRegistered);
28
+ document.addEventListener('touchend', internalOnUserInputRegistered);
29
+ document.addEventListener('keydown', internalOnUserInputRegistered);
30
30
 
31
31
  /**
32
32
  * The Application class can be used to mute audio globally, and to check if the application (canvas) is currently visible (it's tab is active and not minimized).
@@ -1019,12 +1019,21 @@ export class Context implements IContext {
1019
1019
  }
1020
1020
 
1021
1021
  this.clear();
1022
+
1023
+ const oldRenderer = this.renderer;
1024
+ // We only need to create a new renderer if we don't have one yet
1025
+ // We do prevent creating a new renderer here to avoid flickering when the context is created while the content is still being loaded. This can be the case where CSS transformations update the layout (e.g. scale() while loading + old canvas disposed but in the DOM layout.)
1026
+ const needsNewRenderer = !oldRenderer || oldRenderer["isDisposed"] === true;
1027
+
1022
1028
  // stop the animation loop if its running during creation
1023
1029
  // since we do not want to start enabling scripts etc before they are deserialized
1024
- if (this.isManagedExternally === false) {
1030
+ if (this.isManagedExternally === false && (needsNewRenderer)) {
1025
1031
  this.createNewRenderer();
1026
- this.renderer?.setAnimationLoop(null);
1027
1032
  }
1033
+ else {
1034
+ this.lodsManager.setRenderer(this.renderer);
1035
+ }
1036
+ this.renderer?.setAnimationLoop(null);
1028
1037
 
1029
1038
  await delay(1);
1030
1039
 
@@ -1367,7 +1376,11 @@ export class Context implements IContext {
1367
1376
  private internalOnBeforeRender(timestamp: DOMHighResTimeStamp, frame: XRFrame | null) {
1368
1377
 
1369
1378
  // If we don't auto reset we get wrong stats in WebXR. AutoReset was turned off to support custom blits and count them too
1370
- this.renderer.info.autoReset = true;
1379
+ // But when we're using postprocessing we need to reset manually: https://discourse.threejs.org/t/accessing-draw-calls-when-using-effectcomposer
1380
+ this.renderer.info.autoReset = frame ? true : false;
1381
+ if (this.renderer.info.autoReset === false) {
1382
+ this.renderer.info.reset();
1383
+ }
1371
1384
 
1372
1385
 
1373
1386
  const sessionStarted = frame !== null && this._xrFrame === null;
@@ -32,9 +32,17 @@ export function isHotReloading() {
32
32
  return isApplyingChanges;
33
33
  }
34
34
 
35
+ export function isHotReloadEnabled() {
36
+ return globalThis["NEEDLE_HOT_RELOAD_ENABLED"] === true;
37
+ }
38
+
35
39
  /** @internal */
36
40
  export function registerHotReloadType(instance: object) {
37
- if (isApplyingChanges) return;
41
+ if (isApplyingChanges) {
42
+ if (debug) console.warn("[Needle Engine] Hot reloading is in progress, not registering instance", instance);
43
+ return;
44
+ }
45
+ if(debug) console.log("[Needle Engine] Registering hot reload instance", instance);
38
46
  const type = instance.constructor;
39
47
  const name = type.name;
40
48
  if (!instances.has(name)) {
@@ -47,7 +55,11 @@ export function registerHotReloadType(instance: object) {
47
55
 
48
56
  /** @internal */
49
57
  export function unregisterHotReloadType(instance: object) {
50
- if (isApplyingChanges) return;
58
+ if (isApplyingChanges) {
59
+ if (debug) console.warn("[Needle Engine] Hot reloading is in progress, not unregistering instance", instance);
60
+ return;
61
+ }
62
+ if(debug) console.log("[Needle Engine] Unregistering hot reload instance", instance);
51
63
  const type = instance.constructor;
52
64
  const name = type.name;
53
65
  const instancesOfType = instances.get(name);
@@ -97,7 +109,7 @@ export function applyHMRChanges(newModule): boolean {
97
109
 
98
110
  const typeToUpdate = TypeStore.get(key);
99
111
  if (!typeToUpdate) {
100
- if(debug) console.log("[HMR] Type not found: " + key)
112
+ if (debug) console.log("[HMR] Type not found: " + key)
101
113
  continue;
102
114
  }
103
115
  const newType = newModule[key];
@@ -106,7 +118,7 @@ export function applyHMRChanges(newModule): boolean {
106
118
  let hotReloadMessage = "[Needle Engine] Updating type: " + key;
107
119
  const typesCount = instancesOfType?.length ?? -1;
108
120
  if (typesCount > 0) hotReloadMessage += " x" + typesCount;
109
- else hotReloadMessage += " - no instances";
121
+ else hotReloadMessage += " (No instances registered)";
110
122
  console.log(hotReloadMessage);
111
123
 
112
124
  // Update prototype (methods and properties)
@@ -38,7 +38,8 @@ export function onDestroy(cb: LifecycleMethod, opts?: LifecycleMethodOptions): (
38
38
  }
39
39
 
40
40
  /** Register a callback in the engine start event.
41
- * This happens at the beginning of each frame
41
+ * This happens once at the beginning of a frame
42
+ * (e.g. once when the method is registered, after <needle-engine> is created or the src has changed)
42
43
  * @param cb The callback to be called. Optionally return a function that will be called when the onStart callback is removed again
43
44
  * @returns A function that can be called to unregister the callback
44
45
  * @example
@@ -4,14 +4,26 @@ import { generateQRCode, isMobileDevice } from "../engine_utils.js";
4
4
  import { onXRSessionEnd, onXRSessionStart } from "../xr/events.js";
5
5
  import { getIconElement } from "./icons.js";
6
6
 
7
- /** Use the ButtonsFactory to create buttons with icons and functionality
8
- * Get access to the default buttons by using `ButtonsFactory.getOrCreate()`
7
+ /**
8
+ * Use the ButtonsFactory to create buttons with icons and functionality
9
+ * Get access to the default buttons by using `ButtonsFactory.instance`
9
10
  * The factory will create the buttons if they don't exist yet, and return the existing ones if they do (this allows you to reparent or modify created buttons)
10
11
  */
11
12
  export class ButtonsFactory {
12
13
 
13
14
  private static _instance?: ButtonsFactory;
14
- /** Get access to the default HTML button factory.
15
+
16
+ /**
17
+ * Get access to the default HTML button factory.
18
+ * Use this to get or create default Needle Engine buttons that can be added to your HTML UI
19
+ * If you want to create a new factory and create new button instances instead of shared buttons, use `ButtonsFactory.create()` instead
20
+ */
21
+ static get instance() {
22
+ return this.getOrCreate();
23
+ }
24
+
25
+ /**
26
+ * Get access to the default HTML button factory.
15
27
  * Use this to get or create default Needle Engine buttons that can be added to your HTML UI
16
28
  * If you want to create a new factory and create new button instances instead of shared buttons, use `ButtonsFactory.create()` instead
17
29
  */
@@ -37,7 +49,7 @@ export class ButtonsFactory {
37
49
  }
38
50
 
39
51
  /** Create a fullscreen button (or return the existing one if it already exists) */
40
- createFullscreenButton(ctx: IContext) : HTMLButtonElement | null {
52
+ createFullscreenButton(ctx: IContext): HTMLButtonElement | null {
41
53
  if (this._fullscreenButton) {
42
54
  return this._fullscreenButton;
43
55
  }
@@ -59,7 +71,7 @@ export class ButtonsFactory {
59
71
  if (document.fullscreenElement) {
60
72
  document.exitFullscreen();
61
73
  } else {
62
- if("webkitRequestFullscreen" in ctx.domElement && typeof ctx.domElement["webkitRequestFullscreen"] === "function")
74
+ if ("webkitRequestFullscreen" in ctx.domElement && typeof ctx.domElement["webkitRequestFullscreen"] === "function")
63
75
  ctx.domElement["webkitRequestFullscreen"]();
64
76
  else if ("requestFullscreen" in ctx.domElement)
65
77
  ctx.domElement.requestFullscreen();
@@ -141,6 +153,22 @@ export class ButtonsFactory {
141
153
  */
142
154
  get qrButton() { return this._qrButton; }
143
155
 
156
+ private _customQRButtonUrl: string | undefined;
157
+
158
+ /** Get or set the QR code button URL - this URL will open when scanning the QR code */
159
+ set qrButtonUrl(url: string) {
160
+ // make sure it's a URL
161
+ try {
162
+ new URL(url);
163
+ this._customQRButtonUrl = url;
164
+ } catch (e) {
165
+ console.warn(`[Needle] QR code button URL is not a valid URL '${url}'`);
166
+ }
167
+ }
168
+ get qrButtonUrl() {
169
+ return this._customQRButtonUrl || window.location.href;
170
+ }
171
+
144
172
  /** Create a QR code button (or return the existing one if it already exists)
145
173
  * The QR code button will show a QR code that can be scanned to open the current page on a phone
146
174
  * The QR code will be generated with the current URL when the button is clicked
@@ -150,6 +178,7 @@ export class ButtonsFactory {
150
178
 
151
179
  if (this._qrButton) return this._qrButton;
152
180
 
181
+ const instance = this;
153
182
  const qrCodeButton = document.createElement("button");
154
183
  this._qrButton = qrCodeButton;
155
184
  qrCodeButton.innerText = "QR Code";
@@ -175,8 +204,8 @@ export class ButtonsFactory {
175
204
 
176
205
  qrCodeButton.addEventListener("click", () => {
177
206
  if (qrCodeContainer.parentNode) return hideQRCode();
178
- if (window.location.href.includes("://localhost")) {
179
- showBalloonWarning("To access your website from another device in the same local network you have to use the IP address instead of localhost.");
207
+ if (isDevEnvironment() && window.location.href.includes("://localhost")) {
208
+ showBalloonWarning("To access your website from another device in the same local network you have to use the IP address instead of localhost. The IP address is logged in your development server console when you start the server.");
180
209
  }
181
210
  showQRCode();
182
211
  });
@@ -233,7 +262,7 @@ export class ButtonsFactory {
233
262
  async function generateAndInsertQRCode() {
234
263
  const size = 200;
235
264
  const code = await generateQRCode({
236
- text: window.location.href,
265
+ text: instance.qrButtonUrl,
237
266
  width: size,
238
267
  height: size,
239
268
  });
@@ -1,5 +1,5 @@
1
- import { Context } from "./engine_setup.js";
2
- import { DeviceUtilities,getParam } from "./engine_utils.js";
1
+ import { Context } from "../engine_setup.js";
2
+ import { DeviceUtilities,getParam } from "../engine_utils.js";
3
3
 
4
4
  const debug = getParam("debugoverlay");
5
5
  export const arContainerClassName = "ar";
@@ -10,7 +10,7 @@ DO NOT IMPORT ENGINE_ELEMENT FROM HERE
10
10
  * Use the addAttributeChangeCallback utility methods to register callback events
11
11
  */
12
12
  export async function registerObservableAttribute(name: string) {
13
- const { NeedleEngineHTMLElement } = await import("./engine_element.js");
13
+ const { NeedleEngineHTMLElement } = await import("./needle-engine.js");
14
14
  if (!NeedleEngineHTMLElement.observedAttributes.includes(name))
15
15
  NeedleEngineHTMLElement.observedAttributes.push(name);
16
16
  }
@@ -1,9 +1,9 @@
1
- import { needleLogoOnlySVG } from "./assets/index.js"
2
- import { isDevEnvironment, showBalloonWarning } from "./debug/index.js";
3
- import { hasCommercialLicense, hasProLicense, runtimeLicenseCheckPromise } from "./engine_license.js";
4
- import { Mathf } from "./engine_math.js";
5
- import { LoadingProgressArgs } from "./engine_setup.js";
6
- import { getParam } from "./engine_utils.js";
1
+ import { needleLogoOnlySVG } from "../assets/index.js"
2
+ import { isDevEnvironment, showBalloonWarning } from "../debug/index.js";
3
+ import { hasCommercialLicense, hasProLicense, runtimeLicenseCheckPromise } from "../engine_license.js";
4
+ import { Mathf } from "../engine_math.js";
5
+ import { LoadingProgressArgs } from "../engine_setup.js";
6
+ import { getParam } from "../engine_utils.js";
7
7
 
8
8
  const debug = getParam("debugloading");
9
9
  const debugRendering = getParam("debugloadingrendering");
@@ -1,21 +1,20 @@
1
1
  import { AgXToneMapping, Color, LinearToneMapping, NeutralToneMapping, NoToneMapping } from "three";
2
2
 
3
- import { registerLoader } from "../engine/engine_gltf.js";
4
- import { isDevEnvironment, showBalloonWarning } from "./debug/index.js";
5
- import { PUBLIC_KEY, VERSION } from "./engine_constants.js";
6
- import { NeedleEngineAttributes, TonemappingAttributeOptions } from "./engine_element_attributes.js";
7
- import { calculateProgress01, EngineLoadingView, type ILoadingViewHandler } from "./engine_element_loading.js";
8
- import { arContainerClassName, AROverlayHandler } from "./engine_element_overlay.js";
9
- import { hasCommercialLicense } from "./engine_license.js";
10
- import { setDracoDecoderPath, setDracoDecoderType, setKtx2TranscoderPath } from "./engine_loaders.js";
11
- import { NeedleLoader } from "./engine_scenetools.js";
12
- import { Context, ContextCreateArgs } from "./engine_setup.js";
13
- import { type INeedleEngineComponent, type LoadedModel } from "./engine_types.js";
14
- import { getParam } from "./engine_utils.js";
15
- import { RGBAColor } from "./js-extensions/RGBAColor.js";
16
- import { ensureFonts } from "./webcomponents/fonts.js";
17
-
18
- //
3
+ import { isDevEnvironment, showBalloonWarning } from "../debug/index.js";
4
+ import { PUBLIC_KEY, VERSION } from "../engine_constants.js";
5
+ import { registerLoader } from "../engine_gltf.js";
6
+ import { hasCommercialLicense } from "../engine_license.js";
7
+ import { setDracoDecoderPath, setDracoDecoderType, setKtx2TranscoderPath } from "../engine_loaders.js";
8
+ import { NeedleLoader } from "../engine_scenetools.js";
9
+ import { Context, ContextCreateArgs } from "../engine_setup.js";
10
+ import { type INeedleEngineComponent, type LoadedModel } from "../engine_types.js";
11
+ import { getParam } from "../engine_utils.js";
12
+ import { RGBAColor } from "../js-extensions/RGBAColor.js";
13
+ import { ensureFonts } from "./fonts.js";
14
+ import { arContainerClassName, AROverlayHandler } from "./needle-engine.ar-overlay.js";
15
+ import { NeedleEngineAttributes, TonemappingAttributeOptions } from "./needle-engine.attributes.js";
16
+ import { calculateProgress01, EngineLoadingView, type ILoadingViewHandler } from "./needle-engine.loading.js";
17
+
19
18
  // registering loader here too to make sure it's imported when using engine via vanilla js
20
19
  registerLoader(NeedleLoader);
21
20
 
@@ -1,6 +1,7 @@
1
1
  import { Camera, Object3D, PerspectiveCamera, Quaternion, Vector3 } from "three";
2
2
 
3
3
  import { enableSpatialConsole, isDevEnvironment, showBalloonMessage, showBalloonWarning } from "../debug/index.js";
4
+ import { Application, internalOnUserInputRegistered } from "../engine_application.js";
4
5
  import { Context, FrameEvent } from "../engine_context.js";
5
6
  import { ContextEvent, ContextRegistry } from "../engine_context_registry.js";
6
7
  import { isDestroyed } from "../engine_gameobject.js";
@@ -161,8 +162,11 @@ ContextRegistry.registerCallback(ContextEvent.ContextCreationStart, async cb =>
161
162
  });
162
163
  ContextRegistry.registerCallback(ContextEvent.ContextCreated, async cb => {
163
164
  contexts_loading.delete(cb.context);
165
+ const autostart = cb.context?.domElement.getAttribute("autostart") || null;
166
+ handleAutoStart(autostart);
164
167
  });
165
168
 
169
+
166
170
  function contextIsLoading() { return contexts_loading.size > 0; }
167
171
  function waitForContextLoadingFinished(): Promise<void> {
168
172
  return new Promise(res => {
@@ -187,6 +191,18 @@ if (DeviceUtilities.isDesktop() && isDevEnvironment()) {
187
191
  });
188
192
  }
189
193
 
194
+ function handleAutoStart(value: string | null) {
195
+ if (!value) return;
196
+ switch (value?.toLowerCase()) {
197
+ case "ar":
198
+ Application.registerWaitForInteraction(() => {
199
+ // TODO: move WebARSessionRoot to core
200
+ NeedleXRSession.start("ar");
201
+ })
202
+ break;
203
+ }
204
+ }
205
+
190
206
  // if (getParam("simulatewebxrloading")) {
191
207
  // ContextRegistry.registerCallback(ContextEvent.ContextCreationStart, async _cb => {
192
208
  // await delay(3000);
@@ -375,7 +391,7 @@ export class NeedleXRSession implements INeedleXRSession {
375
391
  case "immersive-ar":
376
392
  const arFeatures = ['anchors', 'local-floor', 'layers', 'dom-overlay', 'hit-test', 'unbounded'];
377
393
  // Don't request handtracking by default on VisionOS
378
- if (!DeviceUtilities.isVisionOS())
394
+ if (!DeviceUtilities.isVisionOS())
379
395
  arFeatures.push('hand-tracking');
380
396
  return {
381
397
  optionalFeatures: arFeatures,
@@ -701,6 +717,11 @@ export class NeedleXRSession implements INeedleXRSession {
701
717
  *
702
718
  */
703
719
  get rigScale() {
720
+ // const ar_scaleValue = this.context.domElement.getAttribute("ar-scale");
721
+ // if (ar_scaleValue) {
722
+ // const scale = parseFloat(ar_scaleValue);
723
+ // if (!isNaN(scale)) return scale;
724
+ // }
704
725
  if (!this._rigs[0]) return 1;
705
726
  if (this._lastRigScaleUpdate !== this.context.time.frame) {
706
727
  this._lastRigScaleUpdate = this.context.time.frame;
@@ -708,6 +729,7 @@ export class NeedleXRSession implements INeedleXRSession {
708
729
  }
709
730
  return this._rigScale;
710
731
  }
732
+
711
733
  /** add a rig to the available XR rigs - if it's priority is higher than the currently active rig it will be enabled */
712
734
  addRig(rig: IXRRig) {
713
735
  const i = this._rigs.indexOf(rig);
@@ -1004,7 +1026,7 @@ export class NeedleXRSession implements INeedleXRSession {
1004
1026
  console.debug("Controller already exists for input source", index);
1005
1027
  return;
1006
1028
  }
1007
- else if(this._newControllers.find(c => c.inputSource === newInputSource)) {
1029
+ else if (this._newControllers.find(c => c.inputSource === newInputSource)) {
1008
1030
  console.debug("Controller already registered for input source", index);
1009
1031
  return;
1010
1032
  }
@@ -1197,6 +1219,8 @@ export class NeedleXRSession implements INeedleXRSession {
1197
1219
 
1198
1220
  invokeXRSessionStart({ session: this });
1199
1221
 
1222
+ internalOnUserInputRegistered();
1223
+
1200
1224
  for (const listener of NeedleXRSession._xrStartListeners) {
1201
1225
  listener(args);
1202
1226
  }
@@ -4,9 +4,9 @@ import { getCameraController } from "../engine/engine_camera.js";
4
4
  import { addNewComponent, getOrAddComponent } from "../engine/engine_components.js";
5
5
  import { Context } from "../engine/engine_context.js";
6
6
  import { ContextEvent, ContextRegistry } from "../engine/engine_context_registry.js";
7
- import { NeedleEngineHTMLElement } from "../engine/engine_element.js";
8
7
  import type { ICamera, IContext } from "../engine/engine_types.js";
9
8
  import { getParam } from "../engine/engine_utils.js";
9
+ import { NeedleEngineHTMLElement } from "../engine/webcomponents/needle-engine.js";
10
10
  import { Camera, ClearFlags } from "./Camera.js";
11
11
  import { OrbitControls } from "./OrbitControls.js";
12
12
  import { EnvironmentScene } from "./utils/EnvironmentScene.js";