@relu-interactives/spatial-ecs 0.2.2
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/README.md +125 -0
- package/dist/System-rXAmagXA.d.cts +659 -0
- package/dist/System-rXAmagXA.d.ts +659 -0
- package/dist/Video-CDemv74U.d.cts +1261 -0
- package/dist/Video-ChKV1UI7.d.ts +1261 -0
- package/dist/assets/draco/draco_decoder.js +34 -0
- package/dist/assets/draco/draco_decoder.wasm +0 -0
- package/dist/assets/draco/draco_wasm_wrapper.js +117 -0
- package/dist/chunk-AYEF3X2P.js +223 -0
- package/dist/chunk-AYEF3X2P.js.map +1 -0
- package/dist/chunk-MAWBTMCG.js +1722 -0
- package/dist/chunk-MAWBTMCG.js.map +1 -0
- package/dist/chunk-NFDTIYR4.js +248 -0
- package/dist/chunk-NFDTIYR4.js.map +1 -0
- package/dist/chunk-OY7ZODZP.js +16 -0
- package/dist/chunk-OY7ZODZP.js.map +1 -0
- package/dist/chunk-P2YDX5DB.js +3304 -0
- package/dist/chunk-P2YDX5DB.js.map +1 -0
- package/dist/chunk-QHILSPT4.js +3 -0
- package/dist/chunk-QHILSPT4.js.map +1 -0
- package/dist/chunk-XWIEEJ7Z.js +1315 -0
- package/dist/chunk-XWIEEJ7Z.js.map +1 -0
- package/dist/components/index.cjs +1745 -0
- package/dist/components/index.cjs.map +1 -0
- package/dist/components/index.d.cts +4 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.js +4 -0
- package/dist/components/index.js.map +1 -0
- package/dist/docs/api/Behaviour/classes/Behaviour.md +554 -0
- package/dist/docs/api/Behaviour/index.md +15 -0
- package/dist/docs/api/Component/classes/Component.md +57 -0
- package/dist/docs/api/Component/index.md +15 -0
- package/dist/docs/api/components/classes/AnimationComponent.md +318 -0
- package/dist/docs/api/components/classes/AudioComponent.md +114 -0
- package/dist/docs/api/components/classes/CameraComponent.md +59 -0
- package/dist/docs/api/components/classes/EntityType.md +48 -0
- package/dist/docs/api/components/classes/Environment.md +47 -0
- package/dist/docs/api/components/classes/ImageComponent.md +57 -0
- package/dist/docs/api/components/classes/ImageTarget.md +60 -0
- package/dist/docs/api/components/classes/ImageTargetAnchor.md +48 -0
- package/dist/docs/api/components/classes/LightComponent.md +70 -0
- package/dist/docs/api/components/classes/MaterialComponent.md +181 -0
- package/dist/docs/api/components/classes/MeshComponent.md +48 -0
- package/dist/docs/api/components/classes/MeshGeometryComponent.md +64 -0
- package/dist/docs/api/components/classes/ModelComponent.md +49 -0
- package/dist/docs/api/components/classes/Name.md +46 -0
- package/dist/docs/api/components/classes/Object3DRef.md +54 -0
- package/dist/docs/api/components/classes/ParentId.md +47 -0
- package/dist/docs/api/components/classes/PhysicsComponent.md +82 -0
- package/dist/docs/api/components/classes/Postprocessing.md +49 -0
- package/dist/docs/api/components/classes/ScriptComponent.md +54 -0
- package/dist/docs/api/components/classes/Selectable.md +46 -0
- package/dist/docs/api/components/classes/SelectionTransformState.md +54 -0
- package/dist/docs/api/components/classes/SpriteComponent.md +55 -0
- package/dist/docs/api/components/classes/TransformComponent.md +197 -0
- package/dist/docs/api/components/classes/VideoComponent.md +123 -0
- package/dist/docs/api/components/functions/normalizePhysicsState.md +23 -0
- package/dist/docs/api/components/index.md +94 -0
- package/dist/docs/api/components/type-aliases/AnimationComponentOptions.md +42 -0
- package/dist/docs/api/components/type-aliases/CameraComponentOptions.md +45 -0
- package/dist/docs/api/components/type-aliases/CameraProjection.md +15 -0
- package/dist/docs/api/components/type-aliases/CameraRuntimeType.md +15 -0
- package/dist/docs/api/components/type-aliases/ColliderShape.md +15 -0
- package/dist/docs/api/components/type-aliases/ColliderState.md +62 -0
- package/dist/docs/api/components/type-aliases/CubeMeshParameters.md +27 -0
- package/dist/docs/api/components/type-aliases/EditableMeshObjectKind.md +15 -0
- package/dist/docs/api/components/type-aliases/EnvironmentFogState.md +37 -0
- package/dist/docs/api/components/type-aliases/EnvironmentFogType.md +15 -0
- package/dist/docs/api/components/type-aliases/EnvironmentGradientEffect.md +15 -0
- package/dist/docs/api/components/type-aliases/EnvironmentSkyboxState.md +34 -0
- package/dist/docs/api/components/type-aliases/EnvironmentSkyboxType.md +15 -0
- package/dist/docs/api/components/type-aliases/EnvironmentState.md +29 -0
- package/dist/docs/api/components/type-aliases/ImageTargetAnchorOptions.md +25 -0
- package/dist/docs/api/components/type-aliases/ImageTargetReference.md +33 -0
- package/dist/docs/api/components/type-aliases/LightValueState.md +41 -0
- package/dist/docs/api/components/type-aliases/MaterialTypeValue.md +15 -0
- package/dist/docs/api/components/type-aliases/MaterialValueState.md +75 -0
- package/dist/docs/api/components/type-aliases/MeshGeometryParameters.md +13 -0
- package/dist/docs/api/components/type-aliases/MeshGeometryParametersByKind.md +33 -0
- package/dist/docs/api/components/type-aliases/PhysicsState.md +25 -0
- package/dist/docs/api/components/type-aliases/PlaneMeshParameters.md +25 -0
- package/dist/docs/api/components/type-aliases/PostprocessingState.md +164 -0
- package/dist/docs/api/components/type-aliases/RadiusHeightMeshParameters.md +25 -0
- package/dist/docs/api/components/type-aliases/RadiusMeshParameters.md +23 -0
- package/dist/docs/api/components/type-aliases/RigidbodyState.md +53 -0
- package/dist/docs/api/components/type-aliases/RigidbodyType.md +19 -0
- package/dist/docs/api/components/type-aliases/ScriptEntry.md +38 -0
- package/dist/docs/api/components/type-aliases/TextureFilteringValue.md +15 -0
- package/dist/docs/api/components/type-aliases/TransformData.md +27 -0
- package/dist/docs/api/components/type-aliases/TransformModeValue.md +15 -0
- package/dist/docs/api/components/type-aliases/TransformSpaceValue.md +15 -0
- package/dist/docs/api/components/type-aliases/Vec3.md +27 -0
- package/dist/docs/api/components/variables/DEFAULT_COLLIDER_STATE.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_ENVIRONMENT_STATE.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_MESH_GEOMETRY_PARAMETERS.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_PHYSICS_STATE.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_POSTPROCESSING_STATE.md +13 -0
- package/dist/docs/api/components/variables/DEFAULT_RIGIDBODY_STATE.md +13 -0
- package/dist/docs/api/index/classes/AnimationStateMachine.md +201 -0
- package/dist/docs/api/index/classes/AnimationStateManager.md +253 -0
- package/dist/docs/api/index/classes/AnimationSystem.md +68 -0
- package/dist/docs/api/index/classes/AudioSystem.md +98 -0
- package/dist/docs/api/index/classes/CameraSyncSystem.md +49 -0
- package/dist/docs/api/index/classes/EnvironmentSyncSystem.md +75 -0
- package/dist/docs/api/index/classes/InputSystem.md +449 -0
- package/dist/docs/api/index/classes/LightSyncSystem.md +49 -0
- package/dist/docs/api/index/classes/MaterialSyncSystem.md +67 -0
- package/dist/docs/api/index/classes/MeshGeometrySystem.md +49 -0
- package/dist/docs/api/index/classes/ObjectManagementSystem.md +298 -0
- package/dist/docs/api/index/classes/ObjectVisibilitySystem.md +49 -0
- package/dist/docs/api/index/classes/PhysicsSyncSystem.md +83 -0
- package/dist/docs/api/index/classes/PostprocessingSyncSystem.md +80 -0
- package/dist/docs/api/index/classes/RenderSystem.md +64 -0
- package/dist/docs/api/index/classes/ScriptBehaviourSystem.md +83 -0
- package/dist/docs/api/index/classes/TransformSyncSystem.md +49 -0
- package/dist/docs/api/index/classes/VideoSystem.md +97 -0
- package/dist/docs/api/index/classes/World.md +1405 -0
- package/dist/docs/api/index/functions/createAnimationComponent.md +28 -0
- package/dist/docs/api/index/functions/createAudioComponent.md +32 -0
- package/dist/docs/api/index/functions/createCameraComponent.md +28 -0
- package/dist/docs/api/index/functions/createEntityTypeComponent.md +28 -0
- package/dist/docs/api/index/functions/createEnvironmentComponent.md +28 -0
- package/dist/docs/api/index/functions/createImageComponent.md +28 -0
- package/dist/docs/api/index/functions/createImageTargetAnchorComponent.md +28 -0
- package/dist/docs/api/index/functions/createImageTargetComponent.md +28 -0
- package/dist/docs/api/index/functions/createLightComponent.md +28 -0
- package/dist/docs/api/index/functions/createMaterialComponent.md +28 -0
- package/dist/docs/api/index/functions/createMeshComponent.md +28 -0
- package/dist/docs/api/index/functions/createMeshGeometryComponent.md +28 -0
- package/dist/docs/api/index/functions/createModelComponent.md +28 -0
- package/dist/docs/api/index/functions/createNameComponent.md +28 -0
- package/dist/docs/api/index/functions/createObject3DRefComponent.md +28 -0
- package/dist/docs/api/index/functions/createParentIdComponent.md +28 -0
- package/dist/docs/api/index/functions/createPhysicsComponent.md +30 -0
- package/dist/docs/api/index/functions/createPostprocessingComponent.md +28 -0
- package/dist/docs/api/index/functions/createScriptComponent.md +28 -0
- package/dist/docs/api/index/functions/createSelectableComponent.md +28 -0
- package/dist/docs/api/index/functions/createSelectionTransformStateComponent.md +28 -0
- package/dist/docs/api/index/functions/createSpriteComponent.md +28 -0
- package/dist/docs/api/index/functions/createTransformComponent.md +28 -0
- package/dist/docs/api/index/functions/createVideoComponent.md +28 -0
- package/dist/docs/api/index/functions/hydrateWorldFromSnapshot.md +28 -0
- package/dist/docs/api/index/functions/hydrateWorldFromSnapshotDetailed.md +28 -0
- package/dist/docs/api/index/functions/registerDefaultComponentFactories.md +23 -0
- package/dist/docs/api/index/functions/registerDefaultFactories.md +23 -0
- package/dist/docs/api/index/index.md +249 -0
- package/dist/docs/api/index/interfaces/EcsSystem.md +50 -0
- package/dist/docs/api/index/interfaces/StateMachine.md +26 -0
- package/dist/docs/api/index/type-aliases/AnimationStateCallbacks.md +25 -0
- package/dist/docs/api/index/type-aliases/ComponentFactory.md +25 -0
- package/dist/docs/api/index/type-aliases/EcsComponentFactoryKind.md +37 -0
- package/dist/docs/api/index/type-aliases/EcsWorldComponentSnapshot.md +26 -0
- package/dist/docs/api/index/type-aliases/EcsWorldStateSnapshotLike.md +25 -0
- package/dist/docs/api/index/type-aliases/HydrateWorldFromSnapshotResult.md +23 -0
- package/dist/docs/api/index/type-aliases/KeyboardKey.md +13 -0
- package/dist/docs/api/index/type-aliases/MouseButton.md +13 -0
- package/dist/docs/api/index/type-aliases/SelectionContext.md +31 -0
- package/dist/docs/api/index/variables/HYDRATABLE_ENTITY_KINDS.md +13 -0
- package/dist/docs/api/index/variables/KeyboardKeys.md +195 -0
- package/dist/docs/api/index.md +15 -0
- package/dist/docs/api/typedoc-sidebar.json +1 -0
- package/dist/docs/api/types/index.md +34 -0
- package/dist/docs/api/types/type-aliases/AssetInput.md +23 -0
- package/dist/docs/api/types/type-aliases/CheckboxInput.md +13 -0
- package/dist/docs/api/types/type-aliases/ColorInput.md +13 -0
- package/dist/docs/api/types/type-aliases/ComponentInput.md +52 -0
- package/dist/docs/api/types/type-aliases/ComponentKind.md +37 -0
- package/dist/docs/api/types/type-aliases/DropdownInput.md +23 -0
- package/dist/docs/api/types/type-aliases/DropdownOption.md +23 -0
- package/dist/docs/api/types/type-aliases/EcsEntityEditorKind.md +15 -0
- package/dist/docs/api/types/type-aliases/EcsEntityKind.md +35 -0
- package/dist/docs/api/types/type-aliases/EntityId.md +16 -0
- package/dist/docs/api/types/type-aliases/EntityInput.md +23 -0
- package/dist/docs/api/types/type-aliases/FloatInput.md +13 -0
- package/dist/docs/api/types/type-aliases/IntersectionResult.md +29 -0
- package/dist/docs/api/types/type-aliases/ParentLookup.md +26 -0
- package/dist/docs/api/types/type-aliases/SelectionListener.md +25 -0
- package/dist/docs/api/types/type-aliases/SliderInput.md +27 -0
- package/dist/docs/api/types/type-aliases/TextInput.md +13 -0
- package/dist/docs/api/types/type-aliases/ToggleInput.md +13 -0
- package/dist/docs/api/types/type-aliases/Vec3.md +23 -0
- package/dist/docs/api/types/type-aliases/Vector2Input.md +23 -0
- package/dist/docs/api/types/type-aliases/Vector3Input.md +25 -0
- package/dist/docs/api/types/type-aliases/WorldEntityView.md +17 -0
- package/dist/docs/guide/accessing-components.md +399 -0
- package/dist/docs/guide/authoring-a-behaviour.md +166 -0
- package/dist/docs/guide/behaviour-lifecycle.md +43 -0
- package/dist/docs/guide/component-catalog.md +59 -0
- package/dist/docs/guide/components/_sidebar.json +78 -0
- package/dist/docs/guide/components/animation.md +171 -0
- package/dist/docs/guide/components/audio.md +181 -0
- package/dist/docs/guide/components/camera.md +179 -0
- package/dist/docs/guide/components/entity-type.md +141 -0
- package/dist/docs/guide/components/image-target-anchor.md +103 -0
- package/dist/docs/guide/components/image-target.md +122 -0
- package/dist/docs/guide/components/image.md +146 -0
- package/dist/docs/guide/components/light.md +157 -0
- package/dist/docs/guide/components/material.md +161 -0
- package/dist/docs/guide/components/mesh-geometry.md +153 -0
- package/dist/docs/guide/components/mesh.md +151 -0
- package/dist/docs/guide/components/model.md +96 -0
- package/dist/docs/guide/components/name.md +121 -0
- package/dist/docs/guide/components/object3d-ref.md +115 -0
- package/dist/docs/guide/components/parent-id.md +108 -0
- package/dist/docs/guide/components/physics.md +163 -0
- package/dist/docs/guide/components/script.md +142 -0
- package/dist/docs/guide/components/sprite.md +155 -0
- package/dist/docs/guide/components/transform.md +155 -0
- package/dist/docs/guide/components/video.md +153 -0
- package/dist/docs/guide/concepts.md +34 -0
- package/dist/docs/guide/getting-started/creating-objects.md +50 -0
- package/dist/docs/guide/getting-started/editing-objects.md +62 -0
- package/dist/docs/guide/getting-started/editor/assets-browser.md +55 -0
- package/dist/docs/guide/getting-started/editor/hierarchy.md +47 -0
- package/dist/docs/guide/getting-started/editor/index.md +16 -0
- package/dist/docs/guide/getting-started/editor/inspector.md +36 -0
- package/dist/docs/guide/getting-started/editor/modules.md +35 -0
- package/dist/docs/guide/getting-started/editor/scene-inspector.md +64 -0
- package/dist/docs/guide/getting-started/editor/toolbar.md +39 -0
- package/dist/docs/guide/getting-started/editor/viewport.md +43 -0
- package/dist/docs/guide/getting-started/first-launch.md +17 -0
- package/dist/docs/guide/getting-started/index.md +37 -0
- package/dist/docs/guide/getting-started/installation.md +59 -0
- package/dist/docs/guide/getting-started/preview-and-test.md +55 -0
- package/dist/docs/guide/getting-started/project-types/3d.md +30 -0
- package/dist/docs/guide/getting-started/project-types/ar.md +6 -0
- package/dist/docs/guide/getting-started/project-types/face-tracking.md +6 -0
- package/dist/docs/guide/getting-started/project-types/image-tracking.md +42 -0
- package/dist/docs/guide/getting-started/project-types/index.md +25 -0
- package/dist/docs/guide/getting-started/project-types/vr.md +6 -0
- package/dist/docs/guide/getting-started/projects.md +53 -0
- package/dist/docs/guide/getting-started/shortcuts.md +43 -0
- package/dist/docs/guide/inspector-data-binding.md +367 -0
- package/dist/docs/guide/reading-input.md +202 -0
- package/dist/docs/guide/scene/environment.md +101 -0
- package/dist/docs/guide/scene/index.md +36 -0
- package/dist/docs/guide/scene/postprocessing.md +108 -0
- package/dist/docs/guide/spawning/ambient-light.md +28 -0
- package/dist/docs/guide/spawning/area-light.md +32 -0
- package/dist/docs/guide/spawning/audio.md +42 -0
- package/dist/docs/guide/spawning/camera.md +50 -0
- package/dist/docs/guide/spawning/capsule.md +29 -0
- package/dist/docs/guide/spawning/cube.md +31 -0
- package/dist/docs/guide/spawning/cylinder.md +29 -0
- package/dist/docs/guide/spawning/directional-light.md +32 -0
- package/dist/docs/guide/spawning/empty.md +31 -0
- package/dist/docs/guide/spawning/image-target.md +48 -0
- package/dist/docs/guide/spawning/image.md +33 -0
- package/dist/docs/guide/spawning/index.md +79 -0
- package/dist/docs/guide/spawning/model.md +31 -0
- package/dist/docs/guide/spawning/plane.md +31 -0
- package/dist/docs/guide/spawning/point-light.md +32 -0
- package/dist/docs/guide/spawning/sphere.md +29 -0
- package/dist/docs/guide/spawning/spot-light.md +32 -0
- package/dist/docs/guide/spawning/sprite.md +31 -0
- package/dist/docs/guide/spawning/video.md +53 -0
- package/dist/docs/guide/system-overview.md +73 -0
- package/dist/docs/guide/systems/_sidebar.json +66 -0
- package/dist/docs/guide/systems/animation-system.md +32 -0
- package/dist/docs/guide/systems/audio-system.md +28 -0
- package/dist/docs/guide/systems/camera-sync-system.md +31 -0
- package/dist/docs/guide/systems/environment-sync-system.md +31 -0
- package/dist/docs/guide/systems/input-system.md +217 -0
- package/dist/docs/guide/systems/light-sync-system.md +29 -0
- package/dist/docs/guide/systems/material-sync-system.md +32 -0
- package/dist/docs/guide/systems/mesh-geometry-system.md +40 -0
- package/dist/docs/guide/systems/object-management-system.md +38 -0
- package/dist/docs/guide/systems/object-visibility-system.md +26 -0
- package/dist/docs/guide/systems/physics-sync-system.md +56 -0
- package/dist/docs/guide/systems/postprocessing-sync-system.md +43 -0
- package/dist/docs/guide/systems/render-system.md +22 -0
- package/dist/docs/guide/systems/script-behaviour-system.md +59 -0
- package/dist/docs/guide/systems/transform-sync-system.md +29 -0
- package/dist/docs/guide/systems/video-system.md +30 -0
- package/dist/docs/guide/world-api.md +405 -0
- package/dist/factories/index.cjs +3077 -0
- package/dist/factories/index.cjs.map +1 -0
- package/dist/factories/index.d.cts +69 -0
- package/dist/factories/index.d.ts +69 -0
- package/dist/factories/index.js +6 -0
- package/dist/factories/index.js.map +1 -0
- package/dist/index-B4-YyUNR.d.cts +73 -0
- package/dist/index-BZUOKeTO.d.ts +73 -0
- package/dist/index.cjs +8584 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +283 -0
- package/dist/index.d.ts +283 -0
- package/dist/index.js +1729 -0
- package/dist/index.js.map +1 -0
- package/dist/systems/index.cjs +5119 -0
- package/dist/systems/index.cjs.map +1 -0
- package/dist/systems/index.d.cts +200 -0
- package/dist/systems/index.d.ts +200 -0
- package/dist/systems/index.js +6 -0
- package/dist/systems/index.js.map +1 -0
- package/dist/types.cjs +4 -0
- package/dist/types.cjs.map +1 -0
- package/dist/types.d.cts +3 -0
- package/dist/types.d.ts +3 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/worldSnapshotUtils.cjs +259 -0
- package/dist/worldSnapshotUtils.cjs.map +1 -0
- package/dist/worldSnapshotUtils.d.cts +3 -0
- package/dist/worldSnapshotUtils.d.ts +3 -0
- package/dist/worldSnapshotUtils.js +4 -0
- package/dist/worldSnapshotUtils.js.map +1 -0
- package/package.json +80 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Scene Inspector
|
|
2
|
+
|
|
3
|
+
The **Scene** tab in the inspector panel exposes scene wide singleton components settings that apply globally to the entire project rather than to a specific entity.
|
|
4
|
+
|
|
5
|
+
## Opening the Scene tab
|
|
6
|
+
|
|
7
|
+
Click the **Scene** tab at the top of the inspector (right panel). The Object tab shows the selected entity's components; the Scene tab always shows the same global settings regardless of selection.
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+
## Sections
|
|
12
|
+
|
|
13
|
+
### Skybox
|
|
14
|
+
|
|
15
|
+
Controls the background and ambient lighting of the scene.
|
|
16
|
+
|
|
17
|
+
| Field | Description |
|
|
18
|
+
| --- | --- |
|
|
19
|
+
| **Mode** | `Gradient`, `Color`, or `Image`. |
|
|
20
|
+
| **Top color / Bottom color** | Gradient stops (gradient mode). |
|
|
21
|
+
| **Color** | Flat background color (color mode). |
|
|
22
|
+
| **Intensity** | Ambient light contribution from the skybox. |
|
|
23
|
+
|
|
24
|
+
<!-- | **Image** | HDR or equirectangular image path (image mode). | -->
|
|
25
|
+
|
|
26
|
+
### Fog
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
Adds atmospheric depth by fading distant objects toward a fog color.
|
|
30
|
+
|
|
31
|
+
| Field | Description |
|
|
32
|
+
| --- | --- |
|
|
33
|
+
| **Enabled** | Toggle fog on or off. |
|
|
34
|
+
| **Type** | `Linear` or `Exponential`. |
|
|
35
|
+
| **Color** | Fog blend color. |
|
|
36
|
+
| **Near / Far** | Start and end distances (linear mode). |
|
|
37
|
+
| **Density** | Fog density exponent (exponential mode). |
|
|
38
|
+
|
|
39
|
+
### Gravity
|
|
40
|
+
|
|
41
|
+
Sets the global physics gravity vector applied to all dynamic rigidbodies.
|
|
42
|
+
|
|
43
|
+
| Field | Description |
|
|
44
|
+
| --- | --- |
|
|
45
|
+
| **X / Y / Z** | Gravity direction and magnitude (m/s²). Default is `(0, -9.81, 0)`. |
|
|
46
|
+
|
|
47
|
+
### Postprocessing
|
|
48
|
+
|
|
49
|
+
Adds full-screen visual effects on top of the rendered frame.
|
|
50
|
+
|
|
51
|
+
| Effect | Description |
|
|
52
|
+
| --- | --- |
|
|
53
|
+
| **Bloom** | Glowing halo around bright areas. |
|
|
54
|
+
| **Depth of field** | Lens blur at a configurable focal distance. |
|
|
55
|
+
| **Vignette** | Darkened corners. |
|
|
56
|
+
| **Color grading** | Brightness, contrast, and saturation adjustments. |
|
|
57
|
+
|
|
58
|
+
See [Scene → Postprocessing](../../scene/postprocessing) for field-level details.
|
|
59
|
+
|
|
60
|
+
## Related
|
|
61
|
+
|
|
62
|
+
- [Inspector](./inspector)
|
|
63
|
+
- [Scene → Environment](../../scene/environment)
|
|
64
|
+
- [Scene → Postprocessing](../../scene/postprocessing)
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Toolbar
|
|
2
|
+
|
|
3
|
+
The toolbar is the global header at the top of the editor window. It groups project-level actions on the left, viewport controls in the center, and history / publishing actions on the right.
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
## Left group — project
|
|
8
|
+
|
|
9
|
+
| Control | Action |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
|  | Relu Spatial logo. Clicking this returns to the project dashboard. |
|
|
12
|
+
|  | Opens the shortcuts modal (shows various keyboard shortcuts). |
|
|
13
|
+
|  | Opens the in-app issue reporter. |
|
|
14
|
+
|
|
15
|
+
## Center group — scene & preview
|
|
16
|
+
|
|
17
|
+
| Control | Action |
|
|
18
|
+
| --- | --- |
|
|
19
|
+
|  | Active manipulation mode (move / rotate / scale). Mirrors the gizmo shown on the selected entity. |
|
|
20
|
+
|  | Adds a new entity to the scene (cube, sphere, plane, light, camera, etc.). |
|
|
21
|
+
|  | Launches the **preview runtime** in a separate window using the current saved snapshot. |
|
|
22
|
+
|
|
23
|
+
## Right group — history & publishing
|
|
24
|
+
|
|
25
|
+
| Control | Action |
|
|
26
|
+
| --- | --- |
|
|
27
|
+
|  | Reverts the last scene-affecting action. Bound to `Cmd/Ctrl + Z`. |
|
|
28
|
+
|  | Re-applies the last undone action. Bound to `Cmd/Ctrl + Shift + Z`. |
|
|
29
|
+
|  | Writes the current scene to disk. Bound to `Cmd/Ctrl + S`. |
|
|
30
|
+
|  | Uploads the project to Relu and makes it shareable. |
|
|
31
|
+
|  | Opens the in-app tour and links to this documentation. |
|
|
32
|
+
|
|
33
|
+
> [!TIP]
|
|
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
|
+
|
|
36
|
+
## Related
|
|
37
|
+
|
|
38
|
+
- [Keyboard shortcuts](../shortcuts)
|
|
39
|
+
- [Viewport](./viewport)
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Viewport
|
|
2
|
+
|
|
3
|
+
The viewport is the central live 3D view of your scene. You navigate the editor camera with the mouse and keyboard, and you transform entities with on-screen gizmos.
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
## Camera navigation
|
|
8
|
+
|
|
9
|
+
| Input | Action |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| **Left mouse drag** | Orbit (look around). |
|
|
12
|
+
| **Shift + Left mouse drag** | Pan. |
|
|
13
|
+
| **Mouse wheel** | Zoom in / out. |
|
|
14
|
+
| **`F`** | Focus on the selected entity. |
|
|
15
|
+
|
|
16
|
+
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
|
+
## Selecting
|
|
19
|
+
|
|
20
|
+
- **Left-click** an object to select it.
|
|
21
|
+
- **Click empty space** to deselect.
|
|
22
|
+
- **`Esc`** also deselects.
|
|
23
|
+
|
|
24
|
+
## Transform gizmos
|
|
25
|
+
|
|
26
|
+
When an entity is selected, a gizmo appears at its origin. Switch the active mode from the [top bar](./toolbar) or with the keyboard:
|
|
27
|
+
|
|
28
|
+
| Key | Mode |
|
|
29
|
+
| --- | --- |
|
|
30
|
+
| **`W`** | Move (translate) — _disabled while flying with right mouse held._ |
|
|
31
|
+
| **`E`** | Rotate. |
|
|
32
|
+
| **`R`** | Scale. |
|
|
33
|
+
|
|
34
|
+
Drag a colored arrow / ring / handle to constrain the operation to that axis. Hold **`Shift`** while dragging to enable snapping.
|
|
35
|
+
|
|
36
|
+
<!-- ## Editor-only helpers
|
|
37
|
+
|
|
38
|
+
Some helpers are visible only while editing — wireframe colliders, light cones, camera frustums. They are tagged internally with `userData.ecsHelper` and are stripped from preview and publish builds, so they never affect runtime rendering. -->
|
|
39
|
+
|
|
40
|
+
## Related
|
|
41
|
+
|
|
42
|
+
- [Top bar](./toolbar) — transform tool buttons.
|
|
43
|
+
- [Keyboard shortcuts](../shortcuts) — the full list.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Launching the Editor for the First Time
|
|
2
|
+
|
|
3
|
+
When you start Relu Spatial for the first time you will be prompted to sign in or create an account. Authentication uses your default web browser so the flow is the same as the web dashboard.
|
|
4
|
+
|
|
5
|
+
## Sign in or sign up
|
|
6
|
+
|
|
7
|
+
Click **Sign in** or **Sign up** on the welcome screen. Your default browser opens, you complete the flow there, and the browser redirects you back into the editor signed in.
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+
## After signing in
|
|
12
|
+
|
|
13
|
+
Once authentication succeeds, the editor opens the **Projects dashboard**. Before you can create or open a project, you must pick where projects live on disk see the next page.
|
|
14
|
+
|
|
15
|
+
## Next
|
|
16
|
+
|
|
17
|
+
- [Projects: choose a default folder and create or open a project](./projects)
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Introduction
|
|
2
|
+
|
|
3
|
+
**Relu Spatial** is a desktop first 3D editor and runtime for building interactive AR / VR / 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
|
+
|
|
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
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
## What you can build
|
|
10
|
+
|
|
11
|
+
- **Image-tracking** experiences that anchor 3D content to printed images.
|
|
12
|
+
- **Face-tracking** filters that follow facial features.
|
|
13
|
+
- **3D**, and **VR / AR** scenes.
|
|
14
|
+
- Standalone web deployable spatial scenes.
|
|
15
|
+
|
|
16
|
+
## How the pieces fit together
|
|
17
|
+
|
|
18
|
+
| Layer | What it does |
|
|
19
|
+
| --- | --- |
|
|
20
|
+
| **Editor** | Desktop application where you author scenes, import assets, and configure components. |
|
|
21
|
+
| **Runtime** (npm package `@relu-interactives/spatial-ecs`) | The ECS engine that powers both the editor's preview and your published builds. |
|
|
22
|
+
| **Behaviours** | Your TypeScript scripts attached to entities, dispatched every frame by the runtime. |
|
|
23
|
+
|
|
24
|
+
<!-- ## Where to next -->
|
|
25
|
+
|
|
26
|
+
<!-- Continue with the rest of this guide in order:
|
|
27
|
+
|
|
28
|
+
1. [Installation](./installation) — download the editor and check requirements.
|
|
29
|
+
2. [Launching the editor for the first time](./first-launch) — sign up or log in.
|
|
30
|
+
3. [Projects](./projects) — pick a default folder, create or open a project.
|
|
31
|
+
4. [Project types](./project-types/) — choose the right project for your experience.
|
|
32
|
+
5. [Understanding the editor](./editor/) — hierarchy, toolbar, inspector, asset browser, environment view.
|
|
33
|
+
6. [Creating objects](./creating-objects) — add entities to your scene.
|
|
34
|
+
7. [Editing inspector values](./editing-objects) — tune transforms, materials, lights, scripts.
|
|
35
|
+
8. [Preview and test](./preview-and-test) — run your project in the runtime preview. -->
|
|
36
|
+
<!--
|
|
37
|
+
After Getting Started, dive into [Concepts](../concepts), [Custom Behaviours](../authoring-a-behaviour), and the [Component Catalog](../component-catalog). -->
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Installation
|
|
2
|
+
|
|
3
|
+
The Relu Spatial editor is distributed as a desktop application for macOS, Windows, and Linux.
|
|
4
|
+
|
|
5
|
+
## Download
|
|
6
|
+
|
|
7
|
+
Get the latest installer from the official downloads page:
|
|
8
|
+
|
|
9
|
+
[**reluspatial.com/downloads**](https://reluspatial.com/downloads)
|
|
10
|
+
|
|
11
|
+

|
|
12
|
+
|
|
13
|
+
## System requirements
|
|
14
|
+
|
|
15
|
+
| Requirement | Minimum | Recommended |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| OS | macOS 12, Windows 10, Ubuntu 22.04 | macOS 14+, Windows 11, Ubuntu 24.04 |
|
|
18
|
+
| CPU | 4-core x64 / Apple Silicon | 8-core x64 / Apple Silicon (M2 or newer) |
|
|
19
|
+
| RAM | 8 GB | 16 GB+ |
|
|
20
|
+
| GPU | WebGL2-capable, 1 GB VRAM | Dedicated GPU with 4 GB+ VRAM |
|
|
21
|
+
| Storage | 2 GB free | 10 GB+ free for asset-heavy projects |
|
|
22
|
+
| Display | 1440 × 900 | 1920 × 1080 or higher |
|
|
23
|
+
|
|
24
|
+
> [!IMPORTANT]
|
|
25
|
+
> The editor uses GPU-accelerated rendering for the viewport and image-target compilation. Integrated graphics work for simple scenes but are noticeably slower on large models or postprocessing-heavy environments.
|
|
26
|
+
|
|
27
|
+
## Platform-specific notes
|
|
28
|
+
|
|
29
|
+
### macOS
|
|
30
|
+
|
|
31
|
+
1. Open the downloaded `.dmg`.
|
|
32
|
+
2. Drag **Relu Spatial** into your `Applications` folder.
|
|
33
|
+
3. The first launch prompts macOS Gatekeeper open **System Settings → Privacy & Security** and click **Open Anyway** if needed.
|
|
34
|
+
|
|
35
|
+

|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
### Windows
|
|
39
|
+
|
|
40
|
+
1. Run the downloaded `.exe` installer.
|
|
41
|
+
2. Follow the wizard to choose an install location.
|
|
42
|
+
3. Allow Relu Spatial through Windows SmartScreen on first launch if prompted.
|
|
43
|
+
|
|
44
|
+

|
|
45
|
+
|
|
46
|
+
<!-- ### Linux
|
|
47
|
+
|
|
48
|
+
1. Download the `.AppImage` (or `.deb` / `.rpm` if provided).
|
|
49
|
+
2. Make it executable: `chmod +x ReluSpatial-*.AppImage`.
|
|
50
|
+
3. Double-click or run from a terminal.
|
|
51
|
+
|
|
52
|
+
::: info Screenshot placeholder
|
|
53
|
+
Linux AppImage launching.
|
|
54
|
+
_Image: `images/getting-started/install-linux.png`_
|
|
55
|
+
::: -->
|
|
56
|
+
|
|
57
|
+
## Next
|
|
58
|
+
|
|
59
|
+
Once installed, continue to [Launching the editor for the first time](./first-launch).
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Preview and Test
|
|
2
|
+
|
|
3
|
+
The editor ships with a runtime preview so you can test your scene without leaving the desktop app. Preview runs the same `@relu-interactives/spatial-ecs` engine that powers your published builds, so what you see is what users will get.
|
|
4
|
+
|
|
5
|
+
## Starting a preview
|
|
6
|
+
|
|
7
|
+
Click the **Preview** button in the [toolbar](./editor/toolbar). The editor saves the current scene, spins up a local runtime server, and opens a preview window.
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+
## What runs in preview
|
|
12
|
+
|
|
13
|
+
- All systems from the runtime including animation, physics, scripts, rendering.
|
|
14
|
+
- Every `Behaviour` script you've authored, compiled in real time.
|
|
15
|
+
- Project type specific runtimes (image tracking, face tracking, WebXR sessions where applicable).
|
|
16
|
+
|
|
17
|
+
## Stopping a preview
|
|
18
|
+
|
|
19
|
+
Click **Preview** again (it switches to **Stop preview**). The editor returns to authoring mode and the runtime server shuts down.
|
|
20
|
+
|
|
21
|
+
## Hot-reload caveats
|
|
22
|
+
|
|
23
|
+
Preview is **not** a live link to the editor. To see changes:
|
|
24
|
+
|
|
25
|
+
1. Edit in the editor.
|
|
26
|
+
2. **Save** the project (⌘S / Ctrl+S).
|
|
27
|
+
3. **Restart preview**.
|
|
28
|
+
|
|
29
|
+
> [!TIP]
|
|
30
|
+
> Most preview iteration is fastest by keeping the preview window visible alongside the editor and restarting it after each significant change.
|
|
31
|
+
|
|
32
|
+
## Testing on devices
|
|
33
|
+
|
|
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
|
+
|
|
36
|
+
- **Image / face tracking:** desktop preview can use your laptop camera. For phone camera quality, publish a draft build and open it on the target device.
|
|
37
|
+
- **WebXR (AR / VR):** publish a draft and open it on a headset or AR capable phone over your local network or via a tunnel like [ngrok](https://ngrok.com).
|
|
38
|
+
|
|
39
|
+
## Common preview issues
|
|
40
|
+
|
|
41
|
+
| Symptom | Likely cause |
|
|
42
|
+
| --- | --- |
|
|
43
|
+
| Preview button does nothing | Save failed check for unsaved errors or read-only project folder. |
|
|
44
|
+
| Black viewport | No camera in scene, or camera's clear color matches scene fog. |
|
|
45
|
+
| Scripts don't run | Compile error check the editor footer for compile output. |
|
|
46
|
+
| Image targets don't track | Targets weren't recompiled after upload. Open the compile modal and re-run. |
|
|
47
|
+
|
|
48
|
+
## Next
|
|
49
|
+
|
|
50
|
+
You're done with **Getting Started**. Continue with:
|
|
51
|
+
|
|
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.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# 3D
|
|
2
|
+
|
|
3
|
+
A **3D** project is a plain interactive 3D scene without any tracking or immersive session. It renders into a regular canvas perfect for games, product viewers, configurators, embedded scenes, dashboards, and any web-deployable 3D experience.
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
## What's different in this project type
|
|
8
|
+
|
|
9
|
+
- The default scene includes a **perspective camera** with orbit controls and basic lighting.
|
|
10
|
+
- The runtime renders into a standard canvas with no WebXR session, no device camera, no tracker bootstrap.
|
|
11
|
+
- Postprocessing is available; tracking-related panels (image targets, face anchors, hit-test) are hidden.
|
|
12
|
+
- Output is suited for embedding on the web or shipping inside another app.
|
|
13
|
+
|
|
14
|
+
## Workflow
|
|
15
|
+
|
|
16
|
+
1. **Add scene content:** meshes, models, lights, cameras.
|
|
17
|
+
2. **Tune the environment:** skybox, fog, lighting (see [Scene Inspector](../editor/scene-inspector)).
|
|
18
|
+
3. **Wire up scripts:** pointer interactions, animations, UI logic via `Behaviour` scripts.
|
|
19
|
+
4. **Preview:** runs in the editor's preview window using a standard 3D camera rig.
|
|
20
|
+
|
|
21
|
+
## Tips
|
|
22
|
+
|
|
23
|
+
- Pick this type when you want a 3D experience without AR/VR overhead.
|
|
24
|
+
- Combine with orbit / pan / zoom behaviours for product-viewer use cases.
|
|
25
|
+
- Postprocessing has a runtime cost — disable it for low-end targets.
|
|
26
|
+
|
|
27
|
+
## Related
|
|
28
|
+
|
|
29
|
+
- [Custom Behaviours](../../authoring-a-behaviour) — interactive scripts.
|
|
30
|
+
- [Component Catalog](../../component-catalog).
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Image Tracking
|
|
2
|
+
|
|
3
|
+
An **Image Tracking** project anchors 3D content to a printed or on-screen image. When the runtime detects a registered image target through the camera, it places the matching anchor entity at that target's position and orientation.
|
|
4
|
+
|
|
5
|
+
Use this for posters, business cards, product packaging, museum exhibits, and any AR experience tied to a printed surface.
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
## What's different in this project type
|
|
12
|
+
|
|
13
|
+
When you open an image-tracking project, the editor changes in three ways:
|
|
14
|
+
|
|
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. **A floating Compile Targets button** appears in the viewport overlay. It opens the **image compilation modal** which packages your image targets into a binary the runtime can load.
|
|
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.
|
|
18
|
+
|
|
19
|
+

|
|
20
|
+
|
|
21
|
+
## Workflow
|
|
22
|
+
|
|
23
|
+
1. **Add an Image Target entity** from the toolbar `+` menu (or hierarchy panel). The editor creates an image-target anchor at the scene root.
|
|
24
|
+
2. **Select the anchor** and use the **Image Targets panel** in the inspector to upload one or more reference images. For each, set its real-world physical width.
|
|
25
|
+
3. **Add child entities** under the anchor. Anything you parent to it becomes visible only when that image is detected.
|
|
26
|
+
4. **Compile targets** — click the floating **Compile Targets** button in the viewport. The compilation modal runs through tracker quality analysis and writes the compiled binary into `bin/targets/`.
|
|
27
|
+
5. **Preview** — press the preview button. The runtime loads the compiled targets and starts the device camera.
|
|
28
|
+
|
|
29
|
+

|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
## Tips
|
|
33
|
+
|
|
34
|
+
- High-contrast, feature-rich images track best. Photos of faces, gradients, and large flat colors are weak targets.
|
|
35
|
+
- Keep the **physical size** field accurate — this is what the runtime uses to scale your 3D content to the printed image.
|
|
36
|
+
- Children of an image-target anchor inherit its transform. Position objects in **local space** relative to the anchor, not world space.
|
|
37
|
+
- Recompile targets whenever you add or change reference images.
|
|
38
|
+
|
|
39
|
+
## Related
|
|
40
|
+
|
|
41
|
+
- [Component Catalog → Image Target](../../component-catalog) — runtime component reference.
|
|
42
|
+
- [Spawning → Image Target](../../spawning/image-target) — spawning anchors from scripts.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Project Types
|
|
2
|
+
|
|
3
|
+
When you create a new project the editor asks for a **project type**. The type determines:
|
|
4
|
+
|
|
5
|
+
- the **default scene** seeded into the project,
|
|
6
|
+
- which **components and panels** are available in the inspector,
|
|
7
|
+
- how the **runtime** initializes the camera, tracking, and rendering pipeline,
|
|
8
|
+
- which **publish targets** are valid.
|
|
9
|
+
|
|
10
|
+
You can't change a project's type after creation, so pick the one that matches the experience you intend to ship.
|
|
11
|
+
|
|
12
|
+
## Available project types
|
|
13
|
+
|
|
14
|
+
| Type | Best for |
|
|
15
|
+
| --- | --- |
|
|
16
|
+
| [Image Tracking](./image-tracking) | AR experiences anchored to printed images, posters, or product packaging. |
|
|
17
|
+
| [3D](./3d) | Plain interactive 3D scenes, games, product viewers, configurators, embedded experiences. |
|
|
18
|
+
| [Face Tracking](./face-tracking) | Face filters, avatars, and try-on experiences. *(Coming Soon)* |
|
|
19
|
+
| [VR](./vr) | Fully immersive virtual reality scenes for headsets. *(Coming Soon)* |
|
|
20
|
+
| [AR](./ar) | World-space augmented reality without a specific anchor. *(Coming Soon)* |
|
|
21
|
+
|
|
22
|
+

|
|
23
|
+
|
|
24
|
+
> [!TIP]
|
|
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.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Projects
|
|
2
|
+
|
|
3
|
+
After signing in for the first time, the editor needs to know where to store your projects on disk. From the dashboard you can then create new projects or open existing ones.
|
|
4
|
+
|
|
5
|
+
## Choose a default projects folder
|
|
6
|
+
|
|
7
|
+
The first time you open the dashboard you'll see a prompt to pick a **projects folder**. This is the directory where every project you create or open lives.
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+
|
|
11
|
+

|
|
12
|
+
|
|
13
|
+
1. Click **Select folder**.
|
|
14
|
+
2. Pick a location in your file system: for example `~/Documents/ReluSpatial` on macOS / Linux, or `Documents\ReluSpatial` on Windows.
|
|
15
|
+
3. The editor remembers this path for every future session.
|
|
16
|
+
|
|
17
|
+
You can change it later from **Settings → Projects path**.
|
|
18
|
+
|
|
19
|
+
## Project files on disk
|
|
20
|
+
|
|
21
|
+
Each project is a folder under your projects path.
|
|
22
|
+
|
|
23
|
+
> [!TIP]
|
|
24
|
+
> The `assets/` folder is yours to organize. Drop models, images, audio, video, and scripts in here directly they appear in the editor's [asset browser](./editor/assets-browser) automatically.
|
|
25
|
+
|
|
26
|
+
## Create a new project
|
|
27
|
+
|
|
28
|
+
From the dashboard, click **New project**.
|
|
29
|
+
|
|
30
|
+

|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
You'll be asked for:
|
|
34
|
+
|
|
35
|
+
- **Project name:** used to derive the folder slug.
|
|
36
|
+
- **Project type:** see [Project types](./project-types/) for the differences.
|
|
37
|
+
|
|
38
|
+
Click **Create**. The editor scaffolds the project, opens it, and seeds the default scene for the chosen project type.
|
|
39
|
+
|
|
40
|
+
## Open an existing project
|
|
41
|
+
|
|
42
|
+
The dashboard lists every project found in your projects folder.
|
|
43
|
+
|
|
44
|
+

|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
- **Click a card** to open the project in the editor.
|
|
48
|
+
- **Click card options:** for actions: rename, duplicate, reveal in finder/explorer, delete.
|
|
49
|
+
|
|
50
|
+
## Next
|
|
51
|
+
|
|
52
|
+
- [Project types](./project-types/) — pick the right type for your experience.
|
|
53
|
+
- [Understanding the editor](./editor/) — what each region of the editor window does.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Keyboard Shortcuts
|
|
2
|
+
|
|
3
|
+
The editor supports keyboard shortcuts for common actions. You can also open the shortcuts panel at any time by clicking the **keyboard icon** in the top-right corner of the navbar (next to the logo).
|
|
4
|
+
|
|
5
|
+
## Navigation
|
|
6
|
+
|
|
7
|
+
| Shortcut | Action |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| `F` | Focus camera on selected object |
|
|
10
|
+
| `Shift+F` | Frame selected object (zoom to fit) |
|
|
11
|
+
|
|
12
|
+
## Transform Gizmos
|
|
13
|
+
|
|
14
|
+
| Shortcut | Action |
|
|
15
|
+
| --- | --- |
|
|
16
|
+
| `W` | Switch to **Translate** gizmo |
|
|
17
|
+
| `E` | Switch to **Scale** gizmo |
|
|
18
|
+
| `R` | Switch to **Rotate** gizmo |
|
|
19
|
+
|
|
20
|
+
## Selection
|
|
21
|
+
|
|
22
|
+
| Shortcut | Action |
|
|
23
|
+
| --- | --- |
|
|
24
|
+
| `Esc` | Clear active selection |
|
|
25
|
+
| `Del` / `Backspace` | Delete selected object |
|
|
26
|
+
| `⌘+D` / `Ctrl+D` | Duplicate selected object |
|
|
27
|
+
|
|
28
|
+
## History
|
|
29
|
+
|
|
30
|
+
| Shortcut | Action |
|
|
31
|
+
| --- | --- |
|
|
32
|
+
| `⌘+Z` / `Ctrl+Z` | Undo last action |
|
|
33
|
+
| `⌘+Shift+Z` / `Ctrl+Y` | Redo last undone action |
|
|
34
|
+
|
|
35
|
+
## Project
|
|
36
|
+
|
|
37
|
+
| Shortcut | Action |
|
|
38
|
+
| --- | --- |
|
|
39
|
+
| `⌘+S` / `Ctrl+S` | Save project |
|
|
40
|
+
|
|
41
|
+
::: tip macOS vs Windows/Linux
|
|
42
|
+
Shortcuts that show `⌘` apply to macOS. Use `Ctrl` in their place on Windows.
|
|
43
|
+
:::
|