@needle-tools/engine 5.1.0-canary.db0c38f → 5.1.0-canary.e6680fa

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 (381) hide show
  1. package/.needle/generated/needle-bindings.gen.d.ts +5 -0
  2. package/CHANGELOG.md +133 -1
  3. package/SKILL.md +4 -1
  4. package/components.needle.json +1 -1
  5. package/dist/needle-engine.bundle-Bl_hyH5G.umd.cjs +1734 -0
  6. package/dist/needle-engine.bundle-Cduc1gj6.min.js +1734 -0
  7. package/dist/{needle-engine.bundle-B29kieh0.js → needle-engine.bundle-DNcqT8nJ.js} +13770 -12741
  8. package/dist/needle-engine.d.ts +1628 -402
  9. package/dist/needle-engine.js +591 -586
  10. package/dist/needle-engine.min.js +1 -1
  11. package/dist/needle-engine.umd.cjs +1 -1
  12. package/dist/three.js +1 -0
  13. package/dist/three.min.js +21 -21
  14. package/dist/three.umd.cjs +16 -16
  15. package/lib/engine/api.d.ts +9 -2
  16. package/lib/engine/api.js +7 -1
  17. package/lib/engine/api.js.map +1 -1
  18. package/lib/engine/codegen/register_types.js +10 -18
  19. package/lib/engine/codegen/register_types.js.map +1 -1
  20. package/lib/engine/debug/debug_spatial_console.d.ts +2 -0
  21. package/lib/engine/debug/debug_spatial_console.js +10 -7
  22. package/lib/engine/debug/debug_spatial_console.js.map +1 -1
  23. package/lib/engine/engine_addressables.d.ts +2 -0
  24. package/lib/engine/engine_addressables.js +6 -3
  25. package/lib/engine/engine_addressables.js.map +1 -1
  26. package/lib/engine/engine_audio.d.ts +68 -0
  27. package/lib/engine/engine_audio.js +172 -0
  28. package/lib/engine/engine_audio.js.map +1 -1
  29. package/lib/engine/engine_camera.fit.js +16 -4
  30. package/lib/engine/engine_camera.fit.js.map +1 -1
  31. package/lib/engine/engine_components.js +1 -1
  32. package/lib/engine/engine_components.js.map +1 -1
  33. package/lib/engine/engine_context.d.ts +41 -27
  34. package/lib/engine/engine_context.js +71 -30
  35. package/lib/engine/engine_context.js.map +1 -1
  36. package/lib/engine/engine_context_eventbus.d.ts +47 -0
  37. package/lib/engine/engine_context_eventbus.js +47 -0
  38. package/lib/engine/engine_context_eventbus.js.map +1 -0
  39. package/lib/engine/engine_disposable.d.ts +172 -0
  40. package/lib/engine/engine_disposable.js +136 -0
  41. package/lib/engine/engine_disposable.js.map +1 -0
  42. package/lib/engine/engine_gameobject.d.ts +1 -10
  43. package/lib/engine/engine_gameobject.js +22 -120
  44. package/lib/engine/engine_gameobject.js.map +1 -1
  45. package/lib/engine/engine_gltf_builtin_components.js +7 -69
  46. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  47. package/lib/engine/engine_init.js +16 -1
  48. package/lib/engine/engine_init.js.map +1 -1
  49. package/lib/engine/engine_input.d.ts +24 -5
  50. package/lib/engine/engine_input.js +3 -2
  51. package/lib/engine/engine_input.js.map +1 -1
  52. package/lib/engine/engine_instantiate_resolve.d.ts +42 -0
  53. package/lib/engine/engine_instantiate_resolve.js +372 -0
  54. package/lib/engine/engine_instantiate_resolve.js.map +1 -0
  55. package/lib/engine/engine_license.d.ts +8 -6
  56. package/lib/engine/engine_license.js +195 -59
  57. package/lib/engine/engine_license.js.map +1 -1
  58. package/lib/engine/engine_lifecycle_functions_internal.js +5 -0
  59. package/lib/engine/engine_lifecycle_functions_internal.js.map +1 -1
  60. package/lib/engine/engine_mainloop_utils.js +7 -4
  61. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  62. package/lib/engine/engine_networking.d.ts +51 -37
  63. package/lib/engine/engine_networking.js +132 -82
  64. package/lib/engine/engine_networking.js.map +1 -1
  65. package/lib/engine/engine_networking.transport.websocket.d.ts +15 -0
  66. package/lib/engine/engine_networking.transport.websocket.js +38 -0
  67. package/lib/engine/engine_networking.transport.websocket.js.map +1 -0
  68. package/lib/engine/engine_networking_blob.js +4 -4
  69. package/lib/engine/engine_networking_blob.js.map +1 -1
  70. package/lib/engine/engine_networking_instantiate.js +2 -2
  71. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  72. package/lib/engine/engine_networking_types.d.ts +39 -1
  73. package/lib/engine/engine_networking_types.js +7 -0
  74. package/lib/engine/engine_networking_types.js.map +1 -1
  75. package/lib/engine/engine_physics_rapier.d.ts +21 -3
  76. package/lib/engine/engine_physics_rapier.js +94 -25
  77. package/lib/engine/engine_physics_rapier.js.map +1 -1
  78. package/lib/engine/engine_pmrem.js +53 -5
  79. package/lib/engine/engine_pmrem.js.map +1 -1
  80. package/lib/engine/engine_scenedata.d.ts +13 -17
  81. package/lib/engine/engine_scenedata.js +58 -31
  82. package/lib/engine/engine_scenedata.js.map +1 -1
  83. package/lib/engine/engine_serialization_builtin_serializer.d.ts +10 -16
  84. package/lib/engine/engine_serialization_builtin_serializer.js +56 -46
  85. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  86. package/lib/engine/engine_serialization_core.d.ts +1 -0
  87. package/lib/engine/engine_serialization_core.js +7 -0
  88. package/lib/engine/engine_serialization_core.js.map +1 -1
  89. package/lib/engine/engine_ssr.d.ts +2 -0
  90. package/lib/engine/engine_ssr.js +20 -0
  91. package/lib/engine/engine_ssr.js.map +1 -1
  92. package/lib/engine/engine_types.d.ts +31 -11
  93. package/lib/engine/engine_types.js +1 -1
  94. package/lib/engine/engine_types.js.map +1 -1
  95. package/lib/engine/engine_util_decorator.js +7 -2
  96. package/lib/engine/engine_util_decorator.js.map +1 -1
  97. package/lib/engine/engine_utils.d.ts +1 -1
  98. package/lib/engine/engine_utils.js +19 -5
  99. package/lib/engine/engine_utils.js.map +1 -1
  100. package/lib/engine/engine_utils_format.js +20 -14
  101. package/lib/engine/engine_utils_format.js.map +1 -1
  102. package/lib/engine/engine_utils_qrcode.js +2 -2
  103. package/lib/engine/engine_utils_qrcode.js.map +1 -1
  104. package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
  105. package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js.map +1 -1
  106. package/lib/engine/webcomponents/jsx.d.ts +51 -0
  107. package/lib/engine/webcomponents/logo-element.js.map +1 -1
  108. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
  109. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
  110. package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +3 -4
  111. package/lib/engine/webcomponents/needle menu/needle-menu.js +6 -6
  112. package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
  113. package/lib/engine/webcomponents/needle-button.js.map +1 -1
  114. package/lib/engine/webcomponents/needle-engine.d.ts +10 -4
  115. package/lib/engine/webcomponents/needle-engine.js +3 -3
  116. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  117. package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
  118. package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
  119. package/lib/engine/xr/NeedleXRSession.d.ts +3 -2
  120. package/lib/engine/xr/NeedleXRSession.js +50 -14
  121. package/lib/engine/xr/NeedleXRSession.js.map +1 -1
  122. package/lib/engine/xr/TempXRContext.js +2 -2
  123. package/lib/engine/xr/TempXRContext.js.map +1 -1
  124. package/lib/engine/xr/events.d.ts +1 -1
  125. package/lib/engine/xr/events.js.map +1 -1
  126. package/lib/engine-components/Animation.js +17 -16
  127. package/lib/engine-components/Animation.js.map +1 -1
  128. package/lib/engine-components/AnimationBuilder.d.ts +158 -0
  129. package/lib/engine-components/AnimationBuilder.js +305 -0
  130. package/lib/engine-components/AnimationBuilder.js.map +1 -0
  131. package/lib/engine-components/Animator.d.ts +6 -0
  132. package/lib/engine-components/Animator.js +23 -13
  133. package/lib/engine-components/Animator.js.map +1 -1
  134. package/lib/engine-components/AnimatorController.builder.d.ts +191 -0
  135. package/lib/engine-components/AnimatorController.builder.js +263 -0
  136. package/lib/engine-components/AnimatorController.builder.js.map +1 -0
  137. package/lib/engine-components/AnimatorController.d.ts +4 -119
  138. package/lib/engine-components/AnimatorController.js +37 -233
  139. package/lib/engine-components/AnimatorController.js.map +1 -1
  140. package/lib/engine-components/AudioSource.d.ts +19 -3
  141. package/lib/engine-components/AudioSource.js +121 -68
  142. package/lib/engine-components/AudioSource.js.map +1 -1
  143. package/lib/engine-components/Camera.d.ts +6 -1
  144. package/lib/engine-components/Camera.js +16 -3
  145. package/lib/engine-components/Camera.js.map +1 -1
  146. package/lib/engine-components/CameraUtils.js +14 -6
  147. package/lib/engine-components/CameraUtils.js.map +1 -1
  148. package/lib/engine-components/Collider.d.ts +18 -9
  149. package/lib/engine-components/Collider.js +61 -14
  150. package/lib/engine-components/Collider.js.map +1 -1
  151. package/lib/engine-components/Component.d.ts +72 -9
  152. package/lib/engine-components/Component.js +114 -10
  153. package/lib/engine-components/Component.js.map +1 -1
  154. package/lib/engine-components/ContactShadows.d.ts +1 -0
  155. package/lib/engine-components/ContactShadows.js +14 -1
  156. package/lib/engine-components/ContactShadows.js.map +1 -1
  157. package/lib/engine-components/DragControls.d.ts +7 -0
  158. package/lib/engine-components/DragControls.js +19 -7
  159. package/lib/engine-components/DragControls.js.map +1 -1
  160. package/lib/engine-components/DropListener.js +4 -0
  161. package/lib/engine-components/DropListener.js.map +1 -1
  162. package/lib/engine-components/EventList.d.ts +31 -9
  163. package/lib/engine-components/EventList.js +37 -76
  164. package/lib/engine-components/EventList.js.map +1 -1
  165. package/lib/engine-components/Joints.d.ts +4 -2
  166. package/lib/engine-components/Joints.js +19 -3
  167. package/lib/engine-components/Joints.js.map +1 -1
  168. package/lib/engine-components/Light.d.ts +6 -8
  169. package/lib/engine-components/Light.js +48 -27
  170. package/lib/engine-components/Light.js.map +1 -1
  171. package/lib/engine-components/Networking.d.ts +1 -1
  172. package/lib/engine-components/Networking.js +1 -1
  173. package/lib/engine-components/OrbitControls.d.ts +1 -2
  174. package/lib/engine-components/OrbitControls.js +37 -14
  175. package/lib/engine-components/OrbitControls.js.map +1 -1
  176. package/lib/engine-components/ReflectionProbe.js +2 -0
  177. package/lib/engine-components/ReflectionProbe.js.map +1 -1
  178. package/lib/engine-components/RigidBody.d.ts +12 -4
  179. package/lib/engine-components/RigidBody.js +18 -4
  180. package/lib/engine-components/RigidBody.js.map +1 -1
  181. package/lib/engine-components/SceneSwitcher.js +3 -0
  182. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  183. package/lib/engine-components/SeeThrough.js +2 -2
  184. package/lib/engine-components/SeeThrough.js.map +1 -1
  185. package/lib/engine-components/VideoPlayer.d.ts +8 -2
  186. package/lib/engine-components/VideoPlayer.js +42 -19
  187. package/lib/engine-components/VideoPlayer.js.map +1 -1
  188. package/lib/engine-components/Voip.d.ts +16 -7
  189. package/lib/engine-components/Voip.js +90 -53
  190. package/lib/engine-components/Voip.js.map +1 -1
  191. package/lib/engine-components/api.d.ts +3 -1
  192. package/lib/engine-components/api.js +3 -1
  193. package/lib/engine-components/api.js.map +1 -1
  194. package/lib/engine-components/codegen/components.d.ts +7 -13
  195. package/lib/engine-components/codegen/components.js +7 -13
  196. package/lib/engine-components/codegen/components.js.map +1 -1
  197. package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
  198. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  199. package/lib/engine-components/postprocessing/Effects/Tonemapping.utils.d.ts +1 -1
  200. package/lib/engine-components/postprocessing/VolumeParameter.d.ts +2 -0
  201. package/lib/engine-components/postprocessing/VolumeParameter.js +4 -1
  202. package/lib/engine-components/postprocessing/VolumeParameter.js.map +1 -1
  203. package/lib/engine-components/timeline/PlayableDirector.d.ts +21 -11
  204. package/lib/engine-components/timeline/PlayableDirector.js +75 -67
  205. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  206. package/lib/engine-components/timeline/SignalAsset.d.ts +3 -1
  207. package/lib/engine-components/timeline/SignalAsset.js +1 -0
  208. package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
  209. package/lib/engine-components/timeline/TimelineBuilder.d.ts +413 -0
  210. package/lib/engine-components/timeline/TimelineBuilder.js +506 -0
  211. package/lib/engine-components/timeline/TimelineBuilder.js.map +1 -0
  212. package/lib/engine-components/timeline/TimelineModels.d.ts +2 -1
  213. package/lib/engine-components/timeline/TimelineModels.js +3 -0
  214. package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
  215. package/lib/engine-components/timeline/TimelineTracks.d.ts +37 -6
  216. package/lib/engine-components/timeline/TimelineTracks.js +92 -26
  217. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  218. package/lib/engine-components/timeline/index.d.ts +2 -1
  219. package/lib/engine-components/timeline/index.js +2 -0
  220. package/lib/engine-components/timeline/index.js.map +1 -1
  221. package/lib/engine-components/ui/Canvas.d.ts +1 -1
  222. package/lib/engine-components/ui/Canvas.js +2 -8
  223. package/lib/engine-components/ui/Canvas.js.map +1 -1
  224. package/lib/engine-components/ui/Text.d.ts +1 -0
  225. package/lib/engine-components/ui/Text.js +10 -7
  226. package/lib/engine-components/ui/Text.js.map +1 -1
  227. package/lib/engine-components/web/CursorFollow.d.ts +0 -1
  228. package/lib/engine-components/web/CursorFollow.js +21 -13
  229. package/lib/engine-components/web/CursorFollow.js.map +1 -1
  230. package/lib/engine-components/webxr/WebXRImageTracking.d.ts +62 -1
  231. package/lib/engine-components/webxr/WebXRImageTracking.js +59 -2
  232. package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
  233. package/lib/needle-engine.d.ts +2 -0
  234. package/lib/needle-engine.js +2 -0
  235. package/lib/needle-engine.js.map +1 -1
  236. package/package.json +4 -84
  237. package/plugins/common/cloud.js +6 -1
  238. package/plugins/common/license.js +55 -12
  239. package/plugins/common/worker.js +9 -4
  240. package/plugins/dts-generator/dts.codegen.js +255 -50
  241. package/plugins/dts-generator/dts.scan.js +37 -9
  242. package/plugins/dts-generator/dts.writer.js +1 -1
  243. package/plugins/dts-generator/glb.discovery.js +140 -23
  244. package/plugins/dts-generator/glb.extractor.js +48 -8
  245. package/plugins/dts-generator/glb.reader.js +80 -27
  246. package/plugins/dts-generator/index.js +1 -1
  247. package/plugins/types/needle-bindings.d.ts +25 -14
  248. package/plugins/types/userconfig.d.ts +16 -1
  249. package/plugins/vite/asap.js +18 -9
  250. package/plugins/vite/build-pipeline.js +57 -20
  251. package/plugins/vite/dependencies.js +29 -10
  252. package/plugins/vite/dependency-watcher.d.ts +2 -2
  253. package/plugins/vite/dependency-watcher.js +5 -6
  254. package/plugins/vite/drop.d.ts +2 -2
  255. package/plugins/vite/drop.js +3 -4
  256. package/plugins/vite/dts-generator.d.ts +2 -2
  257. package/plugins/vite/dts-generator.js +43 -9
  258. package/plugins/vite/editor-connection.js +3 -3
  259. package/plugins/vite/index.d.ts +9 -3
  260. package/plugins/vite/index.js +23 -10
  261. package/plugins/vite/license.js +42 -7
  262. package/plugins/vite/local-files-core.js +3 -3
  263. package/plugins/vite/local-files-utils.d.ts +3 -1
  264. package/plugins/vite/local-files-utils.js +29 -5
  265. package/plugins/vite/meta.js +4 -2
  266. package/plugins/vite/poster.d.ts +2 -2
  267. package/plugins/vite/poster.js +3 -5
  268. package/plugins/vite/reload.d.ts +2 -2
  269. package/plugins/vite/reload.js +23 -23
  270. package/plugins/vite/server.js +2 -1
  271. package/src/engine/api.ts +12 -2
  272. package/src/engine/codegen/register_types.ts +10 -18
  273. package/src/engine/debug/debug_spatial_console.ts +10 -7
  274. package/src/engine/engine_addressables.ts +6 -3
  275. package/src/engine/engine_audio.ts +184 -0
  276. package/src/engine/engine_camera.fit.ts +15 -4
  277. package/src/engine/engine_components.ts +1 -1
  278. package/src/engine/engine_context.ts +85 -38
  279. package/src/engine/engine_context_eventbus.ts +73 -0
  280. package/src/engine/engine_disposable.ts +214 -0
  281. package/src/engine/engine_gameobject.ts +54 -159
  282. package/src/engine/engine_gltf_builtin_components.ts +7 -76
  283. package/src/engine/engine_init.ts +15 -1
  284. package/src/engine/engine_input.ts +28 -7
  285. package/src/engine/engine_instantiate_resolve.ts +407 -0
  286. package/src/engine/engine_license.ts +209 -61
  287. package/src/engine/engine_lifecycle_functions_internal.ts +7 -0
  288. package/src/engine/engine_mainloop_utils.ts +7 -4
  289. package/src/engine/engine_networking.transport.websocket.ts +45 -0
  290. package/src/engine/engine_networking.ts +161 -137
  291. package/src/engine/engine_networking_blob.ts +4 -4
  292. package/src/engine/engine_networking_instantiate.ts +2 -2
  293. package/src/engine/engine_networking_types.ts +41 -1
  294. package/src/engine/engine_physics_rapier.ts +102 -33
  295. package/src/engine/engine_pmrem.ts +56 -6
  296. package/src/engine/engine_scenedata.ts +56 -30
  297. package/src/engine/engine_serialization_builtin_serializer.ts +64 -52
  298. package/src/engine/engine_serialization_core.ts +9 -0
  299. package/src/engine/engine_ssr.ts +29 -3
  300. package/src/engine/engine_types.ts +48 -27
  301. package/src/engine/engine_util_decorator.ts +7 -2
  302. package/src/engine/engine_utils.ts +16 -5
  303. package/src/engine/engine_utils_format.ts +20 -14
  304. package/src/engine/engine_utils_qrcode.ts +2 -2
  305. package/src/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
  306. package/src/engine/webcomponents/jsx.d.ts +51 -0
  307. package/src/engine/webcomponents/logo-element.ts +1 -0
  308. package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
  309. package/src/engine/webcomponents/needle menu/needle-menu.ts +8 -7
  310. package/src/engine/webcomponents/needle-button.ts +1 -0
  311. package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
  312. package/src/engine/webcomponents/needle-engine.ts +13 -6
  313. package/src/engine/xr/NeedleXRSession.ts +48 -13
  314. package/src/engine/xr/TempXRContext.ts +2 -2
  315. package/src/engine/xr/events.ts +1 -1
  316. package/src/engine-components/Animation.ts +19 -16
  317. package/src/engine-components/AnimationBuilder.ts +472 -0
  318. package/src/engine-components/Animator.ts +24 -12
  319. package/src/engine-components/AnimatorController.builder.ts +387 -0
  320. package/src/engine-components/AnimatorController.ts +24 -292
  321. package/src/engine-components/AudioSource.ts +130 -79
  322. package/src/engine-components/Camera.ts +16 -3
  323. package/src/engine-components/CameraUtils.ts +12 -5
  324. package/src/engine-components/Collider.ts +66 -18
  325. package/src/engine-components/Component.ts +118 -20
  326. package/src/engine-components/ContactShadows.ts +15 -1
  327. package/src/engine-components/DragControls.ts +18 -11
  328. package/src/engine-components/DropListener.ts +4 -0
  329. package/src/engine-components/EventList.ts +45 -83
  330. package/src/engine-components/Joints.ts +20 -4
  331. package/src/engine-components/Light.ts +49 -27
  332. package/src/engine-components/Networking.ts +1 -1
  333. package/src/engine-components/OrbitControls.ts +42 -16
  334. package/src/engine-components/ReflectionProbe.ts +2 -0
  335. package/src/engine-components/RigidBody.ts +18 -4
  336. package/src/engine-components/SceneSwitcher.ts +3 -0
  337. package/src/engine-components/SeeThrough.ts +2 -2
  338. package/src/engine-components/VideoPlayer.ts +40 -17
  339. package/src/engine-components/Voip.ts +88 -53
  340. package/src/engine-components/api.ts +3 -1
  341. package/src/engine-components/codegen/components.ts +7 -13
  342. package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
  343. package/src/engine-components/postprocessing/VolumeParameter.ts +4 -1
  344. package/src/engine-components/timeline/PlayableDirector.ts +83 -81
  345. package/src/engine-components/timeline/SignalAsset.ts +4 -1
  346. package/src/engine-components/timeline/TimelineBuilder.ts +824 -0
  347. package/src/engine-components/timeline/TimelineModels.ts +5 -1
  348. package/src/engine-components/timeline/TimelineTracks.ts +96 -27
  349. package/src/engine-components/timeline/index.ts +2 -1
  350. package/src/engine-components/ui/Canvas.ts +2 -8
  351. package/src/engine-components/ui/Text.ts +12 -8
  352. package/src/engine-components/web/CursorFollow.ts +21 -14
  353. package/src/engine-components/webxr/WebXRImageTracking.ts +79 -7
  354. package/src/needle-engine.ts +3 -0
  355. package/dist/needle-engine.bundle-Dq0Ly8fW.umd.cjs +0 -1732
  356. package/dist/needle-engine.bundle-YnpzzOPL.min.js +0 -1732
  357. package/lib/engine-components/AvatarLoader.d.ts +0 -80
  358. package/lib/engine-components/AvatarLoader.js +0 -232
  359. package/lib/engine-components/AvatarLoader.js.map +0 -1
  360. package/lib/engine-components/avatar/AvatarBlink_Simple.d.ts +0 -11
  361. package/lib/engine-components/avatar/AvatarBlink_Simple.js +0 -77
  362. package/lib/engine-components/avatar/AvatarBlink_Simple.js.map +0 -1
  363. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.d.ts +0 -14
  364. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js +0 -69
  365. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js.map +0 -1
  366. package/lib/engine-components/avatar/Avatar_Brain_LookAt.d.ts +0 -29
  367. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js +0 -122
  368. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js.map +0 -1
  369. package/lib/engine-components/avatar/Avatar_MouthShapes.d.ts +0 -15
  370. package/lib/engine-components/avatar/Avatar_MouthShapes.js +0 -80
  371. package/lib/engine-components/avatar/Avatar_MouthShapes.js.map +0 -1
  372. package/lib/engine-components/avatar/Avatar_MustacheShake.d.ts +0 -9
  373. package/lib/engine-components/avatar/Avatar_MustacheShake.js +0 -30
  374. package/lib/engine-components/avatar/Avatar_MustacheShake.js.map +0 -1
  375. package/src/engine-components/AvatarLoader.ts +0 -264
  376. package/src/engine-components/avatar/AvatarBlink_Simple.ts +0 -70
  377. package/src/engine-components/avatar/AvatarEyeLook_Rotation.ts +0 -64
  378. package/src/engine-components/avatar/Avatar_Brain_LookAt.ts +0 -140
  379. package/src/engine-components/avatar/Avatar_MouthShapes.ts +0 -84
  380. package/src/engine-components/avatar/Avatar_MustacheShake.ts +0 -32
  381. package/src/vite-env.d.ts +0 -16
@@ -9,7 +9,6 @@ import { PositionalAudioHelper } from 'three/examples/jsm/helpers/PositionalAudi
9
9
  import { isDevEnvironment } from "../engine/debug/index.js";
10
10
  import { Application, ApplicationEvents } from "../engine/engine_application.js";
11
11
  import { findObjectOfType } from "../engine/engine_components.js";
12
- import { Mathf } from "../engine/engine_math.js";
13
12
  import { serializable } from "../engine/engine_serialization_decorator.js";
14
13
  import { DeviceUtilities, getParam } from "../engine/engine_utils.js";
15
14
  import { AudioListener } from "./AudioListener.js";
@@ -127,12 +126,23 @@ export class AudioSource extends Behaviour {
127
126
  */
128
127
  get isPlaying() { return this.sound?.isPlaying ?? false; }
129
128
  /**
130
- * The total duration of the current audio clip in seconds.
129
+ * The total duration of the currently loaded audio clip in seconds.
131
130
  *
132
131
  * @returns Duration in seconds or undefined if no clip is loaded
132
+ * @remarks For MediaStream clips, duration is not directly available and will return undefined. If the audio clip has not started loading or is still loading, duration may also be undefined until the audio buffer is ready.
133
133
  */
134
134
  get duration() {
135
- return this.sound?.buffer?.duration;
135
+ if (this.sound?.buffer?.duration) {
136
+ return this.sound.buffer.duration;
137
+ }
138
+ else if (this._audioElement?.duration) {
139
+ return this._audioElement.duration;
140
+ }
141
+ else if (this._loadedClip instanceof MediaStream) {
142
+ // MediaStream duration is not directly available; return undefined or estimate if possible
143
+ return undefined;
144
+ }
145
+ return undefined;
136
146
  }
137
147
  /**
138
148
  * The current playback position as a normalized value between 0 and 1.
@@ -185,7 +195,8 @@ export class AudioSource extends Behaviour {
185
195
  /**
186
196
  * Controls how the audio is positioned in space.
187
197
  * Values range from 0 (2D, non-positional) to 1 (fully 3D positioned).
188
- * Note: 2D playback is not fully supported in the current implementation.
198
+ * Internally uses a dual-path audio graph to crossfade between a spatialized (PannerNode)
199
+ * and a non-spatialized (direct) signal path.
189
200
  */
190
201
  get spatialBlend() {
191
202
  return this._spatialBlend;
@@ -268,7 +279,12 @@ export class AudioSource extends Behaviour {
268
279
  // set this from audio context time, used to set clip offset when setting "time" property
269
280
  // there is maybe a better way to set a audio clip current time?!
270
281
  _lastClipStartedLoading = null;
282
+ _loadedClip = null;
271
283
  _audioElement = null;
284
+ // Spatial blend dual-path audio nodes
285
+ _entryNode = null;
286
+ _spatialGain = null;
287
+ _bypassGain = null;
272
288
  /**
273
289
  * Returns the underlying {@link PositionalAudio} object, creating it if necessary.
274
290
  * The audio source needs a user interaction to be initialized due to browser autoplay policies.
@@ -286,43 +302,12 @@ export class AudioSource extends Behaviour {
286
302
  if (listener?.listener) {
287
303
  this.sound = new PositionalAudio(listener.listener);
288
304
  this.gameObject?.add(this.sound);
289
- // this._listener = listener;
290
- // this._originalSoundMatrixWorldFunction = this.sound.updateMatrixWorld;
291
- // this.sound.updateMatrixWorld = this._onSoundMatrixWorld;
292
305
  }
293
306
  else if (debug)
294
307
  console.warn("No audio listener found in scene - can not play audio");
295
308
  }
296
309
  return this.sound;
297
310
  }
298
- // This is a hacky workaround to get the PositionalAudio behave like a 2D audio source
299
- // private _listener: AudioListener | null = null;
300
- // private _originalSoundMatrixWorldFunction: Function | null = null;
301
- // private _onSoundMatrixWorld = (force: boolean) => {
302
- // if (this._spatialBlend > .05) {
303
- // if (this._originalSoundMatrixWorldFunction) {
304
- // this._originalSoundMatrixWorldFunction.call(this.sound, force);
305
- // }
306
- // }
307
- // else {
308
- // // we use another object's matrix world function (but bound to the positional audio)
309
- // // this is just a little trick to prevent calling the PositionalAudio's updateMatrixWorld function
310
- // this.gameObject.updateMatrixWorld?.call(this.sound, force);
311
- // if (this.sound && this._listener) {
312
- // this.sound.gain.connect(this._listener.listener.getInput());
313
- // // const pos = getTempVector().setFromMatrixPosition(this._listener.gameObject.matrixWorld);
314
- // // const ctx = this.sound.context;
315
- // // const delay = this._listener.listener.timeDelta;
316
- // // const time = ctx.currentTime ;
317
- // // this.sound.panner.positionX.setValueAtTime(pos.x, time);
318
- // // this.sound.panner.positionY.setValueAtTime(pos.y, time);
319
- // // this.sound.panner.positionZ.setValueAtTime(pos.z, time);
320
- // // this.sound.panner.orientationX.setValueAtTime(0, time);
321
- // // this.sound.panner.orientationY.setValueAtTime(0, time);
322
- // // this.sound.panner.orientationZ.setValueAtTime(-1, time);
323
- // }
324
- // }
325
- // }
326
311
  /**
327
312
  * Indicates whether the audio source is queued to play when possible.
328
313
  * This may be true before user interaction has been registered.
@@ -346,8 +331,10 @@ export class AudioSource extends Behaviour {
346
331
  if (this.playOnAwake)
347
332
  this.shouldPlay = true;
348
333
  if (this.preload) {
349
- if (typeof this.clip === "string") {
350
- this.audioLoader.load(this.clip, this.createAudio, () => { }, console.error);
334
+ if (typeof this.clip === "string" && this.clip.length > 0) {
335
+ this.audioLoader.load(this.clip, this.createAudio, () => { }, e => {
336
+ console.error(`[AudioSource] Error preloading audio clip "${this.clip}":`, e);
337
+ });
351
338
  }
352
339
  }
353
340
  }
@@ -416,25 +403,17 @@ export class AudioSource extends Behaviour {
416
403
  sound.stop();
417
404
  if (buffer)
418
405
  sound.setBuffer(buffer);
406
+ this._loadedClip = this.clip;
419
407
  sound.loop = this._loop;
420
408
  if (this.context.application.muted)
421
409
  sound.setVolume(0);
422
410
  else
423
411
  sound.setVolume(this.volume);
424
412
  sound.autoplay = this.shouldPlay && AudioSource.userInteractionRegistered;
413
+ this.setupSpatialBlendNodes();
425
414
  this.applySpatialDistanceSettings();
426
415
  if (sound.isPlaying)
427
416
  sound.stop();
428
- // const panner = sound.panner;
429
- // panner.coneOuterGain = 1;
430
- // sound.setDirectionalCone(360, 360, 1);
431
- // const src = sound.context.createBufferSource();
432
- // src.buffer = sound.buffer;
433
- // src.connect(sound.panner);
434
- // src.start(this.audioContext?.currentTime);
435
- // const gain = sound.context.createGain();
436
- // gain.gain.value = 1 - this.spatialBlend;
437
- // src.connect(gain);
438
417
  // make sure we only play the sound if the user has interacted with the page
439
418
  AudioSource.registerWaitForAllowAudio(this.__onAllowAudioCallback);
440
419
  };
@@ -442,30 +421,96 @@ export class AudioSource extends Behaviour {
442
421
  if (this.shouldPlay)
443
422
  this.play();
444
423
  };
424
+ /**
425
+ * Sets up the dual-path audio graph for spatial blend crossfading.
426
+ * Creates two parallel signal paths from source to output:
427
+ * - 3D path: entry → panner → spatialGain → gain (spatialized)
428
+ * - 2D path: entry → bypassGain → gain (non-spatialized)
429
+ */
430
+ setupSpatialBlendNodes() {
431
+ const sound = this.sound;
432
+ if (!sound || this._entryNode)
433
+ return;
434
+ const ctx = sound.context;
435
+ this._entryNode = ctx.createGain();
436
+ this._spatialGain = ctx.createGain();
437
+ this._bypassGain = ctx.createGain();
438
+ // Disconnect the default panner → gain connection set up by three.js
439
+ try {
440
+ sound.panner.disconnect(sound.gain);
441
+ }
442
+ catch { /* not connected */ }
443
+ // 3D path: entry → panner → spatialGain → gain
444
+ this._entryNode.connect(sound.panner);
445
+ sound.panner.connect(this._spatialGain);
446
+ this._spatialGain.connect(sound.gain);
447
+ // 2D path: entry → bypassGain → gain
448
+ this._entryNode.connect(this._bypassGain);
449
+ this._bypassGain.connect(sound.gain);
450
+ // Override getOutput so three.js connects source → entryNode instead of panner
451
+ sound.getOutput = () => this._entryNode;
452
+ // Wrap connect() to undo PositionalAudio's redundant panner → gain reconnection
453
+ const origConnect = sound.connect;
454
+ sound.connect = function () {
455
+ origConnect.call(sound);
456
+ try {
457
+ sound.panner.disconnect(sound.gain);
458
+ }
459
+ catch { /* expected */ }
460
+ return sound;
461
+ };
462
+ // Wrap disconnect() to prevent error when panner → gain doesn't exist
463
+ const origDisconnect = sound.disconnect;
464
+ sound.disconnect = function () {
465
+ try {
466
+ origDisconnect.call(sound);
467
+ }
468
+ catch { /* panner → gain already removed */ }
469
+ return sound;
470
+ };
471
+ this.updateSpatialBlendGains();
472
+ }
473
+ /** Updates the spatial/bypass gain values based on the current spatialBlend. */
474
+ updateSpatialBlendGains() {
475
+ if (!this._spatialGain || !this._bypassGain || !this.sound)
476
+ return;
477
+ const t = this.sound.context.currentTime;
478
+ // Use setTargetAtTime for smooth transitions (avoids clicks/pops)
479
+ this._spatialGain.gain.setTargetAtTime(this._spatialBlend, t, 0.01);
480
+ this._bypassGain.gain.setTargetAtTime(1 - this._spatialBlend, t, 0.01);
481
+ }
445
482
  applySpatialDistanceSettings() {
446
483
  const sound = this.sound;
447
484
  if (!sound)
448
485
  return;
449
486
  this._needUpdateSpatialDistanceSettings = false;
450
- const dist = Mathf.lerp(10 * this._maxDistance / Math.max(0.0001, this.spatialBlend), this._minDistance, this.spatialBlend);
487
+ const ref = Math.max(0.0001, this._minDistance);
488
+ const max = Math.max(0.01, this._maxDistance);
451
489
  if (debug)
452
- console.log(this.name, this._minDistance, this._maxDistance, this.spatialBlend, "Ref distance=" + dist);
453
- sound.setRefDistance(dist);
454
- sound.setMaxDistance(Math.max(0.01, this._maxDistance));
455
- // sound.setRolloffFactor(this.spatialBlend);
456
- // sound.panner.positionZ.automationRate
490
+ console.log(this.name, ref, max, this.spatialBlend);
491
+ sound.setRefDistance(ref);
492
+ sound.setMaxDistance(max);
457
493
  // https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/distanceModel
458
494
  switch (this.rollOffMode) {
459
495
  case AudioRolloffMode.Logarithmic:
460
- sound.setDistanceModel('exponential');
496
+ // Unity's logarithmic rolloff matches Web Audio's 'inverse' model:
497
+ // gain = refDistance / (refDistance + rolloffFactor * (distance - refDistance))
498
+ // We compute rolloffFactor so gain reaches ~0.01 (-40dB) at maxDistance,
499
+ // matching Unity's behavior of effective silence at maxDistance.
500
+ sound.setDistanceModel('inverse');
501
+ sound.setRolloffFactor(99 * ref / Math.max(0.001, max - ref));
461
502
  break;
462
503
  case AudioRolloffMode.Linear:
504
+ // gain = 1 - rolloffFactor * (distance - refDistance) / (maxDistance - refDistance)
505
+ // With rolloffFactor=1 this reaches exactly 0 at maxDistance.
463
506
  sound.setDistanceModel('linear');
507
+ sound.setRolloffFactor(1);
464
508
  break;
465
509
  case AudioRolloffMode.Custom:
466
510
  console.warn("Custom rolloff for AudioSource is not supported: " + this.name);
467
511
  break;
468
512
  }
513
+ this.updateSpatialBlendGains();
469
514
  if (this.spatialBlend > 0) {
470
515
  if (debug && !this.helper) {
471
516
  this.helper = new PositionalAudioHelper(sound, sound.getRefDistance());
@@ -482,7 +527,7 @@ export class AudioSource extends Behaviour {
482
527
  if (typeof clip === "string") {
483
528
  if (debug)
484
529
  console.log(clip);
485
- if (clip.endsWith(".mp3") || clip.endsWith(".wav")) {
530
+ if (clip.endsWith(".mp3") || clip.endsWith(".wav") || clip.endsWith(".ogg") || clip.endsWith(".opus") || clip.endsWith(".flac") || clip.endsWith(".aac") || clip.endsWith(".webm")) {
486
531
  if (!this.audioLoader)
487
532
  this.audioLoader = new AudioLoader();
488
533
  this.shouldPlay = true;
@@ -494,7 +539,10 @@ export class AudioSource extends Behaviour {
494
539
  this._lastClipStartedLoading = clip;
495
540
  if (debug)
496
541
  console.log("load audio", clip);
497
- const buffer = await this.audioLoader.loadAsync(clip).catch(console.error);
542
+ const buffer = await this.audioLoader.loadAsync(clip).catch(e => {
543
+ console.error(`[AudioSource] Error loading audio clip "${clip}":`, e);
544
+ return null;
545
+ });
498
546
  if (this.destroyed)
499
547
  return;
500
548
  if (this._lastClipStartedLoading === clip)
@@ -515,34 +563,36 @@ export class AudioSource extends Behaviour {
515
563
  * If no argument is provided, plays the currently assigned clip.
516
564
  *
517
565
  * @param clip - Optional audio clip or {@link MediaStream} to play
566
+ * @returns A promise that resolves when playback starts successfully, or rejects on error
518
567
  */
519
- play(clip = undefined) {
568
+ async play(clip = undefined) {
520
569
  // use audio source's clip when no clip is passed in
521
570
  if (!clip && this.clip)
522
571
  clip = this.clip;
523
572
  // We only support strings and media stream
524
573
  // TODO: maybe we should return here if an invalid value is passed in
525
574
  if (clip !== undefined && typeof clip !== "string" && !(clip instanceof MediaStream)) {
526
- if (isDevEnvironment())
527
- console.warn("Called play on AudioSource with unknown argument type:", clip + "\nUsing the assigned clip instead:", this.clip);
528
575
  // e.g. when a AudioSource.Play is called from SpatialTrigger onEnter this event is called with the TriggerReceiver... to still make this work we *re-use* our already assigned clip. Because otherwise calling `play` would not play the clip...
529
576
  clip = this.clip;
577
+ if (isDevEnvironment())
578
+ console.warn("[AudioSource] Called play on AudioSource with unknown argument type:", clip + "\nUsing the assigned clip instead:", this.clip);
530
579
  }
531
- // Check if we need to call load first
532
- let needsLoading = !this.sound || (clip && clip !== this.clip);
580
+ // Load if the sound hasn't been created yet or if the clip changed since last load
581
+ let needsLoading = !this.sound || (clip && clip !== this._loadedClip);
533
582
  if (typeof clip === "string" && !this.audioLoader)
534
583
  needsLoading = true;
535
584
  if (clip instanceof MediaStream || typeof clip === "string")
536
585
  this.clip = clip;
537
586
  if (needsLoading) {
538
587
  this.shouldPlay = true;
539
- this.onNewClip(clip);
540
- return;
588
+ return this.onNewClip(clip).then(() => true).catch(() => false);
541
589
  }
542
590
  this.shouldPlay = true;
543
591
  this._hasEnded = false;
544
592
  if (debug)
545
- console.log("play", this.sound?.getVolume(), this.sound);
593
+ console.log("[AudioSource] play", this.sound?.getVolume(), this.sound);
594
+ // If a different clip was passed in, needsLoading above would be true and onNewClip handles it.
595
+ // This guard prevents double-playing the same already-playing sound (which would throw in three.js).
546
596
  if (this.sound && !this.sound.isPlaying) {
547
597
  const muted = this.context.application.muted;
548
598
  if (muted)
@@ -560,13 +610,16 @@ export class AudioSource extends Behaviour {
560
610
  this.context.domElement.shadowRoot?.append(this._audioElement);
561
611
  this._audioElement.srcObject = this.clip;
562
612
  this._audioElement.autoplay = false;
613
+ return true;
563
614
  }
564
615
  else {
565
616
  if (this._audioElement)
566
617
  this._audioElement.remove();
567
618
  this.sound.play(muted ? .1 : 0);
619
+ return true;
568
620
  }
569
621
  }
622
+ return false;
570
623
  }
571
624
  /**
572
625
  * Pauses audio playback while maintaining the current position.
@@ -574,7 +627,7 @@ export class AudioSource extends Behaviour {
574
627
  */
575
628
  pause() {
576
629
  if (debug)
577
- console.log("Pause", this);
630
+ console.log("[AudioSource] pause", this);
578
631
  this._hasEnded = true;
579
632
  this.shouldPlay = false;
580
633
  if (this.sound && this.sound.isPlaying && this.sound.source) {
@@ -589,13 +642,13 @@ export class AudioSource extends Behaviour {
589
642
  */
590
643
  stop() {
591
644
  if (debug)
592
- console.log("Pause", this);
645
+ console.log("[AudioSource] stop", this);
593
646
  this._hasEnded = true;
594
647
  this.shouldPlay = false;
595
648
  if (this.sound && this.sound.source) {
596
649
  this._lastContextTime = this.sound?.context.currentTime;
597
650
  if (debug)
598
- console.log(this._lastContextTime);
651
+ console.log("[AudioSource] lastContextTime", this._lastContextTime);
599
652
  this.sound.stop();
600
653
  }
601
654
  this._audioElement?.remove();
@@ -616,7 +669,7 @@ export class AudioSource extends Behaviour {
616
669
  if (this.sound && !this.sound.isPlaying && this.shouldPlay && !this._hasEnded) {
617
670
  this._hasEnded = true;
618
671
  if (debug)
619
- console.log("Audio clip ended", this.clip);
672
+ console.log("[AudioSource] Audio clip ended", this.clip);
620
673
  this.dispatchEvent(new CustomEvent("ended", { detail: this }));
621
674
  }
622
675
  // this.gameObject.position.x = Math.sin(time.time) * 2;
@@ -1 +1 @@
1
- {"version":3,"file":"AudioSource.js","sourceRoot":"","sources":["../../src/engine-components/AudioSource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AudioSource.js","sourceRoot":"","sources":["../../src/engine-components/AudioSource.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,12 @@ export declare enum ClearFlags {
15
15
  Skybox = 1,
16
16
  /** Clear the background with a solid color. The alpha channel of the color determines the transparency */
17
17
  SolidColor = 2,
18
- /** Clear the background with a transparent color */
18
+ /**
19
+ * No declared background intent. Sets the render clear color to fully
20
+ * transparent so the canvas shows through when nothing else is configured,
21
+ * but leaves `scene.background` untouched — backgrounds set by other code
22
+ * (custom loaders, user assignment) are preserved.
23
+ */
19
24
  Uninitialized = 4
20
25
  }
21
26
  /**
@@ -25,7 +25,12 @@ export var ClearFlags;
25
25
  ClearFlags[ClearFlags["Skybox"] = 1] = "Skybox";
26
26
  /** Clear the background with a solid color. The alpha channel of the color determines the transparency */
27
27
  ClearFlags[ClearFlags["SolidColor"] = 2] = "SolidColor";
28
- /** Clear the background with a transparent color */
28
+ /**
29
+ * No declared background intent. Sets the render clear color to fully
30
+ * transparent so the canvas shows through when nothing else is configured,
31
+ * but leaves `scene.background` untouched — backgrounds set by other code
32
+ * (custom loaders, user assignment) are preserved.
33
+ */
29
34
  ClearFlags[ClearFlags["Uninitialized"] = 4] = "Uninitialized";
30
35
  })(ClearFlags || (ClearFlags = {}));
31
36
  const debug = getParam("debugcam");
@@ -577,7 +582,11 @@ export class Camera extends Behaviour {
577
582
  if (Camera.backgroundShouldBeTransparent(this.context)) {
578
583
  alpha = this.ARBackgroundAlpha ?? 0;
579
584
  }
580
- this.context.scene.background = null;
585
+ // Set the render clear color but leave `scene.background` alone.
586
+ // If nobody set scene.background, the cleared color shows through.
587
+ // If something *did* set it (custom loader, user assignment), that
588
+ // background renders on top of the clear color — the explicit
589
+ // assignment wins, which is the intent.
581
590
  // In WebXR VR the background colorspace is wrong
582
591
  if (this.context.xr?.isVR) {
583
592
  this.context.renderer.setClearColor(getTempColor(this._backgroundColor).convertLinearToSRGB());
@@ -593,7 +602,11 @@ export class Camera extends Behaviour {
593
602
  break;
594
603
  case ClearFlags.Uninitialized:
595
604
  if (!hasBackgroundImageOrColorAttribute) {
596
- this.context.scene.background = null;
605
+ // Only manage the render clear state here — scene.background
606
+ // is scene-scoped and not the camera's concern in
607
+ // "Uninitialized" mode (= no specific intent declared).
608
+ // Wiping it would clobber backgrounds set by custom loaders
609
+ // or user code that runs before the camera is reconfigured.
597
610
  this.context.renderer.setClearColor(0x000000, 0);
598
611
  }
599
612
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/engine-components/Camera.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/engine-components/Camera.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Color, PerspectiveCamera, PMREMGenerator } from "three";
1
+ import { Color, PMREMGenerator } from "three";
2
2
  import { getCameraController } from "../engine/engine_camera.js";
3
3
  import { addNewComponent, getOrAddComponent } from "../engine/engine_components.js";
4
4
  import { ContextEvent, ContextRegistry } from "../engine/engine_context_registry.js";
@@ -23,9 +23,15 @@ export function initCameraUtils() {
23
23
  if (debug)
24
24
  console.warn("Creating missing camera");
25
25
  const scene = evt.context.scene;
26
- const cameraObject = new PerspectiveCamera();
27
- cameraObject.name = "Default Fallback Camera";
28
- scene.add(cameraObject);
26
+ // `ctx.mainCamera` returns the existing fallback PerspectiveCamera if one
27
+ // was created earlier (e.g. by user code or a custom loader doing
28
+ // `ctx.mainCamera.add(child)` before we got here), otherwise it constructs
29
+ // one and adds it to the scene. Either way we land on a camera that's
30
+ // already in the scene graph — reusing it prevents duplicate cameras and
31
+ // keeps anything previously attached hooked to the active camera.
32
+ const cameraObject = evt.context.mainCamera;
33
+ if (!cameraObject.name)
34
+ cameraObject.name = "Default Fallback Camera";
29
35
  const camInstance = new Camera();
30
36
  camInstance.sourceId = evt.files?.[0]?.src ?? "unknown";
31
37
  camInstance.fieldOfView = 35;
@@ -39,8 +45,10 @@ export function initCameraUtils() {
39
45
  }
40
46
  else {
41
47
  camInstance.clearFlags = ClearFlags.SolidColor;
42
- // Don't set the background color if the user set a background color in the <needle-engine> element
43
- if (!evt.context.domElement.getAttribute("background-color")) {
48
+ // Don't set the background color if the user set a background color in the <needle-engine> element,
49
+ // OR if scene.background has already been assigned (e.g. by a custom loader that loaded an HDRI/skybox).
50
+ // Stamping a solid color over an explicit background would silently undo the loader's work.
51
+ if (!evt.context.domElement.getAttribute("background-color") && !scene.background) {
44
52
  let backgroundColor = "#efefef";
45
53
  if (typeof window !== undefined && (window.matchMedia('(prefers-color-scheme: dark)').matches)) {
46
54
  backgroundColor = "#1f1f1f";