@needle-tools/engine 5.1.0-alpha.3 → 5.1.0-alpha.5

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 (218) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/SKILL.md +4 -1
  3. package/components.needle.json +1 -1
  4. package/dist/{needle-engine.bundle-DF01sSGQ.js → needle-engine.bundle-C-LG00ZZ.js} +10681 -10100
  5. package/dist/needle-engine.bundle-D7tzaiYE.min.js +1733 -0
  6. package/dist/{needle-engine.bundle-C-ixARur.umd.cjs → needle-engine.bundle-OPkPmdUM.umd.cjs} +161 -161
  7. package/dist/needle-engine.d.ts +1349 -317
  8. package/dist/needle-engine.js +556 -555
  9. package/dist/needle-engine.min.js +1 -1
  10. package/dist/needle-engine.umd.cjs +1 -1
  11. package/dist/three.js +1 -0
  12. package/dist/three.min.js +21 -21
  13. package/dist/three.umd.cjs +16 -16
  14. package/lib/engine/api.d.ts +5 -0
  15. package/lib/engine/api.js +4 -0
  16. package/lib/engine/api.js.map +1 -1
  17. package/lib/engine/codegen/register_types.js +10 -18
  18. package/lib/engine/codegen/register_types.js.map +1 -1
  19. package/lib/engine/engine_camera.fit.js +16 -4
  20. package/lib/engine/engine_camera.fit.js.map +1 -1
  21. package/lib/engine/engine_context.d.ts +20 -7
  22. package/lib/engine/engine_context.js +31 -15
  23. package/lib/engine/engine_context.js.map +1 -1
  24. package/lib/engine/engine_context_eventbus.d.ts +47 -0
  25. package/lib/engine/engine_context_eventbus.js +47 -0
  26. package/lib/engine/engine_context_eventbus.js.map +1 -0
  27. package/lib/engine/engine_disposable.d.ts +172 -0
  28. package/lib/engine/engine_disposable.js +136 -0
  29. package/lib/engine/engine_disposable.js.map +1 -0
  30. package/lib/engine/engine_gameobject.d.ts +1 -10
  31. package/lib/engine/engine_gameobject.js +20 -118
  32. package/lib/engine/engine_gameobject.js.map +1 -1
  33. package/lib/engine/engine_gltf_builtin_components.js +7 -69
  34. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  35. package/lib/engine/engine_input.d.ts +23 -4
  36. package/lib/engine/engine_input.js +2 -1
  37. package/lib/engine/engine_input.js.map +1 -1
  38. package/lib/engine/engine_instantiate_resolve.d.ts +42 -0
  39. package/lib/engine/engine_instantiate_resolve.js +372 -0
  40. package/lib/engine/engine_instantiate_resolve.js.map +1 -0
  41. package/lib/engine/engine_mainloop_utils.js +2 -2
  42. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  43. package/lib/engine/engine_networking.d.ts +51 -37
  44. package/lib/engine/engine_networking.js +132 -82
  45. package/lib/engine/engine_networking.js.map +1 -1
  46. package/lib/engine/engine_networking.transport.websocket.d.ts +15 -0
  47. package/lib/engine/engine_networking.transport.websocket.js +38 -0
  48. package/lib/engine/engine_networking.transport.websocket.js.map +1 -0
  49. package/lib/engine/engine_networking_instantiate.js +2 -2
  50. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  51. package/lib/engine/engine_networking_types.d.ts +39 -1
  52. package/lib/engine/engine_networking_types.js +7 -0
  53. package/lib/engine/engine_networking_types.js.map +1 -1
  54. package/lib/engine/engine_physics_rapier.d.ts +21 -3
  55. package/lib/engine/engine_physics_rapier.js +94 -25
  56. package/lib/engine/engine_physics_rapier.js.map +1 -1
  57. package/lib/engine/engine_serialization_builtin_serializer.js +1 -5
  58. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  59. package/lib/engine/engine_serialization_core.d.ts +1 -0
  60. package/lib/engine/engine_serialization_core.js +7 -0
  61. package/lib/engine/engine_serialization_core.js.map +1 -1
  62. package/lib/engine/engine_types.d.ts +29 -11
  63. package/lib/engine/engine_types.js +1 -1
  64. package/lib/engine/engine_types.js.map +1 -1
  65. package/lib/engine/engine_util_decorator.js +7 -2
  66. package/lib/engine/engine_util_decorator.js.map +1 -1
  67. package/lib/engine/engine_utils.d.ts +1 -1
  68. package/lib/engine/engine_utils.js +19 -5
  69. package/lib/engine/engine_utils.js.map +1 -1
  70. package/lib/engine-components/AnimationBuilder.d.ts +158 -0
  71. package/lib/engine-components/AnimationBuilder.js +305 -0
  72. package/lib/engine-components/AnimationBuilder.js.map +1 -0
  73. package/lib/engine-components/Animator.d.ts +6 -0
  74. package/lib/engine-components/Animator.js +23 -13
  75. package/lib/engine-components/Animator.js.map +1 -1
  76. package/lib/engine-components/AnimatorController.builder.d.ts +191 -0
  77. package/lib/engine-components/AnimatorController.builder.js +263 -0
  78. package/lib/engine-components/AnimatorController.builder.js.map +1 -0
  79. package/lib/engine-components/AnimatorController.d.ts +2 -119
  80. package/lib/engine-components/AnimatorController.js +33 -232
  81. package/lib/engine-components/AnimatorController.js.map +1 -1
  82. package/lib/engine-components/Collider.d.ts +18 -9
  83. package/lib/engine-components/Collider.js +61 -14
  84. package/lib/engine-components/Collider.js.map +1 -1
  85. package/lib/engine-components/Component.d.ts +72 -9
  86. package/lib/engine-components/Component.js +114 -10
  87. package/lib/engine-components/Component.js.map +1 -1
  88. package/lib/engine-components/ContactShadows.d.ts +1 -0
  89. package/lib/engine-components/ContactShadows.js +14 -1
  90. package/lib/engine-components/ContactShadows.js.map +1 -1
  91. package/lib/engine-components/DragControls.js +0 -7
  92. package/lib/engine-components/DragControls.js.map +1 -1
  93. package/lib/engine-components/DropListener.js +3 -0
  94. package/lib/engine-components/DropListener.js.map +1 -1
  95. package/lib/engine-components/EventList.d.ts +31 -9
  96. package/lib/engine-components/EventList.js +37 -76
  97. package/lib/engine-components/EventList.js.map +1 -1
  98. package/lib/engine-components/Joints.d.ts +4 -2
  99. package/lib/engine-components/Joints.js +19 -3
  100. package/lib/engine-components/Joints.js.map +1 -1
  101. package/lib/engine-components/Light.js +9 -1
  102. package/lib/engine-components/Light.js.map +1 -1
  103. package/lib/engine-components/OrbitControls.d.ts +0 -2
  104. package/lib/engine-components/OrbitControls.js +14 -1
  105. package/lib/engine-components/OrbitControls.js.map +1 -1
  106. package/lib/engine-components/RigidBody.d.ts +12 -4
  107. package/lib/engine-components/RigidBody.js +18 -4
  108. package/lib/engine-components/RigidBody.js.map +1 -1
  109. package/lib/engine-components/SceneSwitcher.js +3 -0
  110. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  111. package/lib/engine-components/api.d.ts +2 -1
  112. package/lib/engine-components/api.js +2 -1
  113. package/lib/engine-components/api.js.map +1 -1
  114. package/lib/engine-components/codegen/components.d.ts +7 -13
  115. package/lib/engine-components/codegen/components.js +7 -13
  116. package/lib/engine-components/codegen/components.js.map +1 -1
  117. package/lib/engine-components/postprocessing/Effects/Tonemapping.utils.d.ts +1 -1
  118. package/lib/engine-components/timeline/PlayableDirector.d.ts +21 -11
  119. package/lib/engine-components/timeline/PlayableDirector.js +75 -67
  120. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  121. package/lib/engine-components/timeline/SignalAsset.d.ts +3 -1
  122. package/lib/engine-components/timeline/SignalAsset.js +1 -0
  123. package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
  124. package/lib/engine-components/timeline/TimelineBuilder.d.ts +413 -0
  125. package/lib/engine-components/timeline/TimelineBuilder.js +506 -0
  126. package/lib/engine-components/timeline/TimelineBuilder.js.map +1 -0
  127. package/lib/engine-components/timeline/TimelineModels.d.ts +2 -1
  128. package/lib/engine-components/timeline/TimelineModels.js +3 -0
  129. package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
  130. package/lib/engine-components/timeline/TimelineTracks.d.ts +37 -6
  131. package/lib/engine-components/timeline/TimelineTracks.js +92 -26
  132. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  133. package/lib/engine-components/timeline/index.d.ts +2 -1
  134. package/lib/engine-components/timeline/index.js +2 -0
  135. package/lib/engine-components/timeline/index.js.map +1 -1
  136. package/lib/engine-components/web/CursorFollow.d.ts +0 -1
  137. package/lib/engine-components/web/CursorFollow.js +0 -1
  138. package/lib/engine-components/web/CursorFollow.js.map +1 -1
  139. package/package.json +2 -83
  140. package/plugins/common/cloud.js +6 -1
  141. package/plugins/common/license.js +5 -2
  142. package/plugins/common/worker.js +9 -4
  143. package/plugins/vite/dependencies.js +1 -11
  144. package/plugins/vite/dependency-watcher.js +2 -2
  145. package/plugins/vite/editor-connection.js +3 -3
  146. package/plugins/vite/license.js +19 -1
  147. package/plugins/vite/reload.js +1 -1
  148. package/plugins/vite/server.js +2 -1
  149. package/src/engine/api.ts +7 -0
  150. package/src/engine/codegen/register_types.ts +10 -18
  151. package/src/engine/engine_camera.fit.ts +15 -4
  152. package/src/engine/engine_context.ts +32 -16
  153. package/src/engine/engine_context_eventbus.ts +73 -0
  154. package/src/engine/engine_disposable.ts +214 -0
  155. package/src/engine/engine_gameobject.ts +52 -157
  156. package/src/engine/engine_gltf_builtin_components.ts +7 -76
  157. package/src/engine/engine_input.ts +27 -6
  158. package/src/engine/engine_instantiate_resolve.ts +407 -0
  159. package/src/engine/engine_mainloop_utils.ts +2 -2
  160. package/src/engine/engine_networking.transport.websocket.ts +45 -0
  161. package/src/engine/engine_networking.ts +161 -137
  162. package/src/engine/engine_networking_instantiate.ts +2 -2
  163. package/src/engine/engine_networking_types.ts +41 -1
  164. package/src/engine/engine_physics_rapier.ts +102 -33
  165. package/src/engine/engine_serialization_builtin_serializer.ts +1 -6
  166. package/src/engine/engine_serialization_core.ts +9 -0
  167. package/src/engine/engine_types.ts +46 -27
  168. package/src/engine/engine_util_decorator.ts +7 -2
  169. package/src/engine/engine_utils.ts +16 -5
  170. package/src/engine-components/AnimationBuilder.ts +472 -0
  171. package/src/engine-components/Animator.ts +24 -12
  172. package/src/engine-components/AnimatorController.builder.ts +387 -0
  173. package/src/engine-components/AnimatorController.ts +20 -291
  174. package/src/engine-components/Collider.ts +66 -18
  175. package/src/engine-components/Component.ts +118 -20
  176. package/src/engine-components/ContactShadows.ts +15 -1
  177. package/src/engine-components/DragControls.ts +0 -9
  178. package/src/engine-components/DropListener.ts +3 -0
  179. package/src/engine-components/EventList.ts +45 -83
  180. package/src/engine-components/Joints.ts +20 -4
  181. package/src/engine-components/Light.ts +10 -2
  182. package/src/engine-components/OrbitControls.ts +16 -5
  183. package/src/engine-components/RigidBody.ts +18 -4
  184. package/src/engine-components/SceneSwitcher.ts +3 -0
  185. package/src/engine-components/api.ts +2 -1
  186. package/src/engine-components/codegen/components.ts +7 -13
  187. package/src/engine-components/timeline/PlayableDirector.ts +83 -81
  188. package/src/engine-components/timeline/SignalAsset.ts +4 -1
  189. package/src/engine-components/timeline/TimelineBuilder.ts +824 -0
  190. package/src/engine-components/timeline/TimelineModels.ts +5 -1
  191. package/src/engine-components/timeline/TimelineTracks.ts +96 -27
  192. package/src/engine-components/timeline/index.ts +2 -1
  193. package/src/engine-components/web/CursorFollow.ts +0 -1
  194. package/dist/needle-engine.bundle-CHmXdnE1.min.js +0 -1733
  195. package/lib/engine-components/AvatarLoader.d.ts +0 -80
  196. package/lib/engine-components/AvatarLoader.js +0 -232
  197. package/lib/engine-components/AvatarLoader.js.map +0 -1
  198. package/lib/engine-components/avatar/AvatarBlink_Simple.d.ts +0 -11
  199. package/lib/engine-components/avatar/AvatarBlink_Simple.js +0 -77
  200. package/lib/engine-components/avatar/AvatarBlink_Simple.js.map +0 -1
  201. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.d.ts +0 -14
  202. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js +0 -69
  203. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js.map +0 -1
  204. package/lib/engine-components/avatar/Avatar_Brain_LookAt.d.ts +0 -29
  205. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js +0 -122
  206. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js.map +0 -1
  207. package/lib/engine-components/avatar/Avatar_MouthShapes.d.ts +0 -15
  208. package/lib/engine-components/avatar/Avatar_MouthShapes.js +0 -80
  209. package/lib/engine-components/avatar/Avatar_MouthShapes.js.map +0 -1
  210. package/lib/engine-components/avatar/Avatar_MustacheShake.d.ts +0 -9
  211. package/lib/engine-components/avatar/Avatar_MustacheShake.js +0 -30
  212. package/lib/engine-components/avatar/Avatar_MustacheShake.js.map +0 -1
  213. package/src/engine-components/AvatarLoader.ts +0 -264
  214. package/src/engine-components/avatar/AvatarBlink_Simple.ts +0 -70
  215. package/src/engine-components/avatar/AvatarEyeLook_Rotation.ts +0 -64
  216. package/src/engine-components/avatar/Avatar_Brain_LookAt.ts +0 -140
  217. package/src/engine-components/avatar/Avatar_MouthShapes.ts +0 -84
  218. package/src/engine-components/avatar/Avatar_MustacheShake.ts +0 -32
@@ -1,18 +1,18 @@
1
1
  import { Audio, AudioLoader, Euler, Quaternion, QuaternionKeyframeTrack, Vector3, VectorKeyframeTrack } from "three";
2
2
  import { isDevEnvironment } from "../../engine/debug/index.js";
3
3
  import { getParam, resolveUrl } from "../../engine/engine_utils.js";
4
- import { setObjectAnimated } from "../AnimationUtils.js";
5
4
  import { Animator } from "../Animator.js";
6
5
  import { AudioSource } from "../AudioSource.js";
7
6
  import { GameObject } from "../Component.js";
8
7
  import { SignalReceiver } from "./SignalAsset.js";
9
8
  import * as Models from "./TimelineModels.js";
9
+ import { AnimationUtils } from "../../engine/engine_animation.js";
10
10
  const debug = getParam("debugtimeline");
11
11
  /**
12
12
  * A TrackHandler is responsible for evaluating a specific type of timeline track.
13
13
  * A timeline track can be an animation track, audio track, signal track, control track etc and is controlled by a {@link PlayableDirector}.
14
14
  */
15
- export class TrackHandler {
15
+ export class TimelineTrackHandler {
16
16
  director;
17
17
  track;
18
18
  get muted() { return this.track.muted; }
@@ -111,7 +111,7 @@ class AnimationClipOffsetData {
111
111
  }
112
112
  }
113
113
  // TODO: add support for clip clamp modes (loop, pingpong, clamp)
114
- export class AnimationTrackHandler extends TrackHandler {
114
+ export class TimelineAnimationTrack extends TimelineTrackHandler {
115
115
  /** @internal */
116
116
  models = [];
117
117
  /** @internal */
@@ -146,7 +146,7 @@ export class AnimationTrackHandler extends TrackHandler {
146
146
  onStateChanged() {
147
147
  if (this._animator) {
148
148
  // We can not check the *isPlaying* state here because the timeline might be paused and evaluated by e.g. ScrollFollow
149
- setObjectAnimated(this._animator.gameObject, this, this.director.enabled && this.director.weight > 0);
149
+ AnimationUtils.setObjectAnimated(this._animator.gameObject, this, this.director.enabled && this.director.weight > 0);
150
150
  }
151
151
  }
152
152
  createHooks(clipModel, clip) {
@@ -227,7 +227,7 @@ export class AnimationTrackHandler extends TrackHandler {
227
227
  // which overrides the timeline
228
228
  this._animator = GameObject.getComponent(this.target, Animator) ?? null;
229
229
  if (this._animator) {
230
- setObjectAnimated(this._animator.gameObject, this, true);
230
+ AnimationUtils.setObjectAnimated(this._animator.gameObject, this, true);
231
231
  }
232
232
  }
233
233
  // Clip Offsets
@@ -525,13 +525,30 @@ export class AnimationTrackHandler extends TrackHandler {
525
525
  }
526
526
  }
527
527
  const muteAudioTracks = getParam("mutetimeline");
528
- export class AudioTrackHandler extends TrackHandler {
528
+ /**
529
+ * Handles audio playback for a timeline audio track.
530
+ *
531
+ * **Runtime mutation:** The track model is read fresh every frame during `evaluate()`.
532
+ * You can mutate `track.volume`, `clip.start`, `clip.end`, `clip.asset.volume` etc.
533
+ * at any time — changes take effect on the next frame without rebuilding the timeline.
534
+ *
535
+ * **Audio stopping:** Audio clips are automatically stopped when:
536
+ * - Timeline time moves outside a clip's `[start, end]` range (e.g. jumping or normal playback advancing past a clip)
537
+ * - The track is muted (via `muted = true`)
538
+ * - The director is stopped (`director.stop()`)
539
+ * - The director is paused (`director.pause()`)
540
+ * - The director is disabled or destroyed
541
+ */
542
+ export class TimelineAudioTrack extends TimelineTrackHandler {
529
543
  models = [];
530
544
  listener;
531
545
  audio = [];
532
546
  audioContextTimeOffset = [];
533
547
  lastTime = 0;
534
548
  audioSource;
549
+ /** Track-level volume multiplier (0–1). Applied on top of per-clip volume each frame. */
550
+ get volume() { return this.track.volume ?? 1; }
551
+ set volume(val) { this.track.volume = val; }
535
552
  _audioLoader = null;
536
553
  getAudioFilePath(path) {
537
554
  // TODO: this should be the timeline asset location probably which MIGHT be different
@@ -723,7 +740,7 @@ export class AudioTrackHandler extends TrackHandler {
723
740
  }
724
741
  static _audioBuffers = new Map();
725
742
  static dispose() {
726
- AudioTrackHandler._audioBuffers.clear();
743
+ TimelineAudioTrack._audioBuffers.clear();
727
744
  }
728
745
  handleAudioLoading(model, audio) {
729
746
  if (!this._audioLoader) {
@@ -731,8 +748,8 @@ export class AudioTrackHandler extends TrackHandler {
731
748
  }
732
749
  // TODO: maybe we should cache the loaders / buffers here by path
733
750
  const path = this.getAudioFilePath(model.asset.clip);
734
- if (AudioTrackHandler._audioBuffers.get(path)) {
735
- const promise = AudioTrackHandler._audioBuffers.get(path);
751
+ if (TimelineAudioTrack._audioBuffers.get(path)) {
752
+ const promise = TimelineAudioTrack._audioBuffers.get(path);
736
753
  promise.then((buffer) => {
737
754
  if (buffer)
738
755
  audio.setBuffer(buffer);
@@ -750,11 +767,11 @@ export class AudioTrackHandler extends TrackHandler {
750
767
  resolve(null);
751
768
  });
752
769
  });
753
- AudioTrackHandler._audioBuffers.set(path, loadingPromise);
770
+ TimelineAudioTrack._audioBuffers.set(path, loadingPromise);
754
771
  return loadingPromise;
755
772
  }
756
773
  }
757
- export class MarkerTrackHandler extends TrackHandler {
774
+ export class TimelineMarkerTrack extends TimelineTrackHandler {
758
775
  models = [];
759
776
  needsSorting = true;
760
777
  *foreachMarker(type = null) {
@@ -777,23 +794,31 @@ export class MarkerTrackHandler extends TrackHandler {
777
794
  this.models.sort((a, b) => a.time - b.time);
778
795
  }
779
796
  }
780
- export class SignalTrackHandler extends TrackHandler {
797
+ export class SignalTrackHandler extends TimelineTrackHandler {
781
798
  models = [];
782
799
  didTrigger = [];
783
800
  receivers = [];
784
- // TODO: test when timeline signals are being reset in Unity
785
- // onEnable() {
786
- // for (let i = 0; i < this.didTrigger?.length; i++) {
787
- // this.didTrigger[i] = false;
788
- // }
789
- // }
790
- // private _lastTime: number = -1;
801
+ _lastTime = -1;
802
+ onEnable() {
803
+ // Reset state so signals fire fresh on replay
804
+ this._lastTime = -1;
805
+ for (let i = 0; i < this.didTrigger.length; i++) {
806
+ this.didTrigger[i] = false;
807
+ }
808
+ }
809
+ onMuteChanged() {
810
+ // When unmuted, sync _lastTime to avoid stale comparisons
811
+ if (!this.track.muted) {
812
+ this._lastTime = -1;
813
+ }
814
+ }
791
815
  evaluate(time) {
792
816
  if (this.track.muted)
793
817
  return;
794
- // let lastTime = this._lastTime;
795
- // if (lastTime === -1) lastTime = time;
796
- // this._lastTime = time;
818
+ let lastTime = this._lastTime;
819
+ if (lastTime === -1)
820
+ lastTime = time;
821
+ this._lastTime = time;
797
822
  const estimatedFrameLengthWithPadding = this.director.context.time.deltaTime * 1.5;
798
823
  for (let i = 0; i < this.models.length; i++) {
799
824
  const model = this.models[i];
@@ -813,7 +838,6 @@ export class SignalTrackHandler extends TrackHandler {
813
838
  isActive = true;
814
839
  }
815
840
  }
816
- // console.log(time, td, isActive);
817
841
  if (isActive) {
818
842
  if (!wasTriggered) {
819
843
  if (debug)
@@ -832,14 +856,56 @@ export class SignalTrackHandler extends TrackHandler {
832
856
  }
833
857
  }
834
858
  }
835
- else {
836
- if (!model.emitOnce)
859
+ else if (!model.emitOnce) {
860
+ // Only reset didTrigger when time has moved backward past the signal
861
+ // (e.g. timeline looped or was scrubbed back). Don't reset just because
862
+ // the deltaTime-based activation window shrank on a fast frame.
863
+ if (time < model.time && lastTime >= model.time) {
837
864
  this.didTrigger[i] = false;
865
+ }
866
+ }
867
+ }
868
+ }
869
+ }
870
+ /**
871
+ * Handles activation (visibility) of bound objects for a timeline activation track.
872
+ *
873
+ * Each clip on the track defines a time range during which the bound objects should be active (visible).
874
+ * @see TimelineTrackHandler for details on how tracks and clips work in general, and how to mutate them at runtime.
875
+ * @see PlayableDirector for how to control timeline playback and time.
876
+ * @see TimelineBuilder for how to create and configure timelines and tracks in the editor.
877
+ */
878
+ export class TimelineActivationTrack extends TimelineTrackHandler {
879
+ evaluate(time) {
880
+ if (this.track.muted)
881
+ return;
882
+ // NE-3241 / NE-3737: Don't evaluate when stopped (preserves "Leave as is" post-playback).
883
+ // But DO evaluate if the user explicitly called director.evaluate().
884
+ if (!this.director.isPlaying && !this.director._isUserEvaluation)
885
+ return;
886
+ for (let i = 0; i < this.track.outputs.length; i++) {
887
+ const binding = this.track.outputs[i];
888
+ if (typeof binding !== "object" || binding === null)
889
+ continue;
890
+ let isActive = false;
891
+ if (this.track.clips) {
892
+ for (const clip of this.track.clips) {
893
+ if (clip.start <= time && time <= clip.end) {
894
+ isActive = true;
895
+ break;
896
+ }
897
+ }
898
+ }
899
+ const obj = binding;
900
+ if (obj.visible !== undefined && obj.visible !== isActive) {
901
+ obj.visible = isActive;
902
+ if (debug)
903
+ console.warn(this.director.name, "ActivationTrack-" + i, obj.name, isActive, time);
838
904
  }
839
905
  }
840
906
  }
841
907
  }
842
- export class ControlTrackHandler extends TrackHandler {
908
+ export class TimelineControlTrack extends TimelineTrackHandler {
843
909
  models = [];
844
910
  timelines = [];
845
911
  resolveSourceObjects(_context) {
@@ -1 +1 @@
1
- {"version":3,"file":"TimelineTracks.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/TimelineTracks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TimelineTracks.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/TimelineTracks.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- export { type ITimelineAnimationCallbacks as ITimelineAnimationOverride } from "./PlayableDirector.js";
1
+ export { DirectorWrapMode, type ITimelineAnimationCallbacks as ITimelineAnimationOverride } from "./PlayableDirector.js";
2
2
  export * from "./SignalAsset.js";
3
+ export * from "./TimelineBuilder.js";
3
4
  export * from "./TimelineModels.js";
4
5
  export * from "./TimelineTracks.js";
@@ -1,4 +1,6 @@
1
+ export { DirectorWrapMode } from "./PlayableDirector.js";
1
2
  export * from "./SignalAsset.js";
3
+ export * from "./TimelineBuilder.js";
2
4
  export * from "./TimelineModels.js";
3
5
  export * from "./TimelineTracks.js";
4
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkE,MAAM,uBAAuB,CAAA;AACxH,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA"}
@@ -159,7 +159,6 @@ export declare class CursorFollow extends Behaviour {
159
159
  * - Cursor that follows terrain or mesh surfaces
160
160
  *
161
161
  * **Important notes:**
162
- * - Requires objects in the scene to have colliders for raycasting to work
163
162
  * - Works best with {@link keepDistance} set to `false` to allow depth changes
164
163
  * - Can be combined with {@link damping} for smooth surface following
165
164
  * - The raycast uses the physics system's raycast functionality
@@ -172,7 +172,6 @@ export class CursorFollow extends Behaviour {
172
172
  * - Cursor that follows terrain or mesh surfaces
173
173
  *
174
174
  * **Important notes:**
175
- * - Requires objects in the scene to have colliders for raycasting to work
176
175
  * - Works best with {@link keepDistance} set to `false` to allow depth changes
177
176
  * - Can be combined with {@link damping} for smooth surface following
178
177
  * - The raycast uses the physics system's raycast functionality
@@ -1 +1 @@
1
- {"version":3,"file":"CursorFollow.js","sourceRoot":"","sources":["../../../src/engine-components/web/CursorFollow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CursorFollow.js","sourceRoot":"","sources":["../../../src/engine-components/web/CursorFollow.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": "5.1.0-alpha.3",
3
+ "version": "5.1.0-alpha.5",
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": {
@@ -59,32 +59,6 @@
59
59
  "./src/needle-engine.*",
60
60
  "*.css"
61
61
  ],
62
- "scripts": {
63
- "dev": "npm-watch",
64
- "build": "npm run build:plugin-types && npm run build:src && npm run build:dist",
65
- "build:dist": "vite build",
66
- "build:src": "tsc -p tsconfig.build.json --rootDir ./src --outDir ./lib --noEmit false --declaration",
67
- "build:license": "node plugins/publish/create-license.mjs",
68
- "build:plugin-types": "tsc -p tsconfig.plugins.json && cp .plugin-types-tmp/plugins/vite/*.d.ts plugins/vite/ && cp .plugin-types-tmp/plugins/next/*.d.ts plugins/next/ && rm -rf .plugin-types-tmp",
69
- "build:components-data": "node plugins/publish/create-component-types.now.mjs",
70
- "test": "node plugins/test/test.mjs",
71
- "test:vitest": "vitest run",
72
- "test:playwright:setup": "cd tests/playwright && npm install --prefer-offline && npx playwright install --with-deps chromium",
73
- "test:playwright": "npm run test:playwright:setup && npx playwright test",
74
- "test:playwright:fast": "npm run test:playwright:setup && npx playwright test --grep @fast",
75
- "test:playwright:report": "npm run test:playwright:setup && npx playwright show-report",
76
- "test:circular-imports": "node plugins/test/check-circular-imports.mjs",
77
- "test:tsc": "node plugins/test/test.tsc.mjs",
78
- "test:attw": "npx --yes @arethetypeswrong/cli --pack dist",
79
- "test:type-coverage:plugins": "node test/type-coverage.mjs plugins",
80
- "test:type-coverage:engine": "node test/type-coverage.mjs engine",
81
- "test:type-coverage:components": "node test/type-coverage.mjs components",
82
- "test:all": "node test/run-all.mjs",
83
- "generate:custom-elements": "npx web-component-analyzer src --format vscode --outFile custom-elements.json && node plugins/publish/clean-wca-json.mjs",
84
- "lint": "eslint src",
85
- "lint:fix": "eslint src --fix",
86
- "stats": "howfat ."
87
- },
88
62
  "files": [
89
63
  "package.json",
90
64
  "README.md",
@@ -142,67 +116,12 @@
142
116
  "uuid": "9.0.1",
143
117
  "websocket-ts": "2.2.1"
144
118
  },
145
- "devDependencies": {
146
- "@babel/runtime": "^7.16.0",
147
- "@eslint/js": "^9.0.0",
148
- "@luncheon/esbuild-plugin-gzip": "^0.1.0",
149
- "@needle-tools/helper": "2.0.0-next.faf57e6",
150
- "@needle-tools/needle-component-compiler": "3.0.0-alpha.1.999f08a",
151
- "@types/node": "^20.14.8",
152
- "@types/three": "0.169.0",
153
- "@typescript-eslint/eslint-plugin": "^8.0.0",
154
- "@typescript-eslint/parser": "^8.0.0",
155
- "esbuild": "^0.15.10",
156
- "esbuild-node-externals": "^1.5.0",
157
- "eslint": "^9.0.0",
158
- "eslint-plugin-import": "^2.29.1",
159
- "eslint-plugin-no-secrets": "^2.2.2",
160
- "eslint-plugin-no-unsanitized": "^4.1.5",
161
- "eslint-plugin-promise": "^7.0.0",
162
- "eslint-plugin-simple-import-sort": "^10.0.0",
163
- "eslint-plugin-xss": "^0.1.12",
164
- "filehound": "^1.17.6",
165
- "fs-extra": "^11.1.1",
166
- "ftp-deploy": "^2.4.4",
167
- "howfat": "^0.3.7",
168
- "jsdoc-babel": "^0.5.0",
169
- "jsdoc-to-markdown": "^7.1.1",
170
- "madge": "^5.0.1",
171
- "npm-watch": "^0.11.0",
172
- "rollup-plugin-visualizer": "^7.0.1",
173
- "ts-morph": "^27.0.2",
174
- "typescript": "5.9.3",
175
- "typescript-eslint": "^8.0.0",
176
- "vite": "7",
177
- "vite-plugin-dts": "^4.5.4",
178
- "vitest": "^4.1.4"
179
- },
180
119
  "peerDependencies": {
181
- "open": "^10.1.0"
120
+ "open": "*"
182
121
  },
183
122
  "overrides": {
184
123
  "three": "$three"
185
124
  },
186
- "watch": {
187
- "test:circular-imports": {
188
- "patterns": [
189
- "engine/*",
190
- "engine-components/*",
191
- "engine-experimental/**/*"
192
- ],
193
- "extensions": "ts",
194
- "quiet": false
195
- },
196
- "build:dist": {
197
- "patterns": [
198
- "engine/*",
199
- "engine-components/*",
200
- "engine-experimental/**/*"
201
- ],
202
- "extensions": "ts",
203
- "quiet": false
204
- }
205
- },
206
125
  "customElements": "./custom-elements.json",
207
126
  "module": "lib/needle-engine.js",
208
127
  "typings": "lib/needle-engine.d.ts",
@@ -1,2 +1,7 @@
1
1
 
2
- export const NEEDLE_CLOUD_CLI_NAME = "needle-cloud@version-1";
2
+ const defaultVersion = "version-1";
3
+ const version = process.env.NEEDLE_CLOUD_CLI_VERSION_OVERRIDE || defaultVersion;
4
+ if (process.env.NEEDLE_CLOUD_CLI_VERSION_OVERRIDE) {
5
+ console.warn(`\n⚠️ WARNING: NEEDLE_CLOUD_CLI_VERSION_OVERRIDE is set to "${process.env.NEEDLE_CLOUD_CLI_VERSION_OVERRIDE}" — using needle-cloud@${version} instead of the default needle-cloud@${defaultVersion}.\n This should only be used for hotfixes!\n`);
6
+ }
7
+ export const NEEDLE_CLOUD_CLI_NAME = `needle-cloud@${version}`;
@@ -210,7 +210,7 @@ export async function resolveLicense(args = null) {
210
210
  return null;
211
211
  }
212
212
  else if (!licenseResponse.ok) {
213
- if (licenseResponse.status === 500)
213
+ if (licenseResponse.status >= 500)
214
214
  logLicense(`ERROR: Failed to fetch license (${licenseResponse.status})`, "error");
215
215
  else
216
216
  logLicense(`No license found (${licenseResponse.status})`);
@@ -361,7 +361,10 @@ export async function getPublicIdentifier(project_id, opts = undefined) {
361
361
  return null;
362
362
  }
363
363
  else if (!res.ok) {
364
- logIdentifier("ERROR: Failed to fetch project identifier", "error");
364
+ if (res.status >= 500)
365
+ logIdentifier(`Failed to fetch project identifier (${res.status})`, "error");
366
+ else
367
+ logIdentifier(`No project identifier found (${res.status})`);
365
368
  await releaseResponse(res);
366
369
  return null;
367
370
  }
@@ -1,3 +1,4 @@
1
+ import path from 'path';
1
2
  import { needleLog } from '../vite/logging.js';
2
3
 
3
4
 
@@ -53,13 +54,17 @@ export function rollupFixWorkerImport(opts = { logFail: true }) {
53
54
  // console.log("WORKER?", url)
54
55
  if (url?.startsWith("/")) {
55
56
  needleLog("rollup", `Rewrite worker import in ${chunk.fileName}`, "log", { leadingNewline: true, dimBody: false });
56
- // Make url file-relative
57
- const newUrl = url.replace(/^\//, "");
57
+ // Compute the relative path from the chunk's directory to the worker file.
58
+ // url is absolute from build root (e.g. "/assets/worker.js") and the chunk
59
+ // may itself be inside assets/ — using path.posix.relative avoids producing
60
+ // a double "assets/assets/" path.
61
+ const workerPath = url.replace(/^\//, "");
62
+ const chunkDir = path.posix.dirname(chunk.fileName);
63
+ const relativeUrl = path.posix.relative(chunkDir, workerPath) || workerPath;
58
64
  // For CORS issues we need to use importScripts: https://linear.app/needle/issue/NE-6572#comment-ea5dc65e
59
- const output = `/* new-worker */ new Worker(URL.createObjectURL(new Blob(["import '" + \`\${new URL('./${newUrl}', import.meta.url).toString()}\` + "';"], { type: 'text/javascript' }))`;
65
+ const output = `/* new-worker */ new Worker(URL.createObjectURL(new Blob(["import '" + \`\${new URL('./${relativeUrl}', import.meta.url).toString()}\` + "';"], { type: 'text/javascript' }))`;
60
66
  needleLog("rollup", "Did rewrite worker output to: " + output, "log", { leadingNewline: true });
61
67
  return output;
62
- // return `new Worker(new URL("./${newUrl}", import.meta.url)`;
63
68
  }
64
69
  return match;
65
70
  });