@relu-interactives/spatial-ecs 0.2.25 → 0.3.1
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-CYWZ_Zx5.d.cts → System-vrU46Vuw.d.cts} +16 -2
- package/dist/{System-CYWZ_Zx5.d.ts → System-vrU46Vuw.d.ts} +16 -2
- package/dist/{Video-AIQYTAAr.d.cts → XRRig-CAmf04NX.d.ts} +131 -4
- package/dist/{Video-DlZ4G9ig.d.ts → XRRig-Cu-EyliG.d.cts} +131 -4
- package/dist/{chunk-XFD74BQL.js → chunk-67WGASUJ.js} +3 -3
- package/dist/{chunk-XFD74BQL.js.map → chunk-67WGASUJ.js.map} +1 -1
- package/dist/{chunk-RJ4J5UEX.js → chunk-PCOZLCXS.js} +160 -83
- package/dist/chunk-PCOZLCXS.js.map +1 -0
- package/dist/{chunk-J6736FFO.js → chunk-U3MDYKPV.js} +90 -14
- package/dist/chunk-U3MDYKPV.js.map +1 -0
- package/dist/{chunk-3P3ZBP7K.js → chunk-VXUVNC7S.js} +634 -6
- package/dist/chunk-VXUVNC7S.js.map +1 -0
- package/dist/components/index.cjs +87 -11
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +3 -3
- package/dist/components/index.d.ts +3 -3
- package/dist/components/index.js +1 -1
- package/dist/docs/api/Behaviour/classes/Behaviour.md +98 -51
- package/dist/docs/api/Component/classes/Component.md +4 -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 +3 -3
- package/dist/docs/api/components/classes/ImageComponent.md +7 -7
- package/dist/docs/api/components/classes/ImageTarget.md +7 -7
- 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 +57 -11
- 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 +4 -4
- 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 +12 -13
- package/dist/docs/api/components/classes/Postprocessing.md +3 -3
- package/dist/docs/api/components/classes/PrefabInstance.md +80 -0
- package/dist/docs/api/components/classes/PrefabNode.md +54 -0
- package/dist/docs/api/components/classes/ScriptComponent.md +5 -5
- package/dist/docs/api/components/classes/ScriptObjectComponent.md +55 -0
- 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/VideoComponent.md +28 -28
- package/dist/docs/api/components/functions/defaultMaterialValue.md +17 -0
- package/dist/docs/api/components/functions/normalizePhysicsState.md +1 -1
- package/dist/docs/api/components/functions/setPhysicsLiveRef.md +34 -0
- package/dist/docs/api/components/index.md +8 -1
- 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 +1 -1
- 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/EnvironmentSkyboxState.md +7 -7
- package/dist/docs/api/components/type-aliases/EnvironmentSkyboxType.md +1 -1
- package/dist/docs/api/components/type-aliases/EnvironmentState.md +5 -5
- 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/LightValueState.md +11 -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/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 -10
- package/dist/docs/api/components/type-aliases/ScriptObjectComponentInput.md +20 -0
- package/dist/docs/api/components/type-aliases/ScriptObjectRuntimeState.md +13 -0
- 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/Vec3.md +4 -4
- package/dist/docs/api/components/variables/DEFAULT_COLLIDER_STATE.md +1 -1
- 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_POSTPROCESSING_STATE.md +1 -1
- package/dist/docs/api/components/variables/DEFAULT_RIGIDBODY_STATE.md +1 -1
- 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 +4 -4
- 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 +4 -4
- package/dist/docs/api/index/classes/RenderSystem.md +3 -3
- package/dist/docs/api/index/classes/ScriptBehaviourSystem.md +5 -5
- package/dist/docs/api/index/classes/ScriptObject.md +156 -0
- package/dist/docs/api/index/classes/ScriptObjectSystem.md +129 -0
- package/dist/docs/api/index/classes/TransformSyncSystem.md +2 -2
- package/dist/docs/api/index/classes/VideoSystem.md +4 -4
- package/dist/docs/api/index/classes/World.md +183 -86
- package/dist/docs/api/index/functions/applyPrefabToSnapshotInstances.md +32 -0
- package/dist/docs/api/index/functions/buildComponentValueMaps.md +23 -0
- package/dist/docs/api/index/functions/buildNodeKeyMapsFromSnapshot.md +25 -0
- package/dist/docs/api/index/functions/buildNodeMapsFromSnapshot.md +23 -0
- package/dist/docs/api/index/functions/canonicalizeComponentValue.md +38 -0
- package/dist/docs/api/index/functions/clearModelCache.md +26 -0
- package/dist/docs/api/index/functions/clearPrefabCache.md +25 -0
- package/dist/docs/api/index/functions/collectDiffPaths.md +38 -0
- package/dist/docs/api/index/functions/collectDirectPrefabDependencies.md +27 -0
- package/dist/docs/api/index/functions/collectEntitySubtree.md +29 -0
- package/dist/docs/api/index/functions/collectSnapshotSubtreeIds.md +26 -0
- package/dist/docs/api/index/functions/computeInstanceOverrides.md +44 -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/createImageComponent.md +1 -1
- package/dist/docs/api/index/functions/createImageTargetAnchorComponent.md +1 -1
- package/dist/docs/api/index/functions/createImageTargetComponent.md +1 -1
- 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 +1 -1
- package/dist/docs/api/index/functions/createMaterialComponent.md +1 -1
- 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 +2 -4
- 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 +28 -0
- 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/createVideoComponent.md +1 -1
- package/dist/docs/api/index/functions/decanonicalizeComponentValue.md +28 -0
- package/dist/docs/api/index/functions/despawnPrefab.md +32 -0
- package/dist/docs/api/index/functions/encodeOverride.md +28 -0
- package/dist/docs/api/index/functions/findSnapshotRootEntityIds.md +25 -0
- package/dist/docs/api/index/functions/findTopLevelNestedRegions.md +28 -0
- package/dist/docs/api/index/functions/groupOverridePaths.md +25 -0
- package/dist/docs/api/index/functions/hydrateWorldFromSnapshot.md +1 -1
- package/dist/docs/api/index/functions/hydrateWorldFromSnapshotDetailed.md +4 -2
- package/dist/docs/api/index/functions/indexSnapshotByEntity.md +25 -0
- package/dist/docs/api/index/functions/instantiateSubtree.md +32 -0
- package/dist/docs/api/index/functions/loadPrefab.md +28 -0
- package/dist/docs/api/index/functions/loadSharedGltf.md +29 -0
- package/dist/docs/api/index/functions/mergeComponentValue.md +32 -0
- package/dist/docs/api/index/functions/parseOverride.md +34 -0
- package/dist/docs/api/index/functions/parsePrefabAsset.md +25 -0
- package/dist/docs/api/index/functions/prefabFileVersionFor.md +25 -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 +46 -0
- package/dist/docs/api/index/functions/resolveDracoDecoderPath.md +17 -0
- package/dist/docs/api/index/functions/restoreComponentState.md +34 -0
- package/dist/docs/api/index/functions/restorePostCreateComponents.md +36 -0
- package/dist/docs/api/index/functions/serializeEntitySubtree.md +35 -0
- package/dist/docs/api/index/functions/setDracoDecoderPath.md +30 -0
- package/dist/docs/api/index/functions/setPrefabAssetUrlResolver.md +30 -0
- package/dist/docs/api/index/functions/spawnPrefab.md +36 -0
- package/dist/docs/api/index/index.md +65 -0
- package/dist/docs/api/index/interfaces/EcsSystem.md +3 -3
- 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 +23 -0
- package/dist/docs/api/index/type-aliases/ComponentFactory.md +1 -1
- package/dist/docs/api/index/type-aliases/ComponentValueMaps.md +69 -0
- package/dist/docs/api/index/type-aliases/EcsComponentFactoryKind.md +2 -1
- 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 +27 -0
- package/dist/docs/api/index/type-aliases/HydrateOptions.md +27 -0
- package/dist/docs/api/index/type-aliases/HydrateWorldFromSnapshotResult.md +7 -5
- package/dist/docs/api/index/type-aliases/InstantiateSubtreeResult.md +23 -0
- package/dist/docs/api/index/type-aliases/KeyboardKey.md +1 -1
- package/dist/docs/api/index/type-aliases/ModuleLoader.md +25 -0
- package/dist/docs/api/index/type-aliases/MouseButton.md +1 -1
- package/dist/docs/api/index/type-aliases/NestedRegion.md +27 -0
- package/dist/docs/api/index/type-aliases/NodeKeyMaps.md +30 -0
- package/dist/docs/api/index/type-aliases/NodeMaps.md +25 -0
- package/dist/docs/api/index/type-aliases/PrefabAsset.md +32 -0
- package/dist/docs/api/index/type-aliases/RemapSnapshotOptions.md +21 -0
- package/dist/docs/api/index/type-aliases/SelectionContext.md +4 -4
- package/dist/docs/api/index/type-aliases/SerializeEntitySubtreeResult.md +25 -0
- package/dist/docs/api/index/type-aliases/SpawnPrefabOptions.md +27 -0
- package/dist/docs/api/index/type-aliases/SpawnPrefabSource.md +19 -0
- package/dist/docs/api/index/type-aliases/SubtreeSnapshot.md +43 -0
- package/dist/docs/api/index/variables/ADDED_NODE_MARKER_COMPONENT.md +19 -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/NODE_KEY_SEPARATOR.md +13 -0
- package/dist/docs/api/index/variables/OVERRIDE_DIFF_EXCLUDED_COMPONENTS.md +15 -0
- package/dist/docs/api/index/variables/OVERRIDE_ROOT_EXCLUDED_COMPONENTS.md +16 -0
- package/dist/docs/api/index/variables/PREFAB_FILE_VERSION.md +13 -0
- package/dist/docs/api/index/variables/PREFAB_FILE_VERSION_NESTED.md +15 -0
- package/dist/docs/api/index/variables/SCRIPT_OBJECT_ROOT_FLAG.md +15 -0
- package/dist/docs/api/index/variables/SHARED_MODEL_RESOURCE_FLAG.md +17 -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 +2 -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 +3 -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/components/_sidebar.json +4 -0
- package/dist/docs/guide/components/material.md +1 -0
- package/dist/docs/guide/components/script-object.md +32 -0
- package/dist/factories/index.cjs +271 -118
- package/dist/factories/index.cjs.map +1 -1
- package/dist/factories/index.d.cts +9 -3
- package/dist/factories/index.d.ts +9 -3
- package/dist/factories/index.js +3 -3
- package/dist/{index-Gr8aCPRM.d.cts → index-CUFd71ri.d.cts} +12 -3
- package/dist/index-D84o_UA6.d.ts +488 -0
- package/dist/index-YYypJaVw.d.cts +488 -0
- package/dist/{index-BwiRJNIT.d.ts → index-w1oqWl_M.d.ts} +12 -3
- package/dist/index.cjs +1014 -208
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +42 -8
- package/dist/index.d.ts +42 -8
- package/dist/index.js +24 -8
- package/dist/index.js.map +1 -1
- package/dist/systems/index.cjs +717 -12
- package/dist/systems/index.cjs.map +1 -1
- package/dist/systems/index.d.cts +3 -278
- package/dist/systems/index.d.ts +3 -278
- package/dist/systems/index.js +3 -3
- package/dist/types.d.cts +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/worldSnapshotUtils.d.cts +1 -1
- package/dist/worldSnapshotUtils.d.ts +1 -1
- package/package.json +4 -4
- package/dist/chunk-3P3ZBP7K.js.map +0 -1
- package/dist/chunk-J6736FFO.js.map +0 -1
- package/dist/chunk-RJ4J5UEX.js.map +0 -1
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: TransformComponent
|
|
8
8
|
|
|
9
|
-
Defined in: [components/Transform.ts:50](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
9
|
+
Defined in: [components/Transform.ts:50](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L50)
|
|
10
10
|
|
|
11
11
|
Position, rotation, and scale of an entity in its parent's local space.
|
|
12
12
|
|
|
@@ -29,7 +29,7 @@ helpers so dependent systems pick up the change.
|
|
|
29
29
|
new TransformComponent(data?): TransformComponent;
|
|
30
30
|
```
|
|
31
31
|
|
|
32
|
-
Defined in: [components/Transform.ts:58](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
32
|
+
Defined in: [components/Transform.ts:58](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L58)
|
|
33
33
|
|
|
34
34
|
#### Parameters
|
|
35
35
|
|
|
@@ -49,9 +49,9 @@ Defined in: [components/Transform.ts:58](https://github.com/Relu-Interactives/re
|
|
|
49
49
|
|
|
50
50
|
| Property | Type | Description | Defined in |
|
|
51
51
|
| ------ | ------ | ------ | ------ |
|
|
52
|
-
| <a id="position"></a> `position` | [`Vec3`](../type-aliases/Vec3.md) | Local position relative to the parent (or world if no parent). | [components/Transform.ts:52](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
53
|
-
| <a id="rotation"></a> `rotation` | [`Vec3`](../type-aliases/Vec3.md) | Local rotation as Euler XYZ in **radians**. | [components/Transform.ts:54](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
54
|
-
| <a id="scale"></a> `scale` | [`Vec3`](../type-aliases/Vec3.md) | Local scale factors per axis (`1` = identity). | [components/Transform.ts:56](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
52
|
+
| <a id="position"></a> `position` | [`Vec3`](../type-aliases/Vec3.md) | Local position relative to the parent (or world if no parent). | [components/Transform.ts:52](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L52) |
|
|
53
|
+
| <a id="rotation"></a> `rotation` | [`Vec3`](../type-aliases/Vec3.md) | Local rotation as Euler XYZ in **radians**. | [components/Transform.ts:54](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L54) |
|
|
54
|
+
| <a id="scale"></a> `scale` | [`Vec3`](../type-aliases/Vec3.md) | Local scale factors per axis (`1` = identity). | [components/Transform.ts:56](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L56) |
|
|
55
55
|
|
|
56
56
|
## Methods
|
|
57
57
|
|
|
@@ -61,7 +61,7 @@ Defined in: [components/Transform.ts:58](https://github.com/Relu-Interactives/re
|
|
|
61
61
|
toPositionVector3(target?): Vector3;
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
-
Defined in: [components/Transform.ts:84](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
64
|
+
Defined in: [components/Transform.ts:84](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L84)
|
|
65
65
|
|
|
66
66
|
#### Parameters
|
|
67
67
|
|
|
@@ -81,7 +81,7 @@ Defined in: [components/Transform.ts:84](https://github.com/Relu-Interactives/re
|
|
|
81
81
|
toRotationEuler(target?, order?): Euler;
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
Defined in: [components/Transform.ts:88](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
84
|
+
Defined in: [components/Transform.ts:88](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L88)
|
|
85
85
|
|
|
86
86
|
#### Parameters
|
|
87
87
|
|
|
@@ -102,7 +102,7 @@ Defined in: [components/Transform.ts:88](https://github.com/Relu-Interactives/re
|
|
|
102
102
|
toRotationQuaternion(target?, order?): Quaternion;
|
|
103
103
|
```
|
|
104
104
|
|
|
105
|
-
Defined in: [components/Transform.ts:95](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
105
|
+
Defined in: [components/Transform.ts:95](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L95)
|
|
106
106
|
|
|
107
107
|
#### Parameters
|
|
108
108
|
|
|
@@ -123,7 +123,7 @@ Defined in: [components/Transform.ts:95](https://github.com/Relu-Interactives/re
|
|
|
123
123
|
toScaleVector3(target?): Vector3;
|
|
124
124
|
```
|
|
125
125
|
|
|
126
|
-
Defined in: [components/Transform.ts:108](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
126
|
+
Defined in: [components/Transform.ts:108](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L108)
|
|
127
127
|
|
|
128
128
|
#### Parameters
|
|
129
129
|
|
|
@@ -143,7 +143,7 @@ Defined in: [components/Transform.ts:108](https://github.com/Relu-Interactives/r
|
|
|
143
143
|
setPosition(input): this;
|
|
144
144
|
```
|
|
145
145
|
|
|
146
|
-
Defined in: [components/Transform.ts:112](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
146
|
+
Defined in: [components/Transform.ts:112](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L112)
|
|
147
147
|
|
|
148
148
|
#### Parameters
|
|
149
149
|
|
|
@@ -163,7 +163,7 @@ Defined in: [components/Transform.ts:112](https://github.com/Relu-Interactives/r
|
|
|
163
163
|
setScale(input): this;
|
|
164
164
|
```
|
|
165
165
|
|
|
166
|
-
Defined in: [components/Transform.ts:120](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
166
|
+
Defined in: [components/Transform.ts:120](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L120)
|
|
167
167
|
|
|
168
168
|
#### Parameters
|
|
169
169
|
|
|
@@ -183,7 +183,7 @@ Defined in: [components/Transform.ts:120](https://github.com/Relu-Interactives/r
|
|
|
183
183
|
setRotation(input, order?): this;
|
|
184
184
|
```
|
|
185
185
|
|
|
186
|
-
Defined in: [components/Transform.ts:128](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
186
|
+
Defined in: [components/Transform.ts:128](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Transform.ts#L128)
|
|
187
187
|
|
|
188
188
|
#### Parameters
|
|
189
189
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Class: VideoComponent
|
|
8
8
|
|
|
9
|
-
Defined in: [components/Video.ts:37](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
9
|
+
Defined in: [components/Video.ts:37](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L37)
|
|
10
10
|
|
|
11
11
|
Plays a video file as a texture on a quad. Supports green-screen keying
|
|
12
12
|
(`isGreenScreen`, `backgroundColor`, `similarity`, `smoothness`, `spill`).
|
|
@@ -25,7 +25,7 @@ when the project loads.
|
|
|
25
25
|
new VideoComponent(path, options?): VideoComponent;
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
-
Defined in: [components/Video.ts:90](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
28
|
+
Defined in: [components/Video.ts:90](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L90)
|
|
29
29
|
|
|
30
30
|
#### Parameters
|
|
31
31
|
|
|
@@ -46,29 +46,29 @@ Defined in: [components/Video.ts:90](https://github.com/Relu-Interactives/relu-s
|
|
|
46
46
|
|
|
47
47
|
| Property | Type | Description | Defined in |
|
|
48
48
|
| ------ | ------ | ------ | ------ |
|
|
49
|
-
| <a id="path"></a> `path` | `string` | Source URL or `localasset://` path of the video file. | [components/Video.ts:39](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
50
|
-
| <a id="options"></a> `options` | \{ `autoplay`: `boolean`; `loop`: `boolean`; `volume`: `number`; `width`: `number`; `height`: `number`; `isGreenScreen`: `boolean`; `backgroundColor`: `string`; `similarity`: `number`; `smoothness`: `number`; `spill`: `number`; `positional`: `boolean`; `refDistance`: `number`; `distanceModel`: `string`; `rolloffFactor`: `number`; \} | Playback + green-screen options. | Field | Default | Description | |---|---|---| | `autoplay` | `false` | Start playback as soon as the video is ready. | | `loop` | `true` | Loop playback indefinitely. | | `volume` | `1` | Linear gain in `[0, 1]`. | | `width` | `1` | Quad width in world units. | | `height` | `1` | Quad height in world units. | | `isGreenScreen` | `false` | Enable chroma keying using the fields below. | | `backgroundColor` | `"#00ff00"` | Color to key out (CSS color string). | | `similarity` | `0.4` | How close a pixel must be to the key to be removed (`0`–`1`). | | `smoothness` | `0.08` | Soft-edge thickness around the key threshold. | | `spill` | `0.12` | Amount of color spill suppression near edges. | | `positional` | `false` | When `true`, the video's audio stream is spatialized using the entity's 3D position. | | `refDistance` | `1` | Distance at which volume is unattenuated (positional only). | | `distanceModel` | `"inverse"` | WebAudio distance model (`linear`, `inverse`, `exponential`). Positional only. | | `rolloffFactor` | `1` | How quickly volume falls off past `refDistance`. Positional only. | | [components/Video.ts:60](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
51
|
-
| `options.autoplay` | `boolean` | - | [components/Video.ts:9](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
52
|
-
| `options.loop` | `boolean` | - | [components/Video.ts:10](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
53
|
-
| `options.volume` | `number` | - | [components/Video.ts:11](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
54
|
-
| `options.width` | `number` | - | [components/Video.ts:12](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
55
|
-
| `options.height` | `number` | - | [components/Video.ts:13](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
56
|
-
| `options.isGreenScreen` | `boolean` | - | [components/Video.ts:14](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
57
|
-
| `options.backgroundColor` | `string` | - | [components/Video.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
58
|
-
| `options.similarity` | `number` | - | [components/Video.ts:16](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
59
|
-
| `options.smoothness` | `number` | - | [components/Video.ts:17](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
60
|
-
| `options.spill` | `number` | - | [components/Video.ts:18](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
61
|
-
| `options.positional` | `boolean` | When `true`, the video's audio stream is spatialized using the entity's transform. | [components/Video.ts:20](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
62
|
-
| `options.refDistance` | `number` | Distance at which volume is unattenuated (positional only). | [components/Video.ts:22](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
63
|
-
| `options.distanceModel` | `string` | WebAudio distance model (`linear`, `inverse`, `exponential`). Positional only. | [components/Video.ts:24](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
64
|
-
| `options.rolloffFactor` | `number` | How quickly volume falls off past `refDistance`. Positional only. | [components/Video.ts:26](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
65
|
-
| <a id="object"></a> `object` | `Object3D`\<`Object3DEventMap`\> \| `null` | Live three.js object hosting the video quad. `null` until built. | [components/Video.ts:62](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
66
|
-
| <a id="videoelement"></a> `videoElement` | `HTMLVideoElement` \| `null` | Underlying HTML video element. `null` until built. | [components/Video.ts:64](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
67
|
-
| <a id="texture"></a> `texture` | `VideoTexture` \| `null` | Three.js texture sampling the video element. `null` until built. | [components/Video.ts:66](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
68
|
-
| <a id="material"></a> `material` | `Material` \| `null` | Material rendering the video texture (with green-screen shader when enabled). `null` until built. | [components/Video.ts:68](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
69
|
-
| <a id="audionode"></a> `audioNode` | `Audio`\<`GainNode`\> \| `PositionalAudio` \| `null` | THREE.js audio node connected to this video's audio stream via `setMediaElementSource`. Present only in preview when the camera listener is available. `null` in editor mode. | [components/Video.ts:74](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
70
|
-
| <a id="isplaying"></a> `isPlaying` | `boolean` | Whether the video should be playing. Managed by `VideoSystem` in preview. Non-enumerable — not persisted to snapshots or save data. Set via [play](#play) / [stop](#stop). | [components/Video.ts:81](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
71
|
-
| <a id="ispaused"></a> `isPaused` | `boolean` | Whether the video is paused mid-playback (position is preserved). Non-enumerable — not persisted to snapshots or save data. Set via [pause](#pause) / [play](#play) / [stop](#stop). | [components/Video.ts:88](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
49
|
+
| <a id="path"></a> `path` | `string` | Source URL or `localasset://` path of the video file. | [components/Video.ts:39](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L39) |
|
|
50
|
+
| <a id="options"></a> `options` | \{ `autoplay`: `boolean`; `loop`: `boolean`; `volume`: `number`; `width`: `number`; `height`: `number`; `isGreenScreen`: `boolean`; `backgroundColor`: `string`; `similarity`: `number`; `smoothness`: `number`; `spill`: `number`; `positional`: `boolean`; `refDistance`: `number`; `distanceModel`: `string`; `rolloffFactor`: `number`; \} | Playback + green-screen options. | Field | Default | Description | |---|---|---| | `autoplay` | `false` | Start playback as soon as the video is ready. | | `loop` | `true` | Loop playback indefinitely. | | `volume` | `1` | Linear gain in `[0, 1]`. | | `width` | `1` | Quad width in world units. | | `height` | `1` | Quad height in world units. | | `isGreenScreen` | `false` | Enable chroma keying using the fields below. | | `backgroundColor` | `"#00ff00"` | Color to key out (CSS color string). | | `similarity` | `0.4` | How close a pixel must be to the key to be removed (`0`–`1`). | | `smoothness` | `0.08` | Soft-edge thickness around the key threshold. | | `spill` | `0.12` | Amount of color spill suppression near edges. | | `positional` | `false` | When `true`, the video's audio stream is spatialized using the entity's 3D position. | | `refDistance` | `1` | Distance at which volume is unattenuated (positional only). | | `distanceModel` | `"inverse"` | WebAudio distance model (`linear`, `inverse`, `exponential`). Positional only. | | `rolloffFactor` | `1` | How quickly volume falls off past `refDistance`. Positional only. | | [components/Video.ts:60](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L60) |
|
|
51
|
+
| `options.autoplay` | `boolean` | - | [components/Video.ts:9](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L9) |
|
|
52
|
+
| `options.loop` | `boolean` | - | [components/Video.ts:10](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L10) |
|
|
53
|
+
| `options.volume` | `number` | - | [components/Video.ts:11](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L11) |
|
|
54
|
+
| `options.width` | `number` | - | [components/Video.ts:12](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L12) |
|
|
55
|
+
| `options.height` | `number` | - | [components/Video.ts:13](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L13) |
|
|
56
|
+
| `options.isGreenScreen` | `boolean` | - | [components/Video.ts:14](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L14) |
|
|
57
|
+
| `options.backgroundColor` | `string` | - | [components/Video.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L15) |
|
|
58
|
+
| `options.similarity` | `number` | - | [components/Video.ts:16](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L16) |
|
|
59
|
+
| `options.smoothness` | `number` | - | [components/Video.ts:17](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L17) |
|
|
60
|
+
| `options.spill` | `number` | - | [components/Video.ts:18](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L18) |
|
|
61
|
+
| `options.positional` | `boolean` | When `true`, the video's audio stream is spatialized using the entity's transform. | [components/Video.ts:20](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L20) |
|
|
62
|
+
| `options.refDistance` | `number` | Distance at which volume is unattenuated (positional only). | [components/Video.ts:22](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L22) |
|
|
63
|
+
| `options.distanceModel` | `string` | WebAudio distance model (`linear`, `inverse`, `exponential`). Positional only. | [components/Video.ts:24](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L24) |
|
|
64
|
+
| `options.rolloffFactor` | `number` | How quickly volume falls off past `refDistance`. Positional only. | [components/Video.ts:26](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L26) |
|
|
65
|
+
| <a id="object"></a> `object` | `Object3D`\<`Object3DEventMap`\> \| `null` | Live three.js object hosting the video quad. `null` until built. | [components/Video.ts:62](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L62) |
|
|
66
|
+
| <a id="videoelement"></a> `videoElement` | `HTMLVideoElement` \| `null` | Underlying HTML video element. `null` until built. | [components/Video.ts:64](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L64) |
|
|
67
|
+
| <a id="texture"></a> `texture` | `VideoTexture` \| `null` | Three.js texture sampling the video element. `null` until built. | [components/Video.ts:66](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L66) |
|
|
68
|
+
| <a id="material"></a> `material` | `Material` \| `null` | Material rendering the video texture (with green-screen shader when enabled). `null` until built. | [components/Video.ts:68](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L68) |
|
|
69
|
+
| <a id="audionode"></a> `audioNode` | `Audio`\<`GainNode`\> \| `PositionalAudio` \| `null` | THREE.js audio node connected to this video's audio stream via `setMediaElementSource`. Present only in preview when the camera listener is available. `null` in editor mode. | [components/Video.ts:74](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L74) |
|
|
70
|
+
| <a id="isplaying"></a> `isPlaying` | `boolean` | Whether the video should be playing. Managed by `VideoSystem` in preview. Non-enumerable — not persisted to snapshots or save data. Set via [play](#play) / [stop](#stop). | [components/Video.ts:81](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L81) |
|
|
71
|
+
| <a id="ispaused"></a> `isPaused` | `boolean` | Whether the video is paused mid-playback (position is preserved). Non-enumerable — not persisted to snapshots or save data. Set via [pause](#pause) / [play](#play) / [stop](#stop). | [components/Video.ts:88](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L88) |
|
|
72
72
|
|
|
73
73
|
## Methods
|
|
74
74
|
|
|
@@ -78,7 +78,7 @@ Defined in: [components/Video.ts:90](https://github.com/Relu-Interactives/relu-s
|
|
|
78
78
|
play(): void;
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
Defined in: [components/Video.ts:127](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
81
|
+
Defined in: [components/Video.ts:127](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L127)
|
|
82
82
|
|
|
83
83
|
Signals `VideoSystem` to start (or resume) playback.
|
|
84
84
|
Has no direct effect in the editor — `VideoSystem` drives the actual
|
|
@@ -96,7 +96,7 @@ HTML video element call in preview.
|
|
|
96
96
|
pause(): void;
|
|
97
97
|
```
|
|
98
98
|
|
|
99
|
-
Defined in: [components/Video.ts:137](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
99
|
+
Defined in: [components/Video.ts:137](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L137)
|
|
100
100
|
|
|
101
101
|
Signals `VideoSystem` to pause playback, preserving the current position.
|
|
102
102
|
Calling [play](#play) afterwards resumes from where it paused.
|
|
@@ -114,7 +114,7 @@ No-op if not currently playing.
|
|
|
114
114
|
stop(): void;
|
|
115
115
|
```
|
|
116
116
|
|
|
117
|
-
Defined in: [components/Video.ts:146](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
117
|
+
Defined in: [components/Video.ts:146](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Video.ts#L146)
|
|
118
118
|
|
|
119
119
|
Signals `VideoSystem` to stop playback and reset the playback position.
|
|
120
120
|
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
[**@relu-interactives/spatial-ecs**](../../index.md)
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
[@relu-interactives/spatial-ecs](../../index.md) / [components](../index.md) / defaultMaterialValue
|
|
6
|
+
|
|
7
|
+
# Function: defaultMaterialValue()
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
function defaultMaterialValue(): MaterialValueState;
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Defined in: [components/Material.ts:155](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Material.ts#L155)
|
|
14
|
+
|
|
15
|
+
## Returns
|
|
16
|
+
|
|
17
|
+
[`MaterialValueState`](../type-aliases/MaterialValueState.md)
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
function normalizePhysicsState(value): PhysicsState;
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/Physics.ts:319](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/Physics.ts:319](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L319)
|
|
14
14
|
|
|
15
15
|
## Parameters
|
|
16
16
|
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
[**@relu-interactives/spatial-ecs**](../../index.md)
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
[@relu-interactives/spatial-ecs](../../index.md) / [components](../index.md) / setPhysicsLiveRef
|
|
6
|
+
|
|
7
|
+
# Function: setPhysicsLiveRef()
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
function setPhysicsLiveRef(
|
|
11
|
+
component,
|
|
12
|
+
key,
|
|
13
|
+
value): void;
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Defined in: [components/Physics.ts:357](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L357)
|
|
17
|
+
|
|
18
|
+
Write a live Rapier ref as a NON-ENUMERABLE own property. Always via
|
|
19
|
+
defineProperty (mirroring ScriptObjectComponent's `instance` ref): a
|
|
20
|
+
history-restored clone that dropped the original slot would otherwise get an
|
|
21
|
+
ENUMERABLE property from plain assignment, leaking Rapier objects — and for
|
|
22
|
+
trimesh their huge vertex buffers — into snapshot/history/debug walks.
|
|
23
|
+
|
|
24
|
+
## Parameters
|
|
25
|
+
|
|
26
|
+
| Parameter | Type |
|
|
27
|
+
| ------ | ------ |
|
|
28
|
+
| `component` | [`PhysicsComponent`](../classes/PhysicsComponent.md) |
|
|
29
|
+
| `key` | `"collider"` \| `"rigidBody"` |
|
|
30
|
+
| `value` | `RigidBody` \| `Collider` \| `null` |
|
|
31
|
+
|
|
32
|
+
## Returns
|
|
33
|
+
|
|
34
|
+
`void`
|
|
@@ -30,9 +30,12 @@
|
|
|
30
30
|
| [Name](classes/Name.md) | Human-readable name for an entity. Shown in the editor hierarchy panel and preserved across save/reload. |
|
|
31
31
|
| [Object3DRef](classes/Object3DRef.md) | Wraps the live `THREE.Object3D` for an entity. Almost every entity that renders to the scene carries an `Object3DRef` so transform sync, selection, and parenting systems can manipulate the underlying object. |
|
|
32
32
|
| [ParentId](classes/ParentId.md) | Records the parent entity id for hierarchical scene graphs. `null` means the entity is at the world root. The `ObjectManagementSystem` reconciles scene-graph parenting from this component each frame. |
|
|
33
|
-
| [PhysicsComponent](classes/PhysicsComponent.md) |
|
|
33
|
+
| [PhysicsComponent](classes/PhysicsComponent.md) | Marker base class for every ECS component. Subclass `Component` to declare a typed data container that systems can query. |
|
|
34
34
|
| [Postprocessing](classes/Postprocessing.md) | Postprocessing stack settings (depth-of-field, bloom, vignette, chromatic aberration, noise, pixelation, tone mapping, hue/saturation, sepia, SMAA, |
|
|
35
|
+
| [PrefabInstance](classes/PrefabInstance.md) | Marks the ROOT entity of a prefab instance and records its link to the source `.prefab` asset plus the instance's per-property overrides. |
|
|
36
|
+
| [PrefabNode](classes/PrefabNode.md) | Stable identity for an entity that originated from a prefab asset. |
|
|
35
37
|
| [ScriptComponent](classes/ScriptComponent.md) | Component holding the list of [scripts](type-aliases/ScriptEntry.md) attached to an entity. Loaded from the saved project; the runtime-side fields (`scriptInstance`, `scriptInstances`) are non-enumerable so they never leak into save data or undo history. |
|
|
38
|
+
| [ScriptObjectComponent](classes/ScriptObjectComponent.md) | Component for a **script object** — a single [ScriptObject](../index/classes/ScriptObject.md) whose THREE.js visual is built by user code and runs in the editor AND at runtime. Unlike [ScriptComponent](classes/ScriptComponent.md) this holds ONE script (not an entries array). The live instance ref is non-enumerable so it never leaks into save data or undo history. |
|
|
36
39
|
| [Selectable](classes/Selectable.md) | Toggles whether the editor selection system can pick this entity. When `enabled` is `false`, the entity is excluded from raycast hit tests. |
|
|
37
40
|
| [SelectionTransformState](classes/SelectionTransformState.md) | Singleton-style component (attached once to a system entity) that mirrors the editor's current transform-gizmo state into the ECS world. Persisted in snapshots so undo/redo restores the exact gizmo configuration. |
|
|
38
41
|
| [SpriteComponent](classes/SpriteComponent.md) | Camera-facing 2D sprite. Unlike [ImageComponent](classes/ImageComponent.md), sprites use `THREE.Sprite` and always render as billboards. |
|
|
@@ -75,6 +78,8 @@
|
|
|
75
78
|
| [PhysicsState](type-aliases/PhysicsState.md) | Combined authoring state for [PhysicsComponent](classes/PhysicsComponent.md). Saved with the project. |
|
|
76
79
|
| [PostprocessingState](type-aliases/PostprocessingState.md) | Aggregated post-processing effect chain authored on the scene environment. Each sub-effect has its own `enabled` flag plus per-effect parameters. |
|
|
77
80
|
| [ScriptEntry](type-aliases/ScriptEntry.md) | One script attached to an entity. Multiple entries may target a single entity (different classes from the same or different files). |
|
|
81
|
+
| [ScriptObjectRuntimeState](type-aliases/ScriptObjectRuntimeState.md) | - |
|
|
82
|
+
| [ScriptObjectComponentInput](type-aliases/ScriptObjectComponentInput.md) | - |
|
|
78
83
|
| [TransformModeValue](type-aliases/TransformModeValue.md) | Active gizmo mode in the editor. |
|
|
79
84
|
| [TransformSpaceValue](type-aliases/TransformSpaceValue.md) | Reference frame for the active gizmo. |
|
|
80
85
|
| [Vec3](type-aliases/Vec3.md) | Plain XYZ vector. All ECS transform fields use this shape rather than `THREE.Vector3` so they save cleanly with the project. |
|
|
@@ -97,4 +102,6 @@
|
|
|
97
102
|
|
|
98
103
|
| Function | Description |
|
|
99
104
|
| ------ | ------ |
|
|
105
|
+
| [defaultMaterialValue](functions/defaultMaterialValue.md) | - |
|
|
100
106
|
| [normalizePhysicsState](functions/normalizePhysicsState.md) | - |
|
|
107
|
+
| [setPhysicsLiveRef](functions/setPhysicsLiveRef.md) | Write a live Rapier ref as a NON-ENUMERABLE own property. Always via defineProperty (mirroring ScriptObjectComponent's `instance` ref): a history-restored clone that dropped the original slot would otherwise get an ENUMERABLE property from plain assignment, leaking Rapier objects — and for trimesh their huge vertex buffers — into snapshot/history/debug walks. |
|
|
@@ -24,7 +24,7 @@ type AnimationComponentOptions = {
|
|
|
24
24
|
};
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
Defined in: [components/Animation.ts:10](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
27
|
+
Defined in: [components/Animation.ts:10](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L10)
|
|
28
28
|
|
|
29
29
|
Initializer for [AnimationComponent](../classes/AnimationComponent.md).
|
|
30
30
|
|
|
@@ -32,11 +32,11 @@ Initializer for [AnimationComponent](../classes/AnimationComponent.md).
|
|
|
32
32
|
|
|
33
33
|
| Property | Type | Description | Defined in |
|
|
34
34
|
| ------ | ------ | ------ | ------ |
|
|
35
|
-
| <a id="clips"></a> `clips?` | `THREE.AnimationClip`[] | Initial set of clips imported from the entity's model. | [components/Animation.ts:12](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
36
|
-
| <a id="externalclipsources"></a> `externalClipSources?` | `string`[] | URLs (or `localasset://` paths) of clips to load asynchronously and merge into the catalog. | [components/Animation.ts:14](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
37
|
-
| <a id="activestate"></a> `activeState?` | `string` \| `null` | Name of the state to activate after construction. | [components/Animation.ts:16](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
38
|
-
| <a id="paused"></a> `paused?` | `boolean` | Whether playback starts paused. | [components/Animation.ts:18](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
39
|
-
| <a id="reverse"></a> `reverse?` | `boolean` | Play the active clip in reverse. | [components/Animation.ts:20](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
40
|
-
| <a id="timescale"></a> `timeScale?` | `number` | Time-scale multiplier (`1` = real-time). | [components/Animation.ts:22](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
41
|
-
| <a id="crossfadeduration"></a> `crossFadeDuration?` | `number` | Default cross-fade duration in seconds when switching states. | [components/Animation.ts:24](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
42
|
-
| <a id="states"></a> `states?` | \{ `name`: `string`; `clip`: `string`; `clipId?`: `string`; `loop?`: `boolean`; \}[] | Predefined state machine entries (`name` -> clip binding). | [components/Animation.ts:26](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
35
|
+
| <a id="clips"></a> `clips?` | `THREE.AnimationClip`[] | Initial set of clips imported from the entity's model. | [components/Animation.ts:12](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L12) |
|
|
36
|
+
| <a id="externalclipsources"></a> `externalClipSources?` | `string`[] | URLs (or `localasset://` paths) of clips to load asynchronously and merge into the catalog. | [components/Animation.ts:14](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L14) |
|
|
37
|
+
| <a id="activestate"></a> `activeState?` | `string` \| `null` | Name of the state to activate after construction. | [components/Animation.ts:16](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L16) |
|
|
38
|
+
| <a id="paused"></a> `paused?` | `boolean` | Whether playback starts paused. | [components/Animation.ts:18](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L18) |
|
|
39
|
+
| <a id="reverse"></a> `reverse?` | `boolean` | Play the active clip in reverse. | [components/Animation.ts:20](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L20) |
|
|
40
|
+
| <a id="timescale"></a> `timeScale?` | `number` | Time-scale multiplier (`1` = real-time). | [components/Animation.ts:22](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L22) |
|
|
41
|
+
| <a id="crossfadeduration"></a> `crossFadeDuration?` | `number` | Default cross-fade duration in seconds when switching states. | [components/Animation.ts:24](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L24) |
|
|
42
|
+
| <a id="states"></a> `states?` | \{ `name`: `string`; `clip`: `string`; `clipId?`: `string`; `loop?`: `boolean`; \}[] | Predefined state machine entries (`name` -> clip binding). | [components/Animation.ts:26](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Animation.ts#L26) |
|
|
@@ -23,7 +23,7 @@ type CameraComponentOptions = {
|
|
|
23
23
|
};
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
Defined in: [components/Camera.ts:11](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
26
|
+
Defined in: [components/Camera.ts:11](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L11)
|
|
27
27
|
|
|
28
28
|
Optional initializer for [CameraComponent](../classes/CameraComponent.md). Any field omitted falls back to the defaults documented on the component.
|
|
29
29
|
|
|
@@ -31,15 +31,15 @@ Optional initializer for [CameraComponent](../classes/CameraComponent.md). Any f
|
|
|
31
31
|
|
|
32
32
|
| Property | Type | Description | Defined in |
|
|
33
33
|
| ------ | ------ | ------ | ------ |
|
|
34
|
-
| <a id="camera"></a> `camera?` | `THREE.Camera` | Pre-built three.js camera. When omitted the component creates one from [projection](#projection). | [components/Camera.ts:13](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
35
|
-
| <a id="type"></a> `type?` | [`CameraRuntimeType`](CameraRuntimeType.md) | Runtime camera mode. | [components/Camera.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
36
|
-
| <a id="isdefault"></a> `isDefault?` | `boolean` | Mark this camera as the default camera the renderer uses. | [components/Camera.ts:17](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
37
|
-
| <a id="projection"></a> `projection?` | [`CameraProjection`](CameraProjection.md) | Projection model. | [components/Camera.ts:19](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
38
|
-
| <a id="fov"></a> `fov?` | `number` | Vertical field of view in **degrees** (perspective only). | [components/Camera.ts:21](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
39
|
-
| <a id="near"></a> `near?` | `number` | Near clip plane in world units. | [components/Camera.ts:23](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
40
|
-
| <a id="far"></a> `far?` | `number` | Far clip plane in world units. | [components/Camera.ts:25](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
41
|
-
| <a id="left"></a> `left?` | `number` | Left edge of the orthographic frustum in world units. | [components/Camera.ts:27](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
42
|
-
| <a id="right"></a> `right?` | `number` | Right edge of the orthographic frustum in world units. | [components/Camera.ts:29](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
43
|
-
| <a id="top"></a> `top?` | `number` | Top edge of the orthographic frustum in world units. | [components/Camera.ts:31](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
44
|
-
| <a id="bottom"></a> `bottom?` | `number` | Bottom edge of the orthographic frustum in world units. | [components/Camera.ts:33](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
45
|
-
| <a id="zoom"></a> `zoom?` | `number` | Zoom multiplier (`1` = no zoom). | [components/Camera.ts:35](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
34
|
+
| <a id="camera"></a> `camera?` | `THREE.Camera` | Pre-built three.js camera. When omitted the component creates one from [projection](#projection). | [components/Camera.ts:13](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L13) |
|
|
35
|
+
| <a id="type"></a> `type?` | [`CameraRuntimeType`](CameraRuntimeType.md) | Runtime camera mode. | [components/Camera.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L15) |
|
|
36
|
+
| <a id="isdefault"></a> `isDefault?` | `boolean` | Mark this camera as the default camera the renderer uses. | [components/Camera.ts:17](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L17) |
|
|
37
|
+
| <a id="projection"></a> `projection?` | [`CameraProjection`](CameraProjection.md) | Projection model. | [components/Camera.ts:19](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L19) |
|
|
38
|
+
| <a id="fov"></a> `fov?` | `number` | Vertical field of view in **degrees** (perspective only). | [components/Camera.ts:21](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L21) |
|
|
39
|
+
| <a id="near"></a> `near?` | `number` | Near clip plane in world units. | [components/Camera.ts:23](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L23) |
|
|
40
|
+
| <a id="far"></a> `far?` | `number` | Far clip plane in world units. | [components/Camera.ts:25](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L25) |
|
|
41
|
+
| <a id="left"></a> `left?` | `number` | Left edge of the orthographic frustum in world units. | [components/Camera.ts:27](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L27) |
|
|
42
|
+
| <a id="right"></a> `right?` | `number` | Right edge of the orthographic frustum in world units. | [components/Camera.ts:29](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L29) |
|
|
43
|
+
| <a id="top"></a> `top?` | `number` | Top edge of the orthographic frustum in world units. | [components/Camera.ts:31](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L31) |
|
|
44
|
+
| <a id="bottom"></a> `bottom?` | `number` | Bottom edge of the orthographic frustum in world units. | [components/Camera.ts:33](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L33) |
|
|
45
|
+
| <a id="zoom"></a> `zoom?` | `number` | Zoom multiplier (`1` = no zoom). | [components/Camera.ts:35](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L35) |
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
type CameraProjection = "perspective" | "orthographic";
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/Camera.ts:8](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/Camera.ts:8](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L8)
|
|
14
14
|
|
|
15
15
|
Projection model.
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
type CameraRuntimeType = "3d" | "ar";
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/Camera.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/Camera.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Camera.ts#L6)
|
|
14
14
|
|
|
15
15
|
Runtime camera mode. `3d` is a free camera; `ar` is composited over a tracked image/face feed.
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
type ColliderShape = "cuboid" | "ball" | "capsule" | "cylinder" | "trimesh";
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/Physics.ts:83](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/Physics.ts:83](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L83)
|
|
14
14
|
|
|
15
15
|
Collider primitive shape. `trimesh` derives geometry from the entity's mesh.
|
|
@@ -33,7 +33,7 @@ type ColliderState = {
|
|
|
33
33
|
};
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
Defined in: [components/Physics.ts:91](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
36
|
+
Defined in: [components/Physics.ts:91](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L91)
|
|
37
37
|
|
|
38
38
|
Authoring state for the collider half of [PhysicsComponent](../classes/PhysicsComponent.md). Only the size fields relevant to [ColliderState.shape](#shape) are read at simulation time.
|
|
39
39
|
|
|
@@ -41,22 +41,22 @@ Authoring state for the collider half of [PhysicsComponent](../classes/PhysicsCo
|
|
|
41
41
|
|
|
42
42
|
| Property | Type | Description | Defined in |
|
|
43
43
|
| ------ | ------ | ------ | ------ |
|
|
44
|
-
| <a id="enabled"></a> `enabled` | `boolean` | When `false`, the collider is removed from physics simulation but kept in state. | [components/Physics.ts:93](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
45
|
-
| <a id="shape"></a> `shape` | [`ColliderShape`](ColliderShape.md) | Collider primitive shape. | [components/Physics.ts:95](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
46
|
-
| <a id="offsetposition"></a> `offsetPosition` | \{ `x`: `number`; `y`: `number`; `z`: `number`; \} | Local offset of the collider relative to the entity's transform, in world units. | [components/Physics.ts:97](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
47
|
-
| `offsetPosition.x` | `number` | Offset along local X. | [components/Physics.ts:99](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
48
|
-
| `offsetPosition.y` | `number` | Offset along local Y. | [components/Physics.ts:101](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
49
|
-
| `offsetPosition.z` | `number` | Offset along local Z. | [components/Physics.ts:103](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
50
|
-
| <a id="offsetrotation"></a> `offsetRotation` | \{ `x`: `number`; `y`: `number`; `z`: `number`; \} | Local rotation offset in **radians** (Euler XYZ). | [components/Physics.ts:106](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
51
|
-
| `offsetRotation.x` | `number` | Rotation around local X (radians). | [components/Physics.ts:108](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
52
|
-
| `offsetRotation.y` | `number` | Rotation around local Y (radians). | [components/Physics.ts:110](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
53
|
-
| `offsetRotation.z` | `number` | Rotation around local Z (radians). | [components/Physics.ts:112](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
54
|
-
| <a id="size"></a> `size` | \{ `x`: `number`; `y`: `number`; `z`: `number`; \} |
|
|
55
|
-
| `size.x` | `number` | Half-extent along X. | [components/Physics.ts:117](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
56
|
-
| `size.y` | `number` | Half-extent along Y. | [components/Physics.ts:119](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
57
|
-
| `size.z` | `number` | Half-extent along Z. | [components/Physics.ts:121](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
58
|
-
| <a id="radius"></a> `radius` | `number` | Radius for `ball`, `capsule`, and `cylinder` shapes. | [components/Physics.ts:124](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
59
|
-
| <a id="height"></a> `height` | `number` | Height for `capsule` (segment length between caps) and `cylinder`. | [components/Physics.ts:126](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
60
|
-
| <a id="restitution"></a> `restitution` | `number` | Bounciness in `[0, 1]`. `0` is no bounce; `1` is perfectly elastic. | [components/Physics.ts:128](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
61
|
-
| <a id="friction"></a> `friction` | `number` | Surface friction coefficient. `0` is frictionless. | [components/Physics.ts:130](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
62
|
-
| <a id="issensor"></a> `isSensor` | `boolean` | When `true`, the collider reports overlaps but does not generate contact responses. | [components/Physics.ts:132](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
44
|
+
| <a id="enabled"></a> `enabled` | `boolean` | When `false`, the collider is removed from physics simulation but kept in state. | [components/Physics.ts:93](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L93) |
|
|
45
|
+
| <a id="shape"></a> `shape` | [`ColliderShape`](ColliderShape.md) | Collider primitive shape. | [components/Physics.ts:95](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L95) |
|
|
46
|
+
| <a id="offsetposition"></a> `offsetPosition` | \{ `x`: `number`; `y`: `number`; `z`: `number`; \} | Local offset of the collider relative to the entity's transform, in world units. | [components/Physics.ts:97](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L97) |
|
|
47
|
+
| `offsetPosition.x` | `number` | Offset along local X. | [components/Physics.ts:99](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L99) |
|
|
48
|
+
| `offsetPosition.y` | `number` | Offset along local Y. | [components/Physics.ts:101](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L101) |
|
|
49
|
+
| `offsetPosition.z` | `number` | Offset along local Z. | [components/Physics.ts:103](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L103) |
|
|
50
|
+
| <a id="offsetrotation"></a> `offsetRotation` | \{ `x`: `number`; `y`: `number`; `z`: `number`; \} | Local rotation offset in **radians** (Euler XYZ). | [components/Physics.ts:106](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L106) |
|
|
51
|
+
| `offsetRotation.x` | `number` | Rotation around local X (radians). | [components/Physics.ts:108](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L108) |
|
|
52
|
+
| `offsetRotation.y` | `number` | Rotation around local Y (radians). | [components/Physics.ts:110](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L110) |
|
|
53
|
+
| `offsetRotation.z` | `number` | Rotation around local Z (radians). | [components/Physics.ts:112](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L112) |
|
|
54
|
+
| <a id="size"></a> `size` | \{ `x`: `number`; `y`: `number`; `z`: `number`; \} | FULL edge lengths for `cuboid` shape (NOT half-extents), in unscaled local units — multiplied by the entity world scale at collider build time. | [components/Physics.ts:115](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L115) |
|
|
55
|
+
| `size.x` | `number` | Half-extent along X. | [components/Physics.ts:117](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L117) |
|
|
56
|
+
| `size.y` | `number` | Half-extent along Y. | [components/Physics.ts:119](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L119) |
|
|
57
|
+
| `size.z` | `number` | Half-extent along Z. | [components/Physics.ts:121](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L121) |
|
|
58
|
+
| <a id="radius"></a> `radius` | `number` | Radius for `ball`, `capsule`, and `cylinder` shapes. | [components/Physics.ts:124](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L124) |
|
|
59
|
+
| <a id="height"></a> `height` | `number` | Height for `capsule` (segment length between caps) and `cylinder`. | [components/Physics.ts:126](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L126) |
|
|
60
|
+
| <a id="restitution"></a> `restitution` | `number` | Bounciness in `[0, 1]`. `0` is no bounce; `1` is perfectly elastic. | [components/Physics.ts:128](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L128) |
|
|
61
|
+
| <a id="friction"></a> `friction` | `number` | Surface friction coefficient. `0` is frictionless. | [components/Physics.ts:130](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L130) |
|
|
62
|
+
| <a id="issensor"></a> `isSensor` | `boolean` | When `true`, the collider reports overlaps but does not generate contact responses. | [components/Physics.ts:132](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Physics.ts#L132) |
|
|
@@ -14,7 +14,7 @@ type CubeMeshParameters = {
|
|
|
14
14
|
};
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
Defined in: [components/MeshGeometry.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
17
|
+
Defined in: [components/MeshGeometry.ts:15](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/MeshGeometry.ts#L15)
|
|
18
18
|
|
|
19
19
|
Box geometry parameters in world units.
|
|
20
20
|
|
|
@@ -22,6 +22,6 @@ Box geometry parameters in world units.
|
|
|
22
22
|
|
|
23
23
|
| Property | Type | Description | Defined in |
|
|
24
24
|
| ------ | ------ | ------ | ------ |
|
|
25
|
-
| <a id="width"></a> `width` | `number` | Box width along X. | [components/MeshGeometry.ts:17](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
26
|
-
| <a id="height"></a> `height` | `number` | Box height along Y. | [components/MeshGeometry.ts:19](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
27
|
-
| <a id="depth"></a> `depth` | `number` | Box depth along Z. | [components/MeshGeometry.ts:21](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
25
|
+
| <a id="width"></a> `width` | `number` | Box width along X. | [components/MeshGeometry.ts:17](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/MeshGeometry.ts#L17) |
|
|
26
|
+
| <a id="height"></a> `height` | `number` | Box height along Y. | [components/MeshGeometry.ts:19](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/MeshGeometry.ts#L19) |
|
|
27
|
+
| <a id="depth"></a> `depth` | `number` | Box depth along Z. | [components/MeshGeometry.ts:21](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/MeshGeometry.ts#L21) |
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
type EditableMeshObjectKind = "capsule" | "cube" | "cylinder" | "model" | "plane" | "sphere";
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/MeshGeometry.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/MeshGeometry.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/MeshGeometry.ts#L6)
|
|
14
14
|
|
|
15
15
|
Editable primitive kinds the mesh-geometry system can rebuild on the fly. `model` is a passthrough placeholder for entities that own a loaded GLTF/GLB instead.
|
|
@@ -20,7 +20,7 @@ type EnvironmentFogState = {
|
|
|
20
20
|
};
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
Defined in: [components/Environment.ts:28](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
23
|
+
Defined in: [components/Environment.ts:28](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L28)
|
|
24
24
|
|
|
25
25
|
Fog configuration. Mirrors three.js `Fog` / `FogExp2`.
|
|
26
26
|
|
|
@@ -28,10 +28,10 @@ Fog configuration. Mirrors three.js `Fog` / `FogExp2`.
|
|
|
28
28
|
|
|
29
29
|
| Property | Type | Description | Defined in |
|
|
30
30
|
| ------ | ------ | ------ | ------ |
|
|
31
|
-
| <a id="type"></a> `type` | [`EnvironmentFogType`](EnvironmentFogType.md) | Active fog model. | [components/Environment.ts:30](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
32
|
-
| <a id="color"></a> `color` | `string` | Fog color as `#rrggbb`. | [components/Environment.ts:32](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
33
|
-
| <a id="linear"></a> `linear` | \{ `near`: `number`; `far`: `number`; \} | Linear-fog parameters used when [type](#type) is `"linear"`. | [components/Environment.ts:34](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
34
|
-
| `linear.near` | `number` | Distance at which fog begins to take effect. | [components/Environment.ts:36](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
35
|
-
| `linear.far` | `number` | Distance at which fog reaches full opacity. | [components/Environment.ts:38](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
36
|
-
| <a id="exponential"></a> `exponential` | \{ `density`: `number`; \} | Exponential-fog parameters used when [type](#type) is `"exponential"`. | [components/Environment.ts:41](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
37
|
-
| `exponential.density` | `number` | Density coefficient. Higher values produce thicker fog. | [components/Environment.ts:43](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
31
|
+
| <a id="type"></a> `type` | [`EnvironmentFogType`](EnvironmentFogType.md) | Active fog model. | [components/Environment.ts:30](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L30) |
|
|
32
|
+
| <a id="color"></a> `color` | `string` | Fog color as `#rrggbb`. | [components/Environment.ts:32](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L32) |
|
|
33
|
+
| <a id="linear"></a> `linear` | \{ `near`: `number`; `far`: `number`; \} | Linear-fog parameters used when [type](#type) is `"linear"`. | [components/Environment.ts:34](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L34) |
|
|
34
|
+
| `linear.near` | `number` | Distance at which fog begins to take effect. | [components/Environment.ts:36](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L36) |
|
|
35
|
+
| `linear.far` | `number` | Distance at which fog reaches full opacity. | [components/Environment.ts:38](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L38) |
|
|
36
|
+
| <a id="exponential"></a> `exponential` | \{ `density`: `number`; \} | Exponential-fog parameters used when [type](#type) is `"exponential"`. | [components/Environment.ts:41](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L41) |
|
|
37
|
+
| `exponential.density` | `number` | Density coefficient. Higher values produce thicker fog. | [components/Environment.ts:43](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L43) |
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
type EnvironmentFogType = "linear" | "exponential" | "none";
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/Environment.ts:8](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/Environment.ts:8](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L8)
|
|
14
14
|
|
|
15
15
|
Fog distance models. `none` disables fog.
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
type EnvironmentGradientEffect = "radial" | "linear" | "angular";
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Defined in: [components/Environment.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/
|
|
13
|
+
Defined in: [components/Environment.ts:6](https://github.com/Relu-Interactives/relu-spatial-ecs-engine/blob/020795472520adb990c488982ca8572cbf8580db/core/components/Environment.ts#L6)
|
|
14
14
|
|
|
15
15
|
Gradient distribution applied when [EnvironmentSkyboxState.type](EnvironmentSkyboxState.md#type) is `"gradient"`.
|