@needle-tools/engine 5.1.0-canary.fbdfce3 → 5.1.0-experimental.03e8105

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 (311) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/SKILL.md +4 -1
  3. package/components.needle.json +1 -1
  4. package/dist/{needle-engine.bundle-BFSj2Fz8.js → needle-engine.bundle-BNqUjnSQ.js} +19180 -18386
  5. package/dist/needle-engine.bundle-Bt8ULD7E.umd.cjs +1733 -0
  6. package/dist/needle-engine.bundle-DF6ovbwD.min.js +1733 -0
  7. package/dist/needle-engine.d.ts +1487 -356
  8. package/dist/needle-engine.js +544 -542
  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 +8 -1
  15. package/lib/engine/api.js +7 -1
  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_audio.d.ts +68 -0
  20. package/lib/engine/engine_audio.js +172 -0
  21. package/lib/engine/engine_audio.js.map +1 -1
  22. package/lib/engine/engine_camera.fit.js +16 -4
  23. package/lib/engine/engine_camera.fit.js.map +1 -1
  24. package/lib/engine/engine_components.js +1 -1
  25. package/lib/engine/engine_components.js.map +1 -1
  26. package/lib/engine/engine_context.d.ts +21 -8
  27. package/lib/engine/engine_context.js +32 -16
  28. package/lib/engine/engine_context.js.map +1 -1
  29. package/lib/engine/engine_context_eventbus.d.ts +47 -0
  30. package/lib/engine/engine_context_eventbus.js +47 -0
  31. package/lib/engine/engine_context_eventbus.js.map +1 -0
  32. package/lib/engine/engine_disposable.d.ts +172 -0
  33. package/lib/engine/engine_disposable.js +136 -0
  34. package/lib/engine/engine_disposable.js.map +1 -0
  35. package/lib/engine/engine_gameobject.d.ts +1 -10
  36. package/lib/engine/engine_gameobject.js +22 -120
  37. package/lib/engine/engine_gameobject.js.map +1 -1
  38. package/lib/engine/engine_gltf_builtin_components.js +7 -69
  39. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  40. package/lib/engine/engine_init.js +7 -7
  41. package/lib/engine/engine_init.js.map +1 -1
  42. package/lib/engine/engine_input.d.ts +24 -5
  43. package/lib/engine/engine_input.js +3 -2
  44. package/lib/engine/engine_input.js.map +1 -1
  45. package/lib/engine/engine_instantiate_resolve.d.ts +42 -0
  46. package/lib/engine/engine_instantiate_resolve.js +372 -0
  47. package/lib/engine/engine_instantiate_resolve.js.map +1 -0
  48. package/lib/engine/engine_license.d.ts +7 -7
  49. package/lib/engine/engine_license.js +183 -57
  50. package/lib/engine/engine_license.js.map +1 -1
  51. package/lib/engine/engine_mainloop_utils.js +7 -4
  52. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  53. package/lib/engine/engine_networking.d.ts +51 -37
  54. package/lib/engine/engine_networking.js +132 -82
  55. package/lib/engine/engine_networking.js.map +1 -1
  56. package/lib/engine/engine_networking.transport.websocket.d.ts +15 -0
  57. package/lib/engine/engine_networking.transport.websocket.js +38 -0
  58. package/lib/engine/engine_networking.transport.websocket.js.map +1 -0
  59. package/lib/engine/engine_networking_blob.js +4 -4
  60. package/lib/engine/engine_networking_blob.js.map +1 -1
  61. package/lib/engine/engine_networking_instantiate.js +2 -2
  62. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  63. package/lib/engine/engine_networking_types.d.ts +39 -1
  64. package/lib/engine/engine_networking_types.js +7 -0
  65. package/lib/engine/engine_networking_types.js.map +1 -1
  66. package/lib/engine/engine_physics_rapier.d.ts +21 -3
  67. package/lib/engine/engine_physics_rapier.js +94 -25
  68. package/lib/engine/engine_physics_rapier.js.map +1 -1
  69. package/lib/engine/engine_scenedata.js +2 -2
  70. package/lib/engine/engine_scenedata.js.map +1 -1
  71. package/lib/engine/engine_serialization_builtin_serializer.js +28 -5
  72. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  73. package/lib/engine/engine_serialization_core.d.ts +1 -0
  74. package/lib/engine/engine_serialization_core.js +7 -0
  75. package/lib/engine/engine_serialization_core.js.map +1 -1
  76. package/lib/engine/engine_types.d.ts +29 -11
  77. package/lib/engine/engine_types.js +1 -1
  78. package/lib/engine/engine_types.js.map +1 -1
  79. package/lib/engine/engine_util_decorator.js +7 -2
  80. package/lib/engine/engine_util_decorator.js.map +1 -1
  81. package/lib/engine/engine_utils.d.ts +1 -1
  82. package/lib/engine/engine_utils.js +19 -5
  83. package/lib/engine/engine_utils.js.map +1 -1
  84. package/lib/engine/engine_utils_qrcode.js +2 -2
  85. package/lib/engine/engine_utils_qrcode.js.map +1 -1
  86. package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
  87. package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js.map +1 -1
  88. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
  89. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
  90. package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +1 -1
  91. package/lib/engine/webcomponents/needle menu/needle-menu.js +6 -6
  92. package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
  93. package/lib/engine/webcomponents/needle-engine.d.ts +10 -4
  94. package/lib/engine/webcomponents/needle-engine.js +3 -3
  95. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  96. package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
  97. package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
  98. package/lib/engine/xr/NeedleXRSession.d.ts +3 -2
  99. package/lib/engine/xr/NeedleXRSession.js +50 -14
  100. package/lib/engine/xr/NeedleXRSession.js.map +1 -1
  101. package/lib/engine/xr/TempXRContext.js +2 -2
  102. package/lib/engine/xr/TempXRContext.js.map +1 -1
  103. package/lib/engine/xr/events.d.ts +1 -1
  104. package/lib/engine/xr/events.js.map +1 -1
  105. package/lib/engine-components/Animation.js +17 -16
  106. package/lib/engine-components/Animation.js.map +1 -1
  107. package/lib/engine-components/AnimationBuilder.d.ts +158 -0
  108. package/lib/engine-components/AnimationBuilder.js +305 -0
  109. package/lib/engine-components/AnimationBuilder.js.map +1 -0
  110. package/lib/engine-components/Animator.d.ts +6 -0
  111. package/lib/engine-components/Animator.js +23 -13
  112. package/lib/engine-components/Animator.js.map +1 -1
  113. package/lib/engine-components/AnimatorController.builder.d.ts +191 -0
  114. package/lib/engine-components/AnimatorController.builder.js +263 -0
  115. package/lib/engine-components/AnimatorController.builder.js.map +1 -0
  116. package/lib/engine-components/AnimatorController.d.ts +2 -119
  117. package/lib/engine-components/AnimatorController.js +33 -232
  118. package/lib/engine-components/AnimatorController.js.map +1 -1
  119. package/lib/engine-components/AudioSource.d.ts +19 -3
  120. package/lib/engine-components/AudioSource.js +121 -68
  121. package/lib/engine-components/AudioSource.js.map +1 -1
  122. package/lib/engine-components/Collider.d.ts +18 -9
  123. package/lib/engine-components/Collider.js +61 -14
  124. package/lib/engine-components/Collider.js.map +1 -1
  125. package/lib/engine-components/Component.d.ts +72 -9
  126. package/lib/engine-components/Component.js +114 -10
  127. package/lib/engine-components/Component.js.map +1 -1
  128. package/lib/engine-components/ContactShadows.d.ts +1 -0
  129. package/lib/engine-components/ContactShadows.js +14 -1
  130. package/lib/engine-components/ContactShadows.js.map +1 -1
  131. package/lib/engine-components/DragControls.d.ts +7 -0
  132. package/lib/engine-components/DragControls.js +19 -7
  133. package/lib/engine-components/DragControls.js.map +1 -1
  134. package/lib/engine-components/DropListener.js +3 -0
  135. package/lib/engine-components/DropListener.js.map +1 -1
  136. package/lib/engine-components/EventList.d.ts +31 -9
  137. package/lib/engine-components/EventList.js +37 -76
  138. package/lib/engine-components/EventList.js.map +1 -1
  139. package/lib/engine-components/Joints.d.ts +4 -2
  140. package/lib/engine-components/Joints.js +19 -3
  141. package/lib/engine-components/Joints.js.map +1 -1
  142. package/lib/engine-components/Light.js +9 -1
  143. package/lib/engine-components/Light.js.map +1 -1
  144. package/lib/engine-components/Networking.d.ts +1 -1
  145. package/lib/engine-components/Networking.js +1 -1
  146. package/lib/engine-components/OrbitControls.d.ts +0 -2
  147. package/lib/engine-components/OrbitControls.js +30 -12
  148. package/lib/engine-components/OrbitControls.js.map +1 -1
  149. package/lib/engine-components/RigidBody.d.ts +12 -4
  150. package/lib/engine-components/RigidBody.js +18 -4
  151. package/lib/engine-components/RigidBody.js.map +1 -1
  152. package/lib/engine-components/SceneSwitcher.js +3 -0
  153. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  154. package/lib/engine-components/SeeThrough.js +2 -2
  155. package/lib/engine-components/SeeThrough.js.map +1 -1
  156. package/lib/engine-components/api.d.ts +2 -1
  157. package/lib/engine-components/api.js +2 -1
  158. package/lib/engine-components/api.js.map +1 -1
  159. package/lib/engine-components/codegen/components.d.ts +7 -13
  160. package/lib/engine-components/codegen/components.js +7 -13
  161. package/lib/engine-components/codegen/components.js.map +1 -1
  162. package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
  163. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  164. package/lib/engine-components/postprocessing/Effects/Tonemapping.utils.d.ts +1 -1
  165. package/lib/engine-components/timeline/PlayableDirector.d.ts +21 -11
  166. package/lib/engine-components/timeline/PlayableDirector.js +75 -67
  167. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  168. package/lib/engine-components/timeline/SignalAsset.d.ts +3 -1
  169. package/lib/engine-components/timeline/SignalAsset.js +1 -0
  170. package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
  171. package/lib/engine-components/timeline/TimelineBuilder.d.ts +413 -0
  172. package/lib/engine-components/timeline/TimelineBuilder.js +506 -0
  173. package/lib/engine-components/timeline/TimelineBuilder.js.map +1 -0
  174. package/lib/engine-components/timeline/TimelineModels.d.ts +2 -1
  175. package/lib/engine-components/timeline/TimelineModels.js +3 -0
  176. package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
  177. package/lib/engine-components/timeline/TimelineTracks.d.ts +37 -6
  178. package/lib/engine-components/timeline/TimelineTracks.js +92 -26
  179. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  180. package/lib/engine-components/timeline/index.d.ts +2 -1
  181. package/lib/engine-components/timeline/index.js +2 -0
  182. package/lib/engine-components/timeline/index.js.map +1 -1
  183. package/lib/engine-components/ui/Canvas.d.ts +1 -1
  184. package/lib/engine-components/ui/Canvas.js +2 -8
  185. package/lib/engine-components/ui/Canvas.js.map +1 -1
  186. package/lib/engine-components/ui/Text.d.ts +1 -0
  187. package/lib/engine-components/ui/Text.js +10 -7
  188. package/lib/engine-components/ui/Text.js.map +1 -1
  189. package/lib/engine-components/web/CursorFollow.d.ts +0 -1
  190. package/lib/engine-components/web/CursorFollow.js +21 -13
  191. package/lib/engine-components/web/CursorFollow.js.map +1 -1
  192. package/lib/engine-components/webxr/WebXRImageTracking.js +4 -0
  193. package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
  194. package/package.json +2 -83
  195. package/plugins/common/cloud.js +6 -1
  196. package/plugins/common/license.js +31 -10
  197. package/plugins/common/worker.js +9 -4
  198. package/plugins/vite/asap.js +17 -8
  199. package/plugins/vite/dependencies.js +29 -10
  200. package/plugins/vite/dependency-watcher.js +2 -2
  201. package/plugins/vite/editor-connection.js +3 -3
  202. package/plugins/vite/license.js +46 -7
  203. package/plugins/vite/local-files-core.js +3 -3
  204. package/plugins/vite/local-files-utils.d.ts +3 -1
  205. package/plugins/vite/local-files-utils.js +29 -5
  206. package/plugins/vite/reload.js +1 -1
  207. package/plugins/vite/server.js +2 -1
  208. package/src/engine/api.ts +11 -1
  209. package/src/engine/codegen/register_types.ts +10 -18
  210. package/src/engine/engine_audio.ts +184 -0
  211. package/src/engine/engine_camera.fit.ts +15 -4
  212. package/src/engine/engine_components.ts +1 -1
  213. package/src/engine/engine_context.ts +34 -18
  214. package/src/engine/engine_context_eventbus.ts +73 -0
  215. package/src/engine/engine_disposable.ts +214 -0
  216. package/src/engine/engine_gameobject.ts +54 -159
  217. package/src/engine/engine_gltf_builtin_components.ts +7 -76
  218. package/src/engine/engine_init.ts +7 -7
  219. package/src/engine/engine_input.ts +28 -7
  220. package/src/engine/engine_instantiate_resolve.ts +407 -0
  221. package/src/engine/engine_license.ts +197 -55
  222. package/src/engine/engine_mainloop_utils.ts +7 -4
  223. package/src/engine/engine_networking.transport.websocket.ts +45 -0
  224. package/src/engine/engine_networking.ts +161 -137
  225. package/src/engine/engine_networking_blob.ts +4 -4
  226. package/src/engine/engine_networking_instantiate.ts +2 -2
  227. package/src/engine/engine_networking_types.ts +41 -1
  228. package/src/engine/engine_physics_rapier.ts +102 -33
  229. package/src/engine/engine_scenedata.ts +3 -3
  230. package/src/engine/engine_serialization_builtin_serializer.ts +32 -9
  231. package/src/engine/engine_serialization_core.ts +9 -0
  232. package/src/engine/engine_types.ts +46 -27
  233. package/src/engine/engine_util_decorator.ts +7 -2
  234. package/src/engine/engine_utils.ts +16 -5
  235. package/src/engine/engine_utils_qrcode.ts +2 -2
  236. package/src/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
  237. package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
  238. package/src/engine/webcomponents/needle menu/needle-menu.ts +6 -6
  239. package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
  240. package/src/engine/webcomponents/needle-engine.ts +12 -6
  241. package/src/engine/xr/NeedleXRSession.ts +48 -13
  242. package/src/engine/xr/TempXRContext.ts +2 -2
  243. package/src/engine/xr/events.ts +1 -1
  244. package/src/engine-components/Animation.ts +19 -16
  245. package/src/engine-components/AnimationBuilder.ts +472 -0
  246. package/src/engine-components/Animator.ts +24 -12
  247. package/src/engine-components/AnimatorController.builder.ts +387 -0
  248. package/src/engine-components/AnimatorController.ts +20 -291
  249. package/src/engine-components/AudioSource.ts +130 -79
  250. package/src/engine-components/Collider.ts +66 -18
  251. package/src/engine-components/Component.ts +118 -20
  252. package/src/engine-components/ContactShadows.ts +15 -1
  253. package/src/engine-components/DragControls.ts +18 -11
  254. package/src/engine-components/DropListener.ts +3 -0
  255. package/src/engine-components/EventList.ts +45 -83
  256. package/src/engine-components/Joints.ts +20 -4
  257. package/src/engine-components/Light.ts +10 -2
  258. package/src/engine-components/Networking.ts +1 -1
  259. package/src/engine-components/OrbitControls.ts +34 -14
  260. package/src/engine-components/RigidBody.ts +18 -4
  261. package/src/engine-components/SceneSwitcher.ts +3 -0
  262. package/src/engine-components/SeeThrough.ts +2 -2
  263. package/src/engine-components/api.ts +2 -1
  264. package/src/engine-components/codegen/components.ts +7 -13
  265. package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
  266. package/src/engine-components/timeline/PlayableDirector.ts +83 -81
  267. package/src/engine-components/timeline/SignalAsset.ts +4 -1
  268. package/src/engine-components/timeline/TimelineBuilder.ts +824 -0
  269. package/src/engine-components/timeline/TimelineModels.ts +5 -1
  270. package/src/engine-components/timeline/TimelineTracks.ts +96 -27
  271. package/src/engine-components/timeline/index.ts +2 -1
  272. package/src/engine-components/ui/Canvas.ts +2 -8
  273. package/src/engine-components/ui/Text.ts +12 -8
  274. package/src/engine-components/web/CursorFollow.ts +21 -14
  275. package/src/engine-components/webxr/WebXRImageTracking.ts +2 -0
  276. package/dist/needle-engine.bundle-CmxIO5uH.min.js +0 -1732
  277. package/dist/needle-engine.bundle-tJIZukCz.umd.cjs +0 -1732
  278. package/lib/engine-components/AvatarLoader.d.ts +0 -80
  279. package/lib/engine-components/AvatarLoader.js +0 -232
  280. package/lib/engine-components/AvatarLoader.js.map +0 -1
  281. package/lib/engine-components/avatar/AvatarBlink_Simple.d.ts +0 -11
  282. package/lib/engine-components/avatar/AvatarBlink_Simple.js +0 -77
  283. package/lib/engine-components/avatar/AvatarBlink_Simple.js.map +0 -1
  284. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.d.ts +0 -14
  285. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js +0 -69
  286. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js.map +0 -1
  287. package/lib/engine-components/avatar/Avatar_Brain_LookAt.d.ts +0 -29
  288. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js +0 -122
  289. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js.map +0 -1
  290. package/lib/engine-components/avatar/Avatar_MouthShapes.d.ts +0 -15
  291. package/lib/engine-components/avatar/Avatar_MouthShapes.js +0 -80
  292. package/lib/engine-components/avatar/Avatar_MouthShapes.js.map +0 -1
  293. package/lib/engine-components/avatar/Avatar_MustacheShake.d.ts +0 -9
  294. package/lib/engine-components/avatar/Avatar_MustacheShake.js +0 -30
  295. package/lib/engine-components/avatar/Avatar_MustacheShake.js.map +0 -1
  296. package/plugins/dts-generator/dts.codegen.js +0 -334
  297. package/plugins/dts-generator/dts.scan.js +0 -99
  298. package/plugins/dts-generator/dts.writer.js +0 -59
  299. package/plugins/dts-generator/glb.discovery.js +0 -279
  300. package/plugins/dts-generator/glb.extractor.js +0 -215
  301. package/plugins/dts-generator/glb.reader.js +0 -167
  302. package/plugins/dts-generator/index.js +0 -36
  303. package/plugins/dts-generator/manifest.types.js +0 -174
  304. package/plugins/gltf-packer.mjs +0 -1
  305. package/src/engine-components/AvatarLoader.ts +0 -264
  306. package/src/engine-components/avatar/AvatarBlink_Simple.ts +0 -70
  307. package/src/engine-components/avatar/AvatarEyeLook_Rotation.ts +0 -64
  308. package/src/engine-components/avatar/Avatar_Brain_LookAt.ts +0 -140
  309. package/src/engine-components/avatar/Avatar_MouthShapes.ts +0 -84
  310. package/src/engine-components/avatar/Avatar_MustacheShake.ts +0 -32
  311. package/src/vite-env.d.ts +0 -16
@@ -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"}
@@ -87,7 +87,7 @@ export declare class Canvas extends UIRootComponent implements ICanvas {
87
87
  private _receivers;
88
88
  registerEventReceiver(receiver: ICanvasEventReceiver): void;
89
89
  unregisterEventReceiver(receiver: ICanvasEventReceiver): void;
90
- onEnterXR(args: NeedleXREventArgs): Promise<void>;
90
+ onEnterXR(args: NeedleXREventArgs): void;
91
91
  onLeaveXR(args: NeedleXREventArgs): void;
92
92
  onBeforeRenderRoutine: () => void;
93
93
  onAfterRenderRoutine: () => void;
@@ -9,7 +9,7 @@ import * as ThreeMeshUI from 'three-mesh-ui';
9
9
  import { Mathf } from "../../engine/engine_math.js";
10
10
  import { serializable } from "../../engine/engine_serialization_decorator.js";
11
11
  import { FrameEvent } from "../../engine/engine_setup.js";
12
- import { delayForFrames, getParam } from "../../engine/engine_utils.js";
12
+ import { getParam } from "../../engine/engine_utils.js";
13
13
  import { Camera } from "../Camera.js";
14
14
  import { GameObject } from "../Component.js";
15
15
  import { BaseUIComponent, UIRootComponent } from "./BaseUIComponent.js";
@@ -210,19 +210,13 @@ export class Canvas extends UIRootComponent {
210
210
  this._receivers.splice(index, 1);
211
211
  }
212
212
  }
213
- async onEnterXR(args) {
213
+ onEnterXR(args) {
214
214
  // workaround for https://linear.app/needle/issue/NE-4114
215
215
  if (this.screenspace) {
216
216
  if (args.xr.isVR || args.xr.isPassThrough) {
217
217
  this.gameObject.visible = false;
218
218
  }
219
219
  }
220
- else {
221
- this.gameObject.visible = false;
222
- await delayForFrames(1).then(() => {
223
- this.gameObject.visible = true;
224
- });
225
- }
226
220
  }
227
221
  onLeaveXR(args) {
228
222
  if (this.screenspace) {
@@ -1 +1 @@
1
- {"version":3,"file":"Canvas.js","sourceRoot":"","sources":["../../../src/engine-components/ui/Canvas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Canvas.js","sourceRoot":"","sources":["../../../src/engine-components/ui/Canvas.ts"],"names":[],"mappings":"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"}
@@ -102,6 +102,7 @@ export declare class Text extends Graphic implements IHasAlphaFactor, ICanvasEve
102
102
  set font(val: string | null);
103
103
  get font(): string | null;
104
104
  private _font;
105
+ private _assignedAtRuntime;
105
106
  /**
106
107
  * Whether to support basic rich text tags in the `text` property. Supported tags include `<b>`, `<i>`, and `<color=hex>`. For example: `Hello <b>World</b>` or `Score: <color=#ff0000>100</color>`
107
108
  * @default false
@@ -159,12 +159,15 @@ export class Text extends Graphic {
159
159
  this._font = val;
160
160
  this.uiObject?.set(this.getTextOpts());
161
161
  this.markDirty();
162
+ // If the font is assigned during deserialization it means the font URL MUST be resolved with the style suffix. If it's assigned at runtime by a user invocation and is absolute then we assume the user is prividing a full path to the font asset json or png
163
+ this._assignedAtRuntime = this.__didAwake;
162
164
  }
163
165
  }
164
166
  get font() {
165
167
  return this._font;
166
168
  }
167
169
  _font = "https://cdn.needle.tools/static/fonts/msdf/arial/arial";
170
+ _assignedAtRuntime = true;
168
171
  /**
169
172
  * Whether to support basic rich text tags in the `text` property. Supported tags include `<b>`, `<i>`, and `<color=hex>`. For example: `Hello <b>World</b>` or `Score: <color=#ff0000>100</color>`
170
173
  * @default false
@@ -248,7 +251,7 @@ export class Text extends Graphic {
248
251
  }
249
252
  onCreate(_opts) {
250
253
  if (debug)
251
- console.log(this);
254
+ console.log("[Text] onCreate", this);
252
255
  // @marwie : Should be fixed. Currently _opts are always fed with :
253
256
  // backgroundOpacity : color.opacity
254
257
  // backgroundColor : color
@@ -380,7 +383,7 @@ export class Text extends Graphic {
380
383
  // if (!text || text.length <= 0) return;
381
384
  // if (!text ) return;
382
385
  if (debug)
383
- console.log("feedText", this.uiObject, text, richText);
386
+ console.log("[Text] feedText", this.uiObject, text, richText);
384
387
  if (!this.uiObject)
385
388
  return;
386
389
  if (!this._textMeshUi)
@@ -539,13 +542,13 @@ export class Text extends Graphic {
539
542
  setFont(opts, fontStyle) {
540
543
  if (!this.font) {
541
544
  if (debug)
542
- console.warn("No font set for Text component, skipping font setup");
545
+ console.warn("[Text] No font set for Text component, skipping font setup");
543
546
  return;
544
547
  }
545
548
  const fontName = this.font;
546
549
  const familyName = this.getFamilyNameWithCorrectSuffix(fontName, fontStyle);
547
550
  if (debug)
548
- console.log("Selected font family:" + familyName, this.font);
551
+ console.log(`[Text] Selected font family '${familyName}' from ${fontName} with style ${FontStyle[fontStyle]}`);
549
552
  // ensure a font family is register under this name
550
553
  let fontFamily = ThreeMeshUI.FontLibrary.getFontFamily(familyName);
551
554
  if (!fontFamily)
@@ -600,7 +603,7 @@ export class Text extends Graphic {
600
603
  const styleName = familyName.substring(styleSeparator + 1)?.toLowerCase();
601
604
  if (unsupportedStyleNames.includes(styleName)) {
602
605
  if (debug)
603
- console.warn("Unsupported font style: " + styleName);
606
+ console.warn("[Text] Unsupported font style: " + styleName);
604
607
  return familyName;
605
608
  }
606
609
  // Try find a suffix that matches the style
@@ -614,11 +617,11 @@ export class Text extends Graphic {
614
617
  const isUpperCase = fontBaseName[0] === fontBaseName[0].toUpperCase();
615
618
  const fontNameWithoutSuffix = familyName.substring(0, styleSeparator > pathSeparatorIndex ? styleSeparator : familyName.length);
616
619
  if (debug)
617
- console.log("Select font: ", familyName, FontStyle[style], fontBaseName, isUpperCase, fontNameWithoutSuffix);
620
+ console.log("[Text] Select font: ", familyName, FontStyle[style], fontBaseName, isUpperCase, fontNameWithoutSuffix);
618
621
  /**
619
622
  * If a user provides a font with an absolute URL AND the font name does not end with "-msdf.json" or ".png" (e.g. "https://example.com/fonts/Arial-Bold"), we will assume that the user is providing the full path to the font files and we will not try to modify the font name based on the style. This allows users to have more control over the font files they are using, especially if they are hosting their own fonts or using a custom font provider that does not follow the same naming conventions as our default fonts.
620
623
  */
621
- if (isAbsolute && !(familyName.endsWith("-msdf.json") || familyName.endsWith(".png"))) {
624
+ if (isAbsolute && this._assignedAtRuntime && !(familyName.endsWith("-msdf.json") || familyName.endsWith(".png"))) {
622
625
  return fontNameWithoutSuffix;
623
626
  }
624
627
  switch (style) {