@relu-interactives/spatial-ecs 0.5.2 → 0.8.0

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 (511) hide show
  1. package/dist/{System-V_mv07le.d.cts → System-8D-XBDKZ.d.cts} +734 -8
  2. package/dist/{System-V_mv07le.d.ts → System-DPMAW30g.d.ts} +734 -8
  3. package/dist/{XRHandPose-CU3vNFuS.d.ts → XRHandPose-G0Dl-F0w.d.ts} +93 -3
  4. package/dist/{XRHandPose-CQTLGxFC.d.cts → XRHandPose-VQMT1WXj.d.cts} +93 -3
  5. package/dist/animation/index.cjs +252 -0
  6. package/dist/animation/index.cjs.map +1 -0
  7. package/dist/animation/index.d.cts +100 -0
  8. package/dist/animation/index.d.ts +100 -0
  9. package/dist/animation/index.js +4 -0
  10. package/dist/animation/index.js.map +1 -0
  11. package/dist/chunk-CKTHDXPS.js +11 -0
  12. package/dist/chunk-CKTHDXPS.js.map +1 -0
  13. package/dist/chunk-G4XJ53LS.js +1237 -0
  14. package/dist/chunk-G4XJ53LS.js.map +1 -0
  15. package/dist/chunk-GSWC6LLD.js +241 -0
  16. package/dist/chunk-GSWC6LLD.js.map +1 -0
  17. package/dist/{chunk-DF5SSRN6.js → chunk-JIJQFW6P.js} +1216 -2920
  18. package/dist/chunk-JIJQFW6P.js.map +1 -0
  19. package/dist/{chunk-BUEKOSR5.js → chunk-NNDUOQ7O.js} +188 -14
  20. package/dist/chunk-NNDUOQ7O.js.map +1 -0
  21. package/dist/chunk-OHCNPPMX.js +334 -0
  22. package/dist/chunk-OHCNPPMX.js.map +1 -0
  23. package/dist/{chunk-RXBLOO5B.js → chunk-SGF73YTF.js} +105 -715
  24. package/dist/chunk-SGF73YTF.js.map +1 -0
  25. package/dist/chunk-U727NTWQ.js +2856 -0
  26. package/dist/chunk-U727NTWQ.js.map +1 -0
  27. package/dist/{chunk-OY7ZODZP.js → chunk-XE4OXN2W.js} +3 -9
  28. package/dist/chunk-XE4OXN2W.js.map +1 -0
  29. package/dist/{chunk-OWQSESTO.js → chunk-XU2DVWCP.js} +4 -3
  30. package/dist/chunk-XU2DVWCP.js.map +1 -0
  31. package/dist/components/index.cjs +183 -10
  32. package/dist/components/index.cjs.map +1 -1
  33. package/dist/components/index.d.cts +5 -3
  34. package/dist/components/index.d.ts +5 -3
  35. package/dist/components/index.js +3 -2
  36. package/dist/docs/api/Behaviour/classes/Behaviour.md +366 -79
  37. package/dist/docs/api/Behaviour/index.md +7 -3
  38. package/dist/docs/api/Behaviour/type-aliases/UiInteractionEvent.md +35 -0
  39. package/dist/docs/api/Component/classes/Component.md +14 -1
  40. package/dist/docs/api/components/classes/AnimationComponent.md +26 -26
  41. package/dist/docs/api/components/classes/AudioComponent.md +19 -19
  42. package/dist/docs/api/components/classes/CameraComponent.md +14 -14
  43. package/dist/docs/api/components/classes/EntityType.md +4 -4
  44. package/dist/docs/api/components/classes/Environment.md +5 -4
  45. package/dist/docs/api/components/classes/ImageComponent.md +7 -7
  46. package/dist/docs/api/components/classes/ImageTarget.md +8 -8
  47. package/dist/docs/api/components/classes/ImageTargetAnchor.md +4 -4
  48. package/dist/docs/api/components/classes/InstanceSlotComponent.md +4 -4
  49. package/dist/docs/api/components/classes/InstancedMeshComponent.md +10 -10
  50. package/dist/docs/api/components/classes/LightComponent.md +6 -6
  51. package/dist/docs/api/components/classes/MaterialComponent.md +16 -16
  52. package/dist/docs/api/components/classes/MeshComponent.md +3 -3
  53. package/dist/docs/api/components/classes/MeshGeometryComponent.md +9 -9
  54. package/dist/docs/api/components/classes/ModelComponent.md +8 -5
  55. package/dist/docs/api/components/classes/Name.md +3 -3
  56. package/dist/docs/api/components/classes/Object3DRef.md +4 -4
  57. package/dist/docs/api/components/classes/ParentId.md +3 -3
  58. package/dist/docs/api/components/classes/PhysicsComponent.md +7 -6
  59. package/dist/docs/api/components/classes/Postprocessing.md +3 -3
  60. package/dist/docs/api/components/classes/PrefabInstance.md +5 -5
  61. package/dist/docs/api/components/classes/PrefabNode.md +3 -3
  62. package/dist/docs/api/components/classes/ScriptComponent.md +5 -5
  63. package/dist/docs/api/components/classes/ScriptObjectComponent.md +9 -9
  64. package/dist/docs/api/components/classes/Selectable.md +3 -3
  65. package/dist/docs/api/components/classes/SelectionTransformState.md +5 -5
  66. package/dist/docs/api/components/classes/SpriteComponent.md +7 -7
  67. package/dist/docs/api/components/classes/TransformComponent.md +12 -12
  68. package/dist/docs/api/components/classes/UIButtonComponent.md +63 -0
  69. package/dist/docs/api/components/classes/UIPanelComponent.md +62 -0
  70. package/dist/docs/api/components/classes/UISliderComponent.md +59 -0
  71. package/dist/docs/api/components/classes/UITextComponent.md +59 -0
  72. package/dist/docs/api/components/classes/UIToggleComponent.md +56 -0
  73. package/dist/docs/api/components/classes/VRTeleportAreaComponent.md +53 -0
  74. package/dist/docs/api/components/classes/VideoComponent.md +28 -28
  75. package/dist/docs/api/components/classes/XRAnchorComponent.md +64 -0
  76. package/dist/docs/api/components/classes/XREnvironmentComponent.md +64 -0
  77. package/dist/docs/api/components/classes/XRHandPoseComponent.md +50 -0
  78. package/dist/docs/api/components/classes/XRInteractableComponent.md +74 -0
  79. package/dist/docs/api/components/classes/XRInteractorComponent.md +57 -0
  80. package/dist/docs/api/components/classes/XRInteractorSideComponent.md +50 -0
  81. package/dist/docs/api/components/classes/XRRigComponent.md +68 -0
  82. package/dist/docs/api/components/functions/createAttachPoint.md +25 -0
  83. package/dist/docs/api/components/functions/createHandPoseEntry.md +25 -0
  84. package/dist/docs/api/components/functions/defaultMaterialValue.md +1 -1
  85. package/dist/docs/api/components/functions/handPoseDefinitionFor.md +33 -0
  86. package/dist/docs/api/components/functions/normalizeEnvironmentLighting.md +30 -0
  87. package/dist/docs/api/components/functions/normalizePhysicsState.md +1 -1
  88. package/dist/docs/api/components/functions/setModelLoadState.md +33 -0
  89. package/dist/docs/api/components/functions/setPhysicsLiveRef.md +3 -9
  90. package/dist/docs/api/components/index.md +61 -4
  91. package/dist/docs/api/components/type-aliases/AnimationComponentOptions.md +9 -9
  92. package/dist/docs/api/components/type-aliases/CameraComponentOptions.md +13 -13
  93. package/dist/docs/api/components/type-aliases/CameraProjection.md +1 -1
  94. package/dist/docs/api/components/type-aliases/CameraRuntimeType.md +5 -3
  95. package/dist/docs/api/components/type-aliases/ColliderShape.md +1 -1
  96. package/dist/docs/api/components/type-aliases/ColliderState.md +20 -20
  97. package/dist/docs/api/components/type-aliases/CubeMeshParameters.md +4 -4
  98. package/dist/docs/api/components/type-aliases/EditableMeshObjectKind.md +1 -1
  99. package/dist/docs/api/components/type-aliases/EnvironmentFogState.md +8 -8
  100. package/dist/docs/api/components/type-aliases/EnvironmentFogType.md +1 -1
  101. package/dist/docs/api/components/type-aliases/EnvironmentGradientEffect.md +1 -1
  102. package/dist/docs/api/components/type-aliases/EnvironmentLightingState.md +40 -0
  103. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxImageProjection.md +22 -0
  104. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxState.md +9 -7
  105. package/dist/docs/api/components/type-aliases/EnvironmentSkyboxType.md +1 -1
  106. package/dist/docs/api/components/type-aliases/EnvironmentState.md +7 -5
  107. package/dist/docs/api/components/type-aliases/EnvironmentToneMapping.md +16 -0
  108. package/dist/docs/api/components/type-aliases/ImageTargetAnchorOptions.md +3 -3
  109. package/dist/docs/api/components/type-aliases/ImageTargetReference.md +7 -7
  110. package/dist/docs/api/components/type-aliases/InstanceTransform.md +13 -13
  111. package/dist/docs/api/components/type-aliases/InstancedMeshKind.md +1 -1
  112. package/dist/docs/api/components/type-aliases/LightShadowState.md +37 -0
  113. package/dist/docs/api/components/type-aliases/LightValueState.md +13 -11
  114. package/dist/docs/api/components/type-aliases/MaterialTypeValue.md +1 -1
  115. package/dist/docs/api/components/type-aliases/MaterialValueState.md +28 -28
  116. package/dist/docs/api/components/type-aliases/MeshGeometryParameters.md +1 -1
  117. package/dist/docs/api/components/type-aliases/MeshGeometryParametersByKind.md +7 -7
  118. package/dist/docs/api/components/type-aliases/ModelLoadState.md +15 -0
  119. package/dist/docs/api/components/type-aliases/PhysicsState.md +3 -3
  120. package/dist/docs/api/components/type-aliases/PlaneMeshParameters.md +3 -3
  121. package/dist/docs/api/components/type-aliases/PostprocessingState.md +62 -62
  122. package/dist/docs/api/components/type-aliases/RadiusHeightMeshParameters.md +3 -3
  123. package/dist/docs/api/components/type-aliases/RadiusMeshParameters.md +2 -2
  124. package/dist/docs/api/components/type-aliases/RigidbodyState.md +17 -17
  125. package/dist/docs/api/components/type-aliases/RigidbodyType.md +1 -1
  126. package/dist/docs/api/components/type-aliases/ScriptEntry.md +8 -8
  127. package/dist/docs/api/components/type-aliases/ScriptObjectComponentInput.md +1 -1
  128. package/dist/docs/api/components/type-aliases/ScriptObjectRuntimeState.md +1 -1
  129. package/dist/docs/api/components/type-aliases/TextureFilteringValue.md +1 -1
  130. package/dist/docs/api/components/type-aliases/TransformData.md +4 -4
  131. package/dist/docs/api/components/type-aliases/TransformModeValue.md +1 -1
  132. package/dist/docs/api/components/type-aliases/TransformSpaceValue.md +1 -1
  133. package/dist/docs/api/components/type-aliases/UIButtonOptions.md +45 -0
  134. package/dist/docs/api/components/type-aliases/UIPanelOptions.md +39 -0
  135. package/dist/docs/api/components/type-aliases/UISliderOptions.md +39 -0
  136. package/dist/docs/api/components/type-aliases/UITextOptions.md +41 -0
  137. package/dist/docs/api/components/type-aliases/UIToggleOptions.md +35 -0
  138. package/dist/docs/api/components/type-aliases/UiFollowMode.md +15 -0
  139. package/dist/docs/api/components/type-aliases/UiTextAlign.md +13 -0
  140. package/dist/docs/api/components/type-aliases/UiTextVAlign.md +13 -0
  141. package/dist/docs/api/components/type-aliases/VRTeleportAreaOptions.md +29 -0
  142. package/dist/docs/api/components/type-aliases/Vec3.md +4 -4
  143. package/dist/docs/api/components/type-aliases/VrTeleportShape.md +15 -0
  144. package/dist/docs/api/components/type-aliases/XRAnchorOptions.md +23 -0
  145. package/dist/docs/api/components/type-aliases/XRHandPoseOptions.md +23 -0
  146. package/dist/docs/api/components/type-aliases/XRInteractableOptions.md +75 -0
  147. package/dist/docs/api/components/type-aliases/XRInteractorOptions.md +37 -0
  148. package/dist/docs/api/components/type-aliases/XRRigOptions.md +51 -0
  149. package/dist/docs/api/components/type-aliases/XrAttachPoint.md +53 -0
  150. package/dist/docs/api/components/type-aliases/XrDistanceGrabBehavior.md +19 -0
  151. package/dist/docs/api/components/type-aliases/XrEnvironmentKind.md +15 -0
  152. package/dist/docs/api/components/type-aliases/XrEnvironmentOrientation.md +15 -0
  153. package/dist/docs/api/components/type-aliases/XrEnvironmentPhysics.md +25 -0
  154. package/dist/docs/api/components/type-aliases/XrGrabGesture.md +19 -0
  155. package/dist/docs/api/components/type-aliases/XrGrabHands.md +20 -0
  156. package/dist/docs/api/components/type-aliases/XrGrabReach.md +20 -0
  157. package/dist/docs/api/components/type-aliases/XrHandPoseEntry.md +49 -0
  158. package/dist/docs/api/components/type-aliases/XrHandPreset.md +19 -0
  159. package/dist/docs/api/components/type-aliases/XrInteractorSide.md +15 -0
  160. package/dist/docs/api/components/type-aliases/XrInteractorType.md +13 -0
  161. package/dist/docs/api/components/type-aliases/XrLocomotionMode.md +15 -0
  162. package/dist/docs/api/components/type-aliases/XrTrackingOrigin.md +24 -0
  163. package/dist/docs/api/components/type-aliases/XrTwoHandRotation.md +15 -0
  164. package/dist/docs/api/components/variables/DEFAULT_COLLIDER_STATE.md +1 -1
  165. package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_LIGHTING.md +15 -0
  166. package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_STATE.md +1 -1
  167. package/dist/docs/api/components/variables/DEFAULT_INSTANCED_MESH_PARAMETERS.md +1 -1
  168. package/dist/docs/api/components/variables/DEFAULT_INSTANCE_TRANSFORM.md +1 -1
  169. package/dist/docs/api/components/variables/DEFAULT_MESH_GEOMETRY_PARAMETERS.md +1 -1
  170. package/dist/docs/api/components/variables/DEFAULT_PHYSICS_STATE.md +1 -1
  171. package/dist/docs/api/components/variables/DEFAULT_POSE_CURLS.md +13 -0
  172. package/dist/docs/api/components/variables/DEFAULT_POSE_DIRECTIONS.md +13 -0
  173. package/dist/docs/api/components/variables/DEFAULT_POSTPROCESSING_STATE.md +1 -1
  174. package/dist/docs/api/components/variables/DEFAULT_RIGIDBODY_STATE.md +1 -1
  175. package/dist/docs/api/components/variables/MODEL_NO_PATH_MESSAGE.md +15 -0
  176. package/dist/docs/api/index/classes/AnimationStateMachine.md +16 -16
  177. package/dist/docs/api/index/classes/AnimationStateManager.md +13 -13
  178. package/dist/docs/api/index/classes/AnimationSystem.md +3 -3
  179. package/dist/docs/api/index/classes/AudioSystem.md +4 -4
  180. package/dist/docs/api/index/classes/CameraSyncSystem.md +2 -2
  181. package/dist/docs/api/index/classes/EnvironmentSyncSystem.md +19 -4
  182. package/dist/docs/api/index/classes/HandPoseTracker.md +114 -0
  183. package/dist/docs/api/index/classes/InputSystem.md +33 -33
  184. package/dist/docs/api/index/classes/InstancedMeshSystem.md +2 -2
  185. package/dist/docs/api/index/classes/LightSyncSystem.md +2 -2
  186. package/dist/docs/api/index/classes/MaterialSyncSystem.md +3 -3
  187. package/dist/docs/api/index/classes/MeshGeometrySystem.md +2 -2
  188. package/dist/docs/api/index/classes/ObjectManagementSystem.md +14 -14
  189. package/dist/docs/api/index/classes/ObjectVisibilitySystem.md +2 -2
  190. package/dist/docs/api/index/classes/PhysicsSyncSystem.md +4 -4
  191. package/dist/docs/api/index/classes/PostprocessingSyncSystem.md +34 -10
  192. package/dist/docs/api/index/classes/RenderSystem.md +13 -4
  193. package/dist/docs/api/index/classes/ScriptBehaviourSystem.md +9 -5
  194. package/dist/docs/api/index/classes/ScriptObject.md +10 -10
  195. package/dist/docs/api/index/classes/ScriptObjectSystem.md +6 -6
  196. package/dist/docs/api/index/classes/TeleportAimGate.md +114 -0
  197. package/dist/docs/api/index/classes/ThrowVelocityTracker.md +89 -0
  198. package/dist/docs/api/index/classes/TransformSyncSystem.md +2 -2
  199. package/dist/docs/api/index/classes/UIInteractionSystem.md +60 -0
  200. package/dist/docs/api/index/classes/UIPanelSystem.md +79 -0
  201. package/dist/docs/api/index/classes/VRTeleportAreaSystem.md +49 -0
  202. package/dist/docs/api/index/classes/VideoSystem.md +8 -6
  203. package/dist/docs/api/index/classes/World.md +282 -100
  204. package/dist/docs/api/index/classes/XRAnchorSystem.md +90 -0
  205. package/dist/docs/api/index/classes/XRControllerVisualSystem.md +77 -0
  206. package/dist/docs/api/index/classes/XREnvironmentSystem.md +137 -0
  207. package/dist/docs/api/index/classes/XRHandPoseSystem.md +107 -0
  208. package/dist/docs/api/index/classes/XRHitTestSystem.md +93 -0
  209. package/dist/docs/api/index/classes/XRHoverVisualSystem.md +76 -0
  210. package/dist/docs/api/index/classes/XRInputSystem.md +189 -0
  211. package/dist/docs/api/index/classes/XRInteractionSystem.md +323 -0
  212. package/dist/docs/api/index/classes/XRLocomotionSystem.md +128 -0
  213. package/dist/docs/api/index/classes/XRSessionSystem.md +116 -0
  214. package/dist/docs/api/index/classes/XRTeleportVisualSystem.md +75 -0
  215. package/dist/docs/api/index/functions/angularVelocityFrom.md +33 -0
  216. package/dist/docs/api/index/functions/applyHandMaterial.md +26 -0
  217. package/dist/docs/api/index/functions/applyPrefabToSnapshotInstances.md +1 -1
  218. package/dist/docs/api/index/functions/arcGroundCrossing.md +30 -0
  219. package/dist/docs/api/index/functions/buildComponentValueMaps.md +1 -1
  220. package/dist/docs/api/index/functions/buildNodeKeyMapsFromSnapshot.md +1 -1
  221. package/dist/docs/api/index/functions/buildNodeMapsFromSnapshot.md +1 -1
  222. package/dist/docs/api/index/functions/canonicalizeComponentValue.md +1 -1
  223. package/dist/docs/api/index/functions/clearModelCache.md +1 -1
  224. package/dist/docs/api/index/functions/clearPrefabCache.md +1 -1
  225. package/dist/docs/api/index/functions/cloneHandPose.md +23 -0
  226. package/dist/docs/api/index/functions/collectDiffPaths.md +1 -1
  227. package/dist/docs/api/index/functions/collectDirectPrefabDependencies.md +1 -1
  228. package/dist/docs/api/index/functions/collectEntitySubtree.md +1 -1
  229. package/dist/docs/api/index/functions/collectSnapshotSubtreeIds.md +1 -1
  230. package/dist/docs/api/index/functions/computeFingerCurl.md +29 -0
  231. package/dist/docs/api/index/functions/computeHandShape.md +29 -0
  232. package/dist/docs/api/index/functions/computeInstanceOverrides.md +1 -1
  233. package/dist/docs/api/index/functions/computePalmPose.md +30 -0
  234. package/dist/docs/api/index/functions/computePalmWidth.md +25 -0
  235. package/dist/docs/api/index/functions/computePinch.md +29 -0
  236. package/dist/docs/api/index/functions/computeSpread.md +33 -0
  237. package/dist/docs/api/index/functions/createAnimationComponent.md +1 -1
  238. package/dist/docs/api/index/functions/createAudioComponent.md +1 -1
  239. package/dist/docs/api/index/functions/createCameraComponent.md +1 -1
  240. package/dist/docs/api/index/functions/createEntityTypeComponent.md +2 -2
  241. package/dist/docs/api/index/functions/createEnvironmentComponent.md +1 -1
  242. package/dist/docs/api/index/functions/createHandMaterial.md +30 -0
  243. package/dist/docs/api/index/functions/createImageComponent.md +1 -1
  244. package/dist/docs/api/index/functions/createImageTargetAnchorComponent.md +1 -1
  245. package/dist/docs/api/index/functions/createImageTargetComponent.md +2 -2
  246. package/dist/docs/api/index/functions/createInstanceSlotComponent.md +1 -1
  247. package/dist/docs/api/index/functions/createInstancedMeshComponent.md +1 -1
  248. package/dist/docs/api/index/functions/createLightComponent.md +2 -2
  249. package/dist/docs/api/index/functions/createMaterialComponent.md +2 -2
  250. package/dist/docs/api/index/functions/createMeshComponent.md +1 -1
  251. package/dist/docs/api/index/functions/createMeshGeometryComponent.md +1 -1
  252. package/dist/docs/api/index/functions/createModelComponent.md +1 -1
  253. package/dist/docs/api/index/functions/createNameComponent.md +1 -1
  254. package/dist/docs/api/index/functions/createObject3DRefComponent.md +1 -1
  255. package/dist/docs/api/index/functions/createParentIdComponent.md +1 -1
  256. package/dist/docs/api/index/functions/createPhysicsComponent.md +1 -1
  257. package/dist/docs/api/index/functions/createPostprocessingComponent.md +1 -1
  258. package/dist/docs/api/index/functions/createScriptComponent.md +1 -1
  259. package/dist/docs/api/index/functions/createScriptObjectComponent.md +1 -1
  260. package/dist/docs/api/index/functions/createSelectableComponent.md +1 -1
  261. package/dist/docs/api/index/functions/createSelectionTransformStateComponent.md +1 -1
  262. package/dist/docs/api/index/functions/createSpriteComponent.md +1 -1
  263. package/dist/docs/api/index/functions/createTransformComponent.md +1 -1
  264. package/dist/docs/api/index/functions/createUIButtonComponent.md +28 -0
  265. package/dist/docs/api/index/functions/createUIPanelComponent.md +28 -0
  266. package/dist/docs/api/index/functions/createUISliderComponent.md +28 -0
  267. package/dist/docs/api/index/functions/createUITextComponent.md +28 -0
  268. package/dist/docs/api/index/functions/createUIToggleComponent.md +28 -0
  269. package/dist/docs/api/index/functions/createVRTeleportAreaComponent.md +28 -0
  270. package/dist/docs/api/index/functions/createVideoComponent.md +1 -1
  271. package/dist/docs/api/index/functions/createXRAnchorComponent.md +28 -0
  272. package/dist/docs/api/index/functions/createXRHandPoseComponent.md +28 -0
  273. package/dist/docs/api/index/functions/createXRInteractableComponent.md +28 -0
  274. package/dist/docs/api/index/functions/createXRInteractorComponent.md +28 -0
  275. package/dist/docs/api/index/functions/createXRInteractorSideComponent.md +28 -0
  276. package/dist/docs/api/index/functions/createXRRigComponent.md +28 -0
  277. package/dist/docs/api/index/functions/decanonicalizeComponentValue.md +1 -1
  278. package/dist/docs/api/index/functions/despawnPrefab.md +1 -1
  279. package/dist/docs/api/index/functions/encodeOverride.md +1 -1
  280. package/dist/docs/api/index/functions/estimateHandScale.md +28 -0
  281. package/dist/docs/api/index/functions/findSnapshotRootEntityIds.md +1 -1
  282. package/dist/docs/api/index/functions/findTopLevelNestedRegions.md +1 -1
  283. package/dist/docs/api/index/functions/getHandPosePreset.md +31 -0
  284. package/dist/docs/api/index/functions/groupOverridePaths.md +1 -1
  285. package/dist/docs/api/index/functions/handPoseFromCurls.md +42 -0
  286. package/dist/docs/api/index/functions/hydrateWorldFromSnapshot.md +1 -1
  287. package/dist/docs/api/index/functions/hydrateWorldFromSnapshotDetailed.md +1 -1
  288. package/dist/docs/api/index/functions/indexSnapshotByEntity.md +1 -1
  289. package/dist/docs/api/index/functions/instantiateSubtree.md +1 -1
  290. package/dist/docs/api/index/functions/loadPrefab.md +1 -1
  291. package/dist/docs/api/index/functions/loadSharedGltf.md +1 -1
  292. package/dist/docs/api/index/functions/matchHandPose.md +34 -0
  293. package/dist/docs/api/index/functions/mergeComponentValue.md +1 -1
  294. package/dist/docs/api/index/functions/parseOverride.md +1 -1
  295. package/dist/docs/api/index/functions/parsePrefabAsset.md +1 -1
  296. package/dist/docs/api/index/functions/prefabFileVersionFor.md +1 -1
  297. package/dist/docs/api/index/functions/readXrCapabilities.md +30 -0
  298. package/dist/docs/api/index/functions/registerDefaultComponentFactories.md +1 -1
  299. package/dist/docs/api/index/functions/registerDefaultFactories.md +1 -1
  300. package/dist/docs/api/index/functions/remapSnapshotEntityIds.md +3 -3
  301. package/dist/docs/api/index/functions/resolveDracoDecoderPath.md +1 -1
  302. package/dist/docs/api/index/functions/restoreComponentState.md +1 -1
  303. package/dist/docs/api/index/functions/restorePostCreateComponents.md +1 -1
  304. package/dist/docs/api/index/functions/sampleTeleportArc.md +40 -0
  305. package/dist/docs/api/index/functions/serializeEntitySubtree.md +1 -1
  306. package/dist/docs/api/index/functions/setDracoDecoderPath.md +1 -1
  307. package/dist/docs/api/index/functions/setPrefabAssetUrlResolver.md +1 -1
  308. package/dist/docs/api/index/functions/spawnPrefab.md +1 -1
  309. package/dist/docs/api/index/index.md +116 -4
  310. package/dist/docs/api/index/interfaces/ChromaKeyOptions.md +20 -0
  311. package/dist/docs/api/index/interfaces/EcsSystem.md +3 -3
  312. package/dist/docs/api/index/interfaces/PostprocessingBuildContext.md +21 -0
  313. package/dist/docs/api/index/interfaces/PostprocessingPipeline.md +84 -0
  314. package/dist/docs/api/index/interfaces/RenderBackend.md +168 -0
  315. package/dist/docs/api/index/interfaces/StateMachine.md +13 -13
  316. package/dist/docs/api/index/type-aliases/AnimationStateCallbacks.md +4 -4
  317. package/dist/docs/api/index/type-aliases/ApplyPrefabToSnapshotResult.md +3 -3
  318. package/dist/docs/api/index/type-aliases/ComponentFactory.md +1 -1
  319. package/dist/docs/api/index/type-aliases/ComponentValueMaps.md +50 -26
  320. package/dist/docs/api/index/type-aliases/EcsComponentFactoryKind.md +14 -2
  321. package/dist/docs/api/index/type-aliases/EcsRenderer.md +17 -0
  322. package/dist/docs/api/index/type-aliases/EcsWorldComponentSnapshot.md +3 -3
  323. package/dist/docs/api/index/type-aliases/EcsWorldStateSnapshotLike.md +4 -4
  324. package/dist/docs/api/index/type-aliases/ExternalRefWarning.md +5 -5
  325. package/dist/docs/api/index/type-aliases/HandMaterialOptions.md +32 -0
  326. package/dist/docs/api/index/type-aliases/HandPoseTrackerOptions.md +27 -0
  327. package/dist/docs/api/index/type-aliases/HydrateOptions.md +3 -3
  328. package/dist/docs/api/index/type-aliases/HydrateWorldFromSnapshotResult.md +4 -4
  329. package/dist/docs/api/index/type-aliases/InstantiateSubtreeResult.md +3 -3
  330. package/dist/docs/api/index/type-aliases/KeyboardKey.md +1 -1
  331. package/dist/docs/api/index/type-aliases/ModuleLoader.md +1 -1
  332. package/dist/docs/api/index/type-aliases/MouseButton.md +1 -1
  333. package/dist/docs/api/index/type-aliases/NestedRegion.md +5 -5
  334. package/dist/docs/api/index/type-aliases/NodeKeyMaps.md +5 -5
  335. package/dist/docs/api/index/type-aliases/NodeMaps.md +4 -4
  336. package/dist/docs/api/index/type-aliases/PrefabAsset.md +5 -5
  337. package/dist/docs/api/index/type-aliases/RemapSnapshotOptions.md +2 -2
  338. package/dist/docs/api/index/type-aliases/RendererKind.md +15 -0
  339. package/dist/docs/api/index/type-aliases/ScriptBehaviourSystemOptions.md +23 -0
  340. package/dist/docs/api/index/type-aliases/ScriptErrorEvent.md +39 -0
  341. package/dist/docs/api/index/type-aliases/ScriptErrorListener.md +25 -0
  342. package/dist/docs/api/index/type-aliases/ScriptErrorPhase.md +28 -0
  343. package/dist/docs/api/index/type-aliases/ScriptErrorReport.md +31 -0
  344. package/dist/docs/api/index/type-aliases/ScriptErrorSource.md +15 -0
  345. package/dist/docs/api/index/type-aliases/SelectionContext.md +4 -4
  346. package/dist/docs/api/index/type-aliases/SerializeEntitySubtreeResult.md +4 -4
  347. package/dist/docs/api/index/type-aliases/SpawnPrefabOptions.md +5 -5
  348. package/dist/docs/api/index/type-aliases/SpawnPrefabSource.md +1 -1
  349. package/dist/docs/api/index/type-aliases/SubtreeSnapshot.md +3 -3
  350. package/dist/docs/api/index/type-aliases/UiCanvasLike.md +46 -0
  351. package/dist/docs/api/index/type-aliases/VelocitySample.md +23 -0
  352. package/dist/docs/api/index/type-aliases/XrCapabilities.md +41 -0
  353. package/dist/docs/api/index/type-aliases/XrFinger.md +13 -0
  354. package/dist/docs/api/index/type-aliases/XrFingerCurl.md +27 -0
  355. package/dist/docs/api/index/type-aliases/XrFingerTarget.md +31 -0
  356. package/dist/docs/api/index/type-aliases/XrHandJointName.md +40 -0
  357. package/dist/docs/api/index/type-aliases/XrHandJoints.md +18 -0
  358. package/dist/docs/api/index/type-aliases/XrHandPoseAxis.md +15 -0
  359. package/dist/docs/api/index/type-aliases/XrHandPoseContext.md +23 -0
  360. package/dist/docs/api/index/type-aliases/XrHandPoseDefinition.md +47 -0
  361. package/dist/docs/api/index/type-aliases/XrHandPoseDirection.md +21 -0
  362. package/dist/docs/api/index/type-aliases/XrHandPoseEvent.md +13 -0
  363. package/dist/docs/api/index/type-aliases/XrHandPoseEventDetail.md +27 -0
  364. package/dist/docs/api/index/type-aliases/XrHandPoseMatch.md +25 -0
  365. package/dist/docs/api/index/type-aliases/XrHandPoseOrientation.md +25 -0
  366. package/dist/docs/api/index/type-aliases/XrHandShape.md +46 -0
  367. package/dist/docs/api/index/type-aliases/XrHandedness.md +15 -0
  368. package/dist/docs/api/index/type-aliases/XrHitResult.md +25 -0
  369. package/dist/docs/api/index/type-aliases/XrInputKind.md +19 -0
  370. package/dist/docs/api/index/type-aliases/XrInputState.md +60 -0
  371. package/dist/docs/api/index/type-aliases/XrPalmPose.md +31 -0
  372. package/dist/docs/api/index/variables/ADDED_NODE_MARKER_COMPONENT.md +2 -2
  373. package/dist/docs/api/index/variables/ARC_GRAVITY.md +15 -0
  374. package/dist/docs/api/index/variables/ARC_MAX_TIME.md +15 -0
  375. package/dist/docs/api/index/variables/ARC_SPEED.md +15 -0
  376. package/dist/docs/api/index/variables/ARC_STEPS.md +15 -0
  377. package/dist/docs/api/index/variables/CURLED_COS.md +13 -0
  378. package/dist/docs/api/index/variables/DEFAULT_DIRECTION_TOLERANCE.md +15 -0
  379. package/dist/docs/api/index/variables/DEFAULT_ENTER_CONFIDENCE.md +13 -0
  380. package/dist/docs/api/index/variables/DEFAULT_EXIT_CONFIDENCE.md +13 -0
  381. package/dist/docs/api/index/variables/DEFAULT_LOST_GRACE_SECONDS.md +13 -0
  382. package/dist/docs/api/index/variables/DEFAULT_MIN_HOLD_SECONDS.md +13 -0
  383. package/dist/docs/api/index/variables/DEFAULT_SCRIPT_ERROR_RETRY_DELAY.md +17 -0
  384. package/dist/docs/api/index/variables/FALLBACK_HAND_SCALE.md +15 -0
  385. package/dist/docs/api/index/variables/HAND_POSE_PRESETS.md +19 -0
  386. package/dist/docs/api/index/variables/HAND_POSE_PRESET_IDS.md +15 -0
  387. package/dist/docs/api/index/variables/HYDRATABLE_ENTITY_KINDS.md +1 -1
  388. package/dist/docs/api/index/variables/KeyboardKeys.md +89 -89
  389. package/dist/docs/api/index/variables/MATCH_FALLOFF.md +15 -0
  390. package/dist/docs/api/index/variables/MAX_PLAUSIBLE_SPEED.md +25 -0
  391. package/dist/docs/api/index/variables/MAX_SAMPLE_AGE_SECONDS.md +18 -0
  392. package/dist/docs/api/index/variables/NODE_KEY_SEPARATOR.md +1 -1
  393. package/dist/docs/api/index/variables/NO_XR_CAPABILITIES.md +15 -0
  394. package/dist/docs/api/index/variables/OVERRIDE_DIFF_EXCLUDED_COMPONENTS.md +1 -1
  395. package/dist/docs/api/index/variables/OVERRIDE_ROOT_EXCLUDED_COMPONENTS.md +1 -1
  396. package/dist/docs/api/index/variables/PINCH_FINGERS.md +15 -0
  397. package/dist/docs/api/index/variables/PREFAB_FILE_VERSION.md +1 -1
  398. package/dist/docs/api/index/variables/PREFAB_FILE_VERSION_NESTED.md +1 -1
  399. package/dist/docs/api/index/variables/SCRIPT_OBJECT_ROOT_FLAG.md +1 -1
  400. package/dist/docs/api/index/variables/SHARED_MODEL_RESOURCE_FLAG.md +1 -1
  401. package/dist/docs/api/index/variables/STRAIGHT_COS.md +19 -0
  402. package/dist/docs/api/index/variables/VELOCITY_SAMPLES.md +15 -0
  403. package/dist/docs/api/index/variables/XR_FINGERS.md +13 -0
  404. package/dist/docs/api/index/variables/XR_HOVER_SHELL_FLAG.md +15 -0
  405. package/dist/docs/api/index/variables/webglBackend.md +16 -0
  406. package/dist/docs/api/typedoc-sidebar.json +1 -1
  407. package/dist/docs/api/types/type-aliases/AssetInput.md +3 -3
  408. package/dist/docs/api/types/type-aliases/CheckboxInput.md +3 -3
  409. package/dist/docs/api/types/type-aliases/ColorInput.md +1 -1
  410. package/dist/docs/api/types/type-aliases/ComponentInput.md +4 -4
  411. package/dist/docs/api/types/type-aliases/ComponentKind.md +1 -1
  412. package/dist/docs/api/types/type-aliases/DropdownInput.md +3 -3
  413. package/dist/docs/api/types/type-aliases/DropdownOption.md +3 -3
  414. package/dist/docs/api/types/type-aliases/EcsEntityEditorKind.md +1 -1
  415. package/dist/docs/api/types/type-aliases/EcsEntityKind.md +10 -2
  416. package/dist/docs/api/types/type-aliases/EntityId.md +1 -1
  417. package/dist/docs/api/types/type-aliases/EntityInput.md +3 -3
  418. package/dist/docs/api/types/type-aliases/FloatInput.md +1 -1
  419. package/dist/docs/api/types/type-aliases/IntersectionResult.md +3 -3
  420. package/dist/docs/api/types/type-aliases/ParentLookup.md +3 -3
  421. package/dist/docs/api/types/type-aliases/SelectionListener.md +1 -1
  422. package/dist/docs/api/types/type-aliases/SliderInput.md +5 -5
  423. package/dist/docs/api/types/type-aliases/TextInput.md +1 -1
  424. package/dist/docs/api/types/type-aliases/ToggleInput.md +1 -1
  425. package/dist/docs/api/types/type-aliases/Vec3.md +1 -1
  426. package/dist/docs/api/types/type-aliases/Vector2Input.md +3 -3
  427. package/dist/docs/api/types/type-aliases/Vector3Input.md +4 -4
  428. package/dist/docs/api/types/type-aliases/WorldEntityView.md +1 -1
  429. package/dist/docs/guide/audio-mixing-and-sound-banks.md +71 -0
  430. package/dist/docs/guide/authoring-a-behaviour.md +3 -3
  431. package/dist/docs/guide/authoring-a-script-object.md +12 -9
  432. package/dist/docs/guide/behaviour-data-binding/index.md +11 -11
  433. package/dist/docs/guide/behaviour-lifecycle.md +9 -0
  434. package/dist/docs/guide/bone-attachments-and-ik.md +128 -0
  435. package/dist/docs/guide/component-catalog.md +10 -2
  436. package/dist/docs/guide/components/light.md +42 -0
  437. package/dist/docs/guide/components/model.md +32 -3
  438. package/dist/docs/guide/concepts.md +2 -2
  439. package/dist/docs/guide/getting-started/creating-objects.md +2 -2
  440. package/dist/docs/guide/getting-started/editing-objects.md +2 -2
  441. package/dist/docs/guide/getting-started/editor/ai-agent.md +227 -0
  442. package/dist/docs/guide/getting-started/editor/hierarchy.md +2 -2
  443. package/dist/docs/guide/getting-started/editor/index.md +3 -2
  444. package/dist/docs/guide/getting-started/editor/inspector.md +2 -2
  445. package/dist/docs/guide/getting-started/editor/scene-inspector.md +3 -3
  446. package/dist/docs/guide/getting-started/editor/toolbar.md +11 -11
  447. package/dist/docs/guide/getting-started/editor/viewport.md +17 -9
  448. package/dist/docs/guide/getting-started/index.md +1 -1
  449. package/dist/docs/guide/getting-started/installation.md +1 -1
  450. package/dist/docs/guide/getting-started/preview-and-test.md +7 -7
  451. package/dist/docs/guide/getting-started/project-types/image-tracking.md +23 -11
  452. package/dist/docs/guide/getting-started/project-types/index.md +4 -4
  453. package/dist/docs/guide/getting-started/project-types/vr.md +270 -2
  454. package/dist/docs/guide/getting-started/projects.md +4 -5
  455. package/dist/docs/guide/getting-started/shortcuts.md +5 -4
  456. package/dist/docs/guide/multiplayer.md +92 -0
  457. package/dist/docs/guide/scene/environment.md +101 -4
  458. package/dist/docs/guide/scene/index.md +4 -4
  459. package/dist/docs/guide/scene/postprocessing.md +67 -5
  460. package/dist/docs/guide/spawning/area-light.md +2 -0
  461. package/dist/docs/guide/systems/environment-sync-system.md +11 -6
  462. package/dist/docs/guide/systems/light-sync-system.md +5 -3
  463. package/dist/docs/guide/systems/postprocessing-sync-system.md +16 -6
  464. package/dist/docs/guide/systems/render-system.md +7 -6
  465. package/dist/docs/guide/systems/script-behaviour-system.md +7 -5
  466. package/dist/docs/guide/systems/script-object-system.md +3 -1
  467. package/dist/docs/guide/systems/video-system.md +1 -1
  468. package/dist/docs/guide/webgpu-and-tsl.md +415 -0
  469. package/dist/docs/guide/world-api.md +52 -2
  470. package/dist/factories/index.cjs +770 -283
  471. package/dist/factories/index.cjs.map +1 -1
  472. package/dist/factories/index.d.cts +14 -3
  473. package/dist/factories/index.d.ts +14 -3
  474. package/dist/factories/index.js +7 -4
  475. package/dist/{index-D2Jt_JzH.d.ts → index-C61n65PE.d.ts} +135 -42
  476. package/dist/{index-DaG03vyN.d.cts → index-C70N4BYG.d.cts} +135 -42
  477. package/dist/{index-C3ik3sA1.d.ts → index-D9DjrUn3.d.cts} +25 -3
  478. package/dist/{index-Dlr-7-4m.d.cts → index-DppafVu4.d.ts} +25 -3
  479. package/dist/index.cjs +3642 -1263
  480. package/dist/index.cjs.map +1 -1
  481. package/dist/index.d.cts +113 -11
  482. package/dist/index.d.ts +113 -11
  483. package/dist/index.js +187 -12
  484. package/dist/index.js.map +1 -1
  485. package/dist/network/index.cjs +4896 -0
  486. package/dist/network/index.cjs.map +1 -0
  487. package/dist/network/index.d.cts +98 -0
  488. package/dist/network/index.d.ts +98 -0
  489. package/dist/network/index.js +493 -0
  490. package/dist/network/index.js.map +1 -0
  491. package/dist/systems/index.cjs +3958 -1762
  492. package/dist/systems/index.cjs.map +1 -1
  493. package/dist/systems/index.d.cts +4 -2
  494. package/dist/systems/index.d.ts +4 -2
  495. package/dist/systems/index.js +8 -4
  496. package/dist/types.d.cts +3 -1
  497. package/dist/types.d.ts +3 -1
  498. package/dist/webgpu/index.d.ts +113 -0
  499. package/dist/webgpu/index.js +302 -0
  500. package/dist/webgpu/index.js.map +1 -0
  501. package/dist/worldSnapshotUtils.d.cts +3 -1
  502. package/dist/worldSnapshotUtils.d.ts +3 -1
  503. package/dist/worldSnapshotUtils.js +3 -2
  504. package/package.json +19 -3
  505. package/dist/chunk-BUEKOSR5.js.map +0 -1
  506. package/dist/chunk-DF5SSRN6.js.map +0 -1
  507. package/dist/chunk-OWQSESTO.js.map +0 -1
  508. package/dist/chunk-OY7ZODZP.js.map +0 -1
  509. package/dist/chunk-RXBLOO5B.js.map +0 -1
  510. package/dist/chunk-WJD2VKEH.js +0 -315
  511. package/dist/chunk-WJD2VKEH.js.map +0 -1
@@ -17,7 +17,6 @@
17
17
  | [World](classes/World.md) | - |
18
18
  | [AnimationSystem](classes/AnimationSystem.md) | - |
19
19
  | [CameraSyncSystem](classes/CameraSyncSystem.md) | - |
20
- | [EnvironmentSyncSystem](classes/EnvironmentSyncSystem.md) | - |
21
20
  | [InputSystem](classes/InputSystem.md) | - |
22
21
  | [InstancedMeshSystem](classes/InstancedMeshSystem.md) | Maintains the runtime geometry for entities with an [InstancedMeshComponent](../components/classes/InstancedMeshComponent.md). |
23
22
  | [LightSyncSystem](classes/LightSyncSystem.md) | - |
@@ -26,10 +25,25 @@
26
25
  | [ObjectManagementSystem](classes/ObjectManagementSystem.md) | - |
27
26
  | [ObjectVisibilitySystem](classes/ObjectVisibilitySystem.md) | - |
28
27
  | [PhysicsSyncSystem](classes/PhysicsSyncSystem.md) | - |
29
- | [PostprocessingSyncSystem](classes/PostprocessingSyncSystem.md) | - |
30
- | [RenderSystem](classes/RenderSystem.md) | - |
31
28
  | [ScriptBehaviourSystem](classes/ScriptBehaviourSystem.md) | - |
32
29
  | [TransformSyncSystem](classes/TransformSyncSystem.md) | - |
30
+ | [UIInteractionSystem](classes/UIInteractionSystem.md) | - |
31
+ | [UIPanelSystem](classes/UIPanelSystem.md) | - |
32
+ | [VRTeleportAreaSystem](classes/VRTeleportAreaSystem.md) | - |
33
+ | [XRAnchorSystem](classes/XRAnchorSystem.md) | - |
34
+ | [XRControllerVisualSystem](classes/XRControllerVisualSystem.md) | - |
35
+ | [XREnvironmentSystem](classes/XREnvironmentSystem.md) | - |
36
+ | [XRHandPoseSystem](classes/XRHandPoseSystem.md) | - |
37
+ | [XRHitTestSystem](classes/XRHitTestSystem.md) | - |
38
+ | [XRHoverVisualSystem](classes/XRHoverVisualSystem.md) | - |
39
+ | [XRInputSystem](classes/XRInputSystem.md) | - |
40
+ | [XRInteractionSystem](classes/XRInteractionSystem.md) | - |
41
+ | [XRLocomotionSystem](classes/XRLocomotionSystem.md) | - |
42
+ | [XRSessionSystem](classes/XRSessionSystem.md) | Owns the immersive-session lifecycle and fans XR events out to Behaviours. |
43
+ | [XRTeleportVisualSystem](classes/XRTeleportVisualSystem.md) | - |
44
+ | [HandPoseTracker](classes/HandPoseTracker.md) | Turns a stream of per-frame confidences into clean start/end events. |
45
+ | [TeleportAimGate](classes/TeleportAimGate.md) | Decides when a teleport may actually commit. |
46
+ | [ThrowVelocityTracker](classes/ThrowVelocityTracker.md) | Rolling buffer of hand positions used to recover throw velocity. |
33
47
 
34
48
  ### Scripting
35
49
 
@@ -42,6 +56,9 @@
42
56
  | Class | Description |
43
57
  | ------ | ------ |
44
58
  | [AudioSystem](classes/AudioSystem.md) | Reconciles `AudioComponent` state with the underlying THREE.js audio objects each frame. |
59
+ | [EnvironmentSyncSystem](classes/EnvironmentSyncSystem.md) | Applies the scene's [Environment](../components/classes/Environment.md) component to the three.js scene: skybox, fog, and (when `values.lighting` is present) image-based lighting, tone mapping and exposure. |
60
+ | [PostprocessingSyncSystem](classes/PostprocessingSyncSystem.md) | Builds the post-processing chain from the scene's [Postprocessing](../components/classes/Postprocessing.md) component and hands it to `RenderSystem` through `scene.userData`: |
61
+ | [RenderSystem](classes/RenderSystem.md) | Draws the frame: through the post-processing chain in `scene.userData.ecsPostprocessingComposer` while `scene.userData.ecsPostprocessingComposerActive` is `true`, otherwise with `renderer.render(scene, camera)`. Runs last in the default system list. |
45
62
  | [ScriptObjectSystem](classes/ScriptObjectSystem.md) | Builds, ticks, and disposes [ScriptObject](classes/ScriptObject.md) scripts. Unlike `ScriptBehaviourSystem`, this runs in the editor AND at runtime — there is NO `isEditorMode` gating anywhere here. A script's `build()` output is attached under the entity's `Object3DRef.object` (so it inherits transform, selection and visibility). `runtimeState` is written on transitions only (never every frame). |
46
63
  | [VideoSystem](classes/VideoSystem.md) | Reconciles `VideoComponent` state with the underlying HTML video element and THREE.js mesh/material each frame. |
47
64
 
@@ -51,6 +68,10 @@
51
68
  | ------ | ------ |
52
69
  | [StateMachine](interfaces/StateMachine.md) | - |
53
70
  | [EcsSystem](interfaces/EcsSystem.md) | - |
71
+ | [PostprocessingPipeline](interfaces/PostprocessingPipeline.md) | A built post-processing chain. `RenderSystem` calls `render()` in place of `renderer.render()` while it is active. |
72
+ | [PostprocessingBuildContext](interfaces/PostprocessingBuildContext.md) | Everything a backend needs to build a post-processing chain. |
73
+ | [ChromaKeyOptions](interfaces/ChromaKeyOptions.md) | Green-screen settings, in the same units as `VideoComponent.options`. |
74
+ | [RenderBackend](interfaces/RenderBackend.md) | Everything renderer-specific the engine does, behind one small interface so a [World](classes/World.md) can run on WebGL or WebGPU. |
54
75
 
55
76
  ## Type Aliases
56
77
 
@@ -74,12 +95,44 @@
74
95
  | [SpawnPrefabSource](type-aliases/SpawnPrefabSource.md) | - |
75
96
  | [SpawnPrefabOptions](type-aliases/SpawnPrefabOptions.md) | - |
76
97
  | [PrefabAsset](type-aliases/PrefabAsset.md) | Envelope of a `.prefab` asset file (and, later, `.scene` assets — same shape with `type: "scene"`). `snapshot` is the same columnar world-snapshot format `hydrateWorldFromSnapshotDetailed` consumes, with entity ids renumbered 1..N and every entity carrying a `PrefabNode` identity. |
98
+ | [EcsRenderer](type-aliases/EcsRenderer.md) | A renderer a [World](classes/World.md) can run on: three's classic `WebGLRenderer`, or `WebGPURenderer` from `three/webgpu` (which falls back to WebGL 2 on its own when the browser has no WebGPU). |
99
+ | [RendererKind](type-aliases/RendererKind.md) | Which renderer family a world is drawing with. |
100
+ | [ScriptErrorPhase](type-aliases/ScriptErrorPhase.md) | Where in a script's life an error happened. |
101
+ | [ScriptErrorSource](type-aliases/ScriptErrorSource.md) | Which kind of script failed. |
102
+ | [ScriptErrorEvent](type-aliases/ScriptErrorEvent.md) | Emitted by `world.onScriptError(...)` the first time a distinct script error occurs. "Distinct" is the combination of script URL, class name, phase and message: ten enemies running the same broken script report once. |
103
+ | [ScriptErrorListener](type-aliases/ScriptErrorListener.md) | Listener registered with `world.onScriptError(...)`. |
104
+ | [ScriptErrorReport](type-aliases/ScriptErrorReport.md) | What a system knows when it reports a script error. |
77
105
  | [MouseButton](type-aliases/MouseButton.md) | - |
78
106
  | [EcsComponentFactoryKind](type-aliases/EcsComponentFactoryKind.md) | - |
79
107
  | [ComponentFactory](type-aliases/ComponentFactory.md) | - |
108
+ | [ScriptBehaviourSystemOptions](type-aliases/ScriptBehaviourSystemOptions.md) | Options for [ScriptBehaviourSystem](classes/ScriptBehaviourSystem.md). |
80
109
  | [SelectionContext](type-aliases/SelectionContext.md) | Optional context that enables raycast-based onSelect / onDeselect dispatch. When provided, pointer/touch taps on the canvas fire a raycast against the scene. If the hit object (or any ancestor) carries userData.entityId, every Behaviour instance for that entity receives onSelect(); the previously selected entity's instances receive onDeselect(). |
110
+ | [UiCanvasLike](type-aliases/UiCanvasLike.md) | Structural canvas type so tests can inject a stub with no DOM. |
111
+ | [XrHandPoseEventDetail](type-aliases/XrHandPoseEventDetail.md) | - |
112
+ | [XrHitResult](type-aliases/XrHitResult.md) | Where a ray met the real world. |
81
113
  | [KeyboardKey](type-aliases/KeyboardKey.md) | - |
82
114
  | [ModuleLoader](type-aliases/ModuleLoader.md) | Resolves a script URL to its ES module namespace. |
115
+ | [XrHandJointName](type-aliases/XrHandJointName.md) | The 25 joints of the WebXR hand skeleton. |
116
+ | [XrFinger](type-aliases/XrFinger.md) | - |
117
+ | [XrHandJoints](type-aliases/XrHandJoints.md) | Joint positions, in world space. |
118
+ | [XrFingerCurl](type-aliases/XrFingerCurl.md) | How curled one finger is. |
119
+ | [XrPalmPose](type-aliases/XrPalmPose.md) | An orthonormal frame attached to the palm. |
120
+ | [XrHandShape](type-aliases/XrHandShape.md) | Everything a pose is matched against, derived once per hand per frame. |
121
+ | [XrFingerTarget](type-aliases/XrFingerTarget.md) | Target curl for one finger, with the slack allowed around it. |
122
+ | [XrHandPoseAxis](type-aliases/XrHandPoseAxis.md) | Which way something on the hand must point for the pose to count. |
123
+ | [XrHandPoseDirection](type-aliases/XrHandPoseDirection.md) | - |
124
+ | [XrHandPoseOrientation](type-aliases/XrHandPoseOrientation.md) | - |
125
+ | [XrHandPoseDefinition](type-aliases/XrHandPoseDefinition.md) | A matchable hand pose. |
126
+ | [XrHandPoseMatch](type-aliases/XrHandPoseMatch.md) | - |
127
+ | [XrHandPoseContext](type-aliases/XrHandPoseContext.md) | Extra world context needed only by head-relative orientation conditions. |
128
+ | [XrHandPoseEvent](type-aliases/XrHandPoseEvent.md) | - |
129
+ | [HandPoseTrackerOptions](type-aliases/HandPoseTrackerOptions.md) | - |
130
+ | [HandMaterialOptions](type-aliases/HandMaterialOptions.md) | Materials for tracked-hand meshes. |
131
+ | [VelocitySample](type-aliases/VelocitySample.md) | - |
132
+ | [XrHandedness](type-aliases/XrHandedness.md) | Which hand an input source belongs to (`none` for gaze / single-source devices). |
133
+ | [XrInputKind](type-aliases/XrInputKind.md) | How an input source is physically driven. |
134
+ | [XrInputState](type-aliases/XrInputState.md) | One frame of normalized input for a single source. |
135
+ | [XrCapabilities](type-aliases/XrCapabilities.md) | What the ACTIVE session actually granted us. |
83
136
 
84
137
  ## Variables
85
138
 
@@ -87,14 +140,38 @@
87
140
  | ------ | ------ |
88
141
  | [HYDRATABLE\_ENTITY\_KINDS](variables/HYDRATABLE_ENTITY_KINDS.md) | - |
89
142
  | [NODE\_KEY\_SEPARATOR](variables/NODE_KEY_SEPARATOR.md) | - |
90
- | [ADDED\_NODE\_MARKER\_COMPONENT](variables/ADDED_NODE_MARKER_COMPONENT.md) | Reserved override "component" marking a node ADDED by the host document inside a nested instance region (`"<nodeKey>|+node|"`). File patching trusts stored overrides (the old base is unavailable), so without the marker a host-authored node inside the region would be indistinguishable from a node the child prefab removed — and get deleted. |
143
+ | [ADDED\_NODE\_MARKER\_COMPONENT](variables/ADDED_NODE_MARKER_COMPONENT.md) | Reserved override "component" marking a node ADDED by the host document inside a nested instance region (`"&lt;nodeKey&gt;|+node|"`). File patching trusts stored overrides (the old base is unavailable), so without the marker a host-authored node inside the region would be indistinguishable from a node the child prefab removed — and get deleted. |
91
144
  | [OVERRIDE\_DIFF\_EXCLUDED\_COMPONENTS](variables/OVERRIDE_DIFF_EXCLUDED_COMPONENTS.md) | Components that never participate in override diffing/merging. |
92
145
  | [OVERRIDE\_ROOT\_EXCLUDED\_COMPONENTS](variables/OVERRIDE_ROOT_EXCLUDED_COMPONENTS.md) | Components excluded ONLY on the instance ROOT node — these are per-instance by definition (where the instance sits in the scene and what it's called). |
93
146
  | [PREFAB\_FILE\_VERSION](variables/PREFAB_FILE_VERSION.md) | - |
94
147
  | [PREFAB\_FILE\_VERSION\_NESTED](variables/PREFAB_FILE_VERSION_NESTED.md) | Written for files containing NESTED instances (parse accepts either). |
148
+ | [webglBackend](variables/webglBackend.md) | The default [RenderBackend](interfaces/RenderBackend.md): three's `WebGLRenderer`, post-processing through `EffectComposer`, GLSL chroma key. |
149
+ | [DEFAULT\_SCRIPT\_ERROR\_RETRY\_DELAY](variables/DEFAULT_SCRIPT_ERROR_RETRY_DELAY.md) | Seconds a Behaviour waits after an error (load, `init()` or `update()`) before it is re-initialised. Without the wait a script that throws every frame was torn down and rebuilt every frame. |
95
150
  | [SCRIPT\_OBJECT\_ROOT\_FLAG](variables/SCRIPT_OBJECT_ROOT_FLAG.md) | Tags the Object3D a script's `build()` returned, so reloads can find/remove it. |
151
+ | [XR\_HOVER\_SHELL\_FLAG](variables/XR_HOVER_SHELL_FLAG.md) | Marks shell meshes so they are never mistaken for scene content. |
96
152
  | [KeyboardKeys](variables/KeyboardKeys.md) | - |
97
153
  | [SHARED\_MODEL\_RESOURCE\_FLAG](variables/SHARED_MODEL_RESOURCE_FLAG.md) | userData flag set on geometries/materials that back shared (cached) model scenes. Entity disposal must skip these — other live clones and future spawns reference the same GPU resources. |
154
+ | [XR\_FINGERS](variables/XR_FINGERS.md) | - |
155
+ | [PINCH\_FINGERS](variables/PINCH_FINGERS.md) | Fingers that can oppose the thumb. The thumb cannot pinch itself. |
156
+ | [FALLBACK\_HAND\_SCALE](variables/FALLBACK_HAND_SCALE.md) | Fallback palm width when the hand is too poorly tracked to measure. |
157
+ | [STRAIGHT\_COS](variables/STRAIGHT_COS.md) | Straightness normalization. |
158
+ | [CURLED\_COS](variables/CURLED_COS.md) | - |
159
+ | [MATCH\_FALLOFF](variables/MATCH_FALLOFF.md) | Confidence falls to zero this far outside a target's tolerance band. |
160
+ | [DEFAULT\_DIRECTION\_TOLERANCE](variables/DEFAULT_DIRECTION_TOLERANCE.md) | Default cone for per-finger direction constraints. |
161
+ | [DEFAULT\_ENTER\_CONFIDENCE](variables/DEFAULT_ENTER_CONFIDENCE.md) | - |
162
+ | [DEFAULT\_EXIT\_CONFIDENCE](variables/DEFAULT_EXIT_CONFIDENCE.md) | - |
163
+ | [DEFAULT\_MIN\_HOLD\_SECONDS](variables/DEFAULT_MIN_HOLD_SECONDS.md) | - |
164
+ | [DEFAULT\_LOST\_GRACE\_SECONDS](variables/DEFAULT_LOST_GRACE_SECONDS.md) | - |
165
+ | [HAND\_POSE\_PRESETS](variables/HAND_POSE_PRESETS.md) | Built-in poses, keyed by id. |
166
+ | [HAND\_POSE\_PRESET\_IDS](variables/HAND_POSE_PRESET_IDS.md) | Preset ids, in the order the editor lists them. |
167
+ | [ARC\_GRAVITY](variables/ARC_GRAVITY.md) | Downward acceleration applied to the aim curve, m/s². |
168
+ | [ARC\_SPEED](variables/ARC_SPEED.md) | Launch speed of the virtual projectile, m/s. Tuned for ~5-8m reach. |
169
+ | [ARC\_STEPS](variables/ARC_STEPS.md) | Samples along the curve. Enough to look smooth without wasting raycasts. |
170
+ | [ARC\_MAX\_TIME](variables/ARC_MAX_TIME.md) | Seconds of flight to simulate before giving up on finding ground. |
171
+ | [VELOCITY\_SAMPLES](variables/VELOCITY_SAMPLES.md) | Samples retained. ~5 frames ≈ 55ms at 90Hz — long enough to smooth noise. |
172
+ | [MAX\_SAMPLE\_AGE\_SECONDS](variables/MAX_SAMPLE_AGE_SECONDS.md) | Samples older than this are ignored on release. |
173
+ | [MAX\_PLAUSIBLE\_SPEED](variables/MAX_PLAUSIBLE_SPEED.md) | Fastest hand motion treated as real, in metres/second. |
174
+ | [NO\_XR\_CAPABILITIES](variables/NO_XR_CAPABILITIES.md) | Capabilities for "no session running" — every feature off. |
98
175
 
99
176
  ## Functions
100
177
 
@@ -126,7 +203,19 @@
126
203
  | [createSelectionTransformStateComponent](functions/createSelectionTransformStateComponent.md) | - |
127
204
  | [createSpriteComponent](functions/createSpriteComponent.md) | - |
128
205
  | [createTransformComponent](functions/createTransformComponent.md) | - |
206
+ | [createUIButtonComponent](functions/createUIButtonComponent.md) | - |
207
+ | [createUIPanelComponent](functions/createUIPanelComponent.md) | - |
208
+ | [createUISliderComponent](functions/createUISliderComponent.md) | - |
209
+ | [createUITextComponent](functions/createUITextComponent.md) | - |
210
+ | [createUIToggleComponent](functions/createUIToggleComponent.md) | - |
211
+ | [createVRTeleportAreaComponent](functions/createVRTeleportAreaComponent.md) | - |
129
212
  | [createVideoComponent](functions/createVideoComponent.md) | - |
213
+ | [createXRAnchorComponent](functions/createXRAnchorComponent.md) | - |
214
+ | [createXRHandPoseComponent](functions/createXRHandPoseComponent.md) | - |
215
+ | [createXRInteractableComponent](functions/createXRInteractableComponent.md) | - |
216
+ | [createXRInteractorComponent](functions/createXRInteractorComponent.md) | - |
217
+ | [createXRInteractorSideComponent](functions/createXRInteractorSideComponent.md) | - |
218
+ | [createXRRigComponent](functions/createXRRigComponent.md) | - |
130
219
  | [registerDefaultComponentFactories](functions/registerDefaultComponentFactories.md) | - |
131
220
  | [registerDefaultFactories](functions/registerDefaultFactories.md) | - |
132
221
  | [buildComponentValueMaps](functions/buildComponentValueMaps.md) | - |
@@ -165,6 +254,23 @@
165
254
  | [resolveDracoDecoderPath](functions/resolveDracoDecoderPath.md) | - |
166
255
  | [loadSharedGltf](functions/loadSharedGltf.md) | Load a GLTF once per URL and share the parsed result, so repeated spawns of the same model skip both the fetch and the parse. The cached scene must never be mounted directly (an Object3D has a single parent) — mount a cloneModelScene() of it. Failed loads are evicted so a retry re-fetches. |
167
256
  | [clearModelCache](functions/clearModelCache.md) | Forget cached models (one URL, or everything). Subsequent loads fetch and parse anew. Does not dispose GPU resources — live clones may still use them. |
257
+ | [computeFingerCurl](functions/computeFingerCurl.md) | Curl for one finger, or null when the finger isn't tracked well enough. |
258
+ | [computePalmWidth](functions/computePalmWidth.md) | Distance across the knuckles — our unit of hand size. |
259
+ | [estimateHandScale](functions/estimateHandScale.md) | Characteristic hand size in metres. |
260
+ | [computePinch](functions/computePinch.md) | How close a fingertip is to the thumb tip. 1 = touching, 0 = far apart. |
261
+ | [computeSpread](functions/computeSpread.md) | Angular separation between two fingers. 0 = parallel, 1 = splayed wide. |
262
+ | [computePalmPose](functions/computePalmPose.md) | Palm frame, used for orientation conditions ("palm up", "thumb toward face"). |
263
+ | [computeHandShape](functions/computeHandShape.md) | Reduce tracked joints to the matchable shape. |
264
+ | [matchHandPose](functions/matchHandPose.md) | Score a live hand against a pose. |
265
+ | [getHandPosePreset](functions/getHandPosePreset.md) | A deep copy of a preset. |
266
+ | [cloneHandPose](functions/cloneHandPose.md) | - |
267
+ | [handPoseFromCurls](functions/handPoseFromCurls.md) | Build a pose from five curl values — the shape the editor's sliders and the AI tools produce. |
268
+ | [createHandMaterial](functions/createHandMaterial.md) | Build the material for a preset. |
269
+ | [applyHandMaterial](functions/applyHandMaterial.md) | Apply a preset material to every mesh under a hand model. |
270
+ | [sampleTeleportArc](functions/sampleTeleportArc.md) | Sample a ballistic curve starting at `origin` heading along `direction`. |
271
+ | [arcGroundCrossing](functions/arcGroundCrossing.md) | Where a sampled arc first crosses `groundY` going downward, or null. |
272
+ | [angularVelocityFrom](functions/angularVelocityFrom.md) | Angular velocity from a rotation delta, as an axis-angle vector (rad/s). |
273
+ | [readXrCapabilities](functions/readXrCapabilities.md) | Read granted features off a live session. |
168
274
 
169
275
  ## References
170
276
 
@@ -180,6 +286,12 @@ Re-exports [Behaviour](../Behaviour/classes/Behaviour.md)
180
286
 
181
287
  ***
182
288
 
289
+ ### UiInteractionEvent
290
+
291
+ Re-exports [UiInteractionEvent](../Behaviour/type-aliases/UiInteractionEvent.md)
292
+
293
+ ***
294
+
183
295
  ### CoreComponents
184
296
 
185
297
  Renames and re-exports [components](../components/index.md)
@@ -0,0 +1,20 @@
1
+ [**@relu-interactives/spatial-ecs**](../../index.md)
2
+
3
+ ***
4
+
5
+ [@relu-interactives/spatial-ecs](../../index.md) / [index](../index.md) / ChromaKeyOptions
6
+
7
+ # Interface: ChromaKeyOptions
8
+
9
+ Defined in: render/RenderBackend.ts:44
10
+
11
+ Green-screen settings, in the same units as `VideoComponent.options`.
12
+
13
+ ## Properties
14
+
15
+ | Property | Type | Description | Defined in |
16
+ | ------ | ------ | ------ | ------ |
17
+ | <a id="keycolor"></a> `keyColor` | `ColorRepresentation` | Colour to key out (any three.js colour representation, e.g. `"#00ff00"`). | render/RenderBackend.ts:46 |
18
+ | <a id="similarity"></a> `similarity` | `number` | Colour distance below which a pixel is fully transparent. | render/RenderBackend.ts:48 |
19
+ | <a id="smoothness"></a> `smoothness` | `number` | Width of the soft edge above `similarity`. | render/RenderBackend.ts:50 |
20
+ | <a id="spill"></a> `spill` | `number` | How far past the edge the key colour is desaturated (spill removal). | render/RenderBackend.ts:52 |
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Interface: EcsSystem
8
8
 
9
- Defined in: [System.ts:3](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/System.ts#L3)
9
+ Defined in: [System.ts:3](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/System.ts#L3)
10
10
 
11
11
  ## Methods
12
12
 
@@ -16,7 +16,7 @@ Defined in: [System.ts:3](https://github.com/Relu-Interactives/relu-spatial-ecs-
16
16
  update(world, deltaTime): void;
17
17
  ```
18
18
 
19
- Defined in: [System.ts:4](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/System.ts#L4)
19
+ Defined in: [System.ts:4](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/System.ts#L4)
20
20
 
21
21
  #### Parameters
22
22
 
@@ -37,7 +37,7 @@ Defined in: [System.ts:4](https://github.com/Relu-Interactives/relu-spatial-ecs-
37
37
  optional dispose(world): void;
38
38
  ```
39
39
 
40
- Defined in: [System.ts:5](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/System.ts#L5)
40
+ Defined in: [System.ts:5](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/System.ts#L5)
41
41
 
42
42
  #### Parameters
43
43
 
@@ -0,0 +1,21 @@
1
+ [**@relu-interactives/spatial-ecs**](../../index.md)
2
+
3
+ ***
4
+
5
+ [@relu-interactives/spatial-ecs](../../index.md) / [index](../index.md) / PostprocessingBuildContext
6
+
7
+ # Interface: PostprocessingBuildContext
8
+
9
+ Defined in: render/RenderBackend.ts:33
10
+
11
+ Everything a backend needs to build a post-processing chain.
12
+
13
+ ## Properties
14
+
15
+ | Property | Type | Description | Defined in |
16
+ | ------ | ------ | ------ | ------ |
17
+ | <a id="renderer"></a> `renderer` | [`EcsRenderer`](../type-aliases/EcsRenderer.md) | - | render/RenderBackend.ts:34 |
18
+ | <a id="scene"></a> `scene` | `Scene` | - | render/RenderBackend.ts:35 |
19
+ | <a id="camera"></a> `camera` | `PerspectiveCamera` | - | render/RenderBackend.ts:36 |
20
+ | <a id="values"></a> `values` | [`PostprocessingState`](../../components/type-aliases/PostprocessingState.md) | The scene's current `Postprocessing.values` (`postEnabled` is `true`). | render/RenderBackend.ts:38 |
21
+ | <a id="world"></a> `world?` | [`World`](../classes/World.md) | The world being rendered, when known (used to scope one-time warnings). | render/RenderBackend.ts:40 |
@@ -0,0 +1,84 @@
1
+ [**@relu-interactives/spatial-ecs**](../../index.md)
2
+
3
+ ***
4
+
5
+ [@relu-interactives/spatial-ecs](../../index.md) / [index](../index.md) / PostprocessingPipeline
6
+
7
+ # Interface: PostprocessingPipeline
8
+
9
+ Defined in: render/RenderBackend.ts:25
10
+
11
+ A built post-processing chain. `RenderSystem` calls `render()` in place of
12
+ `renderer.render()` while it is active.
13
+
14
+ `setSize` / `setPixelRatio` are optional: a WebGL `EffectComposer` needs
15
+ them, while a WebGPU `RenderPipeline` reads the renderer's size every frame.
16
+
17
+ ## Methods
18
+
19
+ ### render()
20
+
21
+ ```ts
22
+ render(): void;
23
+ ```
24
+
25
+ Defined in: render/RenderBackend.ts:26
26
+
27
+ #### Returns
28
+
29
+ `void`
30
+
31
+ ***
32
+
33
+ ### setSize()?
34
+
35
+ ```ts
36
+ optional setSize(width, height): void;
37
+ ```
38
+
39
+ Defined in: render/RenderBackend.ts:27
40
+
41
+ #### Parameters
42
+
43
+ | Parameter | Type |
44
+ | ------ | ------ |
45
+ | `width` | `number` |
46
+ | `height` | `number` |
47
+
48
+ #### Returns
49
+
50
+ `void`
51
+
52
+ ***
53
+
54
+ ### setPixelRatio()?
55
+
56
+ ```ts
57
+ optional setPixelRatio(pixelRatio): void;
58
+ ```
59
+
60
+ Defined in: render/RenderBackend.ts:28
61
+
62
+ #### Parameters
63
+
64
+ | Parameter | Type |
65
+ | ------ | ------ |
66
+ | `pixelRatio` | `number` |
67
+
68
+ #### Returns
69
+
70
+ `void`
71
+
72
+ ***
73
+
74
+ ### dispose()
75
+
76
+ ```ts
77
+ dispose(): void;
78
+ ```
79
+
80
+ Defined in: render/RenderBackend.ts:29
81
+
82
+ #### Returns
83
+
84
+ `void`
@@ -0,0 +1,168 @@
1
+ [**@relu-interactives/spatial-ecs**](../../index.md)
2
+
3
+ ***
4
+
5
+ [@relu-interactives/spatial-ecs](../../index.md) / [index](../index.md) / RenderBackend
6
+
7
+ # Interface: RenderBackend
8
+
9
+ Defined in: render/RenderBackend.ts:63
10
+
11
+ Everything renderer-specific the engine does, behind one small interface so
12
+ a [World](../classes/World.md) can run on WebGL or WebGPU.
13
+
14
+ The default is `webglBackend` (exported from the package root). For a
15
+ `WebGPURenderer`, pass `webgpuBackend` from
16
+ `@relu-interactives/spatial-ecs/webgpu`.
17
+
18
+ ## Properties
19
+
20
+ | Property | Modifier | Type | Description | Defined in |
21
+ | ------ | ------ | ------ | ------ | ------ |
22
+ | <a id="kind"></a> `kind` | `readonly` | [`RendererKind`](../type-aliases/RendererKind.md) | Renderer family this backend drives. | render/RenderBackend.ts:65 |
23
+
24
+ ## Methods
25
+
26
+ ### install()?
27
+
28
+ ```ts
29
+ optional install(world): void;
30
+ ```
31
+
32
+ Defined in: render/RenderBackend.ts:67
33
+
34
+ One-time renderer setup, called once from the `World` constructor.
35
+
36
+ #### Parameters
37
+
38
+ | Parameter | Type |
39
+ | ------ | ------ |
40
+ | `world` | [`World`](../classes/World.md) |
41
+
42
+ #### Returns
43
+
44
+ `void`
45
+
46
+ ***
47
+
48
+ ### prepareAreaLights()?
49
+
50
+ ```ts
51
+ optional prepareAreaLights(world): void;
52
+ ```
53
+
54
+ Defined in: render/RenderBackend.ts:72
55
+
56
+ Called the first time an area light (`RectAreaLight`) is created, so the
57
+ backend can load the lookup tables those lights need. Optional.
58
+
59
+ #### Parameters
60
+
61
+ | Parameter | Type |
62
+ | ------ | ------ |
63
+ | `world` | [`World`](../classes/World.md) |
64
+
65
+ #### Returns
66
+
67
+ `void`
68
+
69
+ ***
70
+
71
+ ### createPostprocessing()
72
+
73
+ ```ts
74
+ createPostprocessing(context): PostprocessingPipeline | null;
75
+ ```
76
+
77
+ Defined in: render/RenderBackend.ts:77
78
+
79
+ Build the post-processing chain for `context.values`. Return `null` to
80
+ render the scene directly (no chain).
81
+
82
+ #### Parameters
83
+
84
+ | Parameter | Type |
85
+ | ------ | ------ |
86
+ | `context` | [`PostprocessingBuildContext`](PostprocessingBuildContext.md) |
87
+
88
+ #### Returns
89
+
90
+ [`PostprocessingPipeline`](PostprocessingPipeline.md) \| `null`
91
+
92
+ ***
93
+
94
+ ### updatePostprocessing()?
95
+
96
+ ```ts
97
+ optional updatePostprocessing(
98
+ pipeline,
99
+ previous,
100
+ next): boolean;
101
+ ```
102
+
103
+ Defined in: render/RenderBackend.ts:86
104
+
105
+ Apply a values change to an existing chain without rebuilding it. Return
106
+ `true` when the chain was updated in place, `false` when the change is
107
+ structural (an effect switched on or off) and the caller must rebuild.
108
+ When omitted, every change rebuilds.
109
+
110
+ #### Parameters
111
+
112
+ | Parameter | Type |
113
+ | ------ | ------ |
114
+ | `pipeline` | [`PostprocessingPipeline`](PostprocessingPipeline.md) |
115
+ | `previous` | [`PostprocessingState`](../../components/type-aliases/PostprocessingState.md) |
116
+ | `next` | [`PostprocessingState`](../../components/type-aliases/PostprocessingState.md) |
117
+
118
+ #### Returns
119
+
120
+ `boolean`
121
+
122
+ ***
123
+
124
+ ### createChromaKeyMaterial()
125
+
126
+ ```ts
127
+ createChromaKeyMaterial(texture, options): Material;
128
+ ```
129
+
130
+ Defined in: render/RenderBackend.ts:92
131
+
132
+ Material that renders `texture` with `options.keyColor` keyed out.
133
+
134
+ #### Parameters
135
+
136
+ | Parameter | Type |
137
+ | ------ | ------ |
138
+ | `texture` | `Texture` |
139
+ | `options` | [`ChromaKeyOptions`](ChromaKeyOptions.md) |
140
+
141
+ #### Returns
142
+
143
+ `Material`
144
+
145
+ ***
146
+
147
+ ### updateChromaKeyMaterial()
148
+
149
+ ```ts
150
+ updateChromaKeyMaterial(material, options): boolean;
151
+ ```
152
+
153
+ Defined in: render/RenderBackend.ts:101
154
+
155
+ Push new options into a material made by [createChromaKeyMaterial](#createchromakeymaterial).
156
+ Returns `false` when `material` is not one of this backend's chroma-key
157
+ materials.
158
+
159
+ #### Parameters
160
+
161
+ | Parameter | Type |
162
+ | ------ | ------ |
163
+ | `material` | `Material` |
164
+ | `options` | [`ChromaKeyOptions`](ChromaKeyOptions.md) |
165
+
166
+ #### Returns
167
+
168
+ `boolean`
@@ -6,21 +6,21 @@
6
6
 
7
7
  # Interface: StateMachine
8
8
 
9
- Defined in: [AnimationStateMachine.ts:3](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L3)
9
+ Defined in: [AnimationStateMachine.ts:3](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L3)
10
10
 
11
11
  ## Properties
12
12
 
13
13
  | Property | Type | Defined in |
14
14
  | ------ | ------ | ------ |
15
- | <a id="name"></a> `name` | `string` | [AnimationStateMachine.ts:4](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L4) |
16
- | <a id="clip"></a> `clip` | `AnimationClip` | [AnimationStateMachine.ts:5](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L5) |
17
- | <a id="clipid"></a> `clipId` | `string` \| `null` | [AnimationStateMachine.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L6) |
18
- | <a id="loop"></a> `loop` | `boolean` | [AnimationStateMachine.ts:7](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L7) |
19
- | <a id="isplaying"></a> `isPlaying` | `boolean` | [AnimationStateMachine.ts:8](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L8) |
20
- | <a id="ispaused"></a> `isPaused` | `boolean` | [AnimationStateMachine.ts:9](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L9) |
21
- | <a id="onstart"></a> `onStart` | () => `void` | [AnimationStateMachine.ts:10](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L10) |
22
- | <a id="onplaying"></a> `onPlaying` | () => `void` | [AnimationStateMachine.ts:11](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L11) |
23
- | <a id="onend"></a> `onEnd` | () => `void` | [AnimationStateMachine.ts:12](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L12) |
24
- | <a id="play"></a> `play` | () => `void` | [AnimationStateMachine.ts:13](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L13) |
25
- | <a id="pause"></a> `pause` | () => `void` | [AnimationStateMachine.ts:14](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L14) |
26
- | <a id="stop"></a> `stop` | () => `void` | [AnimationStateMachine.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L15) |
15
+ | <a id="name"></a> `name` | `string` | [AnimationStateMachine.ts:4](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L4) |
16
+ | <a id="clip"></a> `clip` | `AnimationClip` | [AnimationStateMachine.ts:5](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L5) |
17
+ | <a id="clipid"></a> `clipId` | `string` \| `null` | [AnimationStateMachine.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L6) |
18
+ | <a id="loop"></a> `loop` | `boolean` | [AnimationStateMachine.ts:7](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L7) |
19
+ | <a id="isplaying"></a> `isPlaying` | `boolean` | [AnimationStateMachine.ts:8](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L8) |
20
+ | <a id="ispaused"></a> `isPaused` | `boolean` | [AnimationStateMachine.ts:9](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L9) |
21
+ | <a id="onstart"></a> `onStart` | () => `void` | [AnimationStateMachine.ts:10](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L10) |
22
+ | <a id="onplaying"></a> `onPlaying` | () => `void` | [AnimationStateMachine.ts:11](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L11) |
23
+ | <a id="onend"></a> `onEnd` | () => `void` | [AnimationStateMachine.ts:12](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L12) |
24
+ | <a id="play"></a> `play` | () => `void` | [AnimationStateMachine.ts:13](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L13) |
25
+ | <a id="pause"></a> `pause` | () => `void` | [AnimationStateMachine.ts:14](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L14) |
26
+ | <a id="stop"></a> `stop` | () => `void` | [AnimationStateMachine.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L15) |
@@ -14,12 +14,12 @@ type AnimationStateCallbacks = {
14
14
  };
15
15
  ```
16
16
 
17
- Defined in: [AnimationStateMachine.ts:18](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L18)
17
+ Defined in: [AnimationStateMachine.ts:18](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L18)
18
18
 
19
19
  ## Properties
20
20
 
21
21
  | Property | Type | Defined in |
22
22
  | ------ | ------ | ------ |
23
- | <a id="onstart"></a> `onStart?` | () => `void` | [AnimationStateMachine.ts:19](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L19) |
24
- | <a id="onplaying"></a> `onPlaying?` | () => `void` | [AnimationStateMachine.ts:20](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L20) |
25
- | <a id="onend"></a> `onEnd?` | () => `void` | [AnimationStateMachine.ts:21](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/AnimationStateMachine.ts#L21) |
23
+ | <a id="onstart"></a> `onStart?` | () => `void` | [AnimationStateMachine.ts:19](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L19) |
24
+ | <a id="onplaying"></a> `onPlaying?` | () => `void` | [AnimationStateMachine.ts:20](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L20) |
25
+ | <a id="onend"></a> `onEnd?` | () => `void` | [AnimationStateMachine.ts:21](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/AnimationStateMachine.ts#L21) |
@@ -13,11 +13,11 @@ type ApplyPrefabToSnapshotResult = {
13
13
  };
14
14
  ```
15
15
 
16
- Defined in: [prefab/applyPrefabToSnapshot.ts:112](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/prefab/applyPrefabToSnapshot.ts#L112)
16
+ Defined in: [prefab/applyPrefabToSnapshot.ts:112](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/prefab/applyPrefabToSnapshot.ts#L112)
17
17
 
18
18
  ## Properties
19
19
 
20
20
  | Property | Type | Defined in |
21
21
  | ------ | ------ | ------ |
22
- | <a id="snapshot"></a> `snapshot` | [`SubtreeSnapshot`](SubtreeSnapshot.md) | [prefab/applyPrefabToSnapshot.ts:113](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/prefab/applyPrefabToSnapshot.ts#L113) |
23
- | <a id="changed"></a> `changed` | `boolean` | [prefab/applyPrefabToSnapshot.ts:114](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/prefab/applyPrefabToSnapshot.ts#L114) |
22
+ | <a id="snapshot"></a> `snapshot` | [`SubtreeSnapshot`](SubtreeSnapshot.md) | [prefab/applyPrefabToSnapshot.ts:113](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/prefab/applyPrefabToSnapshot.ts#L113) |
23
+ | <a id="changed"></a> `changed` | `boolean` | [prefab/applyPrefabToSnapshot.ts:114](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/prefab/applyPrefabToSnapshot.ts#L114) |
@@ -10,7 +10,7 @@
10
10
  type ComponentFactory = (world, entityId, ...args) => unknown;
11
11
  ```
12
12
 
13
- Defined in: [systems/ObjectManagementSystem.ts:60](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/systems/ObjectManagementSystem.ts#L60)
13
+ Defined in: [systems/ObjectManagementSystem.ts:79](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/systems/ObjectManagementSystem.ts#L79)
14
14
 
15
15
  ## Parameters
16
16