@needle-tools/engine 4.13.0 → 4.13.1-next.6cb1b73
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/CHANGELOG.md +8 -1
- package/README.md +37 -0
- package/components.needle.json +1 -1
- package/custom-elements.json +138 -4
- package/dist/gltf-progressive-BTd714P0.min.js +9 -0
- package/dist/gltf-progressive-CrHduHPm.umd.cjs +9 -0
- package/dist/{gltf-progressive-eiJCrjLb.js → gltf-progressive-CsyU_5lc.js} +364 -287
- package/dist/{needle-engine.bundle-CxaKFQVS.min.js → needle-engine.bundle-DRSn34Va.min.js} +109 -109
- package/dist/{needle-engine.bundle-J4k4znv8.umd.cjs → needle-engine.bundle-qTjHpin6.umd.cjs} +110 -110
- package/dist/{needle-engine.bundle-Dl3TFYyv.js → needle-engine.bundle-wB3o8RB6.js} +2655 -2130
- package/dist/needle-engine.d.ts +4202 -423
- package/dist/needle-engine.js +3 -3
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/lib/engine/engine_context.d.ts +16 -0
- package/lib/engine/engine_context.js +28 -2
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_gameobject.d.ts +72 -0
- package/lib/engine/engine_gameobject.js +38 -0
- package/lib/engine/engine_gameobject.js.map +1 -1
- package/lib/engine/engine_input.d.ts +80 -4
- package/lib/engine/engine_input.js +78 -2
- package/lib/engine/engine_input.js.map +1 -1
- package/lib/engine/engine_math.d.ts +81 -2
- package/lib/engine/engine_math.js +68 -2
- package/lib/engine/engine_math.js.map +1 -1
- package/lib/engine/engine_networking.d.ts +181 -14
- package/lib/engine/engine_networking.js +181 -14
- package/lib/engine/engine_networking.js.map +1 -1
- package/lib/engine/engine_networking_auto.d.ts +35 -8
- package/lib/engine/engine_networking_auto.js +35 -8
- package/lib/engine/engine_networking_auto.js.map +1 -1
- package/lib/engine/engine_physics.d.ts +37 -1
- package/lib/engine/engine_physics.js +37 -1
- package/lib/engine/engine_physics.js.map +1 -1
- package/lib/engine/engine_physics_rapier.d.ts +78 -0
- package/lib/engine/engine_physics_rapier.js +78 -0
- package/lib/engine/engine_physics_rapier.js.map +1 -1
- package/lib/engine/engine_serialization_decorator.d.ts +28 -2
- package/lib/engine/engine_serialization_decorator.js +28 -2
- package/lib/engine/engine_serialization_decorator.js.map +1 -1
- package/lib/engine/engine_time.d.ts +23 -3
- package/lib/engine/engine_time.js +23 -3
- package/lib/engine/engine_time.js.map +1 -1
- package/lib/engine/engine_util_decorator.d.ts +31 -1
- package/lib/engine/engine_util_decorator.js +31 -1
- package/lib/engine/engine_util_decorator.js.map +1 -1
- package/lib/engine/engine_utils.d.ts +22 -5
- package/lib/engine/engine_utils.js +22 -5
- package/lib/engine/engine_utils.js.map +1 -1
- package/lib/engine/engine_utils_screenshot.d.ts +171 -14
- package/lib/engine/engine_utils_screenshot.js +65 -0
- package/lib/engine/engine_utils_screenshot.js.map +1 -1
- package/lib/engine/engine_utils_screenshot.xr.d.ts +1 -1
- package/lib/engine/engine_utils_screenshot.xr.js +1 -1
- package/lib/engine/extensions/NEEDLE_materialx.d.ts +2 -2
- package/lib/engine/extensions/NEEDLE_materialx.js +2 -2
- package/lib/engine/extensions/NEEDLE_materialx.js.map +1 -1
- package/lib/engine/extensions/NEEDLE_techniques_webgl.js +3 -0
- package/lib/engine/extensions/NEEDLE_techniques_webgl.js.map +1 -1
- package/lib/engine/extensions/index.d.ts +1 -1
- package/lib/engine/extensions/index.js +1 -1
- package/lib/engine/extensions/index.js.map +1 -1
- package/lib/engine/xr/NeedleXRSession.d.ts +5 -0
- package/lib/engine/xr/NeedleXRSession.js +5 -0
- package/lib/engine/xr/NeedleXRSession.js.map +1 -1
- package/lib/engine-components/AlignmentConstraint.d.ts +23 -3
- package/lib/engine-components/AlignmentConstraint.js +23 -3
- package/lib/engine-components/AlignmentConstraint.js.map +1 -1
- package/lib/engine-components/Animation.d.ts +42 -0
- package/lib/engine-components/Animation.js +36 -0
- package/lib/engine-components/Animation.js.map +1 -1
- package/lib/engine-components/Animator.d.ts +37 -4
- package/lib/engine-components/Animator.js +37 -4
- package/lib/engine-components/Animator.js.map +1 -1
- package/lib/engine-components/AudioListener.d.ts +1 -1
- package/lib/engine-components/AudioListener.js +1 -1
- package/lib/engine-components/AudioSource.d.ts +32 -10
- package/lib/engine-components/AudioSource.js +32 -10
- package/lib/engine-components/AudioSource.js.map +1 -1
- package/lib/engine-components/AxesHelper.d.ts +22 -3
- package/lib/engine-components/AxesHelper.js +22 -3
- package/lib/engine-components/AxesHelper.js.map +1 -1
- package/lib/engine-components/BasicIKConstraint.d.ts +27 -4
- package/lib/engine-components/BasicIKConstraint.js +27 -4
- package/lib/engine-components/BasicIKConstraint.js.map +1 -1
- package/lib/engine-components/Camera.d.ts +32 -2
- package/lib/engine-components/Camera.js +32 -2
- package/lib/engine-components/Camera.js.map +1 -1
- package/lib/engine-components/CharacterController.d.ts +68 -4
- package/lib/engine-components/CharacterController.js +68 -4
- package/lib/engine-components/CharacterController.js.map +1 -1
- package/lib/engine-components/Collider.d.ts +69 -12
- package/lib/engine-components/Collider.js +69 -12
- package/lib/engine-components/Collider.js.map +1 -1
- package/lib/engine-components/ContactShadows.d.ts +28 -6
- package/lib/engine-components/ContactShadows.js +33 -8
- package/lib/engine-components/ContactShadows.js.map +1 -1
- package/lib/engine-components/DeleteBox.d.ts +43 -2
- package/lib/engine-components/DeleteBox.js +43 -2
- package/lib/engine-components/DeleteBox.js.map +1 -1
- package/lib/engine-components/DeviceFlag.d.ts +21 -2
- package/lib/engine-components/DeviceFlag.js +21 -2
- package/lib/engine-components/DeviceFlag.js.map +1 -1
- package/lib/engine-components/DragControls.d.ts +32 -2
- package/lib/engine-components/DragControls.js +32 -2
- package/lib/engine-components/DragControls.js.map +1 -1
- package/lib/engine-components/DropListener.d.ts +33 -21
- package/lib/engine-components/DropListener.js +33 -21
- package/lib/engine-components/DropListener.js.map +1 -1
- package/lib/engine-components/Duplicatable.d.ts +36 -5
- package/lib/engine-components/Duplicatable.js +36 -5
- package/lib/engine-components/Duplicatable.js.map +1 -1
- package/lib/engine-components/EventList.d.ts +38 -10
- package/lib/engine-components/EventList.js +40 -12
- package/lib/engine-components/EventList.js.map +1 -1
- package/lib/engine-components/EventTrigger.d.ts +1 -1
- package/lib/engine-components/EventTrigger.js +1 -1
- package/lib/engine-components/Fog.d.ts +23 -1
- package/lib/engine-components/Fog.js +23 -1
- package/lib/engine-components/Fog.js.map +1 -1
- package/lib/engine-components/GridHelper.d.ts +18 -2
- package/lib/engine-components/GridHelper.js +18 -2
- package/lib/engine-components/GridHelper.js.map +1 -1
- package/lib/engine-components/GroundProjection.d.ts +24 -2
- package/lib/engine-components/GroundProjection.js +24 -2
- package/lib/engine-components/GroundProjection.js.map +1 -1
- package/lib/engine-components/Interactable.d.ts +17 -2
- package/lib/engine-components/Interactable.js +17 -2
- package/lib/engine-components/Interactable.js.map +1 -1
- package/lib/engine-components/Joints.d.ts +50 -7
- package/lib/engine-components/Joints.js +50 -7
- package/lib/engine-components/Joints.js.map +1 -1
- package/lib/engine-components/LODGroup.d.ts +36 -14
- package/lib/engine-components/LODGroup.js +43 -11
- package/lib/engine-components/LODGroup.js.map +1 -1
- package/lib/engine-components/Light.d.ts +30 -5
- package/lib/engine-components/Light.js +30 -5
- package/lib/engine-components/Light.js.map +1 -1
- package/lib/engine-components/LookAtConstraint.d.ts +22 -7
- package/lib/engine-components/LookAtConstraint.js +22 -7
- package/lib/engine-components/LookAtConstraint.js.map +1 -1
- package/lib/engine-components/NeedleMenu.d.ts +27 -5
- package/lib/engine-components/NeedleMenu.js +27 -5
- package/lib/engine-components/NeedleMenu.js.map +1 -1
- package/lib/engine-components/NestedGltf.d.ts +39 -4
- package/lib/engine-components/NestedGltf.js +42 -4
- package/lib/engine-components/NestedGltf.js.map +1 -1
- package/lib/engine-components/OffsetConstraint.d.ts +27 -3
- package/lib/engine-components/OffsetConstraint.js +27 -3
- package/lib/engine-components/OffsetConstraint.js.map +1 -1
- package/lib/engine-components/OrbitControls.d.ts +41 -3
- package/lib/engine-components/OrbitControls.js +41 -3
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/PlayerColor.d.ts +1 -1
- package/lib/engine-components/PlayerColor.js +1 -1
- package/lib/engine-components/ReflectionProbe.d.ts +17 -2
- package/lib/engine-components/ReflectionProbe.js +17 -3
- package/lib/engine-components/ReflectionProbe.js.map +1 -1
- package/lib/engine-components/Renderer.d.ts +35 -0
- package/lib/engine-components/Renderer.js +36 -2
- package/lib/engine-components/Renderer.js.map +1 -1
- package/lib/engine-components/RigidBody.d.ts +57 -5
- package/lib/engine-components/RigidBody.js +57 -5
- package/lib/engine-components/RigidBody.js.map +1 -1
- package/lib/engine-components/SceneSwitcher.d.ts +11 -0
- package/lib/engine-components/SceneSwitcher.js +11 -0
- package/lib/engine-components/SceneSwitcher.js.map +1 -1
- package/lib/engine-components/ScreenCapture.d.ts +39 -6
- package/lib/engine-components/ScreenCapture.js +39 -6
- package/lib/engine-components/ScreenCapture.js.map +1 -1
- package/lib/engine-components/SeeThrough.d.ts +70 -5
- package/lib/engine-components/SeeThrough.js +70 -5
- package/lib/engine-components/SeeThrough.js.map +1 -1
- package/lib/engine-components/ShadowCatcher.d.ts +56 -4
- package/lib/engine-components/ShadowCatcher.js +56 -4
- package/lib/engine-components/ShadowCatcher.js.map +1 -1
- package/lib/engine-components/Skybox.d.ts +43 -7
- package/lib/engine-components/Skybox.js +43 -7
- package/lib/engine-components/Skybox.js.map +1 -1
- package/lib/engine-components/SmoothFollow.d.ts +66 -7
- package/lib/engine-components/SmoothFollow.js +66 -7
- package/lib/engine-components/SmoothFollow.js.map +1 -1
- package/lib/engine-components/SpatialTrigger.d.ts +48 -1
- package/lib/engine-components/SpatialTrigger.js +48 -1
- package/lib/engine-components/SpatialTrigger.js.map +1 -1
- package/lib/engine-components/SpectatorCamera.d.ts +21 -3
- package/lib/engine-components/SpectatorCamera.js +21 -3
- package/lib/engine-components/SpectatorCamera.js.map +1 -1
- package/lib/engine-components/SyncedRoom.d.ts +7 -1
- package/lib/engine-components/SyncedRoom.js +7 -1
- package/lib/engine-components/SyncedRoom.js.map +1 -1
- package/lib/engine-components/SyncedTransform.d.ts +55 -6
- package/lib/engine-components/SyncedTransform.js +55 -6
- package/lib/engine-components/SyncedTransform.js.map +1 -1
- package/lib/engine-components/TransformGizmo.d.ts +30 -3
- package/lib/engine-components/TransformGizmo.js +30 -3
- package/lib/engine-components/TransformGizmo.js.map +1 -1
- package/lib/engine-components/VideoPlayer.d.ts +33 -6
- package/lib/engine-components/VideoPlayer.js +51 -6
- package/lib/engine-components/VideoPlayer.js.map +1 -1
- package/lib/engine-components/Voip.d.ts +33 -2
- package/lib/engine-components/Voip.js +33 -2
- package/lib/engine-components/Voip.js.map +1 -1
- package/lib/engine-components/export/usdz/USDZExporter.d.ts +47 -13
- package/lib/engine-components/export/usdz/USDZExporter.js +47 -13
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
- package/lib/engine-components/particlesystem/ParticleSystem.d.ts +82 -3
- package/lib/engine-components/particlesystem/ParticleSystem.js +82 -3
- package/lib/engine-components/particlesystem/ParticleSystem.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Antialiasing.d.ts +1 -0
- package/lib/engine-components/postprocessing/Effects/Antialiasing.js +1 -0
- package/lib/engine-components/postprocessing/Effects/Antialiasing.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/BloomEffect.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/BloomEffect.js +1 -1
- package/lib/engine-components/postprocessing/Effects/ChromaticAberration.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/ChromaticAberration.js +1 -1
- package/lib/engine-components/postprocessing/Effects/ColorAdjustments.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/ColorAdjustments.js +1 -1
- package/lib/engine-components/postprocessing/Effects/DepthOfField.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/DepthOfField.js +1 -1
- package/lib/engine-components/postprocessing/Effects/EffectWrapper.d.ts +1 -0
- package/lib/engine-components/postprocessing/Effects/EffectWrapper.js +1 -0
- package/lib/engine-components/postprocessing/Effects/EffectWrapper.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Pixelation.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/Pixelation.js +1 -1
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.js +1 -1
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.js +1 -1
- package/lib/engine-components/postprocessing/Effects/Sharpening.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/Sharpening.js +1 -1
- package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.js +1 -1
- package/lib/engine-components/postprocessing/Effects/Tonemapping.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/Tonemapping.js +1 -1
- package/lib/engine-components/postprocessing/Effects/Vignette.d.ts +1 -1
- package/lib/engine-components/postprocessing/Effects/Vignette.js +1 -1
- package/lib/engine-components/postprocessing/PostProcessingHandler.d.ts +1 -1
- package/lib/engine-components/postprocessing/PostProcessingHandler.js +1 -1
- package/lib/engine-components/postprocessing/Volume.d.ts +1 -1
- package/lib/engine-components/postprocessing/Volume.js +1 -1
- package/lib/engine-components/splines/Spline.d.ts +409 -12
- package/lib/engine-components/splines/Spline.js +409 -12
- package/lib/engine-components/splines/Spline.js.map +1 -1
- package/lib/engine-components/splines/SplineUtils.d.ts +1 -0
- package/lib/engine-components/splines/SplineUtils.js +1 -0
- package/lib/engine-components/splines/SplineUtils.js.map +1 -1
- package/lib/engine-components/splines/SplineWalker.d.ts +3 -1
- package/lib/engine-components/splines/SplineWalker.js +3 -1
- package/lib/engine-components/splines/SplineWalker.js.map +1 -1
- package/lib/engine-components/timeline/PlayableDirector.d.ts +103 -14
- package/lib/engine-components/timeline/PlayableDirector.js +95 -25
- package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
- package/lib/engine-components/timeline/TimelineModels.d.ts +14 -0
- package/lib/engine-components/timeline/TimelineModels.js +4 -0
- package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
- package/lib/engine-components/ui/Button.d.ts +29 -3
- package/lib/engine-components/ui/Button.js +29 -3
- package/lib/engine-components/ui/Button.js.map +1 -1
- package/lib/engine-components/ui/Canvas.d.ts +29 -4
- package/lib/engine-components/ui/Canvas.js +29 -4
- package/lib/engine-components/ui/Canvas.js.map +1 -1
- package/lib/engine-components/ui/CanvasGroup.d.ts +1 -1
- package/lib/engine-components/ui/CanvasGroup.js +1 -1
- package/lib/engine-components/ui/EventSystem.d.ts +1 -1
- package/lib/engine-components/ui/EventSystem.js +1 -1
- package/lib/engine-components/ui/Graphic.d.ts +1 -0
- package/lib/engine-components/ui/Graphic.js +1 -0
- package/lib/engine-components/ui/Graphic.js.map +1 -1
- package/lib/engine-components/ui/Image.d.ts +22 -3
- package/lib/engine-components/ui/Image.js +22 -3
- package/lib/engine-components/ui/Image.js.map +1 -1
- package/lib/engine-components/ui/InputField.d.ts +1 -1
- package/lib/engine-components/ui/InputField.js +1 -1
- package/lib/engine-components/ui/Layout.d.ts +3 -0
- package/lib/engine-components/ui/Layout.js +3 -0
- package/lib/engine-components/ui/Layout.js.map +1 -1
- package/lib/engine-components/ui/Outline.d.ts +1 -1
- package/lib/engine-components/ui/Outline.js +1 -1
- package/lib/engine-components/ui/PointerEvents.d.ts +1 -1
- package/lib/engine-components/ui/PointerEvents.js +1 -1
- package/lib/engine-components/ui/Raycaster.d.ts +55 -6
- package/lib/engine-components/ui/Raycaster.js +55 -6
- package/lib/engine-components/ui/Raycaster.js.map +1 -1
- package/lib/engine-components/ui/RectTransform.d.ts +1 -1
- package/lib/engine-components/ui/RectTransform.js +1 -1
- package/lib/engine-components/ui/SpatialHtml.d.ts +1 -1
- package/lib/engine-components/ui/SpatialHtml.js +1 -1
- package/lib/engine-components/ui/Text.d.ts +23 -1
- package/lib/engine-components/ui/Text.js +23 -1
- package/lib/engine-components/ui/Text.js.map +1 -1
- package/lib/engine-components/utils/LookAt.d.ts +1 -1
- package/lib/engine-components/utils/LookAt.js +1 -1
- package/lib/engine-components/utils/OpenURL.d.ts +2 -1
- package/lib/engine-components/utils/OpenURL.js +2 -1
- package/lib/engine-components/utils/OpenURL.js.map +1 -1
- package/lib/engine-components/web/Clickthrough.d.ts +116 -7
- package/lib/engine-components/web/Clickthrough.js +116 -7
- package/lib/engine-components/web/Clickthrough.js.map +1 -1
- package/lib/engine-components/web/CursorFollow.d.ts +172 -7
- package/lib/engine-components/web/CursorFollow.js +172 -7
- package/lib/engine-components/web/CursorFollow.js.map +1 -1
- package/lib/engine-components/web/HoverAnimation.d.ts +140 -11
- package/lib/engine-components/web/HoverAnimation.js +140 -11
- package/lib/engine-components/web/HoverAnimation.js.map +1 -1
- package/lib/engine-components/web/ScrollFollow.d.ts +5 -1
- package/lib/engine-components/web/ScrollFollow.js +5 -1
- package/lib/engine-components/web/ScrollFollow.js.map +1 -1
- package/lib/engine-components/web/ViewBox.d.ts +116 -16
- package/lib/engine-components/web/ViewBox.js +110 -16
- package/lib/engine-components/web/ViewBox.js.map +1 -1
- package/lib/engine-components/webxr/TeleportTarget.d.ts +21 -2
- package/lib/engine-components/webxr/TeleportTarget.js +21 -2
- package/lib/engine-components/webxr/TeleportTarget.js.map +1 -1
- package/lib/engine-components/webxr/WebARCameraBackground.d.ts +9 -0
- package/lib/engine-components/webxr/WebARCameraBackground.js +9 -0
- package/lib/engine-components/webxr/WebARCameraBackground.js.map +1 -1
- package/lib/engine-components/webxr/WebXR.d.ts +11 -2
- package/lib/engine-components/webxr/WebXR.js +11 -2
- package/lib/engine-components/webxr/WebXR.js.map +1 -1
- package/lib/engine-components/webxr/WebXRAvatar.d.ts +39 -2
- package/lib/engine-components/webxr/WebXRAvatar.js +35 -3
- package/lib/engine-components/webxr/WebXRAvatar.js.map +1 -1
- package/lib/engine-components/webxr/WebXRImageTracking.d.ts +266 -30
- package/lib/engine-components/webxr/WebXRImageTracking.js +266 -30
- package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
- package/lib/engine-components/webxr/WebXRPlaneTracking.d.ts +1 -1
- package/lib/engine-components/webxr/WebXRPlaneTracking.js +1 -1
- package/lib/engine-components/webxr/XRFlag.d.ts +29 -2
- package/lib/engine-components/webxr/XRFlag.js +29 -2
- package/lib/engine-components/webxr/XRFlag.js.map +1 -1
- package/package.json +3 -3
- package/plugins/vite/custom-element-data.js +128 -19
- package/src/engine/engine_context.ts +33 -3
- package/src/engine/engine_gameobject.ts +73 -0
- package/src/engine/engine_input.ts +83 -7
- package/src/engine/engine_math.ts +81 -2
- package/src/engine/engine_networking.ts +186 -17
- package/src/engine/engine_networking_auto.ts +36 -9
- package/src/engine/engine_physics.ts +41 -1
- package/src/engine/engine_physics_rapier.ts +81 -0
- package/src/engine/engine_serialization_decorator.ts +28 -2
- package/src/engine/engine_time.ts +23 -3
- package/src/engine/engine_util_decorator.ts +31 -1
- package/src/engine/engine_utils.ts +22 -5
- package/src/engine/engine_utils_screenshot.ts +241 -17
- package/src/engine/engine_utils_screenshot.xr.ts +1 -1
- package/src/engine/extensions/NEEDLE_materialx.ts +5 -4
- package/src/engine/extensions/NEEDLE_techniques_webgl.ts +3 -0
- package/src/engine/extensions/index.ts +2 -2
- package/src/engine/xr/NeedleXRSession.ts +5 -0
- package/src/engine-components/AlignmentConstraint.ts +24 -4
- package/src/engine-components/Animation.ts +44 -2
- package/src/engine-components/Animator.ts +40 -7
- package/src/engine-components/AudioListener.ts +1 -1
- package/src/engine-components/AudioSource.ts +37 -15
- package/src/engine-components/AxesHelper.ts +23 -4
- package/src/engine-components/BasicIKConstraint.ts +28 -5
- package/src/engine-components/Camera.ts +33 -3
- package/src/engine-components/CharacterController.ts +74 -7
- package/src/engine-components/Collider.ts +78 -21
- package/src/engine-components/ContactShadows.ts +41 -11
- package/src/engine-components/DeleteBox.ts +43 -2
- package/src/engine-components/DeviceFlag.ts +22 -3
- package/src/engine-components/DragControls.ts +32 -2
- package/src/engine-components/DropListener.ts +41 -29
- package/src/engine-components/Duplicatable.ts +37 -6
- package/src/engine-components/EventList.ts +43 -15
- package/src/engine-components/EventTrigger.ts +1 -1
- package/src/engine-components/Fog.ts +23 -1
- package/src/engine-components/GridHelper.ts +18 -2
- package/src/engine-components/GroundProjection.ts +25 -3
- package/src/engine-components/Interactable.ts +17 -2
- package/src/engine-components/Joints.ts +51 -8
- package/src/engine-components/LODGroup.ts +45 -11
- package/src/engine-components/Light.ts +35 -13
- package/src/engine-components/LookAtConstraint.ts +26 -8
- package/src/engine-components/NeedleMenu.ts +29 -7
- package/src/engine-components/NestedGltf.ts +40 -4
- package/src/engine-components/OffsetConstraint.ts +27 -3
- package/src/engine-components/OrbitControls.ts +41 -3
- package/src/engine-components/PlayerColor.ts +1 -1
- package/src/engine-components/ReflectionProbe.ts +19 -5
- package/src/engine-components/Renderer.ts +35 -1
- package/src/engine-components/RigidBody.ts +64 -8
- package/src/engine-components/SceneSwitcher.ts +11 -0
- package/src/engine-components/ScreenCapture.ts +42 -9
- package/src/engine-components/SeeThrough.ts +76 -9
- package/src/engine-components/ShadowCatcher.ts +61 -6
- package/src/engine-components/Skybox.ts +48 -12
- package/src/engine-components/SmoothFollow.ts +68 -7
- package/src/engine-components/SpatialTrigger.ts +51 -4
- package/src/engine-components/SpectatorCamera.ts +23 -5
- package/src/engine-components/SyncedRoom.ts +8 -2
- package/src/engine-components/SyncedTransform.ts +59 -10
- package/src/engine-components/TransformGizmo.ts +31 -4
- package/src/engine-components/VideoPlayer.ts +54 -6
- package/src/engine-components/Voip.ts +33 -2
- package/src/engine-components/export/usdz/USDZExporter.ts +47 -13
- package/src/engine-components/particlesystem/ParticleSystem.ts +84 -5
- package/src/engine-components/postprocessing/Effects/Antialiasing.ts +1 -0
- package/src/engine-components/postprocessing/Effects/BloomEffect.ts +1 -1
- package/src/engine-components/postprocessing/Effects/ChromaticAberration.ts +1 -1
- package/src/engine-components/postprocessing/Effects/ColorAdjustments.ts +1 -1
- package/src/engine-components/postprocessing/Effects/DepthOfField.ts +1 -1
- package/src/engine-components/postprocessing/Effects/EffectWrapper.ts +1 -0
- package/src/engine-components/postprocessing/Effects/Pixelation.ts +1 -1
- package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.ts +1 -1
- package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.ts +1 -1
- package/src/engine-components/postprocessing/Effects/Sharpening.ts +1 -1
- package/src/engine-components/postprocessing/Effects/TiltShiftEffect.ts +1 -1
- package/src/engine-components/postprocessing/Effects/Tonemapping.ts +1 -1
- package/src/engine-components/postprocessing/Effects/Vignette.ts +1 -1
- package/src/engine-components/postprocessing/PostProcessingHandler.ts +1 -1
- package/src/engine-components/postprocessing/Volume.ts +1 -1
- package/src/engine-components/splines/Spline.ts +412 -14
- package/src/engine-components/splines/SplineUtils.ts +1 -0
- package/src/engine-components/splines/SplineWalker.ts +4 -2
- package/src/engine-components/timeline/PlayableDirector.ts +108 -27
- package/src/engine-components/timeline/SignalAsset.ts +1 -1
- package/src/engine-components/timeline/TimelineModels.ts +18 -2
- package/src/engine-components/ui/Button.ts +29 -3
- package/src/engine-components/ui/Canvas.ts +29 -4
- package/src/engine-components/ui/CanvasGroup.ts +2 -2
- package/src/engine-components/ui/EventSystem.ts +1 -1
- package/src/engine-components/ui/Graphic.ts +1 -0
- package/src/engine-components/ui/Image.ts +22 -3
- package/src/engine-components/ui/InputField.ts +2 -2
- package/src/engine-components/ui/Layout.ts +3 -0
- package/src/engine-components/ui/Outline.ts +1 -1
- package/src/engine-components/ui/PointerEvents.ts +1 -1
- package/src/engine-components/ui/Raycaster.ts +57 -8
- package/src/engine-components/ui/RectTransform.ts +2 -2
- package/src/engine-components/ui/SpatialHtml.ts +1 -1
- package/src/engine-components/ui/Text.ts +24 -2
- package/src/engine-components/utils/LookAt.ts +1 -1
- package/src/engine-components/utils/OpenURL.ts +2 -1
- package/src/engine-components/web/Clickthrough.ts +119 -10
- package/src/engine-components/web/CursorFollow.ts +175 -9
- package/src/engine-components/web/HoverAnimation.ts +142 -13
- package/src/engine-components/web/ScrollFollow.ts +5 -1
- package/src/engine-components/web/ViewBox.ts +118 -18
- package/src/engine-components/webxr/TeleportTarget.ts +23 -4
- package/src/engine-components/webxr/WebARCameraBackground.ts +12 -3
- package/src/engine-components/webxr/WebXR.ts +12 -3
- package/src/engine-components/webxr/WebXRAvatar.ts +41 -4
- package/src/engine-components/webxr/WebXRImageTracking.ts +282 -38
- package/src/engine-components/webxr/WebXRPlaneTracking.ts +1 -1
- package/src/engine-components/webxr/XRFlag.ts +30 -3
- package/dist/gltf-progressive-BURrJW0U.umd.cjs +0 -8
- package/dist/gltf-progressive-DHLDFNvQ.min.js +0 -8
|
@@ -4,9 +4,32 @@ import { EventList } from "./EventList.js";
|
|
|
4
4
|
/**
|
|
5
5
|
* Component that receives and responds to spatial events, like entering or exiting a trigger zone.
|
|
6
6
|
* Used in conjunction with {@link SpatialTrigger} to create interactive spatial events.
|
|
7
|
+
*
|
|
8
|
+
* Place this on objects that should react when entering trigger zones. The receiver checks
|
|
9
|
+
* against all active SpatialTriggers each frame and fires events when intersections change.
|
|
10
|
+
*
|
|
11
|
+
* Events can be connected via {@link EventList} in the editor or listened to in code.
|
|
12
|
+
*
|
|
13
|
+
* @example Listen to trigger events
|
|
14
|
+
* ```ts
|
|
15
|
+
* export class DoorTrigger extends Behaviour {
|
|
16
|
+
* @serializable(SpatialTriggerReceiver)
|
|
17
|
+
* receiver?: SpatialTriggerReceiver;
|
|
18
|
+
*
|
|
19
|
+
* start() {
|
|
20
|
+
* this.receiver?.onEnter?.addEventListener(() => {
|
|
21
|
+
* console.log("Player entered door zone");
|
|
22
|
+
* });
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
7
27
|
* @summary Receives spatial trigger events
|
|
8
28
|
* @category Interactivity
|
|
9
29
|
* @group Components
|
|
30
|
+
* @see {@link SpatialTrigger} for defining trigger zones
|
|
31
|
+
* @see {@link EventList} for event handling
|
|
32
|
+
* @link https://engine.needle.tools/samples/spatial-triggers/
|
|
10
33
|
*/
|
|
11
34
|
export declare class SpatialTriggerReceiver extends Behaviour {
|
|
12
35
|
/**
|
|
@@ -53,9 +76,33 @@ export declare class SpatialTriggerReceiver extends Behaviour {
|
|
|
53
76
|
}
|
|
54
77
|
/**
|
|
55
78
|
* A spatial trigger component that detects objects within a box-shaped area.
|
|
56
|
-
* Used to trigger events when objects enter, stay in, or exit the defined area
|
|
79
|
+
* Used to trigger events when objects enter, stay in, or exit the defined area.
|
|
80
|
+
*
|
|
81
|
+
* The trigger area is defined by the GameObject's bounding box (uses {@link BoxHelperComponent}).
|
|
82
|
+
* Objects with {@link SpatialTriggerReceiver} components are tested against this area.
|
|
83
|
+
*
|
|
84
|
+
* **Mask system:** Both trigger and receiver have a `triggerMask` - they only interact
|
|
85
|
+
* when their masks have overlapping bits set. This allows selective triggering.
|
|
86
|
+
*
|
|
87
|
+
* **Debug:** Use `?debugspatialtrigger` URL parameter to visualize trigger zones.
|
|
88
|
+
*
|
|
89
|
+
* @example Create a pickup zone
|
|
90
|
+
* ```ts
|
|
91
|
+
* // On the pickup zone object
|
|
92
|
+
* const trigger = pickupZone.addComponent(SpatialTrigger);
|
|
93
|
+
* trigger.triggerMask = 1; // Layer 1 for pickups
|
|
94
|
+
*
|
|
95
|
+
* // On the player
|
|
96
|
+
* const receiver = player.addComponent(SpatialTriggerReceiver);
|
|
97
|
+
* receiver.triggerMask = 1; // Match the pickup layer
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* @summary Define a trigger zone that detects entering objects
|
|
57
101
|
* @category Interactivity
|
|
58
102
|
* @group Components
|
|
103
|
+
* @see {@link SpatialTriggerReceiver} for objects that respond to triggers
|
|
104
|
+
* @see {@link BoxHelperComponent} for the underlying box used to define the trigger area
|
|
105
|
+
* @link https://engine.needle.tools/samples/spatial-triggers/
|
|
59
106
|
*/
|
|
60
107
|
export declare class SpatialTrigger extends Behaviour {
|
|
61
108
|
/** Global registry of all active spatial triggers in the scene */
|
|
@@ -28,9 +28,32 @@ function testMask(mask1, mask2) {
|
|
|
28
28
|
/**
|
|
29
29
|
* Component that receives and responds to spatial events, like entering or exiting a trigger zone.
|
|
30
30
|
* Used in conjunction with {@link SpatialTrigger} to create interactive spatial events.
|
|
31
|
+
*
|
|
32
|
+
* Place this on objects that should react when entering trigger zones. The receiver checks
|
|
33
|
+
* against all active SpatialTriggers each frame and fires events when intersections change.
|
|
34
|
+
*
|
|
35
|
+
* Events can be connected via {@link EventList} in the editor or listened to in code.
|
|
36
|
+
*
|
|
37
|
+
* @example Listen to trigger events
|
|
38
|
+
* ```ts
|
|
39
|
+
* export class DoorTrigger extends Behaviour {
|
|
40
|
+
* @serializable(SpatialTriggerReceiver)
|
|
41
|
+
* receiver?: SpatialTriggerReceiver;
|
|
42
|
+
*
|
|
43
|
+
* start() {
|
|
44
|
+
* this.receiver?.onEnter?.addEventListener(() => {
|
|
45
|
+
* console.log("Player entered door zone");
|
|
46
|
+
* });
|
|
47
|
+
* }
|
|
48
|
+
* }
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
31
51
|
* @summary Receives spatial trigger events
|
|
32
52
|
* @category Interactivity
|
|
33
53
|
* @group Components
|
|
54
|
+
* @see {@link SpatialTrigger} for defining trigger zones
|
|
55
|
+
* @see {@link EventList} for event handling
|
|
56
|
+
* @link https://engine.needle.tools/samples/spatial-triggers/
|
|
34
57
|
*/
|
|
35
58
|
export class SpatialTriggerReceiver extends Behaviour {
|
|
36
59
|
/**
|
|
@@ -128,9 +151,33 @@ __decorate([
|
|
|
128
151
|
], SpatialTriggerReceiver.prototype, "onExit", void 0);
|
|
129
152
|
/**
|
|
130
153
|
* A spatial trigger component that detects objects within a box-shaped area.
|
|
131
|
-
* Used to trigger events when objects enter, stay in, or exit the defined area
|
|
154
|
+
* Used to trigger events when objects enter, stay in, or exit the defined area.
|
|
155
|
+
*
|
|
156
|
+
* The trigger area is defined by the GameObject's bounding box (uses {@link BoxHelperComponent}).
|
|
157
|
+
* Objects with {@link SpatialTriggerReceiver} components are tested against this area.
|
|
158
|
+
*
|
|
159
|
+
* **Mask system:** Both trigger and receiver have a `triggerMask` - they only interact
|
|
160
|
+
* when their masks have overlapping bits set. This allows selective triggering.
|
|
161
|
+
*
|
|
162
|
+
* **Debug:** Use `?debugspatialtrigger` URL parameter to visualize trigger zones.
|
|
163
|
+
*
|
|
164
|
+
* @example Create a pickup zone
|
|
165
|
+
* ```ts
|
|
166
|
+
* // On the pickup zone object
|
|
167
|
+
* const trigger = pickupZone.addComponent(SpatialTrigger);
|
|
168
|
+
* trigger.triggerMask = 1; // Layer 1 for pickups
|
|
169
|
+
*
|
|
170
|
+
* // On the player
|
|
171
|
+
* const receiver = player.addComponent(SpatialTriggerReceiver);
|
|
172
|
+
* receiver.triggerMask = 1; // Match the pickup layer
|
|
173
|
+
* ```
|
|
174
|
+
*
|
|
175
|
+
* @summary Define a trigger zone that detects entering objects
|
|
132
176
|
* @category Interactivity
|
|
133
177
|
* @group Components
|
|
178
|
+
* @see {@link SpatialTriggerReceiver} for objects that respond to triggers
|
|
179
|
+
* @see {@link BoxHelperComponent} for the underlying box used to define the trigger area
|
|
180
|
+
* @link https://engine.needle.tools/samples/spatial-triggers/
|
|
134
181
|
*/
|
|
135
182
|
export class SpatialTrigger extends Behaviour {
|
|
136
183
|
/** Global registry of all active spatial triggers in the scene */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpatialTrigger.js","sourceRoot":"","sources":["../../src/engine-components/SpatialTrigger.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,OAAO,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,KAAK,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC;AAE9C,+CAA+C;AAC/C,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;AAC5B,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;AAC5B;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,KAAK,EAAE,KAAK;IAC1B,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"SpatialTrigger.js","sourceRoot":"","sources":["../../src/engine-components/SpatialTrigger.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,14 +11,32 @@ export declare enum SpectatorMode {
|
|
|
11
11
|
ThirdPerson = 1
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* SpectatorCamera enables following and spectating other users in networked sessions.
|
|
15
|
+
* Switch between first-person (see what they see) and third-person (orbit around them) views.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* **Keyboard controls** (when `useKeys = true`):
|
|
18
|
+
* - `F` - Request all users to follow the local player
|
|
19
|
+
* - `ESC` - Stop spectating
|
|
20
|
+
*
|
|
21
|
+
* **Spectator modes:**
|
|
22
|
+
* - `FirstPerson` - View from the followed player's perspective
|
|
23
|
+
* - `ThirdPerson` - Freely orbit around the followed player
|
|
24
|
+
*
|
|
25
|
+
* **Debug:** Use `?debugspectator` URL parameter for logging.
|
|
26
|
+
*
|
|
27
|
+
* @example Start spectating a user
|
|
28
|
+
* ```ts
|
|
29
|
+
* const spectator = camera.getComponent(SpectatorCamera);
|
|
30
|
+
* spectator.follow(targetUserId);
|
|
31
|
+
* spectator.mode = SpectatorMode.ThirdPerson;
|
|
32
|
+
* ```
|
|
18
33
|
*
|
|
19
34
|
* @summary Spectator camera for following other users
|
|
20
35
|
* @category Networking
|
|
21
36
|
* @group Components
|
|
37
|
+
* @see {@link SpectatorMode} for view options
|
|
38
|
+
* @see {@link SyncedRoom} for networked sessions
|
|
39
|
+
* @see {@link OrbitControls} for third-person orbit
|
|
22
40
|
*/
|
|
23
41
|
export declare class SpectatorCamera extends Behaviour {
|
|
24
42
|
/** Reference to the Camera component on this GameObject */
|
|
@@ -30,14 +30,32 @@ export var SpectatorMode;
|
|
|
30
30
|
})(SpectatorMode || (SpectatorMode = {}));
|
|
31
31
|
const debug = getParam("debugspectator");
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
33
|
+
* SpectatorCamera enables following and spectating other users in networked sessions.
|
|
34
|
+
* Switch between first-person (see what they see) and third-person (orbit around them) views.
|
|
35
35
|
*
|
|
36
|
-
*
|
|
36
|
+
* **Keyboard controls** (when `useKeys = true`):
|
|
37
|
+
* - `F` - Request all users to follow the local player
|
|
38
|
+
* - `ESC` - Stop spectating
|
|
39
|
+
*
|
|
40
|
+
* **Spectator modes:**
|
|
41
|
+
* - `FirstPerson` - View from the followed player's perspective
|
|
42
|
+
* - `ThirdPerson` - Freely orbit around the followed player
|
|
43
|
+
*
|
|
44
|
+
* **Debug:** Use `?debugspectator` URL parameter for logging.
|
|
45
|
+
*
|
|
46
|
+
* @example Start spectating a user
|
|
47
|
+
* ```ts
|
|
48
|
+
* const spectator = camera.getComponent(SpectatorCamera);
|
|
49
|
+
* spectator.follow(targetUserId);
|
|
50
|
+
* spectator.mode = SpectatorMode.ThirdPerson;
|
|
51
|
+
* ```
|
|
37
52
|
*
|
|
38
53
|
* @summary Spectator camera for following other users
|
|
39
54
|
* @category Networking
|
|
40
55
|
* @group Components
|
|
56
|
+
* @see {@link SpectatorMode} for view options
|
|
57
|
+
* @see {@link SyncedRoom} for networked sessions
|
|
58
|
+
* @see {@link OrbitControls} for third-person orbit
|
|
41
59
|
*/
|
|
42
60
|
export class SpectatorCamera extends Behaviour {
|
|
43
61
|
/** Reference to the Camera component on this GameObject */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpectatorCamera.js","sourceRoot":"","sources":["../../src/engine-components/SpectatorCamera.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpectatorCamera.js","sourceRoot":"","sources":["../../src/engine-components/SpectatorCamera.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Behaviour } from "./Component.js";
|
|
2
2
|
/**
|
|
3
|
-
* SyncedRoom is a behaviour that will attempt to join a networked room based on the URL parameters or a random room.
|
|
3
|
+
* [SyncedRoom](https://engine.needle.tools/docs/api/SyncedRoom) is a behaviour that will attempt to join a networked room based on the URL parameters or a random room.
|
|
4
4
|
* It will also create a button in the menu to join or leave the room.
|
|
5
5
|
* You can also join a networked room by calling the core methods like `this.context.connection.joinRoom("roomName")`.
|
|
6
6
|
*
|
|
@@ -22,9 +22,15 @@ import { Behaviour } from "./Component.js";
|
|
|
22
22
|
* myObject.addComponent(SyncedRoom, { joinRandomRoom: true, roomPrefix: "myApp_" });
|
|
23
23
|
* ```
|
|
24
24
|
*
|
|
25
|
+
* **Debug:** Use `?debugsyncedroom` URL parameter for logging.
|
|
26
|
+
*
|
|
25
27
|
* @summary Joins a networked room based on URL parameters or a random room
|
|
26
28
|
* @category Networking
|
|
27
29
|
* @group Components
|
|
30
|
+
* @see {@link SyncedTransform} for synchronizing object transforms
|
|
31
|
+
* @see {@link Voip} for voice communication in rooms
|
|
32
|
+
* @see {@link ScreenCapture} for screen/video sharing
|
|
33
|
+
* @link https://engine.needle.tools/docs/networking.html
|
|
28
34
|
*/
|
|
29
35
|
export declare class SyncedRoom extends Behaviour {
|
|
30
36
|
/**
|
|
@@ -14,7 +14,7 @@ import { Behaviour } from "./Component.js";
|
|
|
14
14
|
const viewParamName = "view";
|
|
15
15
|
const debug = utils.getParam("debugsyncedroom");
|
|
16
16
|
/**
|
|
17
|
-
* SyncedRoom is a behaviour that will attempt to join a networked room based on the URL parameters or a random room.
|
|
17
|
+
* [SyncedRoom](https://engine.needle.tools/docs/api/SyncedRoom) is a behaviour that will attempt to join a networked room based on the URL parameters or a random room.
|
|
18
18
|
* It will also create a button in the menu to join or leave the room.
|
|
19
19
|
* You can also join a networked room by calling the core methods like `this.context.connection.joinRoom("roomName")`.
|
|
20
20
|
*
|
|
@@ -36,9 +36,15 @@ const debug = utils.getParam("debugsyncedroom");
|
|
|
36
36
|
* myObject.addComponent(SyncedRoom, { joinRandomRoom: true, roomPrefix: "myApp_" });
|
|
37
37
|
* ```
|
|
38
38
|
*
|
|
39
|
+
* **Debug:** Use `?debugsyncedroom` URL parameter for logging.
|
|
40
|
+
*
|
|
39
41
|
* @summary Joins a networked room based on URL parameters or a random room
|
|
40
42
|
* @category Networking
|
|
41
43
|
* @group Components
|
|
44
|
+
* @see {@link SyncedTransform} for synchronizing object transforms
|
|
45
|
+
* @see {@link Voip} for voice communication in rooms
|
|
46
|
+
* @see {@link ScreenCapture} for screen/video sharing
|
|
47
|
+
* @link https://engine.needle.tools/docs/networking.html
|
|
42
48
|
*/
|
|
43
49
|
export class SyncedRoom extends Behaviour {
|
|
44
50
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncedRoom.js","sourceRoot":"","sources":["../../src/engine-components/SyncedRoom.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SyncedRoom.js","sourceRoot":"","sources":["../../src/engine-components/SyncedRoom.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,12 +9,48 @@ export declare const SyncedTransformIdentifier = "STRS";
|
|
|
9
9
|
*/
|
|
10
10
|
export declare function createTransformModel(guid: string, b: Behaviour, fast?: boolean): Uint8Array;
|
|
11
11
|
/**
|
|
12
|
-
* SyncedTransform synchronizes
|
|
13
|
-
*
|
|
12
|
+
* SyncedTransform synchronizes position and rotation of a GameObject across the network.
|
|
13
|
+
* When users interact with an object (e.g., via {@link DragControls}), they automatically
|
|
14
|
+
* take ownership and their changes are broadcast to other users.
|
|
15
|
+
*
|
|
16
|
+
* **Features:**
|
|
17
|
+
* - Automatic ownership transfer when interacting
|
|
18
|
+
* - Smooth interpolation of remote updates
|
|
19
|
+
* - Physics integration (can override kinematic state)
|
|
20
|
+
* - Fast mode for rapidly moving objects
|
|
21
|
+
*
|
|
22
|
+
* **Requirements:**
|
|
23
|
+
* - Active network connection via {@link SyncedRoom}
|
|
24
|
+
* - Objects must have unique GUIDs (set automatically in Unity/Blender export)
|
|
25
|
+
*
|
|
26
|
+
* **Ownership:**
|
|
27
|
+
* This component uses {@link OwnershipModel} internally to manage object ownership.
|
|
28
|
+
* Only the client that owns an object can send transform updates. Use `requestOwnership()`
|
|
29
|
+
* before modifying the transform, or check `hasOwnership()` to see if you can modify it.
|
|
30
|
+
*
|
|
31
|
+
* **Debug:** Use `?debugsync` URL parameter for logging.
|
|
32
|
+
*
|
|
33
|
+
* @example Basic networked object
|
|
34
|
+
* ```ts
|
|
35
|
+
* // Add to any object you want synced
|
|
36
|
+
* const sync = myObject.addComponent(SyncedTransform);
|
|
37
|
+
* sync.fastMode = true; // For fast-moving objects
|
|
38
|
+
*
|
|
39
|
+
* // Request ownership before modifying
|
|
40
|
+
* sync.requestOwnership();
|
|
41
|
+
* myObject.position.x += 1;
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* - Example: https://engine.needle.tools/samples/collaborative-sandbox
|
|
14
45
|
*
|
|
15
46
|
* @summary Synchronizes object transform over the network with ownership management
|
|
16
47
|
* @category Networking
|
|
17
48
|
* @group Components
|
|
49
|
+
* @see {@link SyncedRoom} for room/session management
|
|
50
|
+
* @see {@link OwnershipModel} for ownership management details
|
|
51
|
+
* @see {@link DragControls} for interactive dragging with sync
|
|
52
|
+
* @see {@link Duplicatable} for networked object spawning
|
|
53
|
+
* @link https://engine.needle.tools/docs/networking.html
|
|
18
54
|
*/
|
|
19
55
|
export declare class SyncedTransform extends Behaviour {
|
|
20
56
|
/** When true, overrides physics behavior when this object is owned by the local user */
|
|
@@ -39,22 +75,35 @@ export declare class SyncedTransform extends Behaviour {
|
|
|
39
75
|
/**
|
|
40
76
|
* Requests ownership of this object on the network.
|
|
41
77
|
* You need to be connected to a room for this to work.
|
|
78
|
+
* Call this before modifying the object's transform to ensure your changes are synchronized.
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```ts
|
|
82
|
+
* // Request ownership before modifying
|
|
83
|
+
* syncedTransform.requestOwnership();
|
|
84
|
+
* this.gameObject.position.y += 1;
|
|
85
|
+
* ```
|
|
86
|
+
* @see {@link OwnershipModel.requestOwnership} for more details
|
|
42
87
|
*/
|
|
43
88
|
requestOwnership(): void;
|
|
44
89
|
/**
|
|
45
90
|
* Free ownership of this object on the network.
|
|
46
91
|
* You need to be connected to a room for this to work.
|
|
47
92
|
* This will also be called automatically when the component is disabled.
|
|
93
|
+
* Call this when you're done modifying an object to allow other users to interact with it.
|
|
94
|
+
* @see {@link OwnershipModel.freeOwnership} for more details
|
|
48
95
|
*/
|
|
49
96
|
freeOwnership(): void;
|
|
50
97
|
/**
|
|
51
|
-
* Checks if this client has ownership of the object
|
|
52
|
-
* @returns true if this client has ownership, false if not, undefined if ownership state is unknown
|
|
98
|
+
* Checks if this client has ownership of the object.
|
|
99
|
+
* @returns `true` if this client has ownership, `false` if not, `undefined` if ownership state is unknown
|
|
100
|
+
* @see {@link OwnershipModel.hasOwnership} for more details
|
|
53
101
|
*/
|
|
54
102
|
hasOwnership(): boolean | undefined;
|
|
55
103
|
/**
|
|
56
|
-
* Checks if the object is owned by any client
|
|
57
|
-
* @returns true if the object is owned, false if not, undefined if ownership state is unknown
|
|
104
|
+
* Checks if the object is owned by any client (local or remote).
|
|
105
|
+
* @returns `true` if the object is owned, `false` if not, `undefined` if ownership state is unknown
|
|
106
|
+
* @see {@link OwnershipModel.isOwned} for more details
|
|
58
107
|
*/
|
|
59
108
|
isOwned(): boolean | undefined;
|
|
60
109
|
private joinedRoomCallback;
|
|
@@ -49,12 +49,48 @@ onUpdate((ctx) => {
|
|
|
49
49
|
console.log("Sync Transform Fast Interval", FAST_INTERVAL);
|
|
50
50
|
});
|
|
51
51
|
/**
|
|
52
|
-
* SyncedTransform synchronizes
|
|
53
|
-
*
|
|
52
|
+
* SyncedTransform synchronizes position and rotation of a GameObject across the network.
|
|
53
|
+
* When users interact with an object (e.g., via {@link DragControls}), they automatically
|
|
54
|
+
* take ownership and their changes are broadcast to other users.
|
|
55
|
+
*
|
|
56
|
+
* **Features:**
|
|
57
|
+
* - Automatic ownership transfer when interacting
|
|
58
|
+
* - Smooth interpolation of remote updates
|
|
59
|
+
* - Physics integration (can override kinematic state)
|
|
60
|
+
* - Fast mode for rapidly moving objects
|
|
61
|
+
*
|
|
62
|
+
* **Requirements:**
|
|
63
|
+
* - Active network connection via {@link SyncedRoom}
|
|
64
|
+
* - Objects must have unique GUIDs (set automatically in Unity/Blender export)
|
|
65
|
+
*
|
|
66
|
+
* **Ownership:**
|
|
67
|
+
* This component uses {@link OwnershipModel} internally to manage object ownership.
|
|
68
|
+
* Only the client that owns an object can send transform updates. Use `requestOwnership()`
|
|
69
|
+
* before modifying the transform, or check `hasOwnership()` to see if you can modify it.
|
|
70
|
+
*
|
|
71
|
+
* **Debug:** Use `?debugsync` URL parameter for logging.
|
|
72
|
+
*
|
|
73
|
+
* @example Basic networked object
|
|
74
|
+
* ```ts
|
|
75
|
+
* // Add to any object you want synced
|
|
76
|
+
* const sync = myObject.addComponent(SyncedTransform);
|
|
77
|
+
* sync.fastMode = true; // For fast-moving objects
|
|
78
|
+
*
|
|
79
|
+
* // Request ownership before modifying
|
|
80
|
+
* sync.requestOwnership();
|
|
81
|
+
* myObject.position.x += 1;
|
|
82
|
+
* ```
|
|
83
|
+
*
|
|
84
|
+
* - Example: https://engine.needle.tools/samples/collaborative-sandbox
|
|
54
85
|
*
|
|
55
86
|
* @summary Synchronizes object transform over the network with ownership management
|
|
56
87
|
* @category Networking
|
|
57
88
|
* @group Components
|
|
89
|
+
* @see {@link SyncedRoom} for room/session management
|
|
90
|
+
* @see {@link OwnershipModel} for ownership management details
|
|
91
|
+
* @see {@link DragControls} for interactive dragging with sync
|
|
92
|
+
* @see {@link Duplicatable} for networked object spawning
|
|
93
|
+
* @link https://engine.needle.tools/docs/networking.html
|
|
58
94
|
*/
|
|
59
95
|
export class SyncedTransform extends Behaviour {
|
|
60
96
|
// public autoOwnership: boolean = true;
|
|
@@ -81,6 +117,15 @@ export class SyncedTransform extends Behaviour {
|
|
|
81
117
|
/**
|
|
82
118
|
* Requests ownership of this object on the network.
|
|
83
119
|
* You need to be connected to a room for this to work.
|
|
120
|
+
* Call this before modifying the object's transform to ensure your changes are synchronized.
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* ```ts
|
|
124
|
+
* // Request ownership before modifying
|
|
125
|
+
* syncedTransform.requestOwnership();
|
|
126
|
+
* this.gameObject.position.y += 1;
|
|
127
|
+
* ```
|
|
128
|
+
* @see {@link OwnershipModel.requestOwnership} for more details
|
|
84
129
|
*/
|
|
85
130
|
requestOwnership() {
|
|
86
131
|
if (debug)
|
|
@@ -96,20 +141,24 @@ export class SyncedTransform extends Behaviour {
|
|
|
96
141
|
* Free ownership of this object on the network.
|
|
97
142
|
* You need to be connected to a room for this to work.
|
|
98
143
|
* This will also be called automatically when the component is disabled.
|
|
144
|
+
* Call this when you're done modifying an object to allow other users to interact with it.
|
|
145
|
+
* @see {@link OwnershipModel.freeOwnership} for more details
|
|
99
146
|
*/
|
|
100
147
|
freeOwnership() {
|
|
101
148
|
this._model?.freeOwnership();
|
|
102
149
|
}
|
|
103
150
|
/**
|
|
104
|
-
* Checks if this client has ownership of the object
|
|
105
|
-
* @returns true if this client has ownership, false if not, undefined if ownership state is unknown
|
|
151
|
+
* Checks if this client has ownership of the object.
|
|
152
|
+
* @returns `true` if this client has ownership, `false` if not, `undefined` if ownership state is unknown
|
|
153
|
+
* @see {@link OwnershipModel.hasOwnership} for more details
|
|
106
154
|
*/
|
|
107
155
|
hasOwnership() {
|
|
108
156
|
return this._model?.hasOwnership ?? undefined;
|
|
109
157
|
}
|
|
110
158
|
/**
|
|
111
|
-
* Checks if the object is owned by any client
|
|
112
|
-
* @returns true if the object is owned, false if not, undefined if ownership state is unknown
|
|
159
|
+
* Checks if the object is owned by any client (local or remote).
|
|
160
|
+
* @returns `true` if the object is owned, `false` if not, `undefined` if ownership state is unknown
|
|
161
|
+
* @see {@link OwnershipModel.isOwned} for more details
|
|
113
162
|
*/
|
|
114
163
|
isOwned() {
|
|
115
164
|
return this._model?.isOwned;
|