@relu-interactives/spatial-ecs 0.2.2

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 (308) hide show
  1. package/README.md +125 -0
  2. package/dist/System-rXAmagXA.d.cts +659 -0
  3. package/dist/System-rXAmagXA.d.ts +659 -0
  4. package/dist/Video-CDemv74U.d.cts +1261 -0
  5. package/dist/Video-ChKV1UI7.d.ts +1261 -0
  6. package/dist/assets/draco/draco_decoder.js +34 -0
  7. package/dist/assets/draco/draco_decoder.wasm +0 -0
  8. package/dist/assets/draco/draco_wasm_wrapper.js +117 -0
  9. package/dist/chunk-AYEF3X2P.js +223 -0
  10. package/dist/chunk-AYEF3X2P.js.map +1 -0
  11. package/dist/chunk-MAWBTMCG.js +1722 -0
  12. package/dist/chunk-MAWBTMCG.js.map +1 -0
  13. package/dist/chunk-NFDTIYR4.js +248 -0
  14. package/dist/chunk-NFDTIYR4.js.map +1 -0
  15. package/dist/chunk-OY7ZODZP.js +16 -0
  16. package/dist/chunk-OY7ZODZP.js.map +1 -0
  17. package/dist/chunk-P2YDX5DB.js +3304 -0
  18. package/dist/chunk-P2YDX5DB.js.map +1 -0
  19. package/dist/chunk-QHILSPT4.js +3 -0
  20. package/dist/chunk-QHILSPT4.js.map +1 -0
  21. package/dist/chunk-XWIEEJ7Z.js +1315 -0
  22. package/dist/chunk-XWIEEJ7Z.js.map +1 -0
  23. package/dist/components/index.cjs +1745 -0
  24. package/dist/components/index.cjs.map +1 -0
  25. package/dist/components/index.d.cts +4 -0
  26. package/dist/components/index.d.ts +4 -0
  27. package/dist/components/index.js +4 -0
  28. package/dist/components/index.js.map +1 -0
  29. package/dist/docs/api/Behaviour/classes/Behaviour.md +554 -0
  30. package/dist/docs/api/Behaviour/index.md +15 -0
  31. package/dist/docs/api/Component/classes/Component.md +57 -0
  32. package/dist/docs/api/Component/index.md +15 -0
  33. package/dist/docs/api/components/classes/AnimationComponent.md +318 -0
  34. package/dist/docs/api/components/classes/AudioComponent.md +114 -0
  35. package/dist/docs/api/components/classes/CameraComponent.md +59 -0
  36. package/dist/docs/api/components/classes/EntityType.md +48 -0
  37. package/dist/docs/api/components/classes/Environment.md +47 -0
  38. package/dist/docs/api/components/classes/ImageComponent.md +57 -0
  39. package/dist/docs/api/components/classes/ImageTarget.md +60 -0
  40. package/dist/docs/api/components/classes/ImageTargetAnchor.md +48 -0
  41. package/dist/docs/api/components/classes/LightComponent.md +70 -0
  42. package/dist/docs/api/components/classes/MaterialComponent.md +181 -0
  43. package/dist/docs/api/components/classes/MeshComponent.md +48 -0
  44. package/dist/docs/api/components/classes/MeshGeometryComponent.md +64 -0
  45. package/dist/docs/api/components/classes/ModelComponent.md +49 -0
  46. package/dist/docs/api/components/classes/Name.md +46 -0
  47. package/dist/docs/api/components/classes/Object3DRef.md +54 -0
  48. package/dist/docs/api/components/classes/ParentId.md +47 -0
  49. package/dist/docs/api/components/classes/PhysicsComponent.md +82 -0
  50. package/dist/docs/api/components/classes/Postprocessing.md +49 -0
  51. package/dist/docs/api/components/classes/ScriptComponent.md +54 -0
  52. package/dist/docs/api/components/classes/Selectable.md +46 -0
  53. package/dist/docs/api/components/classes/SelectionTransformState.md +54 -0
  54. package/dist/docs/api/components/classes/SpriteComponent.md +55 -0
  55. package/dist/docs/api/components/classes/TransformComponent.md +197 -0
  56. package/dist/docs/api/components/classes/VideoComponent.md +123 -0
  57. package/dist/docs/api/components/functions/normalizePhysicsState.md +23 -0
  58. package/dist/docs/api/components/index.md +94 -0
  59. package/dist/docs/api/components/type-aliases/AnimationComponentOptions.md +42 -0
  60. package/dist/docs/api/components/type-aliases/CameraComponentOptions.md +45 -0
  61. package/dist/docs/api/components/type-aliases/CameraProjection.md +15 -0
  62. package/dist/docs/api/components/type-aliases/CameraRuntimeType.md +15 -0
  63. package/dist/docs/api/components/type-aliases/ColliderShape.md +15 -0
  64. package/dist/docs/api/components/type-aliases/ColliderState.md +62 -0
  65. package/dist/docs/api/components/type-aliases/CubeMeshParameters.md +27 -0
  66. package/dist/docs/api/components/type-aliases/EditableMeshObjectKind.md +15 -0
  67. package/dist/docs/api/components/type-aliases/EnvironmentFogState.md +37 -0
  68. package/dist/docs/api/components/type-aliases/EnvironmentFogType.md +15 -0
  69. package/dist/docs/api/components/type-aliases/EnvironmentGradientEffect.md +15 -0
  70. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxState.md +34 -0
  71. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxType.md +15 -0
  72. package/dist/docs/api/components/type-aliases/EnvironmentState.md +29 -0
  73. package/dist/docs/api/components/type-aliases/ImageTargetAnchorOptions.md +25 -0
  74. package/dist/docs/api/components/type-aliases/ImageTargetReference.md +33 -0
  75. package/dist/docs/api/components/type-aliases/LightValueState.md +41 -0
  76. package/dist/docs/api/components/type-aliases/MaterialTypeValue.md +15 -0
  77. package/dist/docs/api/components/type-aliases/MaterialValueState.md +75 -0
  78. package/dist/docs/api/components/type-aliases/MeshGeometryParameters.md +13 -0
  79. package/dist/docs/api/components/type-aliases/MeshGeometryParametersByKind.md +33 -0
  80. package/dist/docs/api/components/type-aliases/PhysicsState.md +25 -0
  81. package/dist/docs/api/components/type-aliases/PlaneMeshParameters.md +25 -0
  82. package/dist/docs/api/components/type-aliases/PostprocessingState.md +164 -0
  83. package/dist/docs/api/components/type-aliases/RadiusHeightMeshParameters.md +25 -0
  84. package/dist/docs/api/components/type-aliases/RadiusMeshParameters.md +23 -0
  85. package/dist/docs/api/components/type-aliases/RigidbodyState.md +53 -0
  86. package/dist/docs/api/components/type-aliases/RigidbodyType.md +19 -0
  87. package/dist/docs/api/components/type-aliases/ScriptEntry.md +38 -0
  88. package/dist/docs/api/components/type-aliases/TextureFilteringValue.md +15 -0
  89. package/dist/docs/api/components/type-aliases/TransformData.md +27 -0
  90. package/dist/docs/api/components/type-aliases/TransformModeValue.md +15 -0
  91. package/dist/docs/api/components/type-aliases/TransformSpaceValue.md +15 -0
  92. package/dist/docs/api/components/type-aliases/Vec3.md +27 -0
  93. package/dist/docs/api/components/variables/DEFAULT_COLLIDER_STATE.md +13 -0
  94. package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_STATE.md +13 -0
  95. package/dist/docs/api/components/variables/DEFAULT_MESH_GEOMETRY_PARAMETERS.md +13 -0
  96. package/dist/docs/api/components/variables/DEFAULT_PHYSICS_STATE.md +13 -0
  97. package/dist/docs/api/components/variables/DEFAULT_POSTPROCESSING_STATE.md +13 -0
  98. package/dist/docs/api/components/variables/DEFAULT_RIGIDBODY_STATE.md +13 -0
  99. package/dist/docs/api/index/classes/AnimationStateMachine.md +201 -0
  100. package/dist/docs/api/index/classes/AnimationStateManager.md +253 -0
  101. package/dist/docs/api/index/classes/AnimationSystem.md +68 -0
  102. package/dist/docs/api/index/classes/AudioSystem.md +98 -0
  103. package/dist/docs/api/index/classes/CameraSyncSystem.md +49 -0
  104. package/dist/docs/api/index/classes/EnvironmentSyncSystem.md +75 -0
  105. package/dist/docs/api/index/classes/InputSystem.md +449 -0
  106. package/dist/docs/api/index/classes/LightSyncSystem.md +49 -0
  107. package/dist/docs/api/index/classes/MaterialSyncSystem.md +67 -0
  108. package/dist/docs/api/index/classes/MeshGeometrySystem.md +49 -0
  109. package/dist/docs/api/index/classes/ObjectManagementSystem.md +298 -0
  110. package/dist/docs/api/index/classes/ObjectVisibilitySystem.md +49 -0
  111. package/dist/docs/api/index/classes/PhysicsSyncSystem.md +83 -0
  112. package/dist/docs/api/index/classes/PostprocessingSyncSystem.md +80 -0
  113. package/dist/docs/api/index/classes/RenderSystem.md +64 -0
  114. package/dist/docs/api/index/classes/ScriptBehaviourSystem.md +83 -0
  115. package/dist/docs/api/index/classes/TransformSyncSystem.md +49 -0
  116. package/dist/docs/api/index/classes/VideoSystem.md +97 -0
  117. package/dist/docs/api/index/classes/World.md +1405 -0
  118. package/dist/docs/api/index/functions/createAnimationComponent.md +28 -0
  119. package/dist/docs/api/index/functions/createAudioComponent.md +32 -0
  120. package/dist/docs/api/index/functions/createCameraComponent.md +28 -0
  121. package/dist/docs/api/index/functions/createEntityTypeComponent.md +28 -0
  122. package/dist/docs/api/index/functions/createEnvironmentComponent.md +28 -0
  123. package/dist/docs/api/index/functions/createImageComponent.md +28 -0
  124. package/dist/docs/api/index/functions/createImageTargetAnchorComponent.md +28 -0
  125. package/dist/docs/api/index/functions/createImageTargetComponent.md +28 -0
  126. package/dist/docs/api/index/functions/createLightComponent.md +28 -0
  127. package/dist/docs/api/index/functions/createMaterialComponent.md +28 -0
  128. package/dist/docs/api/index/functions/createMeshComponent.md +28 -0
  129. package/dist/docs/api/index/functions/createMeshGeometryComponent.md +28 -0
  130. package/dist/docs/api/index/functions/createModelComponent.md +28 -0
  131. package/dist/docs/api/index/functions/createNameComponent.md +28 -0
  132. package/dist/docs/api/index/functions/createObject3DRefComponent.md +28 -0
  133. package/dist/docs/api/index/functions/createParentIdComponent.md +28 -0
  134. package/dist/docs/api/index/functions/createPhysicsComponent.md +30 -0
  135. package/dist/docs/api/index/functions/createPostprocessingComponent.md +28 -0
  136. package/dist/docs/api/index/functions/createScriptComponent.md +28 -0
  137. package/dist/docs/api/index/functions/createSelectableComponent.md +28 -0
  138. package/dist/docs/api/index/functions/createSelectionTransformStateComponent.md +28 -0
  139. package/dist/docs/api/index/functions/createSpriteComponent.md +28 -0
  140. package/dist/docs/api/index/functions/createTransformComponent.md +28 -0
  141. package/dist/docs/api/index/functions/createVideoComponent.md +28 -0
  142. package/dist/docs/api/index/functions/hydrateWorldFromSnapshot.md +28 -0
  143. package/dist/docs/api/index/functions/hydrateWorldFromSnapshotDetailed.md +28 -0
  144. package/dist/docs/api/index/functions/registerDefaultComponentFactories.md +23 -0
  145. package/dist/docs/api/index/functions/registerDefaultFactories.md +23 -0
  146. package/dist/docs/api/index/index.md +249 -0
  147. package/dist/docs/api/index/interfaces/EcsSystem.md +50 -0
  148. package/dist/docs/api/index/interfaces/StateMachine.md +26 -0
  149. package/dist/docs/api/index/type-aliases/AnimationStateCallbacks.md +25 -0
  150. package/dist/docs/api/index/type-aliases/ComponentFactory.md +25 -0
  151. package/dist/docs/api/index/type-aliases/EcsComponentFactoryKind.md +37 -0
  152. package/dist/docs/api/index/type-aliases/EcsWorldComponentSnapshot.md +26 -0
  153. package/dist/docs/api/index/type-aliases/EcsWorldStateSnapshotLike.md +25 -0
  154. package/dist/docs/api/index/type-aliases/HydrateWorldFromSnapshotResult.md +23 -0
  155. package/dist/docs/api/index/type-aliases/KeyboardKey.md +13 -0
  156. package/dist/docs/api/index/type-aliases/MouseButton.md +13 -0
  157. package/dist/docs/api/index/type-aliases/SelectionContext.md +31 -0
  158. package/dist/docs/api/index/variables/HYDRATABLE_ENTITY_KINDS.md +13 -0
  159. package/dist/docs/api/index/variables/KeyboardKeys.md +195 -0
  160. package/dist/docs/api/index.md +15 -0
  161. package/dist/docs/api/typedoc-sidebar.json +1 -0
  162. package/dist/docs/api/types/index.md +34 -0
  163. package/dist/docs/api/types/type-aliases/AssetInput.md +23 -0
  164. package/dist/docs/api/types/type-aliases/CheckboxInput.md +13 -0
  165. package/dist/docs/api/types/type-aliases/ColorInput.md +13 -0
  166. package/dist/docs/api/types/type-aliases/ComponentInput.md +52 -0
  167. package/dist/docs/api/types/type-aliases/ComponentKind.md +37 -0
  168. package/dist/docs/api/types/type-aliases/DropdownInput.md +23 -0
  169. package/dist/docs/api/types/type-aliases/DropdownOption.md +23 -0
  170. package/dist/docs/api/types/type-aliases/EcsEntityEditorKind.md +15 -0
  171. package/dist/docs/api/types/type-aliases/EcsEntityKind.md +35 -0
  172. package/dist/docs/api/types/type-aliases/EntityId.md +16 -0
  173. package/dist/docs/api/types/type-aliases/EntityInput.md +23 -0
  174. package/dist/docs/api/types/type-aliases/FloatInput.md +13 -0
  175. package/dist/docs/api/types/type-aliases/IntersectionResult.md +29 -0
  176. package/dist/docs/api/types/type-aliases/ParentLookup.md +26 -0
  177. package/dist/docs/api/types/type-aliases/SelectionListener.md +25 -0
  178. package/dist/docs/api/types/type-aliases/SliderInput.md +27 -0
  179. package/dist/docs/api/types/type-aliases/TextInput.md +13 -0
  180. package/dist/docs/api/types/type-aliases/ToggleInput.md +13 -0
  181. package/dist/docs/api/types/type-aliases/Vec3.md +23 -0
  182. package/dist/docs/api/types/type-aliases/Vector2Input.md +23 -0
  183. package/dist/docs/api/types/type-aliases/Vector3Input.md +25 -0
  184. package/dist/docs/api/types/type-aliases/WorldEntityView.md +17 -0
  185. package/dist/docs/guide/accessing-components.md +399 -0
  186. package/dist/docs/guide/authoring-a-behaviour.md +166 -0
  187. package/dist/docs/guide/behaviour-lifecycle.md +43 -0
  188. package/dist/docs/guide/component-catalog.md +59 -0
  189. package/dist/docs/guide/components/_sidebar.json +78 -0
  190. package/dist/docs/guide/components/animation.md +171 -0
  191. package/dist/docs/guide/components/audio.md +181 -0
  192. package/dist/docs/guide/components/camera.md +179 -0
  193. package/dist/docs/guide/components/entity-type.md +141 -0
  194. package/dist/docs/guide/components/image-target-anchor.md +103 -0
  195. package/dist/docs/guide/components/image-target.md +122 -0
  196. package/dist/docs/guide/components/image.md +146 -0
  197. package/dist/docs/guide/components/light.md +157 -0
  198. package/dist/docs/guide/components/material.md +161 -0
  199. package/dist/docs/guide/components/mesh-geometry.md +153 -0
  200. package/dist/docs/guide/components/mesh.md +151 -0
  201. package/dist/docs/guide/components/model.md +96 -0
  202. package/dist/docs/guide/components/name.md +121 -0
  203. package/dist/docs/guide/components/object3d-ref.md +115 -0
  204. package/dist/docs/guide/components/parent-id.md +108 -0
  205. package/dist/docs/guide/components/physics.md +163 -0
  206. package/dist/docs/guide/components/script.md +142 -0
  207. package/dist/docs/guide/components/sprite.md +155 -0
  208. package/dist/docs/guide/components/transform.md +155 -0
  209. package/dist/docs/guide/components/video.md +153 -0
  210. package/dist/docs/guide/concepts.md +34 -0
  211. package/dist/docs/guide/getting-started/creating-objects.md +50 -0
  212. package/dist/docs/guide/getting-started/editing-objects.md +62 -0
  213. package/dist/docs/guide/getting-started/editor/assets-browser.md +55 -0
  214. package/dist/docs/guide/getting-started/editor/hierarchy.md +47 -0
  215. package/dist/docs/guide/getting-started/editor/index.md +16 -0
  216. package/dist/docs/guide/getting-started/editor/inspector.md +36 -0
  217. package/dist/docs/guide/getting-started/editor/modules.md +35 -0
  218. package/dist/docs/guide/getting-started/editor/scene-inspector.md +64 -0
  219. package/dist/docs/guide/getting-started/editor/toolbar.md +39 -0
  220. package/dist/docs/guide/getting-started/editor/viewport.md +43 -0
  221. package/dist/docs/guide/getting-started/first-launch.md +17 -0
  222. package/dist/docs/guide/getting-started/index.md +37 -0
  223. package/dist/docs/guide/getting-started/installation.md +59 -0
  224. package/dist/docs/guide/getting-started/preview-and-test.md +55 -0
  225. package/dist/docs/guide/getting-started/project-types/3d.md +30 -0
  226. package/dist/docs/guide/getting-started/project-types/ar.md +6 -0
  227. package/dist/docs/guide/getting-started/project-types/face-tracking.md +6 -0
  228. package/dist/docs/guide/getting-started/project-types/image-tracking.md +42 -0
  229. package/dist/docs/guide/getting-started/project-types/index.md +25 -0
  230. package/dist/docs/guide/getting-started/project-types/vr.md +6 -0
  231. package/dist/docs/guide/getting-started/projects.md +53 -0
  232. package/dist/docs/guide/getting-started/shortcuts.md +43 -0
  233. package/dist/docs/guide/inspector-data-binding.md +367 -0
  234. package/dist/docs/guide/reading-input.md +202 -0
  235. package/dist/docs/guide/scene/environment.md +101 -0
  236. package/dist/docs/guide/scene/index.md +36 -0
  237. package/dist/docs/guide/scene/postprocessing.md +108 -0
  238. package/dist/docs/guide/spawning/ambient-light.md +28 -0
  239. package/dist/docs/guide/spawning/area-light.md +32 -0
  240. package/dist/docs/guide/spawning/audio.md +42 -0
  241. package/dist/docs/guide/spawning/camera.md +50 -0
  242. package/dist/docs/guide/spawning/capsule.md +29 -0
  243. package/dist/docs/guide/spawning/cube.md +31 -0
  244. package/dist/docs/guide/spawning/cylinder.md +29 -0
  245. package/dist/docs/guide/spawning/directional-light.md +32 -0
  246. package/dist/docs/guide/spawning/empty.md +31 -0
  247. package/dist/docs/guide/spawning/image-target.md +48 -0
  248. package/dist/docs/guide/spawning/image.md +33 -0
  249. package/dist/docs/guide/spawning/index.md +79 -0
  250. package/dist/docs/guide/spawning/model.md +31 -0
  251. package/dist/docs/guide/spawning/plane.md +31 -0
  252. package/dist/docs/guide/spawning/point-light.md +32 -0
  253. package/dist/docs/guide/spawning/sphere.md +29 -0
  254. package/dist/docs/guide/spawning/spot-light.md +32 -0
  255. package/dist/docs/guide/spawning/sprite.md +31 -0
  256. package/dist/docs/guide/spawning/video.md +53 -0
  257. package/dist/docs/guide/system-overview.md +73 -0
  258. package/dist/docs/guide/systems/_sidebar.json +66 -0
  259. package/dist/docs/guide/systems/animation-system.md +32 -0
  260. package/dist/docs/guide/systems/audio-system.md +28 -0
  261. package/dist/docs/guide/systems/camera-sync-system.md +31 -0
  262. package/dist/docs/guide/systems/environment-sync-system.md +31 -0
  263. package/dist/docs/guide/systems/input-system.md +217 -0
  264. package/dist/docs/guide/systems/light-sync-system.md +29 -0
  265. package/dist/docs/guide/systems/material-sync-system.md +32 -0
  266. package/dist/docs/guide/systems/mesh-geometry-system.md +40 -0
  267. package/dist/docs/guide/systems/object-management-system.md +38 -0
  268. package/dist/docs/guide/systems/object-visibility-system.md +26 -0
  269. package/dist/docs/guide/systems/physics-sync-system.md +56 -0
  270. package/dist/docs/guide/systems/postprocessing-sync-system.md +43 -0
  271. package/dist/docs/guide/systems/render-system.md +22 -0
  272. package/dist/docs/guide/systems/script-behaviour-system.md +59 -0
  273. package/dist/docs/guide/systems/transform-sync-system.md +29 -0
  274. package/dist/docs/guide/systems/video-system.md +30 -0
  275. package/dist/docs/guide/world-api.md +405 -0
  276. package/dist/factories/index.cjs +3077 -0
  277. package/dist/factories/index.cjs.map +1 -0
  278. package/dist/factories/index.d.cts +69 -0
  279. package/dist/factories/index.d.ts +69 -0
  280. package/dist/factories/index.js +6 -0
  281. package/dist/factories/index.js.map +1 -0
  282. package/dist/index-B4-YyUNR.d.cts +73 -0
  283. package/dist/index-BZUOKeTO.d.ts +73 -0
  284. package/dist/index.cjs +8584 -0
  285. package/dist/index.cjs.map +1 -0
  286. package/dist/index.d.cts +283 -0
  287. package/dist/index.d.ts +283 -0
  288. package/dist/index.js +1729 -0
  289. package/dist/index.js.map +1 -0
  290. package/dist/systems/index.cjs +5119 -0
  291. package/dist/systems/index.cjs.map +1 -0
  292. package/dist/systems/index.d.cts +200 -0
  293. package/dist/systems/index.d.ts +200 -0
  294. package/dist/systems/index.js +6 -0
  295. package/dist/systems/index.js.map +1 -0
  296. package/dist/types.cjs +4 -0
  297. package/dist/types.cjs.map +1 -0
  298. package/dist/types.d.cts +3 -0
  299. package/dist/types.d.ts +3 -0
  300. package/dist/types.js +3 -0
  301. package/dist/types.js.map +1 -0
  302. package/dist/worldSnapshotUtils.cjs +259 -0
  303. package/dist/worldSnapshotUtils.cjs.map +1 -0
  304. package/dist/worldSnapshotUtils.d.cts +3 -0
  305. package/dist/worldSnapshotUtils.d.ts +3 -0
  306. package/dist/worldSnapshotUtils.js +4 -0
  307. package/dist/worldSnapshotUtils.js.map +1 -0
  308. package/package.json +80 -0
@@ -0,0 +1,200 @@
1
+ import { E as EcsSystem, b as World } from '../System-rXAmagXA.cjs';
2
+ export { h as ComponentFactory, l as EcsComponentFactoryKind, I as InputSystem, K as KeyboardKey, q as KeyboardKeys, M as MouseButton, O as ObjectManagementSystem, R as RenderSystem, u as TransformSyncSystem } from '../System-rXAmagXA.cjs';
3
+ import * as THREE from 'three';
4
+ import '@dimforge/rapier3d-compat';
5
+
6
+ declare class AnimationSystem implements EcsSystem {
7
+ private readonly runtimeByEntity;
8
+ private readonly gltfLoader;
9
+ private readonly fbxLoader;
10
+ private loadClipsFromSource;
11
+ private refreshExternalClipSources;
12
+ private release;
13
+ update(world: World, deltaTime: number): void;
14
+ dispose(): void;
15
+ }
16
+
17
+ declare class CameraSyncSystem implements EcsSystem {
18
+ private readonly signatures;
19
+ update(world: World): void;
20
+ }
21
+
22
+ declare class ObjectVisibilitySystem implements EcsSystem {
23
+ update(world: World): void;
24
+ }
25
+
26
+ declare class EnvironmentSyncSystem implements EcsSystem {
27
+ private readonly scene;
28
+ private readonly textureLoader;
29
+ private signature;
30
+ private activeTexture;
31
+ private pendingImageUrl;
32
+ constructor(scene: THREE.Scene);
33
+ private disposeActiveTexture;
34
+ private applySkybox;
35
+ private applyFog;
36
+ update(world: World): void;
37
+ dispose(): void;
38
+ }
39
+
40
+ declare class PostprocessingSyncSystem implements EcsSystem {
41
+ private readonly renderer;
42
+ private readonly scene;
43
+ private readonly camera;
44
+ private signature;
45
+ private composer;
46
+ private composerEnabled;
47
+ constructor(renderer: THREE.WebGLRenderer, scene: THREE.Scene, camera: THREE.PerspectiveCamera);
48
+ private setComposerEnabled;
49
+ private disposeComposer;
50
+ private buildComposer;
51
+ update(world: World): void;
52
+ dispose(): void;
53
+ }
54
+
55
+ declare class PhysicsSyncSystem implements EcsSystem {
56
+ private readonly rigidBodyHandles;
57
+ private readonly colliderHandles;
58
+ private readonly rigidBodySignatures;
59
+ private readonly colliderSignatures;
60
+ private readonly isEditorMode;
61
+ private rapier;
62
+ private isBootstrappingWorld;
63
+ private accumulator;
64
+ constructor(options?: {
65
+ isEditor?: boolean;
66
+ });
67
+ private ensurePhysicsWorld;
68
+ private removeEntityPhysics;
69
+ update(world: World, deltaTime: number): void;
70
+ dispose(world: World): void;
71
+ }
72
+
73
+ declare class LightSyncSystem implements EcsSystem {
74
+ private readonly signatures;
75
+ update(world: World): void;
76
+ }
77
+
78
+ declare class MaterialSyncSystem implements EcsSystem {
79
+ private readonly signatures;
80
+ private readonly textureCache;
81
+ update(world: World): void;
82
+ dispose(): void;
83
+ }
84
+
85
+ declare class MeshGeometrySystem implements EcsSystem {
86
+ private readonly geometrySignatures;
87
+ private readonly shadowSignatures;
88
+ update(world: World): void;
89
+ }
90
+
91
+ type ModuleLoader = (scriptUrl: string) => Promise<Record<string, unknown>>;
92
+ /**
93
+ * Optional context that enables raycast-based onSelect / onDeselect dispatch.
94
+ * When provided, pointer/touch taps on the canvas fire a raycast against the
95
+ * scene. If the hit object (or any ancestor) carries userData.entityId, every
96
+ * Behaviour instance for that entity receives onSelect(); the previously
97
+ * selected entity's instances receive onDeselect().
98
+ */
99
+ type SelectionContext = {
100
+ camera: THREE.Camera;
101
+ scene: THREE.Scene;
102
+ domElement: HTMLElement;
103
+ };
104
+ declare class ScriptBehaviourSystem implements EcsSystem {
105
+ private instances;
106
+ private loading;
107
+ private readonly moduleLoader;
108
+ private readonly selectionCtx;
109
+ private readonly raycaster;
110
+ private readonly ndcPointer;
111
+ private selectedEntityId;
112
+ private pendingEntityId;
113
+ private pointerDownPos;
114
+ private static readonly CLICK_THRESHOLD;
115
+ constructor(moduleLoader?: ModuleLoader, selectionContext?: SelectionContext);
116
+ /** Walk up the object hierarchy to find the nearest userData.entityId. */
117
+ private resolveEntityId;
118
+ /** Convert client (screen) coordinates to normalised device coordinates. */
119
+ private toNdc;
120
+ /** Fire raycast and queue the result to be dispatched in the next update(). */
121
+ private queueRaycast;
122
+ private onPointerDown;
123
+ private onPointerUp;
124
+ /**
125
+ * Apply a queued selection change.
126
+ * Calls onDeselect() on all behaviours of the previous entity and
127
+ * onSelect() on all behaviours of the newly selected entity.
128
+ */
129
+ private applySelection;
130
+ update(world: World, deltaTime: number): void;
131
+ dispose(world: World): void;
132
+ private loadBehaviour;
133
+ }
134
+
135
+ /**
136
+ * Reconciles `AudioComponent` state with the underlying THREE.js audio objects
137
+ * each frame.
138
+ *
139
+ * **Playback** — drives `play()`, `pause()`, and `stop()` on the THREE.js
140
+ * audio node based on the `isPlaying` / `isPaused` flags set by
141
+ * `AudioComponent.play()`, `.pause()`, and `.stop()`.
142
+ *
143
+ * **Option sync** — detects changes to `loop`, `pitch`, `volume`,
144
+ * `refDistance`, `distanceModel`, and `rolloffFactor` and applies them live.
145
+ * Changes take effect on the next frame, so scripts and inspector edits during
146
+ * runtime are reflected without reloading the scene.
147
+ *
148
+ * Only active in **preview** mode (`isEditor: true` makes every update a
149
+ * no-op so the editor is unaffected).
150
+ *
151
+ * @category Systems
152
+ */
153
+ declare class AudioSystem implements EcsSystem {
154
+ private readonly isEditor;
155
+ /** THREE.js `isPlaying` state captured at the end of the previous frame. */
156
+ private readonly prevPlayingState;
157
+ /** Snapshot of options applied in the previous frame, for change detection. */
158
+ private readonly prevOptions;
159
+ constructor({ isEditor }?: {
160
+ isEditor?: boolean;
161
+ });
162
+ update(world: World, _deltaTime: number): void;
163
+ /** Apply any changed options from the component to the THREE.js audio node. */
164
+ private _syncOptions;
165
+ dispose(_world: World): void;
166
+ }
167
+
168
+ /**
169
+ * Reconciles `VideoComponent` state with the underlying HTML video element
170
+ * and THREE.js mesh/material each frame.
171
+ *
172
+ * **Playback** — drives `play()`, `pause()`, and stop (pause + seek to 0) on
173
+ * the HTML `<video>` element based on the `isPlaying` / `isPaused` flags set
174
+ * by `VideoComponent.play()`, `.pause()`, and `.stop()`.
175
+ *
176
+ * **Option sync** — detects changes to `loop`, `volume`, `width`, `height`,
177
+ * and green-screen shader uniforms (`backgroundColor`, `similarity`,
178
+ * `smoothness`, `spill`) and applies them live without a scene reload.
179
+ *
180
+ * Only active in **preview** mode (`isEditor: true` makes every update a
181
+ * no-op so the editor is unaffected).
182
+ *
183
+ * @category Systems
184
+ */
185
+ declare class VideoSystem implements EcsSystem {
186
+ private readonly isEditor;
187
+ /** Playback intent captured at the end of the previous frame. */
188
+ private readonly prevIntent;
189
+ /** Snapshot of options applied in the previous frame, for change detection. */
190
+ private readonly prevOptions;
191
+ constructor({ isEditor }?: {
192
+ isEditor?: boolean;
193
+ });
194
+ update(world: World, _deltaTime: number): void;
195
+ /** Apply any changed options from the component to the video element and mesh. */
196
+ private _syncOptions;
197
+ dispose(_world: World): void;
198
+ }
199
+
200
+ export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, ScriptBehaviourSystem, type SelectionContext, VideoSystem };
@@ -0,0 +1,200 @@
1
+ import { E as EcsSystem, b as World } from '../System-rXAmagXA.js';
2
+ export { h as ComponentFactory, l as EcsComponentFactoryKind, I as InputSystem, K as KeyboardKey, q as KeyboardKeys, M as MouseButton, O as ObjectManagementSystem, R as RenderSystem, u as TransformSyncSystem } from '../System-rXAmagXA.js';
3
+ import * as THREE from 'three';
4
+ import '@dimforge/rapier3d-compat';
5
+
6
+ declare class AnimationSystem implements EcsSystem {
7
+ private readonly runtimeByEntity;
8
+ private readonly gltfLoader;
9
+ private readonly fbxLoader;
10
+ private loadClipsFromSource;
11
+ private refreshExternalClipSources;
12
+ private release;
13
+ update(world: World, deltaTime: number): void;
14
+ dispose(): void;
15
+ }
16
+
17
+ declare class CameraSyncSystem implements EcsSystem {
18
+ private readonly signatures;
19
+ update(world: World): void;
20
+ }
21
+
22
+ declare class ObjectVisibilitySystem implements EcsSystem {
23
+ update(world: World): void;
24
+ }
25
+
26
+ declare class EnvironmentSyncSystem implements EcsSystem {
27
+ private readonly scene;
28
+ private readonly textureLoader;
29
+ private signature;
30
+ private activeTexture;
31
+ private pendingImageUrl;
32
+ constructor(scene: THREE.Scene);
33
+ private disposeActiveTexture;
34
+ private applySkybox;
35
+ private applyFog;
36
+ update(world: World): void;
37
+ dispose(): void;
38
+ }
39
+
40
+ declare class PostprocessingSyncSystem implements EcsSystem {
41
+ private readonly renderer;
42
+ private readonly scene;
43
+ private readonly camera;
44
+ private signature;
45
+ private composer;
46
+ private composerEnabled;
47
+ constructor(renderer: THREE.WebGLRenderer, scene: THREE.Scene, camera: THREE.PerspectiveCamera);
48
+ private setComposerEnabled;
49
+ private disposeComposer;
50
+ private buildComposer;
51
+ update(world: World): void;
52
+ dispose(): void;
53
+ }
54
+
55
+ declare class PhysicsSyncSystem implements EcsSystem {
56
+ private readonly rigidBodyHandles;
57
+ private readonly colliderHandles;
58
+ private readonly rigidBodySignatures;
59
+ private readonly colliderSignatures;
60
+ private readonly isEditorMode;
61
+ private rapier;
62
+ private isBootstrappingWorld;
63
+ private accumulator;
64
+ constructor(options?: {
65
+ isEditor?: boolean;
66
+ });
67
+ private ensurePhysicsWorld;
68
+ private removeEntityPhysics;
69
+ update(world: World, deltaTime: number): void;
70
+ dispose(world: World): void;
71
+ }
72
+
73
+ declare class LightSyncSystem implements EcsSystem {
74
+ private readonly signatures;
75
+ update(world: World): void;
76
+ }
77
+
78
+ declare class MaterialSyncSystem implements EcsSystem {
79
+ private readonly signatures;
80
+ private readonly textureCache;
81
+ update(world: World): void;
82
+ dispose(): void;
83
+ }
84
+
85
+ declare class MeshGeometrySystem implements EcsSystem {
86
+ private readonly geometrySignatures;
87
+ private readonly shadowSignatures;
88
+ update(world: World): void;
89
+ }
90
+
91
+ type ModuleLoader = (scriptUrl: string) => Promise<Record<string, unknown>>;
92
+ /**
93
+ * Optional context that enables raycast-based onSelect / onDeselect dispatch.
94
+ * When provided, pointer/touch taps on the canvas fire a raycast against the
95
+ * scene. If the hit object (or any ancestor) carries userData.entityId, every
96
+ * Behaviour instance for that entity receives onSelect(); the previously
97
+ * selected entity's instances receive onDeselect().
98
+ */
99
+ type SelectionContext = {
100
+ camera: THREE.Camera;
101
+ scene: THREE.Scene;
102
+ domElement: HTMLElement;
103
+ };
104
+ declare class ScriptBehaviourSystem implements EcsSystem {
105
+ private instances;
106
+ private loading;
107
+ private readonly moduleLoader;
108
+ private readonly selectionCtx;
109
+ private readonly raycaster;
110
+ private readonly ndcPointer;
111
+ private selectedEntityId;
112
+ private pendingEntityId;
113
+ private pointerDownPos;
114
+ private static readonly CLICK_THRESHOLD;
115
+ constructor(moduleLoader?: ModuleLoader, selectionContext?: SelectionContext);
116
+ /** Walk up the object hierarchy to find the nearest userData.entityId. */
117
+ private resolveEntityId;
118
+ /** Convert client (screen) coordinates to normalised device coordinates. */
119
+ private toNdc;
120
+ /** Fire raycast and queue the result to be dispatched in the next update(). */
121
+ private queueRaycast;
122
+ private onPointerDown;
123
+ private onPointerUp;
124
+ /**
125
+ * Apply a queued selection change.
126
+ * Calls onDeselect() on all behaviours of the previous entity and
127
+ * onSelect() on all behaviours of the newly selected entity.
128
+ */
129
+ private applySelection;
130
+ update(world: World, deltaTime: number): void;
131
+ dispose(world: World): void;
132
+ private loadBehaviour;
133
+ }
134
+
135
+ /**
136
+ * Reconciles `AudioComponent` state with the underlying THREE.js audio objects
137
+ * each frame.
138
+ *
139
+ * **Playback** — drives `play()`, `pause()`, and `stop()` on the THREE.js
140
+ * audio node based on the `isPlaying` / `isPaused` flags set by
141
+ * `AudioComponent.play()`, `.pause()`, and `.stop()`.
142
+ *
143
+ * **Option sync** — detects changes to `loop`, `pitch`, `volume`,
144
+ * `refDistance`, `distanceModel`, and `rolloffFactor` and applies them live.
145
+ * Changes take effect on the next frame, so scripts and inspector edits during
146
+ * runtime are reflected without reloading the scene.
147
+ *
148
+ * Only active in **preview** mode (`isEditor: true` makes every update a
149
+ * no-op so the editor is unaffected).
150
+ *
151
+ * @category Systems
152
+ */
153
+ declare class AudioSystem implements EcsSystem {
154
+ private readonly isEditor;
155
+ /** THREE.js `isPlaying` state captured at the end of the previous frame. */
156
+ private readonly prevPlayingState;
157
+ /** Snapshot of options applied in the previous frame, for change detection. */
158
+ private readonly prevOptions;
159
+ constructor({ isEditor }?: {
160
+ isEditor?: boolean;
161
+ });
162
+ update(world: World, _deltaTime: number): void;
163
+ /** Apply any changed options from the component to the THREE.js audio node. */
164
+ private _syncOptions;
165
+ dispose(_world: World): void;
166
+ }
167
+
168
+ /**
169
+ * Reconciles `VideoComponent` state with the underlying HTML video element
170
+ * and THREE.js mesh/material each frame.
171
+ *
172
+ * **Playback** — drives `play()`, `pause()`, and stop (pause + seek to 0) on
173
+ * the HTML `<video>` element based on the `isPlaying` / `isPaused` flags set
174
+ * by `VideoComponent.play()`, `.pause()`, and `.stop()`.
175
+ *
176
+ * **Option sync** — detects changes to `loop`, `volume`, `width`, `height`,
177
+ * and green-screen shader uniforms (`backgroundColor`, `similarity`,
178
+ * `smoothness`, `spill`) and applies them live without a scene reload.
179
+ *
180
+ * Only active in **preview** mode (`isEditor: true` makes every update a
181
+ * no-op so the editor is unaffected).
182
+ *
183
+ * @category Systems
184
+ */
185
+ declare class VideoSystem implements EcsSystem {
186
+ private readonly isEditor;
187
+ /** Playback intent captured at the end of the previous frame. */
188
+ private readonly prevIntent;
189
+ /** Snapshot of options applied in the previous frame, for change detection. */
190
+ private readonly prevOptions;
191
+ constructor({ isEditor }?: {
192
+ isEditor?: boolean;
193
+ });
194
+ update(world: World, _deltaTime: number): void;
195
+ /** Apply any changed options from the component to the video element and mesh. */
196
+ private _syncOptions;
197
+ dispose(_world: World): void;
198
+ }
199
+
200
+ export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, ScriptBehaviourSystem, type SelectionContext, VideoSystem };
@@ -0,0 +1,6 @@
1
+ export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, InputSystem, KeyboardKeys, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, RenderSystem, ScriptBehaviourSystem, TransformSyncSystem, VideoSystem } from '../chunk-P2YDX5DB.js';
2
+ export { ObjectManagementSystem } from '../chunk-AYEF3X2P.js';
3
+ import '../chunk-MAWBTMCG.js';
4
+ import '../chunk-OY7ZODZP.js';
5
+ //# sourceMappingURL=index.js.map
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
package/dist/types.cjs ADDED
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ //# sourceMappingURL=types.cjs.map
4
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"types.cjs"}
@@ -0,0 +1,3 @@
1
+ import 'three';
2
+ export { A as AssetInput, f as CheckboxInput, g as ColorInput, i as ComponentInput, j as ComponentKind, D as DropdownInput, k as DropdownOption, m as EcsEntityEditorKind, e as EcsEntityKind, n as EntityId, o as EntityInput, F as FloatInput, p as IntersectionResult, d as ParentLookup, S as SelectionListener, r as SliderInput, s as TextInput, t as ToggleInput, v as Vec3, w as Vector2Input, x as Vector3Input, W as WorldEntityView } from './System-rXAmagXA.cjs';
3
+ import '@dimforge/rapier3d-compat';
@@ -0,0 +1,3 @@
1
+ import 'three';
2
+ export { A as AssetInput, f as CheckboxInput, g as ColorInput, i as ComponentInput, j as ComponentKind, D as DropdownInput, k as DropdownOption, m as EcsEntityEditorKind, e as EcsEntityKind, n as EntityId, o as EntityInput, F as FloatInput, p as IntersectionResult, d as ParentLookup, S as SelectionListener, r as SliderInput, s as TextInput, t as ToggleInput, v as Vec3, w as Vector2Input, x as Vector3Input, W as WorldEntityView } from './System-rXAmagXA.js';
3
+ import '@dimforge/rapier3d-compat';
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ import './chunk-QHILSPT4.js';
2
+ //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}