@needle-tools/engine 4.8.8-next.7387ba3 → 4.8.8-next.8add297

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 (86) hide show
  1. package/CHANGELOG.md +4 -5
  2. package/README.md +1 -3
  3. package/components.needle.json +1 -1
  4. package/dist/{needle-engine.bundle-fg_vGCYe.umd.cjs → needle-engine.bundle-DwiJRlay.umd.cjs} +108 -108
  5. package/dist/{needle-engine.bundle-D47vIqsQ.js → needle-engine.bundle-DwigPmVZ.js} +2654 -2627
  6. package/dist/{needle-engine.bundle-Dm2TtQhy.min.js → needle-engine.bundle-WO60MbmU.min.js} +109 -109
  7. package/dist/needle-engine.d.ts +7 -0
  8. package/dist/needle-engine.js +2 -2
  9. package/dist/needle-engine.min.js +1 -1
  10. package/dist/needle-engine.umd.cjs +1 -1
  11. package/lib/engine/engine_addressables.js +2 -0
  12. package/lib/engine/engine_addressables.js.map +1 -1
  13. package/lib/engine/engine_animation.js +4 -4
  14. package/lib/engine/engine_animation.js.map +1 -1
  15. package/lib/engine/engine_assetdatabase.js +6 -6
  16. package/lib/engine/engine_assetdatabase.js.map +1 -1
  17. package/lib/engine/engine_camera.d.ts +3 -0
  18. package/lib/engine/engine_camera.js.map +1 -1
  19. package/lib/engine/engine_context.d.ts +8 -2
  20. package/lib/engine/engine_context.js +21 -3
  21. package/lib/engine/engine_context.js.map +1 -1
  22. package/lib/engine/engine_create_objects.d.ts +3 -3
  23. package/lib/engine/engine_create_objects.js +5 -4
  24. package/lib/engine/engine_create_objects.js.map +1 -1
  25. package/lib/engine/engine_gameobject.js +2 -2
  26. package/lib/engine/engine_gameobject.js.map +1 -1
  27. package/lib/engine/engine_gltf_builtin_components.js +11 -11
  28. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  29. package/lib/engine/engine_loaders.callbacks.d.ts +1 -0
  30. package/lib/engine/engine_loaders.callbacks.js +1 -0
  31. package/lib/engine/engine_loaders.callbacks.js.map +1 -1
  32. package/lib/engine/extensions/NEEDLE_lighting_settings.js +5 -2
  33. package/lib/engine/extensions/NEEDLE_lighting_settings.js.map +1 -1
  34. package/lib/engine/extensions/NEEDLE_lightmaps.js +1 -1
  35. package/lib/engine/extensions/NEEDLE_lightmaps.js.map +1 -1
  36. package/lib/engine/js-extensions/Object3D.d.ts +1 -1
  37. package/lib/engine/js-extensions/Vector.d.ts +5 -0
  38. package/lib/engine/js-extensions/Vector.js.map +1 -1
  39. package/lib/engine/webcomponents/needle-engine.d.ts +2 -2
  40. package/lib/engine/webcomponents/needle-engine.js +11 -18
  41. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  42. package/lib/engine-components/Camera.d.ts +2 -0
  43. package/lib/engine-components/Camera.js +5 -1
  44. package/lib/engine-components/Camera.js.map +1 -1
  45. package/lib/engine-components/ContactShadows.d.ts +12 -2
  46. package/lib/engine-components/ContactShadows.js +24 -4
  47. package/lib/engine-components/ContactShadows.js.map +1 -1
  48. package/lib/engine-components/DropListener.d.ts +4 -3
  49. package/lib/engine-components/DropListener.js +4 -3
  50. package/lib/engine-components/DropListener.js.map +1 -1
  51. package/lib/engine-components/NestedGltf.d.ts +9 -4
  52. package/lib/engine-components/NestedGltf.js +32 -26
  53. package/lib/engine-components/NestedGltf.js.map +1 -1
  54. package/lib/engine-components/OrbitControls.d.ts +29 -6
  55. package/lib/engine-components/OrbitControls.js +43 -7
  56. package/lib/engine-components/OrbitControls.js.map +1 -1
  57. package/lib/engine-components/Renderer.js +2 -1
  58. package/lib/engine-components/Renderer.js.map +1 -1
  59. package/lib/engine-components/Skybox.js +8 -9
  60. package/lib/engine-components/Skybox.js.map +1 -1
  61. package/lib/engine-components/api.d.ts +1 -0
  62. package/lib/engine-components/api.js.map +1 -1
  63. package/package.json +1 -1
  64. package/plugins/common/files.js +6 -3
  65. package/plugins/vite/editor-connection.js +4 -4
  66. package/src/engine/engine_addressables.ts +2 -0
  67. package/src/engine/engine_animation.ts +4 -4
  68. package/src/engine/engine_assetdatabase.ts +7 -7
  69. package/src/engine/engine_camera.ts +3 -1
  70. package/src/engine/engine_context.ts +22 -4
  71. package/src/engine/engine_create_objects.ts +8 -7
  72. package/src/engine/engine_gameobject.ts +2 -2
  73. package/src/engine/engine_gltf_builtin_components.ts +12 -11
  74. package/src/engine/engine_loaders.callbacks.ts +1 -0
  75. package/src/engine/extensions/NEEDLE_lighting_settings.ts +5 -2
  76. package/src/engine/extensions/NEEDLE_lightmaps.ts +1 -1
  77. package/src/engine/js-extensions/Vector.ts +6 -0
  78. package/src/engine/webcomponents/needle-engine.ts +10 -17
  79. package/src/engine-components/Camera.ts +7 -1
  80. package/src/engine-components/ContactShadows.ts +27 -6
  81. package/src/engine-components/DropListener.ts +4 -3
  82. package/src/engine-components/NestedGltf.ts +33 -24
  83. package/src/engine-components/OrbitControls.ts +65 -16
  84. package/src/engine-components/Renderer.ts +2 -1
  85. package/src/engine-components/Skybox.ts +9 -10
  86. package/src/engine-components/api.ts +2 -1
@@ -48,21 +48,20 @@ function createRemoteSkyboxComponent(context: IContext, url: string, skybox: boo
48
48
  const promises = new Array<Promise<any>>();
49
49
  ContextRegistry.registerCallback(ContextEvent.ContextCreationStart, (args) => {
50
50
  const context = args.context;
51
- const skyboxImage = context.domElement.getAttribute("background-image");
51
+ const backgroundImage = context.domElement.getAttribute("background-image");
52
52
  const environmentImage = context.domElement.getAttribute("environment-image");
53
- const envAndSkyboxAreSame = skyboxImage === environmentImage;
54
-
55
- if (skyboxImage && !envAndSkyboxAreSame) {
56
- if (debug) console.log("Creating remote skybox to load " + skyboxImage);
53
+
54
+ if (backgroundImage) {
55
+ if (debug) console.log("Creating RemoteSkybox to load background " + backgroundImage);
57
56
  // if the user is loading a GLB without a camera then the CameraUtils (which creates the default camera)
58
57
  // checks if we have this attribute set and then sets the skybox clearflags accordingly
59
58
  // if the user has a GLB with a camera but set to solid color then the skybox image is not visible -> we will just warn then and not override the camera settings
60
- const promise = createRemoteSkyboxComponent(context, skyboxImage, true, false, "background-image");
59
+ const promise = createRemoteSkyboxComponent(context, backgroundImage, true, false, "background-image");
61
60
  if (promise) promises.push(promise);
62
61
  }
63
62
  if (environmentImage) {
64
- if (debug) console.log("Creating remote environment to load " + environmentImage);
65
- const promise = createRemoteSkyboxComponent(context, environmentImage, envAndSkyboxAreSame, true, "environment-image");
63
+ if (debug) console.log("Creating RemoteSkybox to load environment " + environmentImage);
64
+ const promise = createRemoteSkyboxComponent(context, environmentImage, false, true, "environment-image");
66
65
  if (promise) promises.push(promise);
67
66
  }
68
67
  });
@@ -200,7 +199,7 @@ export class RemoteSkybox extends Behaviour {
200
199
  console.warn("Potentially invalid skybox URL: \"" + name + "\" on " + (this.name || this.gameObject?.name || "context"));
201
200
  }
202
201
 
203
- if (debug) console.log("Set remote skybox url: " + url);
202
+ if (debug) console.log("Set RemoteSkybox url: " + url);
204
203
 
205
204
  if (this._prevUrl === url && this._prevLoadedEnvironment) {
206
205
  this.apply();
@@ -258,7 +257,7 @@ export class RemoteSkybox extends Behaviour {
258
257
  this._prevBackground = this.context.scene.background;
259
258
  if (this.context.scene.environment !== envMap)
260
259
  this._prevEnvironment = this.context.scene.environment;
261
- if (debug) console.log("Set remote skybox", this.url, !Camera.backgroundShouldBeTransparent(this.context));
260
+ if (debug) console.log("Set RemoteSkybox (" + ((this.environment && this.background) ? "environment and background" : this.environment ? "environment" : this.background ? "background" : "none") + ")", this.url, !Camera.backgroundShouldBeTransparent(this.context));
262
261
  if (this.environment)
263
262
  this.context.scene.environment = envMap;
264
263
  if (this.background && !Camera.backgroundShouldBeTransparent(this.context))
@@ -51,7 +51,8 @@ import "./CameraUtils.js"
51
51
  import "./AnimationUtils.js"
52
52
  import "./AnimationUtilsAutoplay.js"
53
53
 
54
- export { DragMode } from "./DragControls.js"
54
+ export { DragMode } from "./DragControls.js";
55
+ export { type FitCameraOptions } from "./OrbitControls.js";
55
56
  export type { DropListenerNetworkEventArguments, DropListenerOnDropArguments } from "./DropListener.js";
56
57
  export * from "./particlesystem/api.js"
57
58