@relu-interactives/spatial-ecs 0.2.11 → 0.2.12

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 (197) hide show
  1. package/dist/{System-KTHuWc-i.d.cts → System-CHCucemW.d.cts} +23 -1
  2. package/dist/{System-KTHuWc-i.d.ts → System-CHCucemW.d.ts} +23 -1
  3. package/dist/{Video-BnrYbbzu.d.cts → Video-ACTSfWjH.d.cts} +1 -1
  4. package/dist/{Video-Ds_0Aj66.d.ts → Video-B9ZKmBIT.d.ts} +1 -1
  5. package/dist/{chunk-UU6VYCIO.js → chunk-ON4E5E5O.js} +3 -3
  6. package/dist/{chunk-UU6VYCIO.js.map → chunk-ON4E5E5O.js.map} +1 -1
  7. package/dist/{chunk-OIOUWDOS.js → chunk-PH43YHUT.js} +39 -3
  8. package/dist/chunk-PH43YHUT.js.map +1 -0
  9. package/dist/{chunk-YLRCC4EK.js → chunk-ZCEMOTH4.js} +3 -3
  10. package/dist/{chunk-YLRCC4EK.js.map → chunk-ZCEMOTH4.js.map} +1 -1
  11. package/dist/components/index.d.cts +2 -2
  12. package/dist/components/index.d.ts +2 -2
  13. package/dist/docs/api/Behaviour/classes/Behaviour.md +29 -29
  14. package/dist/docs/api/Component/classes/Component.md +1 -1
  15. package/dist/docs/api/components/classes/AnimationComponent.md +26 -26
  16. package/dist/docs/api/components/classes/AudioComponent.md +19 -19
  17. package/dist/docs/api/components/classes/CameraComponent.md +14 -14
  18. package/dist/docs/api/components/classes/EntityType.md +3 -3
  19. package/dist/docs/api/components/classes/Environment.md +3 -3
  20. package/dist/docs/api/components/classes/ImageComponent.md +7 -7
  21. package/dist/docs/api/components/classes/ImageTarget.md +7 -7
  22. package/dist/docs/api/components/classes/ImageTargetAnchor.md +4 -4
  23. package/dist/docs/api/components/classes/InstanceSlotComponent.md +4 -4
  24. package/dist/docs/api/components/classes/InstancedMeshComponent.md +10 -10
  25. package/dist/docs/api/components/classes/LightComponent.md +6 -6
  26. package/dist/docs/api/components/classes/MaterialComponent.md +11 -11
  27. package/dist/docs/api/components/classes/MeshComponent.md +3 -3
  28. package/dist/docs/api/components/classes/MeshGeometryComponent.md +9 -9
  29. package/dist/docs/api/components/classes/ModelComponent.md +4 -4
  30. package/dist/docs/api/components/classes/Name.md +3 -3
  31. package/dist/docs/api/components/classes/Object3DRef.md +4 -4
  32. package/dist/docs/api/components/classes/ParentId.md +3 -3
  33. package/dist/docs/api/components/classes/PhysicsComponent.md +6 -6
  34. package/dist/docs/api/components/classes/Postprocessing.md +3 -3
  35. package/dist/docs/api/components/classes/ScriptComponent.md +5 -5
  36. package/dist/docs/api/components/classes/Selectable.md +3 -3
  37. package/dist/docs/api/components/classes/SelectionTransformState.md +5 -5
  38. package/dist/docs/api/components/classes/SpriteComponent.md +7 -7
  39. package/dist/docs/api/components/classes/TransformComponent.md +12 -12
  40. package/dist/docs/api/components/classes/VideoComponent.md +28 -28
  41. package/dist/docs/api/components/functions/normalizePhysicsState.md +1 -1
  42. package/dist/docs/api/components/type-aliases/AnimationComponentOptions.md +9 -9
  43. package/dist/docs/api/components/type-aliases/CameraComponentOptions.md +13 -13
  44. package/dist/docs/api/components/type-aliases/CameraProjection.md +1 -1
  45. package/dist/docs/api/components/type-aliases/CameraRuntimeType.md +1 -1
  46. package/dist/docs/api/components/type-aliases/ColliderShape.md +1 -1
  47. package/dist/docs/api/components/type-aliases/ColliderState.md +20 -20
  48. package/dist/docs/api/components/type-aliases/CubeMeshParameters.md +4 -4
  49. package/dist/docs/api/components/type-aliases/EditableMeshObjectKind.md +1 -1
  50. package/dist/docs/api/components/type-aliases/EnvironmentFogState.md +8 -8
  51. package/dist/docs/api/components/type-aliases/EnvironmentFogType.md +1 -1
  52. package/dist/docs/api/components/type-aliases/EnvironmentGradientEffect.md +1 -1
  53. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxState.md +7 -7
  54. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxType.md +1 -1
  55. package/dist/docs/api/components/type-aliases/EnvironmentState.md +5 -5
  56. package/dist/docs/api/components/type-aliases/ImageTargetAnchorOptions.md +3 -3
  57. package/dist/docs/api/components/type-aliases/ImageTargetReference.md +7 -7
  58. package/dist/docs/api/components/type-aliases/InstanceTransform.md +13 -13
  59. package/dist/docs/api/components/type-aliases/InstancedMeshKind.md +1 -1
  60. package/dist/docs/api/components/type-aliases/LightValueState.md +11 -11
  61. package/dist/docs/api/components/type-aliases/MaterialTypeValue.md +1 -1
  62. package/dist/docs/api/components/type-aliases/MaterialValueState.md +28 -28
  63. package/dist/docs/api/components/type-aliases/MeshGeometryParameters.md +1 -1
  64. package/dist/docs/api/components/type-aliases/MeshGeometryParametersByKind.md +7 -7
  65. package/dist/docs/api/components/type-aliases/PhysicsState.md +3 -3
  66. package/dist/docs/api/components/type-aliases/PlaneMeshParameters.md +3 -3
  67. package/dist/docs/api/components/type-aliases/PostprocessingState.md +62 -62
  68. package/dist/docs/api/components/type-aliases/RadiusHeightMeshParameters.md +3 -3
  69. package/dist/docs/api/components/type-aliases/RadiusMeshParameters.md +2 -2
  70. package/dist/docs/api/components/type-aliases/RigidbodyState.md +17 -17
  71. package/dist/docs/api/components/type-aliases/RigidbodyType.md +1 -1
  72. package/dist/docs/api/components/type-aliases/ScriptEntry.md +9 -9
  73. package/dist/docs/api/components/type-aliases/TextureFilteringValue.md +1 -1
  74. package/dist/docs/api/components/type-aliases/TransformData.md +4 -4
  75. package/dist/docs/api/components/type-aliases/TransformModeValue.md +1 -1
  76. package/dist/docs/api/components/type-aliases/TransformSpaceValue.md +1 -1
  77. package/dist/docs/api/components/type-aliases/Vec3.md +4 -4
  78. package/dist/docs/api/components/variables/DEFAULT_COLLIDER_STATE.md +1 -1
  79. package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_STATE.md +1 -1
  80. package/dist/docs/api/components/variables/DEFAULT_INSTANCED_MESH_PARAMETERS.md +1 -1
  81. package/dist/docs/api/components/variables/DEFAULT_INSTANCE_TRANSFORM.md +1 -1
  82. package/dist/docs/api/components/variables/DEFAULT_MESH_GEOMETRY_PARAMETERS.md +1 -1
  83. package/dist/docs/api/components/variables/DEFAULT_PHYSICS_STATE.md +1 -1
  84. package/dist/docs/api/components/variables/DEFAULT_POSTPROCESSING_STATE.md +1 -1
  85. package/dist/docs/api/components/variables/DEFAULT_RIGIDBODY_STATE.md +1 -1
  86. package/dist/docs/api/index/classes/AnimationStateMachine.md +16 -16
  87. package/dist/docs/api/index/classes/AnimationStateManager.md +13 -13
  88. package/dist/docs/api/index/classes/AnimationSystem.md +3 -3
  89. package/dist/docs/api/index/classes/AudioSystem.md +4 -4
  90. package/dist/docs/api/index/classes/CameraSyncSystem.md +2 -2
  91. package/dist/docs/api/index/classes/EnvironmentSyncSystem.md +4 -4
  92. package/dist/docs/api/index/classes/InputSystem.md +33 -33
  93. package/dist/docs/api/index/classes/InstancedMeshSystem.md +2 -2
  94. package/dist/docs/api/index/classes/LightSyncSystem.md +2 -2
  95. package/dist/docs/api/index/classes/MaterialSyncSystem.md +3 -3
  96. package/dist/docs/api/index/classes/MeshGeometrySystem.md +2 -2
  97. package/dist/docs/api/index/classes/ObjectManagementSystem.md +39 -19
  98. package/dist/docs/api/index/classes/ObjectVisibilitySystem.md +2 -2
  99. package/dist/docs/api/index/classes/PhysicsSyncSystem.md +4 -4
  100. package/dist/docs/api/index/classes/PostprocessingSyncSystem.md +4 -4
  101. package/dist/docs/api/index/classes/RenderSystem.md +3 -3
  102. package/dist/docs/api/index/classes/ScriptBehaviourSystem.md +4 -4
  103. package/dist/docs/api/index/classes/TransformSyncSystem.md +2 -2
  104. package/dist/docs/api/index/classes/VideoSystem.md +4 -4
  105. package/dist/docs/api/index/classes/World.md +82 -82
  106. package/dist/docs/api/index/functions/createAnimationComponent.md +1 -1
  107. package/dist/docs/api/index/functions/createAudioComponent.md +1 -1
  108. package/dist/docs/api/index/functions/createCameraComponent.md +1 -1
  109. package/dist/docs/api/index/functions/createEntityTypeComponent.md +1 -1
  110. package/dist/docs/api/index/functions/createEnvironmentComponent.md +1 -1
  111. package/dist/docs/api/index/functions/createImageComponent.md +1 -1
  112. package/dist/docs/api/index/functions/createImageTargetAnchorComponent.md +1 -1
  113. package/dist/docs/api/index/functions/createImageTargetComponent.md +1 -1
  114. package/dist/docs/api/index/functions/createInstanceSlotComponent.md +1 -1
  115. package/dist/docs/api/index/functions/createInstancedMeshComponent.md +1 -1
  116. package/dist/docs/api/index/functions/createLightComponent.md +1 -1
  117. package/dist/docs/api/index/functions/createMaterialComponent.md +1 -1
  118. package/dist/docs/api/index/functions/createMeshComponent.md +1 -1
  119. package/dist/docs/api/index/functions/createMeshGeometryComponent.md +1 -1
  120. package/dist/docs/api/index/functions/createModelComponent.md +1 -1
  121. package/dist/docs/api/index/functions/createNameComponent.md +1 -1
  122. package/dist/docs/api/index/functions/createObject3DRefComponent.md +1 -1
  123. package/dist/docs/api/index/functions/createParentIdComponent.md +1 -1
  124. package/dist/docs/api/index/functions/createPhysicsComponent.md +1 -1
  125. package/dist/docs/api/index/functions/createPostprocessingComponent.md +1 -1
  126. package/dist/docs/api/index/functions/createScriptComponent.md +1 -1
  127. package/dist/docs/api/index/functions/createSelectableComponent.md +1 -1
  128. package/dist/docs/api/index/functions/createSelectionTransformStateComponent.md +1 -1
  129. package/dist/docs/api/index/functions/createSpriteComponent.md +1 -1
  130. package/dist/docs/api/index/functions/createTransformComponent.md +1 -1
  131. package/dist/docs/api/index/functions/createVideoComponent.md +1 -1
  132. package/dist/docs/api/index/functions/hydrateWorldFromSnapshot.md +1 -1
  133. package/dist/docs/api/index/functions/hydrateWorldFromSnapshotDetailed.md +1 -1
  134. package/dist/docs/api/index/functions/registerDefaultComponentFactories.md +1 -1
  135. package/dist/docs/api/index/functions/registerDefaultFactories.md +1 -1
  136. package/dist/docs/api/index/interfaces/EcsSystem.md +3 -3
  137. package/dist/docs/api/index/interfaces/StateMachine.md +13 -13
  138. package/dist/docs/api/index/type-aliases/AnimationStateCallbacks.md +4 -4
  139. package/dist/docs/api/index/type-aliases/ComponentFactory.md +1 -1
  140. package/dist/docs/api/index/type-aliases/EcsComponentFactoryKind.md +1 -1
  141. package/dist/docs/api/index/type-aliases/EcsWorldComponentSnapshot.md +3 -3
  142. package/dist/docs/api/index/type-aliases/EcsWorldStateSnapshotLike.md +4 -4
  143. package/dist/docs/api/index/type-aliases/HydrateWorldFromSnapshotResult.md +3 -3
  144. package/dist/docs/api/index/type-aliases/KeyboardKey.md +1 -1
  145. package/dist/docs/api/index/type-aliases/MouseButton.md +1 -1
  146. package/dist/docs/api/index/type-aliases/SelectionContext.md +4 -4
  147. package/dist/docs/api/index/variables/HYDRATABLE_ENTITY_KINDS.md +1 -1
  148. package/dist/docs/api/index/variables/KeyboardKeys.md +89 -89
  149. package/dist/docs/api/types/type-aliases/AssetInput.md +3 -3
  150. package/dist/docs/api/types/type-aliases/CheckboxInput.md +1 -1
  151. package/dist/docs/api/types/type-aliases/ColorInput.md +1 -1
  152. package/dist/docs/api/types/type-aliases/ComponentInput.md +4 -4
  153. package/dist/docs/api/types/type-aliases/ComponentKind.md +1 -1
  154. package/dist/docs/api/types/type-aliases/DropdownInput.md +3 -3
  155. package/dist/docs/api/types/type-aliases/DropdownOption.md +3 -3
  156. package/dist/docs/api/types/type-aliases/EcsEntityEditorKind.md +1 -1
  157. package/dist/docs/api/types/type-aliases/EcsEntityKind.md +1 -1
  158. package/dist/docs/api/types/type-aliases/EntityId.md +1 -1
  159. package/dist/docs/api/types/type-aliases/EntityInput.md +3 -3
  160. package/dist/docs/api/types/type-aliases/FloatInput.md +1 -1
  161. package/dist/docs/api/types/type-aliases/IntersectionResult.md +3 -3
  162. package/dist/docs/api/types/type-aliases/ParentLookup.md +3 -3
  163. package/dist/docs/api/types/type-aliases/SelectionListener.md +1 -1
  164. package/dist/docs/api/types/type-aliases/SliderInput.md +5 -5
  165. package/dist/docs/api/types/type-aliases/TextInput.md +1 -1
  166. package/dist/docs/api/types/type-aliases/ToggleInput.md +1 -1
  167. package/dist/docs/api/types/type-aliases/Vec3.md +1 -1
  168. package/dist/docs/api/types/type-aliases/Vector2Input.md +3 -3
  169. package/dist/docs/api/types/type-aliases/Vector3Input.md +4 -4
  170. package/dist/docs/api/types/type-aliases/WorldEntityView.md +1 -1
  171. package/dist/docs/guide/component-catalog.md +2 -0
  172. package/dist/docs/guide/components/animation.md +40 -1
  173. package/dist/docs/guide/components/instanced-mesh.md +1 -4
  174. package/dist/docs/guide/spawning/audio.md +29 -7
  175. package/dist/docs/guide/systems/object-management-system.md +9 -0
  176. package/dist/factories/index.cjs.map +1 -1
  177. package/dist/factories/index.d.cts +2 -2
  178. package/dist/factories/index.d.ts +2 -2
  179. package/dist/factories/index.js +2 -2
  180. package/dist/{index-D-gUELQS.d.ts → index-B5JcGMJ5.d.ts} +2 -2
  181. package/dist/{index-ComEYKYI.d.cts → index-kx5O2mVU.d.cts} +2 -2
  182. package/dist/index.cjs +37 -1
  183. package/dist/index.cjs.map +1 -1
  184. package/dist/index.d.cts +5 -5
  185. package/dist/index.d.ts +5 -5
  186. package/dist/index.js +6 -6
  187. package/dist/systems/index.cjs +37 -1
  188. package/dist/systems/index.cjs.map +1 -1
  189. package/dist/systems/index.d.cts +2 -2
  190. package/dist/systems/index.d.ts +2 -2
  191. package/dist/systems/index.js +2 -2
  192. package/dist/types.d.cts +1 -1
  193. package/dist/types.d.ts +1 -1
  194. package/dist/worldSnapshotUtils.d.cts +1 -1
  195. package/dist/worldSnapshotUtils.d.ts +1 -1
  196. package/package.json +1 -1
  197. package/dist/chunk-OIOUWDOS.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, a1 as RigidbodyState, g as ColliderState, W as PhysicsComponent, w as EnvironmentState, q as Environment, p as EntityType, I as ImageComponent, y as ImageTargetAnchor, x as ImageTarget, L as LightComponent, M as MaterialComponent, P as MeshComponent, Q as MeshGeometryComponent, T as ModelComponent, U as Name, V as Object3DRef, _ as PostprocessingState, Z as Postprocessing, a4 as ScriptEntry, a3 as ScriptComponent, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, J as InstancedMeshKind, R as MeshGeometryParameters, H as InstancedMeshComponent, F as InstanceSlotComponent, ab as VideoComponent } from '../Video-BnrYbbzu.cjs';
2
- import { b as World, P as ParentId, T as TransformComponent, O as ObjectManagementSystem } from '../System-KTHuWc-i.cjs';
1
+ import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, a1 as RigidbodyState, g as ColliderState, W as PhysicsComponent, w as EnvironmentState, q as Environment, p as EntityType, I as ImageComponent, y as ImageTargetAnchor, x as ImageTarget, L as LightComponent, M as MaterialComponent, P as MeshComponent, Q as MeshGeometryComponent, T as ModelComponent, U as Name, V as Object3DRef, _ as PostprocessingState, Z as Postprocessing, a4 as ScriptEntry, a3 as ScriptComponent, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, J as InstancedMeshKind, R as MeshGeometryParameters, H as InstancedMeshComponent, F as InstanceSlotComponent, ab as VideoComponent } from '../Video-ACTSfWjH.cjs';
2
+ import { b as World, P as ParentId, T as TransformComponent, O as ObjectManagementSystem } from '../System-CHCucemW.cjs';
3
3
  import * as THREE from 'three';
4
4
  import '@dimforge/rapier3d-compat';
5
5
 
@@ -1,5 +1,5 @@
1
- import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, a1 as RigidbodyState, g as ColliderState, W as PhysicsComponent, w as EnvironmentState, q as Environment, p as EntityType, I as ImageComponent, y as ImageTargetAnchor, x as ImageTarget, L as LightComponent, M as MaterialComponent, P as MeshComponent, Q as MeshGeometryComponent, T as ModelComponent, U as Name, V as Object3DRef, _ as PostprocessingState, Z as Postprocessing, a4 as ScriptEntry, a3 as ScriptComponent, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, J as InstancedMeshKind, R as MeshGeometryParameters, H as InstancedMeshComponent, F as InstanceSlotComponent, ab as VideoComponent } from '../Video-Ds_0Aj66.js';
2
- import { b as World, P as ParentId, T as TransformComponent, O as ObjectManagementSystem } from '../System-KTHuWc-i.js';
1
+ import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, a1 as RigidbodyState, g as ColliderState, W as PhysicsComponent, w as EnvironmentState, q as Environment, p as EntityType, I as ImageComponent, y as ImageTargetAnchor, x as ImageTarget, L as LightComponent, M as MaterialComponent, P as MeshComponent, Q as MeshGeometryComponent, T as ModelComponent, U as Name, V as Object3DRef, _ as PostprocessingState, Z as Postprocessing, a4 as ScriptEntry, a3 as ScriptComponent, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, J as InstancedMeshKind, R as MeshGeometryParameters, H as InstancedMeshComponent, F as InstanceSlotComponent, ab as VideoComponent } from '../Video-B9ZKmBIT.js';
2
+ import { b as World, P as ParentId, T as TransformComponent, O as ObjectManagementSystem } from '../System-CHCucemW.js';
3
3
  import * as THREE from 'three';
4
4
  import '@dimforge/rapier3d-compat';
5
5
 
@@ -1,5 +1,5 @@
1
- export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstanceSlotComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from '../chunk-YLRCC4EK.js';
2
- import '../chunk-OIOUWDOS.js';
1
+ export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstanceSlotComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from '../chunk-ZCEMOTH4.js';
2
+ import '../chunk-PH43YHUT.js';
3
3
  import '../chunk-XPCVEXMY.js';
4
4
  import '../chunk-OY7ZODZP.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_ENVIRONMENT_STATE, j as DEFAULT_INSTANCED_MESH_PARAMETERS, k as DEFAULT_INSTANCE_TRANSFORM, l as DEFAULT_MESH_GEOMETRY_PARAMETERS, m as DEFAULT_PHYSICS_STATE, n as DEFAULT_POSTPROCESSING_STATE, o as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, p as EntityType, q as Environment, r as EnvironmentFogState, s as EnvironmentFogType, t as EnvironmentGradientEffect, u as EnvironmentSkyboxState, v as EnvironmentSkyboxType, w as EnvironmentState, I as ImageComponent, x as ImageTarget, y as ImageTargetAnchor, z as ImageTargetAnchorOptions, B as ImageTargetReference, F as InstanceSlotComponent, G as InstanceTransform, H as InstancedMeshComponent, J as InstancedMeshKind, L as LightComponent, K as LightValueState, M as MaterialComponent, N as MaterialTypeValue, O as MaterialValueState, P as MeshComponent, Q as MeshGeometryComponent, R as MeshGeometryParameters, S as MeshGeometryParametersByKind, T as ModelComponent, U as Name, V as Object3DRef, W as PhysicsComponent, X as PhysicsState, Y as PlaneMeshParameters, Z as Postprocessing, _ as PostprocessingState, $ as RadiusHeightMeshParameters, a0 as RadiusMeshParameters, a1 as RigidbodyState, a2 as RigidbodyType, a3 as ScriptComponent, a4 as ScriptEntry, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, a8 as TextureFilteringValue, a9 as TransformModeValue, aa as TransformSpaceValue, ab as VideoComponent, ac as normalizePhysicsState } from './Video-Ds_0Aj66.js';
2
- import { P as ParentId, T as TransformComponent, a as TransformData, V as Vec3 } from './System-KTHuWc-i.js';
1
+ import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_ENVIRONMENT_STATE, j as DEFAULT_INSTANCED_MESH_PARAMETERS, k as DEFAULT_INSTANCE_TRANSFORM, l as DEFAULT_MESH_GEOMETRY_PARAMETERS, m as DEFAULT_PHYSICS_STATE, n as DEFAULT_POSTPROCESSING_STATE, o as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, p as EntityType, q as Environment, r as EnvironmentFogState, s as EnvironmentFogType, t as EnvironmentGradientEffect, u as EnvironmentSkyboxState, v as EnvironmentSkyboxType, w as EnvironmentState, I as ImageComponent, x as ImageTarget, y as ImageTargetAnchor, z as ImageTargetAnchorOptions, B as ImageTargetReference, F as InstanceSlotComponent, G as InstanceTransform, H as InstancedMeshComponent, J as InstancedMeshKind, L as LightComponent, K as LightValueState, M as MaterialComponent, N as MaterialTypeValue, O as MaterialValueState, P as MeshComponent, Q as MeshGeometryComponent, R as MeshGeometryParameters, S as MeshGeometryParametersByKind, T as ModelComponent, U as Name, V as Object3DRef, W as PhysicsComponent, X as PhysicsState, Y as PlaneMeshParameters, Z as Postprocessing, _ as PostprocessingState, $ as RadiusHeightMeshParameters, a0 as RadiusMeshParameters, a1 as RigidbodyState, a2 as RigidbodyType, a3 as ScriptComponent, a4 as ScriptEntry, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, a8 as TextureFilteringValue, a9 as TransformModeValue, aa as TransformSpaceValue, ab as VideoComponent, ac as normalizePhysicsState } from './Video-B9ZKmBIT.js';
2
+ import { P as ParentId, T as TransformComponent, a as TransformData, V as Vec3 } from './System-CHCucemW.js';
3
3
 
4
4
  declare const index_AnimationComponent: typeof AnimationComponent;
5
5
  declare const index_AnimationComponentOptions: typeof AnimationComponentOptions;
@@ -1,5 +1,5 @@
1
- import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_ENVIRONMENT_STATE, j as DEFAULT_INSTANCED_MESH_PARAMETERS, k as DEFAULT_INSTANCE_TRANSFORM, l as DEFAULT_MESH_GEOMETRY_PARAMETERS, m as DEFAULT_PHYSICS_STATE, n as DEFAULT_POSTPROCESSING_STATE, o as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, p as EntityType, q as Environment, r as EnvironmentFogState, s as EnvironmentFogType, t as EnvironmentGradientEffect, u as EnvironmentSkyboxState, v as EnvironmentSkyboxType, w as EnvironmentState, I as ImageComponent, x as ImageTarget, y as ImageTargetAnchor, z as ImageTargetAnchorOptions, B as ImageTargetReference, F as InstanceSlotComponent, G as InstanceTransform, H as InstancedMeshComponent, J as InstancedMeshKind, L as LightComponent, K as LightValueState, M as MaterialComponent, N as MaterialTypeValue, O as MaterialValueState, P as MeshComponent, Q as MeshGeometryComponent, R as MeshGeometryParameters, S as MeshGeometryParametersByKind, T as ModelComponent, U as Name, V as Object3DRef, W as PhysicsComponent, X as PhysicsState, Y as PlaneMeshParameters, Z as Postprocessing, _ as PostprocessingState, $ as RadiusHeightMeshParameters, a0 as RadiusMeshParameters, a1 as RigidbodyState, a2 as RigidbodyType, a3 as ScriptComponent, a4 as ScriptEntry, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, a8 as TextureFilteringValue, a9 as TransformModeValue, aa as TransformSpaceValue, ab as VideoComponent, ac as normalizePhysicsState } from './Video-BnrYbbzu.cjs';
2
- import { P as ParentId, T as TransformComponent, a as TransformData, V as Vec3 } from './System-KTHuWc-i.cjs';
1
+ import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_ENVIRONMENT_STATE, j as DEFAULT_INSTANCED_MESH_PARAMETERS, k as DEFAULT_INSTANCE_TRANSFORM, l as DEFAULT_MESH_GEOMETRY_PARAMETERS, m as DEFAULT_PHYSICS_STATE, n as DEFAULT_POSTPROCESSING_STATE, o as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, p as EntityType, q as Environment, r as EnvironmentFogState, s as EnvironmentFogType, t as EnvironmentGradientEffect, u as EnvironmentSkyboxState, v as EnvironmentSkyboxType, w as EnvironmentState, I as ImageComponent, x as ImageTarget, y as ImageTargetAnchor, z as ImageTargetAnchorOptions, B as ImageTargetReference, F as InstanceSlotComponent, G as InstanceTransform, H as InstancedMeshComponent, J as InstancedMeshKind, L as LightComponent, K as LightValueState, M as MaterialComponent, N as MaterialTypeValue, O as MaterialValueState, P as MeshComponent, Q as MeshGeometryComponent, R as MeshGeometryParameters, S as MeshGeometryParametersByKind, T as ModelComponent, U as Name, V as Object3DRef, W as PhysicsComponent, X as PhysicsState, Y as PlaneMeshParameters, Z as Postprocessing, _ as PostprocessingState, $ as RadiusHeightMeshParameters, a0 as RadiusMeshParameters, a1 as RigidbodyState, a2 as RigidbodyType, a3 as ScriptComponent, a4 as ScriptEntry, a5 as Selectable, a6 as SelectionTransformState, a7 as SpriteComponent, a8 as TextureFilteringValue, a9 as TransformModeValue, aa as TransformSpaceValue, ab as VideoComponent, ac as normalizePhysicsState } from './Video-ACTSfWjH.cjs';
2
+ import { P as ParentId, T as TransformComponent, a as TransformData, V as Vec3 } from './System-CHCucemW.cjs';
3
3
 
4
4
  declare const index_AnimationComponent: typeof AnimationComponent;
5
5
  declare const index_AnimationComponentOptions: typeof AnimationComponentOptions;
package/dist/index.cjs CHANGED
@@ -2534,7 +2534,29 @@ var _ObjectManagementSystem = class _ObjectManagementSystem {
2534
2534
  }
2535
2535
  return entityId;
2536
2536
  }
2537
- deleteEntity(world, entityId) {
2537
+ /**
2538
+ * Removes an entity from the ECS world and its associated `Object3D` from the
2539
+ * THREE.js scene graph.
2540
+ *
2541
+ * @param world - The world the entity belongs to.
2542
+ * @param entityId - The entity to remove.
2543
+ * @param dispose - When `true`, traverses the entity's `Object3D` subtree and
2544
+ * calls `.dispose()` on every `BufferGeometry` and `Material` found. Pass
2545
+ * `true` when the entity will not be reused and you want to free GPU memory
2546
+ * immediately (e.g. dynamically spawned objects). Defaults to `false`.
2547
+ * @returns `true` if the entity existed and was removed; `false` if the entity
2548
+ * was not found.
2549
+ *
2550
+ * @example
2551
+ * ```ts
2552
+ * // Remove from scene, keep GPU resources (safe if geometry is shared)
2553
+ * objects.deleteEntity(world, entityId);
2554
+ *
2555
+ * // Remove from scene and free GPU memory (use for one-off spawned objects)
2556
+ * objects.deleteEntity(world, entityId, true);
2557
+ * ```
2558
+ */
2559
+ deleteEntity(world, entityId, dispose = false) {
2538
2560
  if (!world.hasEntity(entityId)) {
2539
2561
  return false;
2540
2562
  }
@@ -2542,6 +2564,20 @@ var _ObjectManagementSystem = class _ObjectManagementSystem {
2542
2564
  if (object3d?.parent) {
2543
2565
  object3d.parent.remove(object3d);
2544
2566
  }
2567
+ if (dispose && object3d) {
2568
+ object3d.traverse((child) => {
2569
+ if (child instanceof THREE34__namespace.Mesh) {
2570
+ child.geometry?.dispose();
2571
+ if (Array.isArray(child.material)) {
2572
+ for (const mat of child.material) {
2573
+ mat.dispose();
2574
+ }
2575
+ } else {
2576
+ child.material?.dispose();
2577
+ }
2578
+ }
2579
+ });
2580
+ }
2545
2581
  world.destroyEntity(entityId);
2546
2582
  return true;
2547
2583
  }