@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.
- package/dist/{System-V_mv07le.d.cts → System-8D-XBDKZ.d.cts} +734 -8
- package/dist/{System-V_mv07le.d.ts → System-DPMAW30g.d.ts} +734 -8
- package/dist/{XRHandPose-CU3vNFuS.d.ts → XRHandPose-G0Dl-F0w.d.ts} +93 -3
- package/dist/{XRHandPose-CQTLGxFC.d.cts → XRHandPose-VQMT1WXj.d.cts} +93 -3
- package/dist/animation/index.cjs +252 -0
- package/dist/animation/index.cjs.map +1 -0
- package/dist/animation/index.d.cts +100 -0
- package/dist/animation/index.d.ts +100 -0
- package/dist/animation/index.js +4 -0
- package/dist/animation/index.js.map +1 -0
- package/dist/chunk-CKTHDXPS.js +11 -0
- package/dist/chunk-CKTHDXPS.js.map +1 -0
- package/dist/chunk-G4XJ53LS.js +1237 -0
- package/dist/chunk-G4XJ53LS.js.map +1 -0
- package/dist/chunk-GSWC6LLD.js +241 -0
- package/dist/chunk-GSWC6LLD.js.map +1 -0
- package/dist/{chunk-DF5SSRN6.js → chunk-JIJQFW6P.js} +1216 -2920
- package/dist/chunk-JIJQFW6P.js.map +1 -0
- package/dist/{chunk-BUEKOSR5.js → chunk-NNDUOQ7O.js} +188 -14
- package/dist/chunk-NNDUOQ7O.js.map +1 -0
- package/dist/chunk-OHCNPPMX.js +334 -0
- package/dist/chunk-OHCNPPMX.js.map +1 -0
- package/dist/{chunk-RXBLOO5B.js → chunk-SGF73YTF.js} +105 -715
- package/dist/chunk-SGF73YTF.js.map +1 -0
- package/dist/chunk-U727NTWQ.js +2856 -0
- package/dist/chunk-U727NTWQ.js.map +1 -0
- package/dist/{chunk-OY7ZODZP.js → chunk-XE4OXN2W.js} +3 -9
- package/dist/chunk-XE4OXN2W.js.map +1 -0
- package/dist/{chunk-OWQSESTO.js → chunk-XU2DVWCP.js} +4 -3
- package/dist/chunk-XU2DVWCP.js.map +1 -0
- package/dist/components/index.cjs +183 -10
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +5 -3
- package/dist/components/index.d.ts +5 -3
- package/dist/components/index.js +3 -2
- package/dist/docs/api/Behaviour/classes/Behaviour.md +366 -79
- package/dist/docs/api/Behaviour/index.md +7 -3
- package/dist/docs/api/Behaviour/type-aliases/UiInteractionEvent.md +35 -0
- package/dist/docs/api/Component/classes/Component.md +14 -1
- package/dist/docs/api/components/classes/AnimationComponent.md +26 -26
- package/dist/docs/api/components/classes/AudioComponent.md +19 -19
- package/dist/docs/api/components/classes/CameraComponent.md +14 -14
- package/dist/docs/api/components/classes/EntityType.md +4 -4
- package/dist/docs/api/components/classes/Environment.md +5 -4
- package/dist/docs/api/components/classes/ImageComponent.md +7 -7
- package/dist/docs/api/components/classes/ImageTarget.md +8 -8
- package/dist/docs/api/components/classes/ImageTargetAnchor.md +4 -4
- package/dist/docs/api/components/classes/InstanceSlotComponent.md +4 -4
- package/dist/docs/api/components/classes/InstancedMeshComponent.md +10 -10
- package/dist/docs/api/components/classes/LightComponent.md +6 -6
- package/dist/docs/api/components/classes/MaterialComponent.md +16 -16
- package/dist/docs/api/components/classes/MeshComponent.md +3 -3
- package/dist/docs/api/components/classes/MeshGeometryComponent.md +9 -9
- package/dist/docs/api/components/classes/ModelComponent.md +8 -5
- package/dist/docs/api/components/classes/Name.md +3 -3
- package/dist/docs/api/components/classes/Object3DRef.md +4 -4
- package/dist/docs/api/components/classes/ParentId.md +3 -3
- package/dist/docs/api/components/classes/PhysicsComponent.md +7 -6
- package/dist/docs/api/components/classes/Postprocessing.md +3 -3
- package/dist/docs/api/components/classes/PrefabInstance.md +5 -5
- package/dist/docs/api/components/classes/PrefabNode.md +3 -3
- package/dist/docs/api/components/classes/ScriptComponent.md +5 -5
- package/dist/docs/api/components/classes/ScriptObjectComponent.md +9 -9
- package/dist/docs/api/components/classes/Selectable.md +3 -3
- package/dist/docs/api/components/classes/SelectionTransformState.md +5 -5
- package/dist/docs/api/components/classes/SpriteComponent.md +7 -7
- package/dist/docs/api/components/classes/TransformComponent.md +12 -12
- package/dist/docs/api/components/classes/UIButtonComponent.md +63 -0
- package/dist/docs/api/components/classes/UIPanelComponent.md +62 -0
- package/dist/docs/api/components/classes/UISliderComponent.md +59 -0
- package/dist/docs/api/components/classes/UITextComponent.md +59 -0
- package/dist/docs/api/components/classes/UIToggleComponent.md +56 -0
- package/dist/docs/api/components/classes/VRTeleportAreaComponent.md +53 -0
- package/dist/docs/api/components/classes/VideoComponent.md +28 -28
- package/dist/docs/api/components/classes/XRAnchorComponent.md +64 -0
- package/dist/docs/api/components/classes/XREnvironmentComponent.md +64 -0
- package/dist/docs/api/components/classes/XRHandPoseComponent.md +50 -0
- package/dist/docs/api/components/classes/XRInteractableComponent.md +74 -0
- package/dist/docs/api/components/classes/XRInteractorComponent.md +57 -0
- package/dist/docs/api/components/classes/XRInteractorSideComponent.md +50 -0
- package/dist/docs/api/components/classes/XRRigComponent.md +68 -0
- package/dist/docs/api/components/functions/createAttachPoint.md +25 -0
- package/dist/docs/api/components/functions/createHandPoseEntry.md +25 -0
- package/dist/docs/api/components/functions/defaultMaterialValue.md +1 -1
- package/dist/docs/api/components/functions/handPoseDefinitionFor.md +33 -0
- package/dist/docs/api/components/functions/normalizeEnvironmentLighting.md +30 -0
- package/dist/docs/api/components/functions/normalizePhysicsState.md +1 -1
- package/dist/docs/api/components/functions/setModelLoadState.md +33 -0
- package/dist/docs/api/components/functions/setPhysicsLiveRef.md +3 -9
- package/dist/docs/api/components/index.md +61 -4
- package/dist/docs/api/components/type-aliases/AnimationComponentOptions.md +9 -9
- package/dist/docs/api/components/type-aliases/CameraComponentOptions.md +13 -13
- package/dist/docs/api/components/type-aliases/CameraProjection.md +1 -1
- package/dist/docs/api/components/type-aliases/CameraRuntimeType.md +5 -3
- package/dist/docs/api/components/type-aliases/ColliderShape.md +1 -1
- package/dist/docs/api/components/type-aliases/ColliderState.md +20 -20
- package/dist/docs/api/components/type-aliases/CubeMeshParameters.md +4 -4
- package/dist/docs/api/components/type-aliases/EditableMeshObjectKind.md +1 -1
- package/dist/docs/api/components/type-aliases/EnvironmentFogState.md +8 -8
- package/dist/docs/api/components/type-aliases/EnvironmentFogType.md +1 -1
- package/dist/docs/api/components/type-aliases/EnvironmentGradientEffect.md +1 -1
- package/dist/docs/api/components/type-aliases/EnvironmentLightingState.md +40 -0
- package/dist/docs/api/components/type-aliases/EnvironmentSkyboxImageProjection.md +22 -0
- package/dist/docs/api/components/type-aliases/EnvironmentSkyboxState.md +9 -7
- package/dist/docs/api/components/type-aliases/EnvironmentSkyboxType.md +1 -1
- package/dist/docs/api/components/type-aliases/EnvironmentState.md +7 -5
- package/dist/docs/api/components/type-aliases/EnvironmentToneMapping.md +16 -0
- package/dist/docs/api/components/type-aliases/ImageTargetAnchorOptions.md +3 -3
- package/dist/docs/api/components/type-aliases/ImageTargetReference.md +7 -7
- package/dist/docs/api/components/type-aliases/InstanceTransform.md +13 -13
- package/dist/docs/api/components/type-aliases/InstancedMeshKind.md +1 -1
- package/dist/docs/api/components/type-aliases/LightShadowState.md +37 -0
- package/dist/docs/api/components/type-aliases/LightValueState.md +13 -11
- package/dist/docs/api/components/type-aliases/MaterialTypeValue.md +1 -1
- package/dist/docs/api/components/type-aliases/MaterialValueState.md +28 -28
- package/dist/docs/api/components/type-aliases/MeshGeometryParameters.md +1 -1
- package/dist/docs/api/components/type-aliases/MeshGeometryParametersByKind.md +7 -7
- package/dist/docs/api/components/type-aliases/ModelLoadState.md +15 -0
- package/dist/docs/api/components/type-aliases/PhysicsState.md +3 -3
- package/dist/docs/api/components/type-aliases/PlaneMeshParameters.md +3 -3
- package/dist/docs/api/components/type-aliases/PostprocessingState.md +62 -62
- package/dist/docs/api/components/type-aliases/RadiusHeightMeshParameters.md +3 -3
- package/dist/docs/api/components/type-aliases/RadiusMeshParameters.md +2 -2
- package/dist/docs/api/components/type-aliases/RigidbodyState.md +17 -17
- package/dist/docs/api/components/type-aliases/RigidbodyType.md +1 -1
- package/dist/docs/api/components/type-aliases/ScriptEntry.md +8 -8
- package/dist/docs/api/components/type-aliases/ScriptObjectComponentInput.md +1 -1
- package/dist/docs/api/components/type-aliases/ScriptObjectRuntimeState.md +1 -1
- package/dist/docs/api/components/type-aliases/TextureFilteringValue.md +1 -1
- package/dist/docs/api/components/type-aliases/TransformData.md +4 -4
- package/dist/docs/api/components/type-aliases/TransformModeValue.md +1 -1
- package/dist/docs/api/components/type-aliases/TransformSpaceValue.md +1 -1
- package/dist/docs/api/components/type-aliases/UIButtonOptions.md +45 -0
- package/dist/docs/api/components/type-aliases/UIPanelOptions.md +39 -0
- package/dist/docs/api/components/type-aliases/UISliderOptions.md +39 -0
- package/dist/docs/api/components/type-aliases/UITextOptions.md +41 -0
- package/dist/docs/api/components/type-aliases/UIToggleOptions.md +35 -0
- package/dist/docs/api/components/type-aliases/UiFollowMode.md +15 -0
- package/dist/docs/api/components/type-aliases/UiTextAlign.md +13 -0
- package/dist/docs/api/components/type-aliases/UiTextVAlign.md +13 -0
- package/dist/docs/api/components/type-aliases/VRTeleportAreaOptions.md +29 -0
- package/dist/docs/api/components/type-aliases/Vec3.md +4 -4
- package/dist/docs/api/components/type-aliases/VrTeleportShape.md +15 -0
- package/dist/docs/api/components/type-aliases/XRAnchorOptions.md +23 -0
- package/dist/docs/api/components/type-aliases/XRHandPoseOptions.md +23 -0
- package/dist/docs/api/components/type-aliases/XRInteractableOptions.md +75 -0
- package/dist/docs/api/components/type-aliases/XRInteractorOptions.md +37 -0
- package/dist/docs/api/components/type-aliases/XRRigOptions.md +51 -0
- package/dist/docs/api/components/type-aliases/XrAttachPoint.md +53 -0
- package/dist/docs/api/components/type-aliases/XrDistanceGrabBehavior.md +19 -0
- package/dist/docs/api/components/type-aliases/XrEnvironmentKind.md +15 -0
- package/dist/docs/api/components/type-aliases/XrEnvironmentOrientation.md +15 -0
- package/dist/docs/api/components/type-aliases/XrEnvironmentPhysics.md +25 -0
- package/dist/docs/api/components/type-aliases/XrGrabGesture.md +19 -0
- package/dist/docs/api/components/type-aliases/XrGrabHands.md +20 -0
- package/dist/docs/api/components/type-aliases/XrGrabReach.md +20 -0
- package/dist/docs/api/components/type-aliases/XrHandPoseEntry.md +49 -0
- package/dist/docs/api/components/type-aliases/XrHandPreset.md +19 -0
- package/dist/docs/api/components/type-aliases/XrInteractorSide.md +15 -0
- package/dist/docs/api/components/type-aliases/XrInteractorType.md +13 -0
- package/dist/docs/api/components/type-aliases/XrLocomotionMode.md +15 -0
- package/dist/docs/api/components/type-aliases/XrTrackingOrigin.md +24 -0
- package/dist/docs/api/components/type-aliases/XrTwoHandRotation.md +15 -0
- package/dist/docs/api/components/variables/DEFAULT_COLLIDER_STATE.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_LIGHTING.md +15 -0
- package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_STATE.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_INSTANCED_MESH_PARAMETERS.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_INSTANCE_TRANSFORM.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_MESH_GEOMETRY_PARAMETERS.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_PHYSICS_STATE.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_POSE_CURLS.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_POSE_DIRECTIONS.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_POSTPROCESSING_STATE.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_RIGIDBODY_STATE.md +1 -1
- package/dist/docs/api/components/variables/MODEL_NO_PATH_MESSAGE.md +15 -0
- package/dist/docs/api/index/classes/AnimationStateMachine.md +16 -16
- package/dist/docs/api/index/classes/AnimationStateManager.md +13 -13
- package/dist/docs/api/index/classes/AnimationSystem.md +3 -3
- package/dist/docs/api/index/classes/AudioSystem.md +4 -4
- package/dist/docs/api/index/classes/CameraSyncSystem.md +2 -2
- package/dist/docs/api/index/classes/EnvironmentSyncSystem.md +19 -4
- package/dist/docs/api/index/classes/HandPoseTracker.md +114 -0
- package/dist/docs/api/index/classes/InputSystem.md +33 -33
- package/dist/docs/api/index/classes/InstancedMeshSystem.md +2 -2
- package/dist/docs/api/index/classes/LightSyncSystem.md +2 -2
- package/dist/docs/api/index/classes/MaterialSyncSystem.md +3 -3
- package/dist/docs/api/index/classes/MeshGeometrySystem.md +2 -2
- package/dist/docs/api/index/classes/ObjectManagementSystem.md +14 -14
- package/dist/docs/api/index/classes/ObjectVisibilitySystem.md +2 -2
- package/dist/docs/api/index/classes/PhysicsSyncSystem.md +4 -4
- package/dist/docs/api/index/classes/PostprocessingSyncSystem.md +34 -10
- package/dist/docs/api/index/classes/RenderSystem.md +13 -4
- package/dist/docs/api/index/classes/ScriptBehaviourSystem.md +9 -5
- package/dist/docs/api/index/classes/ScriptObject.md +10 -10
- package/dist/docs/api/index/classes/ScriptObjectSystem.md +6 -6
- package/dist/docs/api/index/classes/TeleportAimGate.md +114 -0
- package/dist/docs/api/index/classes/ThrowVelocityTracker.md +89 -0
- package/dist/docs/api/index/classes/TransformSyncSystem.md +2 -2
- package/dist/docs/api/index/classes/UIInteractionSystem.md +60 -0
- package/dist/docs/api/index/classes/UIPanelSystem.md +79 -0
- package/dist/docs/api/index/classes/VRTeleportAreaSystem.md +49 -0
- package/dist/docs/api/index/classes/VideoSystem.md +8 -6
- package/dist/docs/api/index/classes/World.md +282 -100
- package/dist/docs/api/index/classes/XRAnchorSystem.md +90 -0
- package/dist/docs/api/index/classes/XRControllerVisualSystem.md +77 -0
- package/dist/docs/api/index/classes/XREnvironmentSystem.md +137 -0
- package/dist/docs/api/index/classes/XRHandPoseSystem.md +107 -0
- package/dist/docs/api/index/classes/XRHitTestSystem.md +93 -0
- package/dist/docs/api/index/classes/XRHoverVisualSystem.md +76 -0
- package/dist/docs/api/index/classes/XRInputSystem.md +189 -0
- package/dist/docs/api/index/classes/XRInteractionSystem.md +323 -0
- package/dist/docs/api/index/classes/XRLocomotionSystem.md +128 -0
- package/dist/docs/api/index/classes/XRSessionSystem.md +116 -0
- package/dist/docs/api/index/classes/XRTeleportVisualSystem.md +75 -0
- package/dist/docs/api/index/functions/angularVelocityFrom.md +33 -0
- package/dist/docs/api/index/functions/applyHandMaterial.md +26 -0
- package/dist/docs/api/index/functions/applyPrefabToSnapshotInstances.md +1 -1
- package/dist/docs/api/index/functions/arcGroundCrossing.md +30 -0
- package/dist/docs/api/index/functions/buildComponentValueMaps.md +1 -1
- package/dist/docs/api/index/functions/buildNodeKeyMapsFromSnapshot.md +1 -1
- package/dist/docs/api/index/functions/buildNodeMapsFromSnapshot.md +1 -1
- package/dist/docs/api/index/functions/canonicalizeComponentValue.md +1 -1
- package/dist/docs/api/index/functions/clearModelCache.md +1 -1
- package/dist/docs/api/index/functions/clearPrefabCache.md +1 -1
- package/dist/docs/api/index/functions/cloneHandPose.md +23 -0
- package/dist/docs/api/index/functions/collectDiffPaths.md +1 -1
- package/dist/docs/api/index/functions/collectDirectPrefabDependencies.md +1 -1
- package/dist/docs/api/index/functions/collectEntitySubtree.md +1 -1
- package/dist/docs/api/index/functions/collectSnapshotSubtreeIds.md +1 -1
- package/dist/docs/api/index/functions/computeFingerCurl.md +29 -0
- package/dist/docs/api/index/functions/computeHandShape.md +29 -0
- package/dist/docs/api/index/functions/computeInstanceOverrides.md +1 -1
- package/dist/docs/api/index/functions/computePalmPose.md +30 -0
- package/dist/docs/api/index/functions/computePalmWidth.md +25 -0
- package/dist/docs/api/index/functions/computePinch.md +29 -0
- package/dist/docs/api/index/functions/computeSpread.md +33 -0
- package/dist/docs/api/index/functions/createAnimationComponent.md +1 -1
- package/dist/docs/api/index/functions/createAudioComponent.md +1 -1
- package/dist/docs/api/index/functions/createCameraComponent.md +1 -1
- package/dist/docs/api/index/functions/createEntityTypeComponent.md +2 -2
- package/dist/docs/api/index/functions/createEnvironmentComponent.md +1 -1
- package/dist/docs/api/index/functions/createHandMaterial.md +30 -0
- package/dist/docs/api/index/functions/createImageComponent.md +1 -1
- package/dist/docs/api/index/functions/createImageTargetAnchorComponent.md +1 -1
- package/dist/docs/api/index/functions/createImageTargetComponent.md +2 -2
- package/dist/docs/api/index/functions/createInstanceSlotComponent.md +1 -1
- package/dist/docs/api/index/functions/createInstancedMeshComponent.md +1 -1
- package/dist/docs/api/index/functions/createLightComponent.md +2 -2
- package/dist/docs/api/index/functions/createMaterialComponent.md +2 -2
- package/dist/docs/api/index/functions/createMeshComponent.md +1 -1
- package/dist/docs/api/index/functions/createMeshGeometryComponent.md +1 -1
- package/dist/docs/api/index/functions/createModelComponent.md +1 -1
- package/dist/docs/api/index/functions/createNameComponent.md +1 -1
- package/dist/docs/api/index/functions/createObject3DRefComponent.md +1 -1
- package/dist/docs/api/index/functions/createParentIdComponent.md +1 -1
- package/dist/docs/api/index/functions/createPhysicsComponent.md +1 -1
- package/dist/docs/api/index/functions/createPostprocessingComponent.md +1 -1
- package/dist/docs/api/index/functions/createScriptComponent.md +1 -1
- package/dist/docs/api/index/functions/createScriptObjectComponent.md +1 -1
- package/dist/docs/api/index/functions/createSelectableComponent.md +1 -1
- package/dist/docs/api/index/functions/createSelectionTransformStateComponent.md +1 -1
- package/dist/docs/api/index/functions/createSpriteComponent.md +1 -1
- package/dist/docs/api/index/functions/createTransformComponent.md +1 -1
- package/dist/docs/api/index/functions/createUIButtonComponent.md +28 -0
- package/dist/docs/api/index/functions/createUIPanelComponent.md +28 -0
- package/dist/docs/api/index/functions/createUISliderComponent.md +28 -0
- package/dist/docs/api/index/functions/createUITextComponent.md +28 -0
- package/dist/docs/api/index/functions/createUIToggleComponent.md +28 -0
- package/dist/docs/api/index/functions/createVRTeleportAreaComponent.md +28 -0
- package/dist/docs/api/index/functions/createVideoComponent.md +1 -1
- package/dist/docs/api/index/functions/createXRAnchorComponent.md +28 -0
- package/dist/docs/api/index/functions/createXRHandPoseComponent.md +28 -0
- package/dist/docs/api/index/functions/createXRInteractableComponent.md +28 -0
- package/dist/docs/api/index/functions/createXRInteractorComponent.md +28 -0
- package/dist/docs/api/index/functions/createXRInteractorSideComponent.md +28 -0
- package/dist/docs/api/index/functions/createXRRigComponent.md +28 -0
- package/dist/docs/api/index/functions/decanonicalizeComponentValue.md +1 -1
- package/dist/docs/api/index/functions/despawnPrefab.md +1 -1
- package/dist/docs/api/index/functions/encodeOverride.md +1 -1
- package/dist/docs/api/index/functions/estimateHandScale.md +28 -0
- package/dist/docs/api/index/functions/findSnapshotRootEntityIds.md +1 -1
- package/dist/docs/api/index/functions/findTopLevelNestedRegions.md +1 -1
- package/dist/docs/api/index/functions/getHandPosePreset.md +31 -0
- package/dist/docs/api/index/functions/groupOverridePaths.md +1 -1
- package/dist/docs/api/index/functions/handPoseFromCurls.md +42 -0
- package/dist/docs/api/index/functions/hydrateWorldFromSnapshot.md +1 -1
- package/dist/docs/api/index/functions/hydrateWorldFromSnapshotDetailed.md +1 -1
- package/dist/docs/api/index/functions/indexSnapshotByEntity.md +1 -1
- package/dist/docs/api/index/functions/instantiateSubtree.md +1 -1
- package/dist/docs/api/index/functions/loadPrefab.md +1 -1
- package/dist/docs/api/index/functions/loadSharedGltf.md +1 -1
- package/dist/docs/api/index/functions/matchHandPose.md +34 -0
- package/dist/docs/api/index/functions/mergeComponentValue.md +1 -1
- package/dist/docs/api/index/functions/parseOverride.md +1 -1
- package/dist/docs/api/index/functions/parsePrefabAsset.md +1 -1
- package/dist/docs/api/index/functions/prefabFileVersionFor.md +1 -1
- package/dist/docs/api/index/functions/readXrCapabilities.md +30 -0
- package/dist/docs/api/index/functions/registerDefaultComponentFactories.md +1 -1
- package/dist/docs/api/index/functions/registerDefaultFactories.md +1 -1
- package/dist/docs/api/index/functions/remapSnapshotEntityIds.md +3 -3
- package/dist/docs/api/index/functions/resolveDracoDecoderPath.md +1 -1
- package/dist/docs/api/index/functions/restoreComponentState.md +1 -1
- package/dist/docs/api/index/functions/restorePostCreateComponents.md +1 -1
- package/dist/docs/api/index/functions/sampleTeleportArc.md +40 -0
- package/dist/docs/api/index/functions/serializeEntitySubtree.md +1 -1
- package/dist/docs/api/index/functions/setDracoDecoderPath.md +1 -1
- package/dist/docs/api/index/functions/setPrefabAssetUrlResolver.md +1 -1
- package/dist/docs/api/index/functions/spawnPrefab.md +1 -1
- package/dist/docs/api/index/index.md +116 -4
- package/dist/docs/api/index/interfaces/ChromaKeyOptions.md +20 -0
- package/dist/docs/api/index/interfaces/EcsSystem.md +3 -3
- package/dist/docs/api/index/interfaces/PostprocessingBuildContext.md +21 -0
- package/dist/docs/api/index/interfaces/PostprocessingPipeline.md +84 -0
- package/dist/docs/api/index/interfaces/RenderBackend.md +168 -0
- package/dist/docs/api/index/interfaces/StateMachine.md +13 -13
- package/dist/docs/api/index/type-aliases/AnimationStateCallbacks.md +4 -4
- package/dist/docs/api/index/type-aliases/ApplyPrefabToSnapshotResult.md +3 -3
- package/dist/docs/api/index/type-aliases/ComponentFactory.md +1 -1
- package/dist/docs/api/index/type-aliases/ComponentValueMaps.md +50 -26
- package/dist/docs/api/index/type-aliases/EcsComponentFactoryKind.md +14 -2
- package/dist/docs/api/index/type-aliases/EcsRenderer.md +17 -0
- package/dist/docs/api/index/type-aliases/EcsWorldComponentSnapshot.md +3 -3
- package/dist/docs/api/index/type-aliases/EcsWorldStateSnapshotLike.md +4 -4
- package/dist/docs/api/index/type-aliases/ExternalRefWarning.md +5 -5
- package/dist/docs/api/index/type-aliases/HandMaterialOptions.md +32 -0
- package/dist/docs/api/index/type-aliases/HandPoseTrackerOptions.md +27 -0
- package/dist/docs/api/index/type-aliases/HydrateOptions.md +3 -3
- package/dist/docs/api/index/type-aliases/HydrateWorldFromSnapshotResult.md +4 -4
- package/dist/docs/api/index/type-aliases/InstantiateSubtreeResult.md +3 -3
- package/dist/docs/api/index/type-aliases/KeyboardKey.md +1 -1
- package/dist/docs/api/index/type-aliases/ModuleLoader.md +1 -1
- package/dist/docs/api/index/type-aliases/MouseButton.md +1 -1
- package/dist/docs/api/index/type-aliases/NestedRegion.md +5 -5
- package/dist/docs/api/index/type-aliases/NodeKeyMaps.md +5 -5
- package/dist/docs/api/index/type-aliases/NodeMaps.md +4 -4
- package/dist/docs/api/index/type-aliases/PrefabAsset.md +5 -5
- package/dist/docs/api/index/type-aliases/RemapSnapshotOptions.md +2 -2
- package/dist/docs/api/index/type-aliases/RendererKind.md +15 -0
- package/dist/docs/api/index/type-aliases/ScriptBehaviourSystemOptions.md +23 -0
- package/dist/docs/api/index/type-aliases/ScriptErrorEvent.md +39 -0
- package/dist/docs/api/index/type-aliases/ScriptErrorListener.md +25 -0
- package/dist/docs/api/index/type-aliases/ScriptErrorPhase.md +28 -0
- package/dist/docs/api/index/type-aliases/ScriptErrorReport.md +31 -0
- package/dist/docs/api/index/type-aliases/ScriptErrorSource.md +15 -0
- package/dist/docs/api/index/type-aliases/SelectionContext.md +4 -4
- package/dist/docs/api/index/type-aliases/SerializeEntitySubtreeResult.md +4 -4
- package/dist/docs/api/index/type-aliases/SpawnPrefabOptions.md +5 -5
- package/dist/docs/api/index/type-aliases/SpawnPrefabSource.md +1 -1
- package/dist/docs/api/index/type-aliases/SubtreeSnapshot.md +3 -3
- package/dist/docs/api/index/type-aliases/UiCanvasLike.md +46 -0
- package/dist/docs/api/index/type-aliases/VelocitySample.md +23 -0
- package/dist/docs/api/index/type-aliases/XrCapabilities.md +41 -0
- package/dist/docs/api/index/type-aliases/XrFinger.md +13 -0
- package/dist/docs/api/index/type-aliases/XrFingerCurl.md +27 -0
- package/dist/docs/api/index/type-aliases/XrFingerTarget.md +31 -0
- package/dist/docs/api/index/type-aliases/XrHandJointName.md +40 -0
- package/dist/docs/api/index/type-aliases/XrHandJoints.md +18 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseAxis.md +15 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseContext.md +23 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseDefinition.md +47 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseDirection.md +21 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseEvent.md +13 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseEventDetail.md +27 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseMatch.md +25 -0
- package/dist/docs/api/index/type-aliases/XrHandPoseOrientation.md +25 -0
- package/dist/docs/api/index/type-aliases/XrHandShape.md +46 -0
- package/dist/docs/api/index/type-aliases/XrHandedness.md +15 -0
- package/dist/docs/api/index/type-aliases/XrHitResult.md +25 -0
- package/dist/docs/api/index/type-aliases/XrInputKind.md +19 -0
- package/dist/docs/api/index/type-aliases/XrInputState.md +60 -0
- package/dist/docs/api/index/type-aliases/XrPalmPose.md +31 -0
- package/dist/docs/api/index/variables/ADDED_NODE_MARKER_COMPONENT.md +2 -2
- package/dist/docs/api/index/variables/ARC_GRAVITY.md +15 -0
- package/dist/docs/api/index/variables/ARC_MAX_TIME.md +15 -0
- package/dist/docs/api/index/variables/ARC_SPEED.md +15 -0
- package/dist/docs/api/index/variables/ARC_STEPS.md +15 -0
- package/dist/docs/api/index/variables/CURLED_COS.md +13 -0
- package/dist/docs/api/index/variables/DEFAULT_DIRECTION_TOLERANCE.md +15 -0
- package/dist/docs/api/index/variables/DEFAULT_ENTER_CONFIDENCE.md +13 -0
- package/dist/docs/api/index/variables/DEFAULT_EXIT_CONFIDENCE.md +13 -0
- package/dist/docs/api/index/variables/DEFAULT_LOST_GRACE_SECONDS.md +13 -0
- package/dist/docs/api/index/variables/DEFAULT_MIN_HOLD_SECONDS.md +13 -0
- package/dist/docs/api/index/variables/DEFAULT_SCRIPT_ERROR_RETRY_DELAY.md +17 -0
- package/dist/docs/api/index/variables/FALLBACK_HAND_SCALE.md +15 -0
- package/dist/docs/api/index/variables/HAND_POSE_PRESETS.md +19 -0
- package/dist/docs/api/index/variables/HAND_POSE_PRESET_IDS.md +15 -0
- package/dist/docs/api/index/variables/HYDRATABLE_ENTITY_KINDS.md +1 -1
- package/dist/docs/api/index/variables/KeyboardKeys.md +89 -89
- package/dist/docs/api/index/variables/MATCH_FALLOFF.md +15 -0
- package/dist/docs/api/index/variables/MAX_PLAUSIBLE_SPEED.md +25 -0
- package/dist/docs/api/index/variables/MAX_SAMPLE_AGE_SECONDS.md +18 -0
- package/dist/docs/api/index/variables/NODE_KEY_SEPARATOR.md +1 -1
- package/dist/docs/api/index/variables/NO_XR_CAPABILITIES.md +15 -0
- package/dist/docs/api/index/variables/OVERRIDE_DIFF_EXCLUDED_COMPONENTS.md +1 -1
- package/dist/docs/api/index/variables/OVERRIDE_ROOT_EXCLUDED_COMPONENTS.md +1 -1
- package/dist/docs/api/index/variables/PINCH_FINGERS.md +15 -0
- package/dist/docs/api/index/variables/PREFAB_FILE_VERSION.md +1 -1
- package/dist/docs/api/index/variables/PREFAB_FILE_VERSION_NESTED.md +1 -1
- package/dist/docs/api/index/variables/SCRIPT_OBJECT_ROOT_FLAG.md +1 -1
- package/dist/docs/api/index/variables/SHARED_MODEL_RESOURCE_FLAG.md +1 -1
- package/dist/docs/api/index/variables/STRAIGHT_COS.md +19 -0
- package/dist/docs/api/index/variables/VELOCITY_SAMPLES.md +15 -0
- package/dist/docs/api/index/variables/XR_FINGERS.md +13 -0
- package/dist/docs/api/index/variables/XR_HOVER_SHELL_FLAG.md +15 -0
- package/dist/docs/api/index/variables/webglBackend.md +16 -0
- package/dist/docs/api/typedoc-sidebar.json +1 -1
- package/dist/docs/api/types/type-aliases/AssetInput.md +3 -3
- package/dist/docs/api/types/type-aliases/CheckboxInput.md +3 -3
- package/dist/docs/api/types/type-aliases/ColorInput.md +1 -1
- package/dist/docs/api/types/type-aliases/ComponentInput.md +4 -4
- package/dist/docs/api/types/type-aliases/ComponentKind.md +1 -1
- package/dist/docs/api/types/type-aliases/DropdownInput.md +3 -3
- package/dist/docs/api/types/type-aliases/DropdownOption.md +3 -3
- package/dist/docs/api/types/type-aliases/EcsEntityEditorKind.md +1 -1
- package/dist/docs/api/types/type-aliases/EcsEntityKind.md +10 -2
- package/dist/docs/api/types/type-aliases/EntityId.md +1 -1
- package/dist/docs/api/types/type-aliases/EntityInput.md +3 -3
- package/dist/docs/api/types/type-aliases/FloatInput.md +1 -1
- package/dist/docs/api/types/type-aliases/IntersectionResult.md +3 -3
- package/dist/docs/api/types/type-aliases/ParentLookup.md +3 -3
- package/dist/docs/api/types/type-aliases/SelectionListener.md +1 -1
- package/dist/docs/api/types/type-aliases/SliderInput.md +5 -5
- package/dist/docs/api/types/type-aliases/TextInput.md +1 -1
- package/dist/docs/api/types/type-aliases/ToggleInput.md +1 -1
- package/dist/docs/api/types/type-aliases/Vec3.md +1 -1
- package/dist/docs/api/types/type-aliases/Vector2Input.md +3 -3
- package/dist/docs/api/types/type-aliases/Vector3Input.md +4 -4
- package/dist/docs/api/types/type-aliases/WorldEntityView.md +1 -1
- package/dist/docs/guide/audio-mixing-and-sound-banks.md +71 -0
- package/dist/docs/guide/authoring-a-behaviour.md +3 -3
- package/dist/docs/guide/authoring-a-script-object.md +12 -9
- package/dist/docs/guide/behaviour-data-binding/index.md +11 -11
- package/dist/docs/guide/behaviour-lifecycle.md +9 -0
- package/dist/docs/guide/bone-attachments-and-ik.md +128 -0
- package/dist/docs/guide/component-catalog.md +10 -2
- package/dist/docs/guide/components/light.md +42 -0
- package/dist/docs/guide/components/model.md +32 -3
- package/dist/docs/guide/concepts.md +2 -2
- package/dist/docs/guide/getting-started/creating-objects.md +2 -2
- package/dist/docs/guide/getting-started/editing-objects.md +2 -2
- package/dist/docs/guide/getting-started/editor/ai-agent.md +227 -0
- package/dist/docs/guide/getting-started/editor/hierarchy.md +2 -2
- package/dist/docs/guide/getting-started/editor/index.md +3 -2
- package/dist/docs/guide/getting-started/editor/inspector.md +2 -2
- package/dist/docs/guide/getting-started/editor/scene-inspector.md +3 -3
- package/dist/docs/guide/getting-started/editor/toolbar.md +11 -11
- package/dist/docs/guide/getting-started/editor/viewport.md +17 -9
- package/dist/docs/guide/getting-started/index.md +1 -1
- package/dist/docs/guide/getting-started/installation.md +1 -1
- package/dist/docs/guide/getting-started/preview-and-test.md +7 -7
- package/dist/docs/guide/getting-started/project-types/image-tracking.md +23 -11
- package/dist/docs/guide/getting-started/project-types/index.md +4 -4
- package/dist/docs/guide/getting-started/project-types/vr.md +270 -2
- package/dist/docs/guide/getting-started/projects.md +4 -5
- package/dist/docs/guide/getting-started/shortcuts.md +5 -4
- package/dist/docs/guide/multiplayer.md +92 -0
- package/dist/docs/guide/scene/environment.md +101 -4
- package/dist/docs/guide/scene/index.md +4 -4
- package/dist/docs/guide/scene/postprocessing.md +67 -5
- package/dist/docs/guide/spawning/area-light.md +2 -0
- package/dist/docs/guide/systems/environment-sync-system.md +11 -6
- package/dist/docs/guide/systems/light-sync-system.md +5 -3
- package/dist/docs/guide/systems/postprocessing-sync-system.md +16 -6
- package/dist/docs/guide/systems/render-system.md +7 -6
- package/dist/docs/guide/systems/script-behaviour-system.md +7 -5
- package/dist/docs/guide/systems/script-object-system.md +3 -1
- package/dist/docs/guide/systems/video-system.md +1 -1
- package/dist/docs/guide/webgpu-and-tsl.md +415 -0
- package/dist/docs/guide/world-api.md +52 -2
- package/dist/factories/index.cjs +770 -283
- package/dist/factories/index.cjs.map +1 -1
- package/dist/factories/index.d.cts +14 -3
- package/dist/factories/index.d.ts +14 -3
- package/dist/factories/index.js +7 -4
- package/dist/{index-D2Jt_JzH.d.ts → index-C61n65PE.d.ts} +135 -42
- package/dist/{index-DaG03vyN.d.cts → index-C70N4BYG.d.cts} +135 -42
- package/dist/{index-C3ik3sA1.d.ts → index-D9DjrUn3.d.cts} +25 -3
- package/dist/{index-Dlr-7-4m.d.cts → index-DppafVu4.d.ts} +25 -3
- package/dist/index.cjs +3642 -1263
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +113 -11
- package/dist/index.d.ts +113 -11
- package/dist/index.js +187 -12
- package/dist/index.js.map +1 -1
- package/dist/network/index.cjs +4896 -0
- package/dist/network/index.cjs.map +1 -0
- package/dist/network/index.d.cts +98 -0
- package/dist/network/index.d.ts +98 -0
- package/dist/network/index.js +493 -0
- package/dist/network/index.js.map +1 -0
- package/dist/systems/index.cjs +3958 -1762
- package/dist/systems/index.cjs.map +1 -1
- package/dist/systems/index.d.cts +4 -2
- package/dist/systems/index.d.ts +4 -2
- package/dist/systems/index.js +8 -4
- package/dist/types.d.cts +3 -1
- package/dist/types.d.ts +3 -1
- package/dist/webgpu/index.d.ts +113 -0
- package/dist/webgpu/index.js +302 -0
- package/dist/webgpu/index.js.map +1 -0
- package/dist/worldSnapshotUtils.d.cts +3 -1
- package/dist/worldSnapshotUtils.d.ts +3 -1
- package/dist/worldSnapshotUtils.js +3 -2
- package/package.json +19 -3
- package/dist/chunk-BUEKOSR5.js.map +0 -1
- package/dist/chunk-DF5SSRN6.js.map +0 -1
- package/dist/chunk-OWQSESTO.js.map +0 -1
- package/dist/chunk-OY7ZODZP.js.map +0 -1
- package/dist/chunk-RXBLOO5B.js.map +0 -1
- package/dist/chunk-WJD2VKEH.js +0 -315
- package/dist/chunk-WJD2VKEH.js.map +0 -1
|
@@ -6,55 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: Behaviour
|
|
8
8
|
|
|
9
|
-
Defined in: [Behaviour.ts:
|
|
10
|
-
|
|
11
|
-
Base class for all user-authored scripts attached to an entity through a
|
|
12
|
-
`ScriptComponent`. Subclass `Behaviour` to drive per-frame logic on a single
|
|
13
|
-
entity with full access to the [World](../../index/classes/World.md), the entity's
|
|
14
|
-
[TransformComponent](../../components/classes/TransformComponent.md), and its three.js [Object3DRef](../../components/classes/Object3DRef.md).
|
|
15
|
-
|
|
16
|
-
## Remarks
|
|
17
|
-
|
|
18
|
-
Scripts are dispatched by `ScriptBehaviourSystem` once per frame in this
|
|
19
|
-
order: [Behaviour.init](#init) (first frame only) → [Behaviour.onUpdate](#onupdate).
|
|
20
|
-
Override [Behaviour.onUpdate](#onupdate) for per-frame logic — never override
|
|
21
|
-
[Behaviour.update](#update), which is the engine-managed entry point.
|
|
22
|
-
|
|
23
|
-
**Editor vs runtime**: `Behaviour` subclasses run ONLY at preview/runtime —
|
|
24
|
-
they never execute in the editor. For a visual that must render and animate
|
|
25
|
-
inside the editor (custom shaders, procedural geometry, grass, anything the
|
|
26
|
-
object palette can't produce), use [ScriptObject](../../index/classes/ScriptObject.md) instead.
|
|
27
|
-
|
|
28
|
-
The runtime recognizes a script by its **default export** plus the
|
|
29
|
-
inherited static marker `__reluBehaviourClass`. Do not override the marker.
|
|
30
|
-
|
|
31
|
-
## Example
|
|
32
|
-
|
|
33
|
-
```ts
|
|
34
|
-
import { Behaviour, type Component } from "@relu-interactives/spatial-ecs";
|
|
35
|
-
|
|
36
|
-
export default class Spinner extends Behaviour {
|
|
37
|
-
data: {
|
|
38
|
-
speed: number;
|
|
39
|
-
axis: "x" | "y" | "z";
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
init() {
|
|
43
|
-
this.data.speed ??= 1;
|
|
44
|
-
this.data.axis ??= "y";
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
onUpdate() {
|
|
48
|
-
this.transform.rotation[this.data.axis] += this.data.speed * this.deltaTime;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## See
|
|
54
|
-
|
|
55
|
-
- [World](../../index/classes/World.md)
|
|
56
|
-
- [TransformComponent](../../components/classes/TransformComponent.md)
|
|
57
|
-
- [Object3DRef](../../components/classes/Object3DRef.md)
|
|
9
|
+
Defined in: [Behaviour.ts:83](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L83)
|
|
58
10
|
|
|
59
11
|
## Implements
|
|
60
12
|
|
|
@@ -71,7 +23,7 @@ new Behaviour(
|
|
|
71
23
|
component): Behaviour;
|
|
72
24
|
```
|
|
73
25
|
|
|
74
|
-
Defined in: [Behaviour.ts:
|
|
26
|
+
Defined in: [Behaviour.ts:141](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L141)
|
|
75
27
|
|
|
76
28
|
Engine-managed constructor. Hosts (`ScriptBehaviourSystem`) instantiate
|
|
77
29
|
subclasses with the owning world, the entity id, and the script's `data`
|
|
@@ -93,13 +45,13 @@ payload. User code should not call this directly.
|
|
|
93
45
|
|
|
94
46
|
| Property | Type | Default value | Description | Defined in |
|
|
95
47
|
| ------ | ------ | ------ | ------ | ------ |
|
|
96
|
-
| <a id="data"></a> `data` | \| [`Component`](../../Component/classes/Component.md) \| `Record`\<`string`, `unknown`\> | `undefined` | Inspector-bound payload from the entity's `ScriptComponent`. Override the type on subclasses with `declare data: MyDataShape` to get type safety inside hooks. Saved with the project so values persist across reloads. | [Behaviour.ts:
|
|
97
|
-
| <a id="entityid"></a> `entityId` | `number` | `undefined` | Numeric id of the entity this script is attached to. | [Behaviour.ts:
|
|
98
|
-
| <a id="entity"></a> `entity` | `WorldEntityView` | `undefined` | View of the owning entity (id + components) at construction time. | [Behaviour.ts:
|
|
99
|
-
| <a id="threeref"></a> `threeRef` | [`Object3DRef`](../../components/classes/Object3DRef.md) | `undefined` | Live three.js object wrapper for the entity. May be `null` for entities with no scene presence; helpers on this class return `null` in that case. | [Behaviour.ts:
|
|
100
|
-
| <a id="transform"></a> `transform` | [`TransformComponent`](../../components/classes/TransformComponent.md) | `undefined` | The entity's [TransformComponent](../../components/classes/TransformComponent.md). Mutating `position`, `rotation`, or `scale` here is picked up the same frame by `TransformSyncSystem`. | [Behaviour.ts:
|
|
101
|
-
| <a id="world"></a> `world` | [`World`](../../index/classes/World.md) | `undefined` | The owning [World](../../index/classes/World.md). Refreshed each frame in [Behaviour.update](#update). Use it to query other entities or components. | [Behaviour.ts:
|
|
102
|
-
| <a id="deltatime"></a> `deltaTime` | `number` | `0` | Seconds elapsed since the last frame. Set by the engine before each [Behaviour.onUpdate](#onupdate). | [Behaviour.ts:
|
|
48
|
+
| <a id="data"></a> `data` | \| [`Component`](../../Component/classes/Component.md) \| `Record`\<`string`, `unknown`\> | `undefined` | Inspector-bound payload from the entity's `ScriptComponent`. Override the type on subclasses with `declare data: MyDataShape` to get type safety inside hooks. Saved with the project so values persist across reloads. | [Behaviour.ts:99](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L99) |
|
|
49
|
+
| <a id="entityid"></a> `entityId` | `number` | `undefined` | Numeric id of the entity this script is attached to. | [Behaviour.ts:102](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L102) |
|
|
50
|
+
| <a id="entity"></a> `entity` | `WorldEntityView` | `undefined` | View of the owning entity (id + components) at construction time. | [Behaviour.ts:105](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L105) |
|
|
51
|
+
| <a id="threeref"></a> `threeRef` | [`Object3DRef`](../../components/classes/Object3DRef.md) | `undefined` | Live three.js object wrapper for the entity. May be `null` for entities with no scene presence; helpers on this class return `null` in that case. | [Behaviour.ts:111](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L111) |
|
|
52
|
+
| <a id="transform"></a> `transform` | [`TransformComponent`](../../components/classes/TransformComponent.md) | `undefined` | The entity's [TransformComponent](../../components/classes/TransformComponent.md). Mutating `position`, `rotation`, or `scale` here is picked up the same frame by `TransformSyncSystem`. | [Behaviour.ts:117](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L117) |
|
|
53
|
+
| <a id="world"></a> `world` | [`World`](../../index/classes/World.md) | `undefined` | The owning [World](../../index/classes/World.md). Refreshed each frame in [Behaviour.update](#update). Use it to query other entities or components. | [Behaviour.ts:123](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L123) |
|
|
54
|
+
| <a id="deltatime"></a> `deltaTime` | `number` | `0` | Seconds elapsed since the last frame. Set by the engine before each [Behaviour.onUpdate](#onupdate). | [Behaviour.ts:129](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L129) |
|
|
103
55
|
|
|
104
56
|
## Methods
|
|
105
57
|
|
|
@@ -109,7 +61,7 @@ payload. User code should not call this directly.
|
|
|
109
61
|
update(world, deltaTime): void;
|
|
110
62
|
```
|
|
111
63
|
|
|
112
|
-
Defined in: [Behaviour.ts:
|
|
64
|
+
Defined in: [Behaviour.ts:165](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L165)
|
|
113
65
|
|
|
114
66
|
Engine-managed per-frame entry point. Refreshes [Behaviour.deltaTime](#deltatime)
|
|
115
67
|
and delegates to [Behaviour.onUpdate](#onupdate).
|
|
@@ -144,7 +96,7 @@ CustomEcsSystem.update
|
|
|
144
96
|
optional dispose(world): void;
|
|
145
97
|
```
|
|
146
98
|
|
|
147
|
-
Defined in: [Behaviour.ts:
|
|
99
|
+
Defined in: [Behaviour.ts:177](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L177)
|
|
148
100
|
|
|
149
101
|
Optional cleanup hook invoked when the script is detached or the entity
|
|
150
102
|
is destroyed. Override to release timers, listeners, or other resources.
|
|
@@ -173,7 +125,7 @@ CustomEcsSystem.dispose
|
|
|
173
125
|
spawnPrefab(source, options?): Promise<number>;
|
|
174
126
|
```
|
|
175
127
|
|
|
176
|
-
Defined in: [Behaviour.ts:
|
|
128
|
+
Defined in: [Behaviour.ts:200](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L200)
|
|
177
129
|
|
|
178
130
|
Instantiate a prefab asset into the world at runtime.
|
|
179
131
|
|
|
@@ -212,7 +164,7 @@ async onUpdate() {
|
|
|
212
164
|
despawn(rootEntityId): number;
|
|
213
165
|
```
|
|
214
166
|
|
|
215
|
-
Defined in: [Behaviour.ts:
|
|
167
|
+
Defined in: [Behaviour.ts:211](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L211)
|
|
216
168
|
|
|
217
169
|
Remove a spawned prefab instance (the root entity and all descendants).
|
|
218
170
|
Returns the number of entities removed.
|
|
@@ -235,7 +187,7 @@ Returns the number of entities removed.
|
|
|
235
187
|
getWorldPosition(): Vector3 | null;
|
|
236
188
|
```
|
|
237
189
|
|
|
238
|
-
Defined in: [Behaviour.ts:
|
|
190
|
+
Defined in: [Behaviour.ts:219](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L219)
|
|
239
191
|
|
|
240
192
|
Returns the entity's world-space position as a new `THREE.Vector3`, or
|
|
241
193
|
`null` if the entity has no scene presence.
|
|
@@ -252,7 +204,7 @@ Returns the entity's world-space position as a new `THREE.Vector3`, or
|
|
|
252
204
|
getWorldDirection(): Vector3 | null;
|
|
253
205
|
```
|
|
254
206
|
|
|
255
|
-
Defined in: [Behaviour.ts:
|
|
207
|
+
Defined in: [Behaviour.ts:234](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L234)
|
|
256
208
|
|
|
257
209
|
Returns the entity's forward direction in world space (the +Z axis of its
|
|
258
210
|
world matrix), or `null` if the entity has no scene presence.
|
|
@@ -269,7 +221,7 @@ world matrix), or `null` if the entity has no scene presence.
|
|
|
269
221
|
directionTo(targetPosition): Vector3 | null;
|
|
270
222
|
```
|
|
271
223
|
|
|
272
|
-
Defined in: [Behaviour.ts:
|
|
224
|
+
Defined in: [Behaviour.ts:251](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L251)
|
|
273
225
|
|
|
274
226
|
Returns a unit vector pointing from this entity toward the given world
|
|
275
227
|
position, or `null` if the entity has no scene presence.
|
|
@@ -292,7 +244,7 @@ position, or `null` if the entity has no scene presence.
|
|
|
292
244
|
distanceTo(targetPosition): number | null;
|
|
293
245
|
```
|
|
294
246
|
|
|
295
|
-
Defined in: [Behaviour.ts:
|
|
247
|
+
Defined in: [Behaviour.ts:266](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L266)
|
|
296
248
|
|
|
297
249
|
Returns the world-space distance from this entity to the given position,
|
|
298
250
|
or `null` if the entity has no scene presence.
|
|
@@ -315,7 +267,7 @@ or `null` if the entity has no scene presence.
|
|
|
315
267
|
lerpTo(targetPosition, alpha): void;
|
|
316
268
|
```
|
|
317
269
|
|
|
318
|
-
Defined in: [Behaviour.ts:
|
|
270
|
+
Defined in: [Behaviour.ts:284](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L284)
|
|
319
271
|
|
|
320
272
|
Linearly interpolates the entity's position toward `targetPosition` and
|
|
321
273
|
writes the result back through [TransformComponent](../../components/classes/TransformComponent.md). No-op if the
|
|
@@ -340,7 +292,7 @@ entity has no scene presence.
|
|
|
340
292
|
slerpTo(targetRotation, alpha): void;
|
|
341
293
|
```
|
|
342
294
|
|
|
343
|
-
Defined in: [Behaviour.ts:
|
|
295
|
+
Defined in: [Behaviour.ts:306](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L306)
|
|
344
296
|
|
|
345
297
|
Spherically interpolates the entity's rotation toward `targetRotation`
|
|
346
298
|
and writes the result back through [TransformComponent](../../components/classes/TransformComponent.md). No-op if
|
|
@@ -365,7 +317,7 @@ the entity has no scene presence.
|
|
|
365
317
|
lookAt(targetPosition): void;
|
|
366
318
|
```
|
|
367
319
|
|
|
368
|
-
Defined in: [Behaviour.ts:
|
|
320
|
+
Defined in: [Behaviour.ts:325](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L325)
|
|
369
321
|
|
|
370
322
|
Rotates the entity to face `targetPosition` in world space and writes the
|
|
371
323
|
resulting orientation back through [TransformComponent](../../components/classes/TransformComponent.md). No-op if
|
|
@@ -389,7 +341,7 @@ the entity has no scene presence.
|
|
|
389
341
|
getComponents(): Component[];
|
|
390
342
|
```
|
|
391
343
|
|
|
392
|
-
Defined in: [Behaviour.ts:
|
|
344
|
+
Defined in: [Behaviour.ts:339](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L339)
|
|
393
345
|
|
|
394
346
|
Returns every component currently attached to this entity.
|
|
395
347
|
|
|
@@ -405,7 +357,7 @@ Returns every component currently attached to this entity.
|
|
|
405
357
|
getComponent<T>(componentClass): T | null;
|
|
406
358
|
```
|
|
407
359
|
|
|
408
|
-
Defined in: [Behaviour.ts:
|
|
360
|
+
Defined in: [Behaviour.ts:356](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L356)
|
|
409
361
|
|
|
410
362
|
Returns the entity's component of the given class, or `null` if it has
|
|
411
363
|
no such component.
|
|
@@ -441,7 +393,7 @@ if (mesh) console.log(mesh.geometryRef);
|
|
|
441
393
|
getEntity(): WorldEntityView | null;
|
|
442
394
|
```
|
|
443
395
|
|
|
444
|
-
Defined in: [Behaviour.ts:
|
|
396
|
+
Defined in: [Behaviour.ts:366](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L366)
|
|
445
397
|
|
|
446
398
|
Returns the latest [WorldEntityView](../../types/type-aliases/WorldEntityView.md) snapshot for this entity, or
|
|
447
399
|
`null` if it was destroyed.
|
|
@@ -458,7 +410,7 @@ Returns the latest [WorldEntityView](../../types/type-aliases/WorldEntityView.md
|
|
|
458
410
|
getParent(): ParentLookup;
|
|
459
411
|
```
|
|
460
412
|
|
|
461
|
-
Defined in: [Behaviour.ts:
|
|
413
|
+
Defined in: [Behaviour.ts:376](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L376)
|
|
462
414
|
|
|
463
415
|
Resolves the entity's parent from the [ParentId](../../components/classes/ParentId.md) component, if any.
|
|
464
416
|
|
|
@@ -477,7 +429,7 @@ A [ParentLookup](../../types/type-aliases/ParentLookup.md) with the parent compo
|
|
|
477
429
|
getChildren(): WorldEntityView[];
|
|
478
430
|
```
|
|
479
431
|
|
|
480
|
-
Defined in: [Behaviour.ts:
|
|
432
|
+
Defined in: [Behaviour.ts:397](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L397)
|
|
481
433
|
|
|
482
434
|
Returns every direct child entity of this one (entities whose
|
|
483
435
|
[ParentId](../../components/classes/ParentId.md) matches `entityId`).
|
|
@@ -494,7 +446,7 @@ Returns every direct child entity of this one (entities whose
|
|
|
494
446
|
protected init(): void;
|
|
495
447
|
```
|
|
496
448
|
|
|
497
|
-
Defined in: [Behaviour.ts:
|
|
449
|
+
Defined in: [Behaviour.ts:412](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L412)
|
|
498
450
|
|
|
499
451
|
Called once before the first [Behaviour.onUpdate](#onupdate). Override to
|
|
500
452
|
default and validate [Behaviour.data](#data), cache references, or set
|
|
@@ -512,7 +464,7 @@ initial state. Runs at preview/runtime only — never in the editor.
|
|
|
512
464
|
protected onUpdate(): void;
|
|
513
465
|
```
|
|
514
466
|
|
|
515
|
-
Defined in: [Behaviour.ts:
|
|
467
|
+
Defined in: [Behaviour.ts:421](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L421)
|
|
516
468
|
|
|
517
469
|
Called every frame while the script is enabled. Override with the
|
|
518
470
|
script's main per-frame logic. Runs at preview/runtime only — never in the
|
|
@@ -530,7 +482,7 @@ editor (use [ScriptObject](../../index/classes/ScriptObject.md) for editor-visib
|
|
|
530
482
|
onSelect(): void;
|
|
531
483
|
```
|
|
532
484
|
|
|
533
|
-
Defined in: [Behaviour.ts:
|
|
485
|
+
Defined in: [Behaviour.ts:426](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L426)
|
|
534
486
|
|
|
535
487
|
Called when the editor selects this entity. Optional UX hook.
|
|
536
488
|
|
|
@@ -546,7 +498,7 @@ Called when the editor selects this entity. Optional UX hook.
|
|
|
546
498
|
onDeselect(): void;
|
|
547
499
|
```
|
|
548
500
|
|
|
549
|
-
Defined in: [Behaviour.ts:
|
|
501
|
+
Defined in: [Behaviour.ts:431](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L431)
|
|
550
502
|
|
|
551
503
|
Called when the editor deselects this entity. Optional UX hook.
|
|
552
504
|
|
|
@@ -562,7 +514,7 @@ Called when the editor deselects this entity. Optional UX hook.
|
|
|
562
514
|
onTargetFound(target): void;
|
|
563
515
|
```
|
|
564
516
|
|
|
565
|
-
Defined in: [Behaviour.ts:
|
|
517
|
+
Defined in: [Behaviour.ts:441](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L441)
|
|
566
518
|
|
|
567
519
|
Called when an image-tracking target this entity depends on becomes
|
|
568
520
|
visible. Optional AR hook.
|
|
@@ -585,7 +537,7 @@ visible. Optional AR hook.
|
|
|
585
537
|
onTargetLost(target): void;
|
|
586
538
|
```
|
|
587
539
|
|
|
588
|
-
Defined in: [Behaviour.ts:
|
|
540
|
+
Defined in: [Behaviour.ts:451](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L451)
|
|
589
541
|
|
|
590
542
|
Called when an image-tracking target this entity depends on is lost.
|
|
591
543
|
Optional AR hook.
|
|
@@ -599,3 +551,338 @@ Optional AR hook.
|
|
|
599
551
|
#### Returns
|
|
600
552
|
|
|
601
553
|
`void`
|
|
554
|
+
|
|
555
|
+
***
|
|
556
|
+
|
|
557
|
+
### onXRSessionStart()
|
|
558
|
+
|
|
559
|
+
```ts
|
|
560
|
+
onXRSessionStart(capabilities): void;
|
|
561
|
+
```
|
|
562
|
+
|
|
563
|
+
Defined in: [Behaviour.ts:470](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L470)
|
|
564
|
+
|
|
565
|
+
Called once when an immersive session starts. Optional XR hook.
|
|
566
|
+
|
|
567
|
+
Use it to set up XR-only state. Inspect `capabilities` rather than guessing
|
|
568
|
+
by device: feature support differs sharply per headset (for example Vision
|
|
569
|
+
Pro grants no passthrough on the web today).
|
|
570
|
+
|
|
571
|
+
#### Parameters
|
|
572
|
+
|
|
573
|
+
| Parameter | Type | Description |
|
|
574
|
+
| ------ | ------ | ------ |
|
|
575
|
+
| `capabilities` | [`XrCapabilities`](../../index/type-aliases/XrCapabilities.md) | What the session actually granted, read from `XRSession.enabledFeatures`. |
|
|
576
|
+
|
|
577
|
+
#### Returns
|
|
578
|
+
|
|
579
|
+
`void`
|
|
580
|
+
|
|
581
|
+
***
|
|
582
|
+
|
|
583
|
+
### onXRSessionEnd()
|
|
584
|
+
|
|
585
|
+
```ts
|
|
586
|
+
onXRSessionEnd(): void;
|
|
587
|
+
```
|
|
588
|
+
|
|
589
|
+
Defined in: [Behaviour.ts:475](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L475)
|
|
590
|
+
|
|
591
|
+
Called once when the immersive session ends. Optional XR hook.
|
|
592
|
+
|
|
593
|
+
#### Returns
|
|
594
|
+
|
|
595
|
+
`void`
|
|
596
|
+
|
|
597
|
+
***
|
|
598
|
+
|
|
599
|
+
### onSelectStart()
|
|
600
|
+
|
|
601
|
+
```ts
|
|
602
|
+
onSelectStart(input): void;
|
|
603
|
+
```
|
|
604
|
+
|
|
605
|
+
Defined in: [Behaviour.ts:485](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L485)
|
|
606
|
+
|
|
607
|
+
Called when a primary action begins — controller trigger, hand pinch, or
|
|
608
|
+
Vision Pro gaze-pinch. Optional XR hook.
|
|
609
|
+
|
|
610
|
+
#### Parameters
|
|
611
|
+
|
|
612
|
+
| Parameter | Type | Description |
|
|
613
|
+
| ------ | ------ | ------ |
|
|
614
|
+
| `input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) | Normalized state for the source that acted. |
|
|
615
|
+
|
|
616
|
+
#### Returns
|
|
617
|
+
|
|
618
|
+
`void`
|
|
619
|
+
|
|
620
|
+
***
|
|
621
|
+
|
|
622
|
+
### onSelectEnd()
|
|
623
|
+
|
|
624
|
+
```ts
|
|
625
|
+
onSelectEnd(input): void;
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
Defined in: [Behaviour.ts:490](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L490)
|
|
629
|
+
|
|
630
|
+
Called when the primary action ends. Optional XR hook.
|
|
631
|
+
|
|
632
|
+
#### Parameters
|
|
633
|
+
|
|
634
|
+
| Parameter | Type |
|
|
635
|
+
| ------ | ------ |
|
|
636
|
+
| `input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) |
|
|
637
|
+
|
|
638
|
+
#### Returns
|
|
639
|
+
|
|
640
|
+
`void`
|
|
641
|
+
|
|
642
|
+
***
|
|
643
|
+
|
|
644
|
+
### onSecondaryGrab()
|
|
645
|
+
|
|
646
|
+
```ts
|
|
647
|
+
onSecondaryGrab(_input): void;
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
Defined in: [Behaviour.ts:508](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L508)
|
|
651
|
+
|
|
652
|
+
A SECOND hand joined a two-hand grab on this entity.
|
|
653
|
+
|
|
654
|
+
The first hand anchors the object and keeps holding it; this fires for the
|
|
655
|
+
hand that came second — the foregrip on a rifle, say.
|
|
656
|
+
|
|
657
|
+
#### Parameters
|
|
658
|
+
|
|
659
|
+
| Parameter | Type |
|
|
660
|
+
| ------ | ------ |
|
|
661
|
+
| `_input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) |
|
|
662
|
+
|
|
663
|
+
#### Returns
|
|
664
|
+
|
|
665
|
+
`void`
|
|
666
|
+
|
|
667
|
+
***
|
|
668
|
+
|
|
669
|
+
### onSecondaryRelease()
|
|
670
|
+
|
|
671
|
+
```ts
|
|
672
|
+
onSecondaryRelease(_input): void;
|
|
673
|
+
```
|
|
674
|
+
|
|
675
|
+
Defined in: [Behaviour.ts:513](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L513)
|
|
676
|
+
|
|
677
|
+
The second hand let go, leaving the object in the first hand alone.
|
|
678
|
+
|
|
679
|
+
#### Parameters
|
|
680
|
+
|
|
681
|
+
| Parameter | Type |
|
|
682
|
+
| ------ | ------ |
|
|
683
|
+
| `_input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) |
|
|
684
|
+
|
|
685
|
+
#### Returns
|
|
686
|
+
|
|
687
|
+
`void`
|
|
688
|
+
|
|
689
|
+
***
|
|
690
|
+
|
|
691
|
+
### onHandPoseStart()
|
|
692
|
+
|
|
693
|
+
```ts
|
|
694
|
+
onHandPoseStart(_event): void;
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
Defined in: [Behaviour.ts:523](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L523)
|
|
698
|
+
|
|
699
|
+
A hand pose declared on this entity started being held.
|
|
700
|
+
|
|
701
|
+
Fires once the pose has been sustained for its hold time, not the instant
|
|
702
|
+
the fingers pass through it.
|
|
703
|
+
|
|
704
|
+
#### Parameters
|
|
705
|
+
|
|
706
|
+
| Parameter | Type |
|
|
707
|
+
| ------ | ------ |
|
|
708
|
+
| `_event` | [`XrHandPoseEventDetail`](../../index/type-aliases/XrHandPoseEventDetail.md) |
|
|
709
|
+
|
|
710
|
+
#### Returns
|
|
711
|
+
|
|
712
|
+
`void`
|
|
713
|
+
|
|
714
|
+
***
|
|
715
|
+
|
|
716
|
+
### onHandPoseEnd()
|
|
717
|
+
|
|
718
|
+
```ts
|
|
719
|
+
onHandPoseEnd(_event): void;
|
|
720
|
+
```
|
|
721
|
+
|
|
722
|
+
Defined in: [Behaviour.ts:528](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L528)
|
|
723
|
+
|
|
724
|
+
A held hand pose ended, or its hand stopped being tracked.
|
|
725
|
+
|
|
726
|
+
#### Parameters
|
|
727
|
+
|
|
728
|
+
| Parameter | Type |
|
|
729
|
+
| ------ | ------ |
|
|
730
|
+
| `_event` | [`XrHandPoseEventDetail`](../../index/type-aliases/XrHandPoseEventDetail.md) |
|
|
731
|
+
|
|
732
|
+
#### Returns
|
|
733
|
+
|
|
734
|
+
`void`
|
|
735
|
+
|
|
736
|
+
***
|
|
737
|
+
|
|
738
|
+
### onGrab()
|
|
739
|
+
|
|
740
|
+
```ts
|
|
741
|
+
onGrab(input): void;
|
|
742
|
+
```
|
|
743
|
+
|
|
744
|
+
Defined in: [Behaviour.ts:532](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L532)
|
|
745
|
+
|
|
746
|
+
#### Parameters
|
|
747
|
+
|
|
748
|
+
| Parameter | Type |
|
|
749
|
+
| ------ | ------ |
|
|
750
|
+
| `input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) |
|
|
751
|
+
|
|
752
|
+
#### Returns
|
|
753
|
+
|
|
754
|
+
`void`
|
|
755
|
+
|
|
756
|
+
***
|
|
757
|
+
|
|
758
|
+
### onRelease()
|
|
759
|
+
|
|
760
|
+
```ts
|
|
761
|
+
onRelease(input): void;
|
|
762
|
+
```
|
|
763
|
+
|
|
764
|
+
Defined in: [Behaviour.ts:537](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L537)
|
|
765
|
+
|
|
766
|
+
Called when this entity is released. Optional XR hook.
|
|
767
|
+
|
|
768
|
+
#### Parameters
|
|
769
|
+
|
|
770
|
+
| Parameter | Type |
|
|
771
|
+
| ------ | ------ |
|
|
772
|
+
| `input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) |
|
|
773
|
+
|
|
774
|
+
#### Returns
|
|
775
|
+
|
|
776
|
+
`void`
|
|
777
|
+
|
|
778
|
+
***
|
|
779
|
+
|
|
780
|
+
### onUiPress()
|
|
781
|
+
|
|
782
|
+
```ts
|
|
783
|
+
onUiPress(_event): void;
|
|
784
|
+
```
|
|
785
|
+
|
|
786
|
+
Defined in: [Behaviour.ts:543](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L543)
|
|
787
|
+
|
|
788
|
+
A UI button on this entity (or a descendant) was clicked. Clicks fire on
|
|
789
|
+
RELEASE while still pointing at the widget — sliding off cancels.
|
|
790
|
+
|
|
791
|
+
#### Parameters
|
|
792
|
+
|
|
793
|
+
| Parameter | Type |
|
|
794
|
+
| ------ | ------ |
|
|
795
|
+
| `_event` | [`UiInteractionEvent`](../type-aliases/UiInteractionEvent.md) |
|
|
796
|
+
|
|
797
|
+
#### Returns
|
|
798
|
+
|
|
799
|
+
`void`
|
|
800
|
+
|
|
801
|
+
***
|
|
802
|
+
|
|
803
|
+
### onUiHoverStart()
|
|
804
|
+
|
|
805
|
+
```ts
|
|
806
|
+
onUiHoverStart(_event): void;
|
|
807
|
+
```
|
|
808
|
+
|
|
809
|
+
Defined in: [Behaviour.ts:548](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L548)
|
|
810
|
+
|
|
811
|
+
A pointer began hovering a UI widget on this entity (or a descendant).
|
|
812
|
+
|
|
813
|
+
#### Parameters
|
|
814
|
+
|
|
815
|
+
| Parameter | Type |
|
|
816
|
+
| ------ | ------ |
|
|
817
|
+
| `_event` | [`UiInteractionEvent`](../type-aliases/UiInteractionEvent.md) |
|
|
818
|
+
|
|
819
|
+
#### Returns
|
|
820
|
+
|
|
821
|
+
`void`
|
|
822
|
+
|
|
823
|
+
***
|
|
824
|
+
|
|
825
|
+
### onUiHoverEnd()
|
|
826
|
+
|
|
827
|
+
```ts
|
|
828
|
+
onUiHoverEnd(_event): void;
|
|
829
|
+
```
|
|
830
|
+
|
|
831
|
+
Defined in: [Behaviour.ts:553](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L553)
|
|
832
|
+
|
|
833
|
+
The pointer left the widget.
|
|
834
|
+
|
|
835
|
+
#### Parameters
|
|
836
|
+
|
|
837
|
+
| Parameter | Type |
|
|
838
|
+
| ------ | ------ |
|
|
839
|
+
| `_event` | [`UiInteractionEvent`](../type-aliases/UiInteractionEvent.md) |
|
|
840
|
+
|
|
841
|
+
#### Returns
|
|
842
|
+
|
|
843
|
+
`void`
|
|
844
|
+
|
|
845
|
+
***
|
|
846
|
+
|
|
847
|
+
### onUiToggle()
|
|
848
|
+
|
|
849
|
+
```ts
|
|
850
|
+
onUiToggle(_event): void;
|
|
851
|
+
```
|
|
852
|
+
|
|
853
|
+
Defined in: [Behaviour.ts:558](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L558)
|
|
854
|
+
|
|
855
|
+
A UI toggle flipped; `event.value` is the new boolean.
|
|
856
|
+
|
|
857
|
+
#### Parameters
|
|
858
|
+
|
|
859
|
+
| Parameter | Type |
|
|
860
|
+
| ------ | ------ |
|
|
861
|
+
| `_event` | [`UiInteractionEvent`](../type-aliases/UiInteractionEvent.md) |
|
|
862
|
+
|
|
863
|
+
#### Returns
|
|
864
|
+
|
|
865
|
+
`void`
|
|
866
|
+
|
|
867
|
+
***
|
|
868
|
+
|
|
869
|
+
### onUiChange()
|
|
870
|
+
|
|
871
|
+
```ts
|
|
872
|
+
onUiChange(_event): void;
|
|
873
|
+
```
|
|
874
|
+
|
|
875
|
+
Defined in: [Behaviour.ts:564](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L564)
|
|
876
|
+
|
|
877
|
+
A UI slider moved; `event.value` is the new number. Fires on real value
|
|
878
|
+
changes during the drag and once more on release.
|
|
879
|
+
|
|
880
|
+
#### Parameters
|
|
881
|
+
|
|
882
|
+
| Parameter | Type |
|
|
883
|
+
| ------ | ------ |
|
|
884
|
+
| `_event` | [`UiInteractionEvent`](../type-aliases/UiInteractionEvent.md) |
|
|
885
|
+
|
|
886
|
+
#### Returns
|
|
887
|
+
|
|
888
|
+
`void`
|
|
@@ -8,8 +8,12 @@
|
|
|
8
8
|
|
|
9
9
|
## Classes
|
|
10
10
|
|
|
11
|
-
### Scripting
|
|
12
|
-
|
|
13
11
|
| Class | Description |
|
|
14
12
|
| ------ | ------ |
|
|
15
|
-
| [Behaviour](classes/Behaviour.md) |
|
|
13
|
+
| [Behaviour](classes/Behaviour.md) | - |
|
|
14
|
+
|
|
15
|
+
## Type Aliases
|
|
16
|
+
|
|
17
|
+
| Type Alias | Description |
|
|
18
|
+
| ------ | ------ |
|
|
19
|
+
| [UiInteractionEvent](type-aliases/UiInteractionEvent.md) | Payload for spatial-UI hooks. |
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
[**@relu-interactives/spatial-ecs**](../../index.md)
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
[@relu-interactives/spatial-ecs](../../index.md) / [Behaviour](../index.md) / UiInteractionEvent
|
|
6
|
+
|
|
7
|
+
# Type Alias: UiInteractionEvent
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
type UiInteractionEvent = {
|
|
11
|
+
targetEntityId: number;
|
|
12
|
+
actionId: string;
|
|
13
|
+
input: XrInputState | null;
|
|
14
|
+
value?: boolean | number;
|
|
15
|
+
};
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Defined in: [Behaviour.ts:75](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L75)
|
|
19
|
+
|
|
20
|
+
Payload for spatial-UI hooks.
|
|
21
|
+
|
|
22
|
+
`targetEntityId` is the WIDGET that was interacted with — hooks bubble up
|
|
23
|
+
the parent chain, so a panel script receives its children's events and can
|
|
24
|
+
switch on `actionId` (the widget's authored id, defaulting to its entity
|
|
25
|
+
name). `input` is null when the event came from the mouse in a flat
|
|
26
|
+
preview rather than an XR pointer.
|
|
27
|
+
|
|
28
|
+
## Properties
|
|
29
|
+
|
|
30
|
+
| Property | Type | Description | Defined in |
|
|
31
|
+
| ------ | ------ | ------ | ------ |
|
|
32
|
+
| <a id="targetentityid"></a> `targetEntityId` | `number` | - | [Behaviour.ts:76](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L76) |
|
|
33
|
+
| <a id="actionid"></a> `actionId` | `string` | - | [Behaviour.ts:77](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L77) |
|
|
34
|
+
| <a id="input"></a> `input` | [`XrInputState`](../../index/type-aliases/XrInputState.md) \| `null` | - | [Behaviour.ts:78](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L78) |
|
|
35
|
+
| <a id="value"></a> `value?` | `boolean` \| `number` | Toggle: the new boolean. Slider: the new number. Absent for presses. | [Behaviour.ts:80](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/72f129a02ec4b2f93ff337d16361a731efd8cc5d/core/Behaviour.ts#L80) |
|