@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
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
# AI Agent
|
|
2
|
+
|
|
3
|
+
The AI Agent is an intelligent assistant integrated into the editor that helps you build scenes, write scripts, troubleshoot issues, and automate workflows through natural language conversation.
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
## Opening the AI Agent
|
|
8
|
+
|
|
9
|
+
The agent shows right below the inspector on the right side panel.
|
|
10
|
+
|
|
11
|
+
## What the AI Agent can do
|
|
12
|
+
|
|
13
|
+
### Scene Creation and Modification
|
|
14
|
+
|
|
15
|
+
Ask the agent to create, modify, or organize scene content:
|
|
16
|
+
|
|
17
|
+
- **"Add a directional light pointing down at 45 degrees"**
|
|
18
|
+
- **"Create a row of 5 cubes spaced 2 meters apart"**
|
|
19
|
+
- **"Move the camera to look at the player spawn point"**
|
|
20
|
+
- **"Add physics to all meshes in the 'obstacles' folder"**
|
|
21
|
+
|
|
22
|
+
The agent understands spatial relationships, entity hierarchies, and component configurations, executing changes directly in your scene.
|
|
23
|
+
|
|
24
|
+
<video controls autoplay muted loop playsinline width="100%">
|
|
25
|
+
<source src="/images/getting-started/editor/agentic-ai.mp4" type="video/mp4">
|
|
26
|
+
</source>
|
|
27
|
+
</video>
|
|
28
|
+
|
|
29
|
+
### Script Generation and Editing
|
|
30
|
+
|
|
31
|
+
Generate or modify `Behaviour` scripts:
|
|
32
|
+
|
|
33
|
+
- **"Write a script that makes this cube rotate continuously"**
|
|
34
|
+
- **"Add an onGrab handler that changes the material color"**
|
|
35
|
+
- **"Fix the syntax error in PlayerController.ts"**
|
|
36
|
+
- **"Convert this loop to use entity queries instead"**
|
|
37
|
+
|
|
38
|
+
Scripts are created in your `assets/` folder and can be attached immediately or edited further.
|
|
39
|
+
|
|
40
|
+
### Component Configuration
|
|
41
|
+
|
|
42
|
+
Get help configuring components on selected entities:
|
|
43
|
+
|
|
44
|
+
- **"Set up this model with a dynamic rigidbody"**
|
|
45
|
+
- **"Configure this light as a warm spotlight with shadows"**
|
|
46
|
+
- **"Make this object grabbable in VR with two-hand support"**
|
|
47
|
+
|
|
48
|
+
The agent reads the current selection and applies settings contextually.
|
|
49
|
+
|
|
50
|
+
### Workflow Automation
|
|
51
|
+
|
|
52
|
+
Automate repetitive tasks:
|
|
53
|
+
|
|
54
|
+
- **"Batch rename all entities starting with 'Prop_' to remove the prefix"**
|
|
55
|
+
- **"Export all animation clips as separate files"**
|
|
56
|
+
- **"Find all entities with missing material assignments"**
|
|
57
|
+
- **"Create a prefab from each top-level entity in the hierarchy"**
|
|
58
|
+
|
|
59
|
+
### Learning and Documentation
|
|
60
|
+
|
|
61
|
+
Ask questions about the editor, components, or scripting APIs:
|
|
62
|
+
|
|
63
|
+
- **"How do I make an object teleportable in VR?"**
|
|
64
|
+
- **"What's the difference between physical and distance grab?"**
|
|
65
|
+
- **"Show me examples of hand pose detection"**
|
|
66
|
+
- **"Explain the XR Rig tracking origin options"**
|
|
67
|
+
|
|
68
|
+
The agent references the official documentation and provides examples.
|
|
69
|
+
|
|
70
|
+
## Using the AI Agent
|
|
71
|
+
|
|
72
|
+
### Chat Interface
|
|
73
|
+
|
|
74
|
+
The agent uses a conversation-based interface:
|
|
75
|
+
|
|
76
|
+
1. **Type your request** in the input box at the bottom
|
|
77
|
+
2. **Press Enter or click Send** to submit
|
|
78
|
+
3. **Review the agent's response** - it may show code, apply changes, or ask clarifying questions
|
|
79
|
+
4. **Confirm or refine** - approve proposed changes or provide additional context
|
|
80
|
+
|
|
81
|
+
### Contextual Awareness
|
|
82
|
+
|
|
83
|
+
The agent is aware of:
|
|
84
|
+
|
|
85
|
+
- **Current selection** in the hierarchy or viewport
|
|
86
|
+
- **Project type** (3D, VR, Image Tracking, etc.)
|
|
87
|
+
- **Open files** and active scripts
|
|
88
|
+
- **Recent actions** and undo history
|
|
89
|
+
- **Available assets** in your project folder
|
|
90
|
+
|
|
91
|
+
Refer to entities by name or say "this entity" / "the selected object" when you have something selected.
|
|
92
|
+
|
|
93
|
+
### Approval and Safety
|
|
94
|
+
|
|
95
|
+
For actions that modify your scene or scripts, the agent:
|
|
96
|
+
|
|
97
|
+
- **Shows a preview** of what will change
|
|
98
|
+
- **Asks for confirmation** before applying destructive operations
|
|
99
|
+
- **Works with undo/redo** - you can revert agent actions
|
|
100
|
+
- **Validates** generated code before creating files
|
|
101
|
+
|
|
102
|
+
Turn on **Auto-approve safe actions** in settings to skip confirmations for simple tasks like renaming or adding entities.
|
|
103
|
+
|
|
104
|
+
## Example Workflows
|
|
105
|
+
|
|
106
|
+
### Building a VR Interaction
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
You: "Make this object grabbable with both hands"
|
|
110
|
+
Agent: Adds XR Interactable component, sets hands to "two",
|
|
111
|
+
and configures attach points. "Done! Users can now grab
|
|
112
|
+
with both hands. Want me to add throw physics?"
|
|
113
|
+
|
|
114
|
+
You: "Yes, and make it teleportable"
|
|
115
|
+
Agent: Adds Physics component with dynamic rigidbody,
|
|
116
|
+
and VR Teleport Area to the floor. "Ready to test!"
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### Batch Asset Processing
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
You: "Import all FBX files from my Desktop and place them in a grid"
|
|
123
|
+
Agent: Copies files to assets/, spawns model entities, arranges in
|
|
124
|
+
5×5 grid with 3m spacing. "Imported 12 models."
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Script Debugging
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
You: "Why isn't my onGrab handler firing?"
|
|
131
|
+
Agent: Checks script, finds missing XR Interactable component.
|
|
132
|
+
"The entity needs an XR Interactable component with
|
|
133
|
+
grabbable: true. Want me to add it?"
|
|
134
|
+
|
|
135
|
+
You: "Yes"
|
|
136
|
+
Agent: Adds component and validates the fix.
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### Learning Workflow
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
You: "How do I set up teleport locomotion?"
|
|
143
|
+
Agent: Explains XR Rig locomotion modes, shows code example for
|
|
144
|
+
custom teleport areas, and offers to configure the current scene.
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Tips
|
|
148
|
+
|
|
149
|
+
### Be Specific with Spatial References
|
|
150
|
+
|
|
151
|
+
- **Good:** "Move the camera 5 meters behind the player entity"
|
|
152
|
+
- **Unclear:** "Put the camera somewhere behind"
|
|
153
|
+
|
|
154
|
+
The agent understands coordinates, directions (up/down/left/right/forward/back), and entity names.
|
|
155
|
+
|
|
156
|
+
### Use Selection for Context
|
|
157
|
+
|
|
158
|
+
Select the target entity before asking for modifications:
|
|
159
|
+
- Select a mesh → "Add a point light above this"
|
|
160
|
+
- Select multiple entities → "Parent these under a new empty"
|
|
161
|
+
|
|
162
|
+
### Iterate Incrementally
|
|
163
|
+
|
|
164
|
+
For complex tasks, work step-by-step:
|
|
165
|
+
1. **"Create a basic VR scene"** → agent sets up rig, lighting, and floor
|
|
166
|
+
2. **"Add a grabbable cube"** → agent spawns and configures it
|
|
167
|
+
3. **"Make it glow when grabbed"** → agent writes the script
|
|
168
|
+
|
|
169
|
+
### Ask for Explanations
|
|
170
|
+
|
|
171
|
+
Prefix with "explain" or "why" to learn instead of execute:
|
|
172
|
+
- **"Explain how animation state machines work"**
|
|
173
|
+
- **"Why is my physics object falling through the floor?"**
|
|
174
|
+
|
|
175
|
+
### Provide Examples
|
|
176
|
+
|
|
177
|
+
Show code or describe behavior:
|
|
178
|
+
- **"Write a script like PlayerController but for VR"**
|
|
179
|
+
- **"Create an animation that's similar to the idle clip but faster"**
|
|
180
|
+
|
|
181
|
+
## Settings and Preferences
|
|
182
|
+
|
|
183
|
+
Configure the AI Agent behavior in **Editor → Preferences → AI Agent**:
|
|
184
|
+
|
|
185
|
+
- **Model selection** - choose which AI model powers the assistant
|
|
186
|
+
- **Auto-approve safe actions** - skip confirmations for non-destructive changes
|
|
187
|
+
- **Context depth** - how much project history the agent considers
|
|
188
|
+
- **Code style** - preferred formatting and conventions for generated scripts
|
|
189
|
+
- **Verbosity** - concise responses vs. detailed explanations
|
|
190
|
+
|
|
191
|
+
## Privacy and Data
|
|
192
|
+
|
|
193
|
+
The AI Agent:
|
|
194
|
+
|
|
195
|
+
- **Does not send scene content** to external servers unless explicitly sharing for collaboration
|
|
196
|
+
- **Keeps conversation history locally** in your project folder
|
|
197
|
+
- **Can be disabled** entirely if you prefer manual workflows
|
|
198
|
+
- **Respects .gitignore** - won't reference or modify ignored files
|
|
199
|
+
|
|
200
|
+
Check **Help → Privacy Policy** for full details on data handling.
|
|
201
|
+
|
|
202
|
+
## Limitations
|
|
203
|
+
|
|
204
|
+
The AI Agent is a powerful assistant but has boundaries:
|
|
205
|
+
|
|
206
|
+
- **Cannot undo destructive file operations** - deleting assets is permanent
|
|
207
|
+
- **May hallucinate APIs** - always verify generated code against the [Component Catalog](../../component-catalog)
|
|
208
|
+
- **Context window limits** - very large scenes may require breaking requests into smaller tasks
|
|
209
|
+
- **No runtime execution** - the agent modifies the editor, not the running preview
|
|
210
|
+
|
|
211
|
+
When in doubt, review proposed changes before confirming.
|
|
212
|
+
|
|
213
|
+
## Keyboard Shortcuts
|
|
214
|
+
|
|
215
|
+
| Action | Shortcut |
|
|
216
|
+
|--------|----------|
|
|
217
|
+
| Open/Close AI Agent | Configurable (default: depends on OS) |
|
|
218
|
+
| Send message | `Enter` |
|
|
219
|
+
| New line in message | `Shift + Enter` |
|
|
220
|
+
<!-- | Clear conversation | `Cmd/Ctrl + K` |
|
|
221
|
+
| Regenerate last response | `Cmd/Ctrl + R` | -->
|
|
222
|
+
|
|
223
|
+
## Related
|
|
224
|
+
|
|
225
|
+
- [Custom Behaviours](../../authoring-a-behaviour) - scripting with the agent's help
|
|
226
|
+
- [Component Catalog](../../component-catalog) - reference for agent-generated configurations
|
|
227
|
+
- [Toolbar](./toolbar) - where the AI Agent toggle lives
|
|
@@ -20,7 +20,7 @@ Each row represents one entity:
|
|
|
20
20
|
|
|
21
21
|
## Searching
|
|
22
22
|
|
|
23
|
-
The search box above the tree filters rows by name. It searches the displayed name only
|
|
23
|
+
The search box above the tree filters rows by name. It searches the displayed name only not component values.
|
|
24
24
|
|
|
25
25
|
## Adding entities
|
|
26
26
|
|
|
@@ -35,7 +35,7 @@ Drag a row onto another row to **re-parent** it. The dragged entity becomes a ch
|
|
|
35
35
|
- Drop on **empty space** → re-parent to the scene root.
|
|
36
36
|
|
|
37
37
|
> [!IMPORTANT]
|
|
38
|
-
> Some entities
|
|
38
|
+
> Some entities, for example image-target anchors control their own children. Re-parenting them across different anchor groups can change runtime behavior. See the [Component Catalog](../../component-catalog) for component-specific notes.
|
|
39
39
|
|
|
40
40
|
## Renaming
|
|
41
41
|
|
|
@@ -7,10 +7,11 @@ The editor window is divided into a handful of regions. Each one has a dedicated
|
|
|
7
7
|
| Region | Purpose |
|
|
8
8
|
| --- | --- |
|
|
9
9
|
| [Hierarchy](./hierarchy) | The scene tree. Add, select, parent, and reorder entities. |
|
|
10
|
-
| [Toolbar](./toolbar) | Global actions
|
|
10
|
+
| [Toolbar](./toolbar) | Global actions settings, save, preview, publish. |
|
|
11
11
|
| [Viewport](./viewport) | The 3D scene view. Click to select, drag gizmos to transform. |
|
|
12
12
|
| [Inspector](./inspector) | Edit components on the selected entity. |
|
|
13
13
|
| [Assets Browser](./assets-browser) | Files in your project's `assets/` folder. Drag into the scene to add. |
|
|
14
|
+
| [AI Agent](./ai-agent) | AI-powered assistant for scene creation, scripting, and workflow automation. |
|
|
14
15
|
<!-- | [Modules](./modules) | Optional per-project-type module panels. | -->
|
|
15
16
|
|
|
16
|
-
Read these in any order
|
|
17
|
+
Read these in any order, most pages are short and focused on one region.
|
|
@@ -4,14 +4,14 @@ The inspector (right panel) is where you edit the **components** of whatever is
|
|
|
4
4
|
|
|
5
5
|

|
|
6
6
|
|
|
7
|
-
## Two top-level tabs
|
|
7
|
+
<!-- ## Two top-level tabs
|
|
8
8
|
|
|
9
9
|
At the top of the inspector are two tabs:
|
|
10
10
|
|
|
11
11
|
| Tab | Shows |
|
|
12
12
|
| --- | --- |
|
|
13
13
|
| **Object** | Components of the entity currently selected in the [hierarchy](./hierarchy). When nothing is selected, the tab is empty. |
|
|
14
|
-
| **Scene** | Scene wide singletons like skybox, fog, gravity, postprocessing. See [Scene → Environment](../../scene/environment) and [Scene → Postprocessing](../../scene/postprocessing). |
|
|
14
|
+
| **Scene** | Scene wide singletons like skybox, fog, gravity, postprocessing. See [Scene → Environment](../../scene/environment) and [Scene → Postprocessing](../../scene/postprocessing). | -->
|
|
15
15
|
|
|
16
16
|
## Component panels
|
|
17
17
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Scene Inspector
|
|
2
2
|
|
|
3
|
-
The **Scene**
|
|
3
|
+
The **Scene** configs in the inspector panel exposes scene wide singleton components settings that apply globally to the entire project rather than to a specific entity.
|
|
4
4
|
|
|
5
5
|
## Opening the Scene tab
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Deselect any selected object in the scene and the **Scene** config will show in the inspector (right panel). When an Object is selected it shows the selected entity's components; the Scene config shows the global settings when no object is selected in the scene.
|
|
8
8
|
|
|
9
|
-

|
|
10
10
|
|
|
11
11
|
## Sections
|
|
12
12
|
|
|
@@ -4,34 +4,34 @@ The toolbar is the global header at the top of the editor window. It groups proj
|
|
|
4
4
|
|
|
5
5
|

|
|
6
6
|
|
|
7
|
-
## Left group
|
|
7
|
+
## Left group
|
|
8
8
|
|
|
9
9
|
| Control | Action |
|
|
10
10
|
| --- | --- |
|
|
11
|
-
|  | Opens the shortcuts modal (shows various keyboard shortcuts). |
|
|
13
|
-
|  | Opens the in-app issue reporter. |
|
|
11
|
+
|  | Clicking this returns to the project dashboard. |
|
|
12
|
+
<!-- |  | Opens the shortcuts modal (shows various keyboard shortcuts). |
|
|
13
|
+
|  | Opens the in-app issue reporter. | -->
|
|
14
14
|
|
|
15
|
-
## Center group
|
|
15
|
+
## Center group
|
|
16
16
|
|
|
17
17
|
| Control | Action |
|
|
18
18
|
| --- | --- |
|
|
19
|
-
|  | Active manipulation mode (move / rotate / scale). Mirrors the gizmo shown on the selected entity. |
|
|
20
19
|
|  | Adds a new entity to the scene (cube, sphere, plane, light, camera, etc.). |
|
|
21
|
-
|  | Launches
|
|
20
|
+
|  | Launches a **preview** of your experience in a separate browser window using the current saved snapshot. |
|
|
21
|
+
<!-- |  | Active manipulation mode (move / rotate / scale). Mirrors the gizmo shown on the selected entity. | -->
|
|
22
22
|
|
|
23
|
-
## Right group
|
|
23
|
+
## Right group
|
|
24
24
|
|
|
25
25
|
| Control | Action |
|
|
26
26
|
| --- | --- |
|
|
27
27
|
|  | Reverts the last scene-affecting action. Bound to `Cmd/Ctrl + Z`. |
|
|
28
28
|
|  | Re-applies the last undone action. Bound to `Cmd/Ctrl + Shift + Z`. |
|
|
29
29
|
|  | Writes the current scene to disk. Bound to `Cmd/Ctrl + S`. |
|
|
30
|
-
|  | Uploads the project to Relu and makes it shareable. |
|
|
31
|
-
|  | Uploads the project to Relu Spatial cloud and makes it shareable. |
|
|
31
|
+
|  | Opens the global project settings menu. |
|
|
32
32
|
|
|
33
33
|
> [!TIP]
|
|
34
|
-
> Save and Publish are independent. You always need to **save** before previewing or publishing
|
|
34
|
+
> Save and Publish are independent. You always need to **save** before previewing or publishing, preview/publish read the on-disk snapshot, not the in-memory state.
|
|
35
35
|
|
|
36
36
|
## Related
|
|
37
37
|
|
|
@@ -8,10 +8,11 @@ The viewport is the central live 3D view of your scene. You navigate the editor
|
|
|
8
8
|
|
|
9
9
|
| Input | Action |
|
|
10
10
|
| --- | --- |
|
|
11
|
-
|
|
|
12
|
-
|
|
|
11
|
+
| **`Alt / Option + Left mouse drag`** | Orbit (look around). |
|
|
12
|
+
| **`Shift + Alt / Option + Left mouse drag`** | Pan. |
|
|
13
13
|
| **Mouse wheel** | Zoom in / out. |
|
|
14
14
|
| **`F`** | Focus on the selected entity. |
|
|
15
|
+
| **`Shift + F`** | Frame and focus on the selected entity. |
|
|
15
16
|
|
|
16
17
|
The bottom-left **axis gizmo** shows the current orientation of the editor camera. Click an axis to snap the view to that direction.
|
|
17
18
|
|
|
@@ -23,15 +24,22 @@ The bottom-left **axis gizmo** shows the current orientation of the editor camer
|
|
|
23
24
|
|
|
24
25
|
## Transform gizmos
|
|
25
26
|
|
|
26
|
-
When an entity is selected, a gizmo appears at its origin. Switch the active mode from the
|
|
27
|
+
When an entity is selected, a gizmo appears at its origin. Switch the active mode from the transform mode controls on the top right of the viewport or with the keyboard:
|
|
28
|
+
|
|
29
|
+

|
|
27
30
|
|
|
28
31
|
| Key | Mode |
|
|
29
32
|
| --- | --- |
|
|
30
|
-
| **`
|
|
31
|
-
| **`
|
|
32
|
-
| **`
|
|
33
|
+
| **`q`** | All transform modes |
|
|
34
|
+
| **`w`** | Ground mode (_moves objects on the ground plane_). |
|
|
35
|
+
| **`e`** | Front mode (_moves objects on the front plane_). |
|
|
36
|
+
| **`r`** | Side mode (_moves objects on the side plane_). |
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
Drag a colored arrow / ring / handle to constrain the operation to that axis. Hold **`Shift`** while dragging to enable snapping or in any of the plane mode drag an object on that plane.
|
|
33
41
|
|
|
34
|
-
|
|
42
|
+

|
|
35
43
|
|
|
36
44
|
<!-- ## Editor-only helpers
|
|
37
45
|
|
|
@@ -39,5 +47,5 @@ Some helpers are visible only while editing — wireframe colliders, light cones
|
|
|
39
47
|
|
|
40
48
|
## Related
|
|
41
49
|
|
|
42
|
-
- [
|
|
43
|
-
- [Keyboard shortcuts](../shortcuts)
|
|
50
|
+
- [Toolbar](./toolbar) - transform tool buttons.
|
|
51
|
+
- [Keyboard shortcuts](../shortcuts) - the full list.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Introduction
|
|
2
2
|
|
|
3
|
-
**Relu Spatial** is a desktop first 3D editor and runtime for building interactive
|
|
3
|
+
**Relu Spatial** is a desktop first 3D editor and runtime for building interactive web3d and webxr spatial experiences. It combines a visual scene editor with a TypeScript scripting API powered by an entity component system (ECS) runtime, so you can author scenes visually and drive them with code that runs the same way in preview and in production.
|
|
4
4
|
|
|
5
5
|
You compose scenes from entities, meshes, lights, cameras, image targets, and custom prefabs and you bring them to life with `Behaviour` scripts that read input, query the world, and mutate components every frame.
|
|
6
6
|
|
|
@@ -6,7 +6,7 @@ The Relu Spatial editor is distributed as a desktop application for macOS, Windo
|
|
|
6
6
|
|
|
7
7
|
Get the latest installer from the official downloads page:
|
|
8
8
|
|
|
9
|
-
[**reluspatial.com/
|
|
9
|
+
[**reluspatial.com/editor**](https://reluspatial.com/editor)
|
|
10
10
|
|
|
11
11
|

|
|
12
12
|
|
|
@@ -4,7 +4,7 @@ The editor ships with a runtime preview so you can test your scene without leavi
|
|
|
4
4
|
|
|
5
5
|
## Starting a preview
|
|
6
6
|
|
|
7
|
-
Click the **Preview** button in the [toolbar](./editor/toolbar). The editor
|
|
7
|
+
Click the **Preview** button in the [toolbar](./editor/toolbar). The editor spins up a local runtime server, and opens a preview window.
|
|
8
8
|
|
|
9
9
|

|
|
10
10
|
|
|
@@ -33,8 +33,8 @@ Preview is **not** a live link to the editor. To see changes:
|
|
|
33
33
|
|
|
34
34
|
For project types that need real device sensors (image tracking, face tracking, AR, VR) the desktop preview only goes so far. Use these strategies:
|
|
35
35
|
|
|
36
|
-
- **Image /
|
|
37
|
-
- **WebXR (AR / VR):**
|
|
36
|
+
- **Image / Face tracking:** desktop preview can use your laptop camera. For phone camera quality, connect your phone to the same wifi network as your laptop and scan the qrcode to open it on the target device.
|
|
37
|
+
- **WebXR (AR / VR):** preview and open it on a headset or AR capable phone over your local network just like described for __Image / Face tracking__ projects described above.
|
|
38
38
|
|
|
39
39
|
## Common preview issues
|
|
40
40
|
|
|
@@ -49,7 +49,7 @@ For project types that need real device sensors (image tracking, face tracking,
|
|
|
49
49
|
|
|
50
50
|
You're done with **Getting Started**. Continue with:
|
|
51
51
|
|
|
52
|
-
- [Concepts](../concepts)
|
|
53
|
-
- [Custom Behaviours](../authoring-a-behaviour)
|
|
54
|
-
- [Component Catalog](../component-catalog)
|
|
55
|
-
- [World API](../world-api)
|
|
52
|
+
- [Concepts](../concepts) - how the ECS runtime is organized.
|
|
53
|
+
- [Custom Behaviours](../authoring-a-behaviour) - write scripts.
|
|
54
|
+
- [Component Catalog](../component-catalog) - full component reference.
|
|
55
|
+
- [World API](../world-api) - query and mutate the runtime from scripts.
|
|
@@ -13,30 +13,42 @@ Use this for posters, business cards, product packaging, museum exhibits, and an
|
|
|
13
13
|
When you open an image-tracking project, the editor changes in three ways:
|
|
14
14
|
|
|
15
15
|
1. **Image targets are first-class entities** in the hierarchy. Each anchor represents one image and contains the children that should appear when that image is detected.
|
|
16
|
-
2. **
|
|
17
|
-
3. **The Image Targets panel** lives in the inspector when an image-target entity is selected. From there you upload reference images, set physical sizes, and preview tracking quality.
|
|
16
|
+
2. **The Image Targets panel** a panel on the right side of the hierarchy view showing each image target and a button to compile new image targets. From there you upload reference images, set physical sizes, and preview tracking quality.
|
|
18
17
|
|
|
19
18
|

|
|
20
19
|
|
|
21
20
|
## Workflow
|
|
22
21
|
|
|
23
|
-
1. **Add an Image Target entity** from the
|
|
24
|
-
2. **
|
|
25
|
-
3. **Add child entities** under the anchor. Anything you
|
|
26
|
-
4. **
|
|
27
|
-
5. **Preview** — press the preview button. The runtime loads the compiled targets and starts the device camera.
|
|
22
|
+
1. **Add an Image Target entity** from the image targets panel click `Add Image Targets` button.
|
|
23
|
+
2. **Drag or pick tracking images** and click the compile button to compile image targets.
|
|
24
|
+
3. In the **Image Targets panel** select an image target to **Add child entities** under the anchor. Anything you add in the scene when that image target is selected becomes visible only when that image is detected.
|
|
25
|
+
4. **Preview** - press the preview button. The runtime loads the compiled targets and starts the device camera.
|
|
28
26
|
|
|
29
27
|

|
|
30
28
|
|
|
31
29
|
|
|
32
30
|
## Tips
|
|
33
31
|
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
### Choosing Good Image Targets
|
|
33
|
+
|
|
34
|
+
AR engines rely on distinct visual features (edges and corners) to detect and track images. **High-contrast, feature-rich images track best**, while images with the following characteristics will fail or track poorly:
|
|
35
|
+
|
|
36
|
+
| Characteristic | Why It Fails | Example |
|
|
37
|
+
|----------------|--------------|---------|
|
|
38
|
+
| **Low Contrast & Gradients** | AR engines rely on sharp changes in pixels (edges and corners) to find feature points; gradual color gradients offer no distinct tracking anchors. | A soft pastel watercolor wash or a blurry photo. |
|
|
39
|
+
| **Repetitive Patterns & Symmetry** | Repeating elements create identical feature points that confuse the algorithm, while strict symmetry prevents the engine from determining correct orientation. | Brick walls, checkerboards, or a symmetrical tribal logo. |
|
|
40
|
+
| **Excessive Blank/Empty Space** | Large flat areas or empty borders contain zero feature data, forcing the tracker to rely on a restricted surface area. | A tiny corporate logo centered in the middle of a massive blank white sheet of paper. |
|
|
41
|
+
| **Reflective or Glossy Finishes** | Shiny surfaces bounce ambient light and create moving glares/reflections, generating dynamic visual noise that breaks tracking. | Laminated prints under direct office lights or displaying the target on a low-luminosity phone screen. |
|
|
42
|
+
|
|
43
|
+
**In summary:** avoid faces, gradients, large flat colors, repetitive patterns, excessive white space, and glossy/reflective surfaces.
|
|
44
|
+
|
|
45
|
+
### Other Tips
|
|
46
|
+
|
|
47
|
+
- Keep the **physical size** field accurate, this is what the runtime uses to scale your 3D content to the printed image.
|
|
36
48
|
- Children of an image-target anchor inherit its transform. Position objects in **local space** relative to the anchor, not world space.
|
|
37
49
|
- Recompile targets whenever you add or change reference images.
|
|
38
50
|
|
|
39
51
|
## Related
|
|
40
52
|
|
|
41
|
-
- [Component Catalog → Image Target](../../component-catalog)
|
|
42
|
-
- [Spawning → Image Target](../../spawning/image-target)
|
|
53
|
+
- [Component Catalog → Image Target](../../component-catalog) - runtime component reference.
|
|
54
|
+
- [Spawning → Image Target](../../spawning/image-target) - spawning anchors from scripts.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Project Types
|
|
2
2
|
|
|
3
|
-
When you create a new project
|
|
3
|
+
When you create a new project you need to choose a **project type**. The type determines:
|
|
4
4
|
|
|
5
5
|
- the **default scene** seeded into the project,
|
|
6
6
|
- which **components and panels** are available in the inspector,
|
|
@@ -16,10 +16,10 @@ You can't change a project's type after creation, so pick the one that matches t
|
|
|
16
16
|
| [Image Tracking](./image-tracking) | AR experiences anchored to printed images, posters, or product packaging. |
|
|
17
17
|
| [3D](./3d) | Plain interactive 3D scenes, games, product viewers, configurators, embedded experiences. |
|
|
18
18
|
| [Face Tracking](./face-tracking) | Face filters, avatars, and try-on experiences. *(Coming Soon)* |
|
|
19
|
-
| [VR](./vr) | Fully immersive virtual reality scenes for headsets.
|
|
19
|
+
| [VR](./vr) | Fully immersive virtual reality scenes for headsets. |
|
|
20
20
|
| [AR](./ar) | World-space augmented reality without a specific anchor. *(Coming Soon)* |
|
|
21
21
|
|
|
22
|
-

|
|
23
23
|
|
|
24
24
|
> [!TIP]
|
|
25
|
-
> If you're not sure, start with **3D
|
|
25
|
+
> If you're not sure, start with **3D**, it has the simplest scene setup with no tracking or device requirements. You can always create a second project to try a tracking-based or immersive type.
|