@needle-tools/engine 2.63.3-pre.1 → 2.65.0-pre

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 (289) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/needle-engine.js +7853 -7746
  3. package/dist/needle-engine.umd.cjs +215 -214
  4. package/lib/engine/api.js.map +1 -1
  5. package/lib/engine/assets/index.js.map +1 -1
  6. package/lib/engine/assets/logo.svg +1 -0
  7. package/lib/engine/codegen/register_types.js +169 -169
  8. package/lib/engine/codegen/register_types.js.map +1 -1
  9. package/lib/engine/debug/debug.js.map +1 -1
  10. package/lib/engine/debug/debug_console.js.map +1 -1
  11. package/lib/engine/debug/debug_overlay.js.map +1 -1
  12. package/lib/engine/debug/index.js.map +1 -1
  13. package/lib/engine/engine.js.map +1 -1
  14. package/lib/engine/engine_addressables.js.map +1 -1
  15. package/lib/engine/engine_application.js.map +1 -1
  16. package/lib/engine/engine_assetdatabase.js.map +1 -1
  17. package/lib/engine/engine_camera.js.map +1 -1
  18. package/lib/engine/engine_components.js.map +1 -1
  19. package/lib/engine/engine_constants.d.ts +1 -1
  20. package/lib/engine/engine_constants.js +1 -1
  21. package/lib/engine/engine_constants.js.map +1 -1
  22. package/lib/engine/engine_context_registry.js.map +1 -1
  23. package/lib/engine/engine_coroutine.js.map +1 -1
  24. package/lib/engine/engine_create_objects.js.map +1 -1
  25. package/lib/engine/engine_default_parameters.js.map +1 -1
  26. package/lib/engine/engine_element.d.ts +6 -4
  27. package/lib/engine/engine_element.js +152 -165
  28. package/lib/engine/engine_element.js.map +1 -1
  29. package/lib/engine/engine_element_loading.js.map +1 -1
  30. package/lib/engine/engine_element_overlay.js.map +1 -1
  31. package/lib/engine/engine_fileloader.js.map +1 -1
  32. package/lib/engine/engine_gameobject.d.ts +4 -2
  33. package/lib/engine/engine_gameobject.js +34 -15
  34. package/lib/engine/engine_gameobject.js.map +1 -1
  35. package/lib/engine/engine_generic_utils.js.map +1 -1
  36. package/lib/engine/engine_gizmos.js.map +1 -1
  37. package/lib/engine/engine_gltf.d.ts +1 -1
  38. package/lib/engine/engine_gltf.js.map +1 -1
  39. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  40. package/lib/engine/engine_hot_reload.js.map +1 -1
  41. package/lib/engine/engine_input.js.map +1 -1
  42. package/lib/engine/engine_input_utils.js.map +1 -1
  43. package/lib/engine/engine_instancing.d.ts +1 -0
  44. package/lib/engine/engine_instancing.js +3 -2
  45. package/lib/engine/engine_instancing.js.map +1 -1
  46. package/lib/engine/engine_license.js +14 -13
  47. package/lib/engine/engine_license.js.map +1 -1
  48. package/lib/engine/engine_lightdata.js.map +1 -1
  49. package/lib/engine/engine_loaders.js.map +1 -1
  50. package/lib/engine/engine_mainloop_utils.js +62 -57
  51. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  52. package/lib/engine/engine_math.js.map +1 -1
  53. package/lib/engine/engine_networking.js.map +1 -1
  54. package/lib/engine/engine_networking_auto.js.map +1 -1
  55. package/lib/engine/engine_networking_files.js.map +1 -1
  56. package/lib/engine/engine_networking_files_default_components.js.map +1 -1
  57. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  58. package/lib/engine/engine_networking_peer.js.map +1 -1
  59. package/lib/engine/engine_networking_types.js.map +1 -1
  60. package/lib/engine/engine_networking_utils.js.map +1 -1
  61. package/lib/engine/engine_networking_websocket.js.map +1 -1
  62. package/lib/engine/engine_physics.d.ts +1 -0
  63. package/lib/engine/engine_physics.js +30 -0
  64. package/lib/engine/engine_physics.js.map +1 -1
  65. package/lib/engine/engine_physics.types.js.map +1 -1
  66. package/lib/engine/engine_playerview.js.map +1 -1
  67. package/lib/engine/engine_rendererdata.js.map +1 -1
  68. package/lib/engine/engine_scenetools.js.map +1 -1
  69. package/lib/engine/engine_serialization.js.map +1 -1
  70. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  71. package/lib/engine/engine_serialization_core.js.map +1 -1
  72. package/lib/engine/engine_serialization_decorator.js.map +1 -1
  73. package/lib/engine/engine_setup.d.ts +6 -3
  74. package/lib/engine/engine_setup.js +14 -5
  75. package/lib/engine/engine_setup.js.map +1 -1
  76. package/lib/engine/engine_shaders.js.map +1 -1
  77. package/lib/engine/engine_texture.js.map +1 -1
  78. package/lib/engine/engine_three_utils.js.map +1 -1
  79. package/lib/engine/engine_time.d.ts +1 -0
  80. package/lib/engine/engine_time.js +5 -1
  81. package/lib/engine/engine_time.js.map +1 -1
  82. package/lib/engine/engine_types.d.ts +12 -0
  83. package/lib/engine/engine_types.js.map +1 -1
  84. package/lib/engine/engine_typestore.js.map +1 -1
  85. package/lib/engine/engine_util_decorator.js.map +1 -1
  86. package/lib/engine/engine_utils.js.map +1 -1
  87. package/lib/engine/engine_utils_screenshot.js.map +1 -1
  88. package/lib/engine/engine_web_api.js.map +1 -1
  89. package/lib/engine/extensions/EXT_texture_exr.js.map +1 -1
  90. package/lib/engine/extensions/NEEDLE_animator_controller_model.js.map +1 -1
  91. package/lib/engine/extensions/NEEDLE_components.js.map +1 -1
  92. package/lib/engine/extensions/NEEDLE_gameobject_data.js.map +1 -1
  93. package/lib/engine/extensions/NEEDLE_lighting_settings.js.map +1 -1
  94. package/lib/engine/extensions/NEEDLE_lightmaps.js.map +1 -1
  95. package/lib/engine/extensions/NEEDLE_persistent_assets.js.map +1 -1
  96. package/lib/engine/extensions/NEEDLE_progressive.js.map +1 -1
  97. package/lib/engine/extensions/NEEDLE_render_objects.js.map +1 -1
  98. package/lib/engine/extensions/NEEDLE_techniques_webgl.js.map +1 -1
  99. package/lib/engine/extensions/extension_resolver.js.map +1 -1
  100. package/lib/engine/extensions/extension_utils.js.map +1 -1
  101. package/lib/engine/extensions/extensions.js.map +1 -1
  102. package/lib/engine/js-extensions/Camera.js.map +1 -1
  103. package/lib/engine/js-extensions/Layers.js.map +1 -1
  104. package/lib/engine/js-extensions/index.js.map +1 -1
  105. package/lib/engine/shaders/shaderData.js.map +1 -1
  106. package/lib/engine/tests/test_utils.js.map +1 -1
  107. package/lib/engine-components/AlignmentConstraint.js.map +1 -1
  108. package/lib/engine-components/Animation.js +6 -6
  109. package/lib/engine-components/Animation.js.map +1 -1
  110. package/lib/engine-components/AnimationCurve.js.map +1 -1
  111. package/lib/engine-components/Animator.js.map +1 -1
  112. package/lib/engine-components/AnimatorController.js +2 -0
  113. package/lib/engine-components/AnimatorController.js.map +1 -1
  114. package/lib/engine-components/AudioListener.js.map +1 -1
  115. package/lib/engine-components/AudioSource.js +1 -1
  116. package/lib/engine-components/AudioSource.js.map +1 -1
  117. package/lib/engine-components/AvatarLoader.js.map +1 -1
  118. package/lib/engine-components/AxesHelper.js.map +1 -1
  119. package/lib/engine-components/BasicIKConstraint.js.map +1 -1
  120. package/lib/engine-components/BoxCollider.js.map +1 -1
  121. package/lib/engine-components/BoxHelperComponent.js.map +1 -1
  122. package/lib/engine-components/Camera.d.ts +3 -1
  123. package/lib/engine-components/Camera.js +11 -10
  124. package/lib/engine-components/Camera.js.map +1 -1
  125. package/lib/engine-components/CameraUtils.js.map +1 -1
  126. package/lib/engine-components/CharacterController.js.map +1 -1
  127. package/lib/engine-components/Collider.js.map +1 -1
  128. package/lib/engine-components/Component.d.ts +2 -1
  129. package/lib/engine-components/Component.js +2 -2
  130. package/lib/engine-components/Component.js.map +1 -1
  131. package/lib/engine-components/DeleteBox.js.map +1 -1
  132. package/lib/engine-components/DeviceFlag.js.map +1 -1
  133. package/lib/engine-components/DragControls.js.map +1 -1
  134. package/lib/engine-components/DropListener.js.map +1 -1
  135. package/lib/engine-components/Duplicatable.js.map +1 -1
  136. package/lib/engine-components/EventList.js.map +1 -1
  137. package/lib/engine-components/EventTrigger.js.map +1 -1
  138. package/lib/engine-components/EventType.js.map +1 -1
  139. package/lib/engine-components/FlyControls.js.map +1 -1
  140. package/lib/engine-components/Fog.js.map +1 -1
  141. package/lib/engine-components/Gizmos.js.map +1 -1
  142. package/lib/engine-components/GridHelper.js.map +1 -1
  143. package/lib/engine-components/GroundProjection.js.map +1 -1
  144. package/lib/engine-components/Interactable.js.map +1 -1
  145. package/lib/engine-components/Joints.js.map +1 -1
  146. package/lib/engine-components/LODGroup.js.map +1 -1
  147. package/lib/engine-components/Light.d.ts +0 -2
  148. package/lib/engine-components/Light.js +22 -14
  149. package/lib/engine-components/Light.js.map +1 -1
  150. package/lib/engine-components/LookAtConstraint.js.map +1 -1
  151. package/lib/engine-components/NestedGltf.js.map +1 -1
  152. package/lib/engine-components/Networking.js.map +1 -1
  153. package/lib/engine-components/OffsetConstraint.js.map +1 -1
  154. package/lib/engine-components/OrbitControls.js.map +1 -1
  155. package/lib/engine-components/ParticleSystem.js +13 -1
  156. package/lib/engine-components/ParticleSystem.js.map +1 -1
  157. package/lib/engine-components/ParticleSystemModules.js.map +1 -1
  158. package/lib/engine-components/ParticleSystemSubEmitter.js.map +1 -1
  159. package/lib/engine-components/PlayerColor.js.map +1 -1
  160. package/lib/engine-components/ReflectionProbe.js.map +1 -1
  161. package/lib/engine-components/Renderer.d.ts +5 -1
  162. package/lib/engine-components/Renderer.js +78 -29
  163. package/lib/engine-components/Renderer.js.map +1 -1
  164. package/lib/engine-components/RendererLightmap.js.map +1 -1
  165. package/lib/engine-components/RigidBody.js.map +1 -1
  166. package/lib/engine-components/ScreenCapture.js.map +1 -1
  167. package/lib/engine-components/ShadowCatcher.js.map +1 -1
  168. package/lib/engine-components/Skybox.d.ts +2 -0
  169. package/lib/engine-components/Skybox.js +43 -21
  170. package/lib/engine-components/Skybox.js.map +1 -1
  171. package/lib/engine-components/SmoothFollow.js.map +1 -1
  172. package/lib/engine-components/SpatialTrigger.js.map +1 -1
  173. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  174. package/lib/engine-components/SphereCollider.js.map +1 -1
  175. package/lib/engine-components/SpriteRenderer.js.map +1 -1
  176. package/lib/engine-components/SyncedCamera.js.map +1 -1
  177. package/lib/engine-components/SyncedRoom.js.map +1 -1
  178. package/lib/engine-components/SyncedTransform.js.map +1 -1
  179. package/lib/engine-components/TestRunner.js.map +1 -1
  180. package/lib/engine-components/TransformGizmo.js.map +1 -1
  181. package/lib/engine-components/VideoPlayer.js.map +1 -1
  182. package/lib/engine-components/Voip.js.map +1 -1
  183. package/lib/engine-components/Volume.js +2 -0
  184. package/lib/engine-components/Volume.js.map +1 -1
  185. package/lib/engine-components/WebARSessionRoot.js.map +1 -1
  186. package/lib/engine-components/WebXR.js.map +1 -1
  187. package/lib/engine-components/WebXRAvatar.js.map +1 -1
  188. package/lib/engine-components/WebXRController.js.map +1 -1
  189. package/lib/engine-components/WebXRGrabRendering.js.map +1 -1
  190. package/lib/engine-components/WebXRRig.js.map +1 -1
  191. package/lib/engine-components/WebXRSync.js.map +1 -1
  192. package/lib/engine-components/XRFlag.js.map +1 -1
  193. package/lib/engine-components/avatar/AvatarBlink_Simple.js.map +1 -1
  194. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js.map +1 -1
  195. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js.map +1 -1
  196. package/lib/engine-components/avatar/Avatar_MouthShapes.js.map +1 -1
  197. package/lib/engine-components/avatar/Avatar_MustacheShake.js.map +1 -1
  198. package/lib/engine-components/codegen/components.js.map +1 -1
  199. package/lib/engine-components/debug/LogStats.js.map +1 -1
  200. package/lib/engine-components/export/gltf/GltfExport.js.map +1 -1
  201. package/lib/engine-components/export/usdz/Extension.js.map +1 -1
  202. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  203. package/lib/engine-components/export/usdz/extensions/Animation.js.map +1 -1
  204. package/lib/engine-components/export/usdz/types.js.map +1 -1
  205. package/lib/engine-components/export/usdz/utils/animationutils.js.map +1 -1
  206. package/lib/engine-components/export/usdz/utils/quicklook.js.map +1 -1
  207. package/lib/engine-components/export/usdz/utils/timeutils.js.map +1 -1
  208. package/lib/engine-components/js-extensions/ExtensionUtils.js.map +1 -1
  209. package/lib/engine-components/js-extensions/Object3D.js +8 -1
  210. package/lib/engine-components/js-extensions/Object3D.js.map +1 -1
  211. package/lib/engine-components/js-extensions/RGBAColor.js.map +1 -1
  212. package/lib/engine-components/js-extensions/Vector.js.map +1 -1
  213. package/lib/engine-components/timeline/PlayableDirector.d.ts +5 -0
  214. package/lib/engine-components/timeline/PlayableDirector.js +36 -23
  215. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  216. package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
  217. package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
  218. package/lib/engine-components/timeline/TimelineTracks.d.ts +9 -0
  219. package/lib/engine-components/timeline/TimelineTracks.js +112 -19
  220. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  221. package/lib/engine-components/ui/BaseUIComponent.js.map +1 -1
  222. package/lib/engine-components/ui/Button.js.map +1 -1
  223. package/lib/engine-components/ui/Canvas.js +2 -2
  224. package/lib/engine-components/ui/Canvas.js.map +1 -1
  225. package/lib/engine-components/ui/CanvasGroup.js.map +1 -1
  226. package/lib/engine-components/ui/EventSystem.js.map +1 -1
  227. package/lib/engine-components/ui/Graphic.js.map +1 -1
  228. package/lib/engine-components/ui/Image.js.map +1 -1
  229. package/lib/engine-components/ui/InputField.js.map +1 -1
  230. package/lib/engine-components/ui/Interfaces.js.map +1 -1
  231. package/lib/engine-components/ui/Keyboard.js.map +1 -1
  232. package/lib/engine-components/ui/Layout.js.map +1 -1
  233. package/lib/engine-components/ui/PointerEvents.js.map +1 -1
  234. package/lib/engine-components/ui/RaycastUtils.js.map +1 -1
  235. package/lib/engine-components/ui/Raycaster.js.map +1 -1
  236. package/lib/engine-components/ui/RectTransform.js.map +1 -1
  237. package/lib/engine-components/ui/SpatialHtml.js.map +1 -1
  238. package/lib/engine-components/ui/Text.js.map +1 -1
  239. package/lib/engine-components/ui/Utils.js.map +1 -1
  240. package/lib/engine-components-experimental/Presentation.js.map +1 -1
  241. package/lib/engine-components-experimental/networking/PlayerSync.js.map +1 -1
  242. package/lib/engine-schemes/schemes.js.map +1 -1
  243. package/lib/engine-schemes/synced-camera-model.js.map +1 -1
  244. package/lib/engine-schemes/synced-transform-model.js.map +1 -1
  245. package/lib/engine-schemes/transform.js.map +1 -1
  246. package/lib/engine-schemes/vec2.js.map +1 -1
  247. package/lib/engine-schemes/vec3.js.map +1 -1
  248. package/lib/engine-schemes/vec4.js.map +1 -1
  249. package/lib/engine-schemes/vr-user-state-buffer.js.map +1 -1
  250. package/lib/include/three/ARButton.js.map +1 -1
  251. package/lib/include/three/EXT_mesh_gpu_instancing_exporter.js.map +1 -1
  252. package/lib/include/three/VRButton.js.map +1 -1
  253. package/lib/needle-engine.js.map +1 -1
  254. package/package.json +16 -3
  255. package/plugins/generate-font.js +65 -0
  256. package/plugins/vite/poster-client.js +3 -5
  257. package/plugins/vite/reload.js +2 -2
  258. package/src/engine/codegen/register_types.js +171 -171
  259. package/src/engine/engine_constants.ts +1 -1
  260. package/src/engine/engine_element.ts +162 -178
  261. package/src/engine/engine_gameobject.ts +583 -558
  262. package/src/engine/engine_gltf.ts +1 -1
  263. package/src/engine/engine_instancing.ts +3 -3
  264. package/src/engine/engine_license.ts +14 -13
  265. package/src/engine/engine_mainloop_utils.ts +66 -63
  266. package/src/engine/engine_physics.ts +23 -0
  267. package/src/engine/engine_setup.ts +21 -8
  268. package/src/engine/engine_time.ts +9 -4
  269. package/src/engine/engine_types.ts +36 -22
  270. package/src/engine-components/Animation.ts +6 -5
  271. package/src/engine-components/AnimatorController.ts +1 -0
  272. package/src/engine-components/AudioSource.ts +1 -1
  273. package/src/engine-components/Camera.ts +14 -12
  274. package/src/engine-components/Component.ts +5 -2
  275. package/src/engine-components/Light.ts +20 -13
  276. package/src/engine-components/ParticleSystem.ts +15 -2
  277. package/src/engine-components/Renderer.ts +92 -33
  278. package/src/engine-components/Skybox.ts +49 -22
  279. package/src/engine-components/Volume.ts +1 -0
  280. package/src/engine-components/js-extensions/Object3D.ts +8 -2
  281. package/src/engine-components/timeline/PlayableDirector.ts +35 -24
  282. package/src/engine-components/timeline/TimelineTracks.ts +124 -20
  283. package/src/engine-components/ui/Canvas.ts +2 -2
  284. package/lib/tsconfig.tsbuildinfo +0 -1
  285. package/lib/vite.config.d.ts +0 -2
  286. package/lib/vite.config.js +0 -26
  287. package/lib/vite.config.js.map +0 -1
  288. package/src/engine/codegen/license.js +0 -1
  289. package/src/tsconfig.json +0 -33
@@ -1 +1 @@
1
- {"version":3,"file":"animationutils.js","sourceRoot":"","sources":["../../../../../../engine-components/export/usdz/utils/animationutils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAmB,aAAa,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAEpC,MAAM,UAAU,0BAA0B,CAAC,IAAc,EAAE,GAAuB;IAE9E,oCAAoC;IACpC,MAAM,cAAc,GAAuD,EAAE,CAAC;IAC9E,MAAM,SAAS,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAErE,wBAAwB;IACxB,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,IAAI,KAAK;QACL,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAC9B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,yBAAyB;YAAE,SAAS;QAE/D,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE1B,MAAM,KAAK,GAA0B,EAAE,CAAC;QAGxC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,yBAAyB,CAAC,gBAAgB,EAAE,EAAE;YACxE,IAAI,KAAK;gBACL,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YAE9B,+EAA+E;YAC/E,+GAA+G;YAC/G,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7C,gBAAgB,GAAG,IAAI,CAAC;gBACxB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3E,MAAM,oBAAoB,GAAG,IAAI,aAAa,CAAC,aAAa,GAAG,WAAW,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1G,MAAM,oBAAoB,GAAG,IAAI,aAAa,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClH,KAAK,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;aAC5F;YAED,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACrB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACxB;QAED,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;KACpE;IAED,IAAI,KAAK;QACL,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEhC,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE;QAC/B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK;YACzB,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC9C;AACL,CAAC"}
1
+ {"version":3,"file":"animationutils.js","sourceRoot":"","sources":["../../../../../../src/engine-components/export/usdz/utils/animationutils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAmB,aAAa,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAEpC,MAAM,UAAU,0BAA0B,CAAC,IAAc,EAAE,GAAuB;IAE9E,oCAAoC;IACpC,MAAM,cAAc,GAAuD,EAAE,CAAC;IAC9E,MAAM,SAAS,GAAG,UAAU,CAAC,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAErE,wBAAwB;IACxB,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,IAAI,KAAK;QACL,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAC9B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,yBAAyB;YAAE,SAAS;QAE/D,IAAI,KAAK;YACL,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE1B,MAAM,KAAK,GAA0B,EAAE,CAAC;QAGxC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,yBAAyB,CAAC,gBAAgB,EAAE,EAAE;YACxE,IAAI,KAAK;gBACL,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YAE9B,+EAA+E;YAC/E,+GAA+G;YAC/G,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7C,gBAAgB,GAAG,IAAI,CAAC;gBACxB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3E,MAAM,oBAAoB,GAAG,IAAI,aAAa,CAAC,aAAa,GAAG,WAAW,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1G,MAAM,oBAAoB,GAAG,IAAI,aAAa,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClH,KAAK,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;aAC5F;YAED,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACrB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACxB;QAED,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;KACpE;IAED,IAAI,KAAK;QACL,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEhC,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE;QAC/B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK;YACzB,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC9C;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"quicklook.js","sourceRoot":"","sources":["../../../../../../engine-components/export/usdz/utils/quicklook.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,4BAA4B,CAAC,OAAgB;IACzD,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACxE,IAAG,YAAY;QAAE,OAAO,YAAiC,CAAC;IAE1D;;;;;;;;MAQE;IAEF,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACpC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;IAEhC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,YAAY,CAAC;IACzB,MAAM,CAAC,SAAS,GAAG,mBAAmB,CAAC;IACvC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAExB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,GAAG,kBAAkB,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;IAChB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACf,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEtB,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,GAAG,QAAQ,CAAC;IAClB,+BAA+B;IAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEtB,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,IAAyB,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"quicklook.js","sourceRoot":"","sources":["../../../../../../src/engine-components/export/usdz/utils/quicklook.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,4BAA4B,CAAC,OAAgB;IACzD,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACxE,IAAG,YAAY;QAAE,OAAO,YAAiC,CAAC;IAE1D;;;;;;;;MAQE;IAEF,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACpC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;IAEhC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,YAAY,CAAC;IACzB,MAAM,CAAC,SAAS,GAAG,mBAAmB,CAAC;IACvC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAExB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,GAAG,kBAAkB,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;IAChB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACf,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEtB,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,GAAG,QAAQ,CAAC;IAClB,+BAA+B;IAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEtB,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,IAAyB,CAAC;AACrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"timeutils.js","sourceRoot":"","sources":["../../../../../../engine-components/export/usdz/utils/timeutils.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB;IAC5B,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAE9B,MAAM,OAAO,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IAChD,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAC1C,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAE1C,OAAO,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO,GAAG,KAAK,GAAG,GAAG,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAC/E,CAAC"}
1
+ {"version":3,"file":"timeutils.js","sourceRoot":"","sources":["../../../../../../src/engine-components/export/usdz/utils/timeutils.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB;IAC5B,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAE9B,MAAM,OAAO,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;IAChD,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAC1C,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAE1C,OAAO,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO,GAAG,KAAK,GAAG,GAAG,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAC/E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionUtils.js","sourceRoot":"","sources":["../../../../engine-components/js-extensions/ExtensionUtils.ts"],"names":[],"mappings":"AAGA,MAAM,QAAQ,GAAsC,IAAI,GAAG,EAAE,CAAC;AAE9D,MAAM,UAAU,wBAAwB,CAAI,GAAQ,EAAE,SAA0B;IAC5E,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,gDAAgD;IAChD,iCAAiC;IACjC,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO;KACV;IACD,IAAI,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,OAAO,EAAE;QACT,gCAAgC;QAChC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACtB;IACD,uCAAuC;AAC3C,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAI,IAAoB;IAC/D,4DAA4D;IAC5D,MAAM,OAAO,GAAG,+BAA+B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChC,CAAC;AAGD,SAAS,+BAA+B,CAAC,SAAc;IACnD,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAClD,CAAC;AAMD,MAAM,uBAAuB;IAER,OAAO,CAAS;IAChB,UAAU,CAAW;IACrB,WAAW,CAAwC;IAEpE,YAAY,SAAiB;QACzB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7C,wFAAwF;QACxF,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,gCAAgC;QAChC,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,EAAkC,CAAC;QAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC/B,oBAAoB;YACpB,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACnE,IAAI,UAAU,EAAE;gBACZ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACrC;SACJ;IACL,CAAC;IAED,KAAK,CAAC,MAAgB;QAElB,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO;QACjC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QAE5B,kDAAkD;QAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,IAAI,EAAE;gBACN,mBAAmB;gBACnB,sEAAsE;gBACtE,oBAAoB;gBACpB,oBAAoB;gBACpB,QAAQ;gBACR,IAAI;gBACJ,uCAAuC;gBACvC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;aAC5C;SACJ;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"ExtensionUtils.js","sourceRoot":"","sources":["../../../../src/engine-components/js-extensions/ExtensionUtils.ts"],"names":[],"mappings":"AAGA,MAAM,QAAQ,GAAsC,IAAI,GAAG,EAAE,CAAC;AAE9D,MAAM,UAAU,wBAAwB,CAAI,GAAQ,EAAE,SAA0B;IAC5E,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,gDAAgD;IAChD,iCAAiC;IACjC,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO;KACV;IACD,IAAI,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,OAAO,EAAE;QACT,gCAAgC;QAChC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACtB;IACD,uCAAuC;AAC3C,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAI,IAAoB;IAC/D,4DAA4D;IAC5D,MAAM,OAAO,GAAG,+BAA+B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChC,CAAC;AAGD,SAAS,+BAA+B,CAAC,SAAc;IACnD,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAClD,CAAC;AAMD,MAAM,uBAAuB;IAER,OAAO,CAAS;IAChB,UAAU,CAAW;IACrB,WAAW,CAAwC;IAEpE,YAAY,SAAiB;QACzB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7C,wFAAwF;QACxF,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,gCAAgC;QAChC,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,EAAkC,CAAC;QAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC/B,oBAAoB;YACpB,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACnE,IAAI,UAAU,EAAE;gBACZ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACrC;SACJ;IACL,CAAC;IAED,KAAK,CAAC,MAAgB;QAElB,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO;QACjC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QAE5B,kDAAkD;QAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,IAAI,EAAE;gBACN,mBAAmB;gBACnB,sEAAsE;gBACtE,oBAAoB;gBACpB,oBAAoB;gBACpB,QAAQ;gBACR,IAAI;gBACJ,uCAAuC;gBACvC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;aAC5C;SACJ;IACL,CAAC;CACJ"}
@@ -49,7 +49,14 @@ if (!Object.getOwnPropertyDescriptor(Object3D.prototype, "activeSelf")) {
49
49
  return isActiveSelf(this);
50
50
  },
51
51
  set: function (val) {
52
- setActive(this, val, true);
52
+ setActive(this, val);
53
+ }
54
+ });
55
+ }
56
+ if (!Object.getOwnPropertyDescriptor(Object3D.prototype, "transform")) {
57
+ Object.defineProperty(Object3D.prototype, "transform", {
58
+ get: function () {
59
+ return this;
53
60
  }
54
61
  });
55
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Object3D.js","sourceRoot":"","sources":["../../../../engine-components/js-extensions/Object3D.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Object3D.js","sourceRoot":"","sources":["../../../../src/engine-components/js-extensions/Object3D.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RGBAColor.js","sourceRoot":"","sources":["../../../../engine-components/js-extensions/RGBAColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAE9B,MAAM,OAAO,SAAU,SAAQ,KAAK;IAChC,KAAK,GAAW,CAAC,CAAC;IAElB,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAElC,IAAI,CAAC,CAAC,GAAW,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAE9B,YAAY,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QAClD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,KAAK;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,GAAuB;QACxB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,IAAG,OAAO,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE;YAChD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;SAC1B;aACI,IAAG,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ;YAAE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,KAAY,EAAE,KAAa;QAC5B,MAAM,IAAI,GAAG,KAAkB,CAAC;QAChC,IAAG,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,UAAU,CAAC,MAAa,EAAE,MAAa,EAAE,KAAa;QAClD,MAAM,KAAK,GAAG,MAAmB,CAAC;QAClC,MAAM,KAAK,GAAG,MAAmB,CAAC;QAClC,IAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACxF,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,QAAQ,CAAC,KAAY;QACjB,MAAM,IAAI,GAAG,KAAkB,CAAC;QAChC,IAAG,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACpD,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,CAAC,KAAe,EAAE,SAAiB,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;CACJ"}
1
+ {"version":3,"file":"RGBAColor.js","sourceRoot":"","sources":["../../../../src/engine-components/js-extensions/RGBAColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAE9B,MAAM,OAAO,SAAU,SAAQ,KAAK;IAChC,KAAK,GAAW,CAAC,CAAC;IAElB,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAElC,IAAI,CAAC,CAAC,GAAW,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAE9B,YAAY,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QAClD,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,KAAK;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,GAAuB;QACxB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,IAAG,OAAO,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE;YAChD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;SAC1B;aACI,IAAG,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ;YAAE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,KAAY,EAAE,KAAa;QAC5B,MAAM,IAAI,GAAG,KAAkB,CAAC;QAChC,IAAG,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,UAAU,CAAC,MAAa,EAAE,MAAa,EAAE,KAAa;QAClD,MAAM,KAAK,GAAG,MAAmB,CAAC;QAClC,MAAM,KAAK,GAAG,MAAmB,CAAC;QAClC,IAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACxF,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,QAAQ,CAAC,KAAY;QACjB,MAAM,IAAI,GAAG,KAAkB,CAAC;QAChC,IAAG,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACpD,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,CAAC,KAAe,EAAE,SAAiB,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"Vector.js","sourceRoot":"","sources":["../../../../engine-components/js-extensions/Vector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAExD,MAAM,UAAU,KAAK,CAAC,MAAe;IACjC,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,EAAE;QACrC,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C;AACL,CAAC;AAGD,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,UAAU,GAAY,EAAE,CAAS;IAC1D,OAAO,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAA;AAED,2BAA2B,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"Vector.js","sourceRoot":"","sources":["../../../../src/engine-components/js-extensions/Vector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAExD,MAAM,UAAU,KAAK,CAAC,MAAe;IACjC,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,EAAE;QACrC,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C;AACL,CAAC;AAGD,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,UAAU,GAAY,EAAE,CAAS;IAC1D,OAAO,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAA;AAED,2BAA2B,CAAC,OAAO,CAAC,CAAC"}
@@ -29,8 +29,11 @@ export declare class PlayableDirector extends Behaviour {
29
29
  set duration(value: number);
30
30
  get weight(): number;
31
31
  set weight(value: number);
32
+ get speed(): number;
33
+ set speed(value: number);
32
34
  private _visibilityChangeEvt?;
33
35
  private _clonedPlayableAsset;
36
+ private _speed;
34
37
  awake(): void;
35
38
  onEnable(): void;
36
39
  onDisable(): void;
@@ -57,6 +60,8 @@ export declare class PlayableDirector extends Behaviour {
57
60
  private _controlTracks;
58
61
  private _customTracks;
59
62
  private _allTracks;
63
+ /** should be called after evaluate if the director was playing */
64
+ private invokePauseChangedMethodsOnTracks;
60
65
  private internalUpdate;
61
66
  private internalEvaluate;
62
67
  private resolveBindings;
@@ -2,7 +2,6 @@ import { Animator } from '../Animator';
2
2
  import { Behaviour, GameObject } from '../Component';
3
3
  import * as THREE from 'three';
4
4
  import { AudioListener } from '../AudioListener';
5
- import { AudioSource } from '../AudioSource';
6
5
  import { SignalReceiver } from './SignalAsset';
7
6
  import * as Models from "./TimelineModels";
8
7
  import * as Tracks from "./TimelineTracks";
@@ -79,8 +78,11 @@ export class PlayableDirector extends Behaviour {
79
78
  get weight() { return this._weight; }
80
79
  ;
81
80
  set weight(value) { this._weight = value; }
81
+ get speed() { return this._speed; }
82
+ set speed(value) { this._speed = value; }
82
83
  _visibilityChangeEvt;
83
84
  _clonedPlayableAsset = false;
85
+ _speed = 1;
84
86
  awake() {
85
87
  if (debug)
86
88
  console.log(this, this.playableAsset?.tracks);
@@ -138,7 +140,10 @@ export class PlayableDirector extends Behaviour {
138
140
  play() {
139
141
  if (!this.isValid())
140
142
  return;
143
+ const pauseChanged = this._isPaused == true;
141
144
  this._isPaused = false;
145
+ if (pauseChanged)
146
+ this.invokePauseChangedMethodsOnTracks();
142
147
  if (this._isPlaying)
143
148
  return;
144
149
  this._isPlaying = true;
@@ -152,18 +157,25 @@ export class PlayableDirector extends Behaviour {
152
157
  return;
153
158
  this._isPaused = true;
154
159
  this.evaluate();
160
+ this.invokePauseChangedMethodsOnTracks();
155
161
  }
156
162
  stop() {
157
163
  for (const track of this._audioTracks)
158
164
  track.stop();
165
+ const pauseChanged = this._isPaused == true;
166
+ const wasPlaying = this._isPlaying;
159
167
  if (this._isPlaying) {
160
168
  this._time = 0;
161
169
  this._isPlaying = false;
162
170
  this._isPaused = false;
163
171
  this.evaluate();
172
+ if (pauseChanged)
173
+ this.invokePauseChangedMethodsOnTracks();
164
174
  }
165
175
  this._isPlaying = false;
166
176
  this._isPaused = false;
177
+ if (pauseChanged && !wasPlaying)
178
+ this.invokePauseChangedMethodsOnTracks();
167
179
  if (this._internalUpdateRoutine)
168
180
  this.stopCoroutine(this._internalUpdateRoutine);
169
181
  this._internalUpdateRoutine = null;
@@ -174,10 +186,15 @@ export class PlayableDirector extends Behaviour {
174
186
  let t = this._time;
175
187
  switch (this.extrapolationMode) {
176
188
  case DirectorWrapMode.Hold:
177
- t = Math.min(t, this._duration);
189
+ if (this._speed > 0)
190
+ t = Math.min(t, this._duration);
191
+ else if (this._speed < 0)
192
+ t = Math.max(t, 0);
193
+ this._time = t;
178
194
  break;
179
195
  case DirectorWrapMode.Loop:
180
196
  t %= this._duration;
197
+ this._time = t;
181
198
  break;
182
199
  case DirectorWrapMode.None:
183
200
  if (t > this._duration) {
@@ -223,10 +240,16 @@ export class PlayableDirector extends Behaviour {
223
240
  this._controlTracks,
224
241
  this._customTracks
225
242
  ];
243
+ /** should be called after evaluate if the director was playing */
244
+ invokePauseChangedMethodsOnTracks() {
245
+ for (const track of this.forEachTrack()) {
246
+ track.onPauseChanged?.call(track);
247
+ }
248
+ }
226
249
  *internalUpdate() {
227
250
  while (this._isPlaying && this.activeAndEnabled) {
228
251
  if (!this._isPaused && this._isPlaying) {
229
- this._time += this.context.time.deltaTime;
252
+ this._time += this.context.time.deltaTime * this.speed;
230
253
  this.evaluate();
231
254
  }
232
255
  // for (let i = 0; i < 5; i++)
@@ -259,10 +282,8 @@ export class PlayableDirector extends Behaviour {
259
282
  for (const handler of this._animationTracks) {
260
283
  handler.evaluate(time);
261
284
  }
262
- if (AudioSource.userInteractionRegistered) {
263
- for (const handler of this._audioTracks) {
264
- handler.evaluate(time);
265
- }
285
+ for (const handler of this._audioTracks) {
286
+ handler.evaluate(time);
266
287
  }
267
288
  for (const sig of this._signalTracks) {
268
289
  sig.evaluate(time);
@@ -346,8 +367,7 @@ export class PlayableDirector extends Behaviour {
346
367
  this._signalTracks.length = 0;
347
368
  if (!this.playableAsset)
348
369
  return;
349
- const audioTracks = [];
350
- const audioAllowedCallbacks = [];
370
+ const audioListener = GameObject.findObjectOfType(AudioListener, this.context);
351
371
  for (const track of this.playableAsset.tracks) {
352
372
  const type = track.type;
353
373
  const registered = PlayableDirector.createTrackFunctions[type];
@@ -423,16 +443,13 @@ export class PlayableDirector extends Behaviour {
423
443
  audio.director = this;
424
444
  audio.track = track;
425
445
  this._audioTracks.push(audio);
426
- audioAllowedCallbacks.push(() => {
427
- const listener = GameObject.findObjectOfType(AudioListener, this.context);
428
- if (!listener)
429
- return;
430
- audio.listener = listener.listener;
431
- for (let i = 0; i < track.clips.length; i++) {
432
- const clipModel = track.clips[i];
433
- audio.addModel(clipModel);
434
- }
435
- });
446
+ if (!audioListener)
447
+ continue;
448
+ audio.listener = audioListener.listener;
449
+ for (let i = 0; i < track.clips.length; i++) {
450
+ const clipModel = track.clips[i];
451
+ audio.addModel(clipModel);
452
+ }
436
453
  }
437
454
  else if (track.type === Models.TrackType.Marker) {
438
455
  const signalHandler = new Tracks.SignalTrackHandler();
@@ -478,10 +495,6 @@ export class PlayableDirector extends Behaviour {
478
495
  this._controlTracks.push(handler);
479
496
  }
480
497
  }
481
- AudioSource.registerWaitForAllowAudio(() => {
482
- audioAllowedCallbacks.forEach((cb) => cb());
483
- audioAllowedCallbacks.length = 0;
484
- });
485
498
  }
486
499
  setAudioTracksAllowPlaying(allow) {
487
500
  for (const track of this._audioTracks) {
@@ -1 +1 @@
1
- {"version":3,"file":"PlayableDirector.js","sourceRoot":"","sources":["../../../../engine-components/timeline/PlayableDirector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlayableDirector.js","sourceRoot":"","sources":["../../../../src/engine-components/timeline/PlayableDirector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SignalAsset.js","sourceRoot":"","sources":["../../../../engine-components/timeline/SignalAsset.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAI3E,MAAM,OAAO,WAAW;IACpB,IAAI,CAAU;CACjB;AAED,MAAM,OAAO,mBAAmB;IAC5B,MAAM,CAAe;IACrB,QAAQ,CAAa;IAErB,gBAAgB,GAAG;QACf,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,SAAS;KACtB,CAAA;CACJ;AAED,MAAM,OAAO,cAAe,SAAQ,SAAS;IAIzC,MAAM,CAAyB;IAG/B,KAAK;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,GAAyB;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO;QACxD,IAAI,EAAE,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,EAAE;gBACxB,IAAI;oBACA,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;wBACf,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;wBACvD,SAAS;qBACZ;yBACI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;wBAC3B,OAAO,CAAC,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;wBAC3E,SAAS;qBACZ;oBACD,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;iBACzB;gBACD,OAAO,GAAG,EAAE;oBACR,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACtB;aACJ;SACJ;IACL,CAAC;CAcJ;AA1CG;IADC,YAAY,CAAC,mBAAmB,CAAC;8CACH;AA8CnC,uDAAuD;AACvD,sBAAsB;AACtB,wCAAwC;AACxC,QAAQ;AAER,sEAAsE;AACtE,gDAAgD;AAChD,4BAA4B;AAC5B,QAAQ;AAER,8GAA8G;AAC9G,4CAA4C;AAC5C,sDAAsD;AACtD,yDAAyD;AACzD,oDAAoD;AACpD,kDAAkD;AAClD,sGAAsG;AACtG,6BAA6B;AAC7B,0CAA0C;AAC1C,kDAAkD;AAClD,wDAAwD;AACxD,2FAA2F;AAC3F,wGAAwG;AACxG,2BAA2B;AAC3B,8DAA8D;AAC9D,uBAAuB;AACvB,4DAA4D;AAC5D,mCAAmC;AACnC,mBAAmB;AACnB,4DAA4D;AAC5D,6BAA6B;AAC7B,eAAe;AACf,4BAA4B;AAC5B,QAAQ;AACR,IAAI;AACJ,+BAA+B"}
1
+ {"version":3,"file":"SignalAsset.js","sourceRoot":"","sources":["../../../../src/engine-components/timeline/SignalAsset.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAI3E,MAAM,OAAO,WAAW;IACpB,IAAI,CAAU;CACjB;AAED,MAAM,OAAO,mBAAmB;IAC5B,MAAM,CAAe;IACrB,QAAQ,CAAa;IAErB,gBAAgB,GAAG;QACf,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,SAAS;KACtB,CAAA;CACJ;AAED,MAAM,OAAO,cAAe,SAAQ,SAAS;IAIzC,MAAM,CAAyB;IAG/B,KAAK;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,GAAyB;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO;QACxD,IAAI,EAAE,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,EAAE;gBACxB,IAAI;oBACA,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;wBACf,OAAO,CAAC,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;wBACvD,SAAS;qBACZ;yBACI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;wBAC3B,OAAO,CAAC,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;wBAC3E,SAAS;qBACZ;oBACD,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;iBACzB;gBACD,OAAO,GAAG,EAAE;oBACR,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACtB;aACJ;SACJ;IACL,CAAC;CAcJ;AA1CG;IADC,YAAY,CAAC,mBAAmB,CAAC;8CACH;AA8CnC,uDAAuD;AACvD,sBAAsB;AACtB,wCAAwC;AACxC,QAAQ;AAER,sEAAsE;AACtE,gDAAgD;AAChD,4BAA4B;AAC5B,QAAQ;AAER,8GAA8G;AAC9G,4CAA4C;AAC5C,sDAAsD;AACtD,yDAAyD;AACzD,oDAAoD;AACpD,kDAAkD;AAClD,sGAAsG;AACtG,6BAA6B;AAC7B,0CAA0C;AAC1C,kDAAkD;AAClD,wDAAwD;AACxD,2FAA2F;AAC3F,wGAAwG;AACxG,2BAA2B;AAC3B,8DAA8D;AAC9D,uBAAuB;AACvB,4DAA4D;AAC5D,mCAAmC;AACnC,mBAAmB;AACnB,4DAA4D;AAC5D,6BAA6B;AAC7B,eAAe;AACf,4BAA4B;AAC5B,QAAQ;AACR,IAAI;AACJ,+BAA+B"}
@@ -1 +1 @@
1
- {"version":3,"file":"TimelineModels.js","sourceRoot":"","sources":["../../../../engine-components/timeline/TimelineModels.ts"],"names":[],"mappings":"AAQA,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,2CAA8B,CAAA;IAC9B,yCAA4B,CAAA;IAC5B,iCAAoB,CAAA;IACpB,qCAAwB,CAAA;IACxB,mCAAsB,CAAA;IACtB,mCAAsB,CAAA;AAC1B,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IACzB,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,iEAAY,CAAA;IACZ,iEAAY,CAAA;AAChB,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B;AAAA,CAAC;AAuDF,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,sCAAwB,CAAA;AAC5B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
1
+ {"version":3,"file":"TimelineModels.js","sourceRoot":"","sources":["../../../../src/engine-components/timeline/TimelineModels.ts"],"names":[],"mappings":"AAQA,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,2CAA8B,CAAA;IAC9B,yCAA4B,CAAA;IAC5B,iCAAoB,CAAA;IACpB,qCAAwB,CAAA;IACxB,mCAAsB,CAAA;IACtB,mCAAsB,CAAA;AAC1B,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IACzB,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,iEAAY,CAAA;IACZ,iEAAY,CAAA;AAChB,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B;AAAA,CAAC;AAuDF,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,sCAAwB,CAAA;AAC5B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
@@ -14,6 +14,7 @@ export declare abstract class TrackHandler {
14
14
  onDestroy?(): any;
15
15
  abstract evaluate(time: number): any;
16
16
  onMuteChanged?(): any;
17
+ onPauseChanged?(): any;
17
18
  getClipTime(time: number, model: Models.ClipModel): number;
18
19
  getClipTimeNormalized(time: number, model: Models.ClipModel): number;
19
20
  evaluateWeight(time: number, index: number, models: Array<Models.ClipModel>, isActive?: boolean): number;
@@ -28,6 +29,9 @@ export declare class AnimationTrackHandler extends TrackHandler {
28
29
  /** holds data/info about clips differences */
29
30
  private _actionOffsets;
30
31
  private _didBind;
32
+ private _animator;
33
+ private _animatorWasEnabled?;
34
+ onPauseChanged(): void;
31
35
  createHooks(clipModel: Models.AnimationClipModel, clip: any): void;
32
36
  bind(): void;
33
37
  private ensureTrackOffsets;
@@ -51,6 +55,7 @@ export declare class AudioTrackHandler extends TrackHandler {
51
55
  audio: Array<THREE.Audio>;
52
56
  audioContextTimeOffset: Array<number>;
53
57
  lastTime: number;
58
+ private _audioLoader;
54
59
  private getAudioFilePath;
55
60
  onAllowAudioChanged(allow: boolean): void;
56
61
  addModel(model: Models.ClipModel): void;
@@ -58,6 +63,10 @@ export declare class AudioTrackHandler extends TrackHandler {
58
63
  onMuteChanged(): void;
59
64
  stop(): void;
60
65
  evaluate(time: number): void;
66
+ /** Call to load audio buffer for a specific time in the track. Can be used to preload the timeline audio */
67
+ loadAudio(time: number, lookAhead?: number, lookBehind?: number): Promise<(AudioBuffer | null)[]> | null;
68
+ private isInTimeRange;
69
+ private handleAudioLoading;
61
70
  }
62
71
  export declare class SignalTrackHandler extends TrackHandler {
63
72
  models: Models.SignalMarkerModel[];
@@ -4,6 +4,8 @@ import * as THREE from 'three';
4
4
  import { GameObject } from "../Component";
5
5
  import { Quaternion, Vector3 } from "three";
6
6
  import { getParam, getPath } from "../../engine/engine_utils";
7
+ import { AudioSource } from "../AudioSource";
8
+ import { Animator } from "../Animator";
7
9
  const debug = getParam("debugtimeline");
8
10
  export class TrackHandler {
9
11
  director;
@@ -114,6 +116,14 @@ export class AnimationTrackHandler extends TrackHandler {
114
116
  /** holds data/info about clips differences */
115
117
  _actionOffsets = [];
116
118
  _didBind = false;
119
+ _animator = null;
120
+ _animatorWasEnabled = false;
121
+ onPauseChanged() {
122
+ // When the timeline is paused the original animator will be enabled again if it was before
123
+ if (this._animator && this._animatorWasEnabled !== undefined) {
124
+ this._animator.enabled = this.director.isPaused ? this._animatorWasEnabled : false;
125
+ }
126
+ }
117
127
  createHooks(clipModel, clip) {
118
128
  if (clip.tracks?.length <= 0) {
119
129
  console.warn("No tracks in AnimationClip", clip);
@@ -184,6 +194,12 @@ export class AnimationTrackHandler extends TrackHandler {
184
194
  const off = new AnimationClipOffsetData(action);
185
195
  this._actionOffsets.push(off);
186
196
  }
197
+ if (this.target) {
198
+ // We need to disable the animator component in case it also animates
199
+ // which overrides the timeline
200
+ this._animator = GameObject.getComponent(this.target, Animator) ?? null;
201
+ this._animatorWasEnabled = this._animator?.enabled;
202
+ }
187
203
  // Clip Offsets
188
204
  for (const model of this.models) {
189
205
  const clipData = model.asset;
@@ -232,6 +248,8 @@ export class AnimationTrackHandler extends TrackHandler {
232
248
  if (!this.mixer)
233
249
  return;
234
250
  this.bind();
251
+ if (this._animator && this.director.isPlaying && this.director.weight > 0)
252
+ this._animator.enabled = false;
235
253
  this._totalOffsetPosition.set(0, 0, 0);
236
254
  this._totalOffsetRotation.set(0, 0, 0, 1);
237
255
  this._totalOffsetPosition2.set(0, 0, 0);
@@ -239,37 +257,53 @@ export class AnimationTrackHandler extends TrackHandler {
239
257
  let activeClips = 0;
240
258
  let blend = 0;
241
259
  let didPostExtrapolate = false;
260
+ let didPreExtrapolate = false;
242
261
  for (let i = 0; i < this.clips.length; i++) {
243
262
  const model = this.models[i];
244
263
  const action = this.actions[i];
245
264
  const clipModel = model.asset;
246
265
  action.weight = 0;
247
266
  const isInTimeRange = time >= model.start && time <= model.end;
267
+ const preExtrapolation = model.preExtrapolationMode;
248
268
  const postExtrapolation = model.postExtrapolationMode;
269
+ const nextClip = i < this.clips.length - 1 ? this.models[i + 1] : null;
249
270
  let isActive = isInTimeRange;
271
+ let doPreExtrapolate = false;
250
272
  if (!isActive && !didPostExtrapolate && model.end < time && postExtrapolation !== Models.ClipExtrapolation.None) {
251
- const nextClip = i < this.clips.length - 1 ? this.models[i + 1] : null;
252
273
  // use post extrapolate if its the last clip of the next clip has not yet started
253
274
  if (!nextClip || nextClip.start > time) {
254
275
  isActive = true;
255
276
  didPostExtrapolate = true;
256
277
  }
257
278
  }
258
- const preExtrapolation = model.preExtrapolationMode;
259
- if (i == 0 && !isActive && !didPostExtrapolate && model.start > time && preExtrapolation !== Models.ClipExtrapolation.None) {
260
- isActive = true;
261
- if (preExtrapolation !== Models.ClipExtrapolation.Hold)
262
- time += model.start;
279
+ else if (i == 0 && !isActive && !didPreExtrapolate && model.start > time && preExtrapolation !== Models.ClipExtrapolation.None) {
280
+ if (!nextClip || nextClip.start < time) {
281
+ isActive = true;
282
+ doPreExtrapolate = true;
283
+ didPreExtrapolate = true;
284
+ }
263
285
  }
264
286
  if (isActive) {
265
287
  // const clip = this.clips[i];
266
288
  let weight = 1;
267
289
  weight *= this.evaluateWeight(time, i, this.models, isActive);
290
+ let handleLoop = isInTimeRange;
291
+ if (doPreExtrapolate) {
292
+ if (preExtrapolation !== Models.ClipExtrapolation.Hold) {
293
+ time += model.start;
294
+ handleLoop = true;
295
+ }
296
+ }
268
297
  // TODO: handle clipIn again
269
298
  let t = this.getClipTime(time, model);
270
299
  let loops = 0;
271
300
  const duration = clipModel.duration;
272
- if (isInTimeRange) {
301
+ if (doPreExtrapolate) {
302
+ if (preExtrapolation === Models.ClipExtrapolation.Hold) {
303
+ t = 0;
304
+ }
305
+ }
306
+ if (handleLoop) {
273
307
  if (clipModel.loop) {
274
308
  // const t0 = t - .001;
275
309
  loops += Math.floor(t / (duration + .000001));
@@ -424,6 +458,7 @@ export class AudioTrackHandler extends TrackHandler {
424
458
  audio = [];
425
459
  audioContextTimeOffset = [];
426
460
  lastTime = 0;
461
+ _audioLoader = null;
427
462
  getAudioFilePath(path) {
428
463
  // TODO: this should be the timeline asset location probably which MIGHT be different
429
464
  const glbLocation = this.director.sourceId;
@@ -437,18 +472,9 @@ export class AudioTrackHandler extends TrackHandler {
437
472
  }
438
473
  }
439
474
  addModel(model) {
440
- const path = this.getAudioFilePath(model.asset.clip);
441
475
  const audio = new THREE.Audio(this.listener);
442
- audio.setVolume(model.asset.volume);
443
- const loader = new THREE.AudioLoader();
444
- if (debug)
445
- console.log(path, this.director.sourceId);
446
- loader.load(path, (buffer) => {
447
- audio.setBuffer(buffer);
448
- audio.loop = model.asset.loop;
449
- this.audio.push(audio);
450
- this.models.push(model);
451
- });
476
+ this.audio.push(audio);
477
+ this.models.push(model);
452
478
  }
453
479
  onDisable() {
454
480
  for (const audio of this.audio) {
@@ -477,6 +503,10 @@ export class AudioTrackHandler extends TrackHandler {
477
503
  return;
478
504
  if (this.track.muted)
479
505
  return;
506
+ if (this.director.speed < 0) {
507
+ // Reversed audio playback is currently not supported
508
+ return;
509
+ }
480
510
  const isMuted = this.director.context.application.muted;
481
511
  // this is just so that we dont hear the very first beat when the audio starts but is muted
482
512
  // if we dont add a delay we hear a little bit of the audio before it shuts down
@@ -485,7 +515,17 @@ export class AudioTrackHandler extends TrackHandler {
485
515
  for (let i = 0; i < this.models.length; i++) {
486
516
  const model = this.models[i];
487
517
  const audio = this.audio[i];
488
- if (time >= model.start && time <= model.end) {
518
+ // only trigger loading for tracks that are CLOSE to being played
519
+ if ((!audio || !audio.buffer) && this.isInTimeRange(model, time - 1, time + 1)) {
520
+ this.handleAudioLoading(model, audio);
521
+ }
522
+ if (AudioSource.userInteractionRegistered === false)
523
+ continue;
524
+ if (audio === null || !audio.buffer)
525
+ continue;
526
+ audio.playbackRate = this.director.context.time.timeScale;
527
+ audio.loop = model.asset.loop;
528
+ if (time >= model.start && time <= model.end && time < this.director.duration) {
489
529
  if (this.director.isPlaying == false) {
490
530
  if (audio.isPlaying)
491
531
  audio.stop();
@@ -528,6 +568,59 @@ export class AudioTrackHandler extends TrackHandler {
528
568
  }
529
569
  this.lastTime = time;
530
570
  }
571
+ /** Call to load audio buffer for a specific time in the track. Can be used to preload the timeline audio */
572
+ loadAudio(time, lookAhead = 0, lookBehind = 0) {
573
+ let promises = null;
574
+ const rangeStart = time - lookBehind;
575
+ const rangeEnd = time + lookAhead;
576
+ for (const model of this.models) {
577
+ if (this.isInTimeRange(model, rangeStart, rangeEnd)) {
578
+ const audio = this.audio[this.models.indexOf(model)];
579
+ const promise = this.handleAudioLoading(model, audio);
580
+ if (promise !== null) {
581
+ if (promises === null)
582
+ promises = [];
583
+ promises.push(promise);
584
+ }
585
+ }
586
+ }
587
+ if (promises !== null) {
588
+ return Promise.all(promises);
589
+ }
590
+ return null;
591
+ }
592
+ isInTimeRange(model, start, end) {
593
+ // Range surrounds clip range
594
+ if (start <= model.start && end >= model.end)
595
+ return true;
596
+ // Range start is in clip range
597
+ if (start >= model.start && start <= model.end)
598
+ return true;
599
+ // Range end is in clip range
600
+ if (end >= model.start && end <= model.end)
601
+ return true;
602
+ return false;
603
+ }
604
+ handleAudioLoading(model, audio) {
605
+ if (!this._audioLoader) {
606
+ const path = this.getAudioFilePath(model.asset.clip);
607
+ this._audioLoader = new THREE.AudioLoader();
608
+ // TODO: maybe we should cache the loaders / buffers here by path
609
+ if (debug)
610
+ console.warn("LOAD audio track", path, this.director.sourceId);
611
+ const loadingPromise = new Promise((resolve, _reject) => {
612
+ this._audioLoader.load(path, buffer => {
613
+ audio.setBuffer(buffer);
614
+ resolve(buffer);
615
+ }, undefined, err => {
616
+ console.error("Error loading audio", err);
617
+ resolve(null);
618
+ });
619
+ });
620
+ return loadingPromise;
621
+ }
622
+ return null;
623
+ }
531
624
  }
532
625
  export class SignalTrackHandler extends TrackHandler {
533
626
  models = [];