@needle-tools/engine 5.1.0-canary.db0c38f → 5.1.0-canary.e6680fa
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/.needle/generated/needle-bindings.gen.d.ts +5 -0
- package/CHANGELOG.md +133 -1
- package/SKILL.md +4 -1
- package/components.needle.json +1 -1
- package/dist/needle-engine.bundle-Bl_hyH5G.umd.cjs +1734 -0
- package/dist/needle-engine.bundle-Cduc1gj6.min.js +1734 -0
- package/dist/{needle-engine.bundle-B29kieh0.js → needle-engine.bundle-DNcqT8nJ.js} +13770 -12741
- package/dist/needle-engine.d.ts +1628 -402
- package/dist/needle-engine.js +591 -586
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/three.js +1 -0
- package/dist/three.min.js +21 -21
- package/dist/three.umd.cjs +16 -16
- package/lib/engine/api.d.ts +9 -2
- package/lib/engine/api.js +7 -1
- package/lib/engine/api.js.map +1 -1
- package/lib/engine/codegen/register_types.js +10 -18
- package/lib/engine/codegen/register_types.js.map +1 -1
- package/lib/engine/debug/debug_spatial_console.d.ts +2 -0
- package/lib/engine/debug/debug_spatial_console.js +10 -7
- package/lib/engine/debug/debug_spatial_console.js.map +1 -1
- package/lib/engine/engine_addressables.d.ts +2 -0
- package/lib/engine/engine_addressables.js +6 -3
- package/lib/engine/engine_addressables.js.map +1 -1
- package/lib/engine/engine_audio.d.ts +68 -0
- package/lib/engine/engine_audio.js +172 -0
- package/lib/engine/engine_audio.js.map +1 -1
- package/lib/engine/engine_camera.fit.js +16 -4
- package/lib/engine/engine_camera.fit.js.map +1 -1
- package/lib/engine/engine_components.js +1 -1
- package/lib/engine/engine_components.js.map +1 -1
- package/lib/engine/engine_context.d.ts +41 -27
- package/lib/engine/engine_context.js +71 -30
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_context_eventbus.d.ts +47 -0
- package/lib/engine/engine_context_eventbus.js +47 -0
- package/lib/engine/engine_context_eventbus.js.map +1 -0
- package/lib/engine/engine_disposable.d.ts +172 -0
- package/lib/engine/engine_disposable.js +136 -0
- package/lib/engine/engine_disposable.js.map +1 -0
- package/lib/engine/engine_gameobject.d.ts +1 -10
- package/lib/engine/engine_gameobject.js +22 -120
- package/lib/engine/engine_gameobject.js.map +1 -1
- package/lib/engine/engine_gltf_builtin_components.js +7 -69
- package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
- package/lib/engine/engine_init.js +16 -1
- package/lib/engine/engine_init.js.map +1 -1
- package/lib/engine/engine_input.d.ts +24 -5
- package/lib/engine/engine_input.js +3 -2
- package/lib/engine/engine_input.js.map +1 -1
- package/lib/engine/engine_instantiate_resolve.d.ts +42 -0
- package/lib/engine/engine_instantiate_resolve.js +372 -0
- package/lib/engine/engine_instantiate_resolve.js.map +1 -0
- package/lib/engine/engine_license.d.ts +8 -6
- package/lib/engine/engine_license.js +195 -59
- package/lib/engine/engine_license.js.map +1 -1
- package/lib/engine/engine_lifecycle_functions_internal.js +5 -0
- package/lib/engine/engine_lifecycle_functions_internal.js.map +1 -1
- package/lib/engine/engine_mainloop_utils.js +7 -4
- package/lib/engine/engine_mainloop_utils.js.map +1 -1
- package/lib/engine/engine_networking.d.ts +51 -37
- package/lib/engine/engine_networking.js +132 -82
- package/lib/engine/engine_networking.js.map +1 -1
- package/lib/engine/engine_networking.transport.websocket.d.ts +15 -0
- package/lib/engine/engine_networking.transport.websocket.js +38 -0
- package/lib/engine/engine_networking.transport.websocket.js.map +1 -0
- package/lib/engine/engine_networking_blob.js +4 -4
- package/lib/engine/engine_networking_blob.js.map +1 -1
- package/lib/engine/engine_networking_instantiate.js +2 -2
- package/lib/engine/engine_networking_instantiate.js.map +1 -1
- package/lib/engine/engine_networking_types.d.ts +39 -1
- package/lib/engine/engine_networking_types.js +7 -0
- package/lib/engine/engine_networking_types.js.map +1 -1
- package/lib/engine/engine_physics_rapier.d.ts +21 -3
- package/lib/engine/engine_physics_rapier.js +94 -25
- package/lib/engine/engine_physics_rapier.js.map +1 -1
- package/lib/engine/engine_pmrem.js +53 -5
- package/lib/engine/engine_pmrem.js.map +1 -1
- package/lib/engine/engine_scenedata.d.ts +13 -17
- package/lib/engine/engine_scenedata.js +58 -31
- package/lib/engine/engine_scenedata.js.map +1 -1
- package/lib/engine/engine_serialization_builtin_serializer.d.ts +10 -16
- package/lib/engine/engine_serialization_builtin_serializer.js +56 -46
- package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
- package/lib/engine/engine_serialization_core.d.ts +1 -0
- package/lib/engine/engine_serialization_core.js +7 -0
- package/lib/engine/engine_serialization_core.js.map +1 -1
- package/lib/engine/engine_ssr.d.ts +2 -0
- package/lib/engine/engine_ssr.js +20 -0
- package/lib/engine/engine_ssr.js.map +1 -1
- package/lib/engine/engine_types.d.ts +31 -11
- package/lib/engine/engine_types.js +1 -1
- package/lib/engine/engine_types.js.map +1 -1
- package/lib/engine/engine_util_decorator.js +7 -2
- package/lib/engine/engine_util_decorator.js.map +1 -1
- package/lib/engine/engine_utils.d.ts +1 -1
- package/lib/engine/engine_utils.js +19 -5
- package/lib/engine/engine_utils.js.map +1 -1
- package/lib/engine/engine_utils_format.js +20 -14
- package/lib/engine/engine_utils_format.js.map +1 -1
- package/lib/engine/engine_utils_qrcode.js +2 -2
- package/lib/engine/engine_utils_qrcode.js.map +1 -1
- package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
- package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js.map +1 -1
- package/lib/engine/webcomponents/jsx.d.ts +51 -0
- package/lib/engine/webcomponents/logo-element.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +3 -4
- package/lib/engine/webcomponents/needle menu/needle-menu.js +6 -6
- package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
- package/lib/engine/webcomponents/needle-button.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.d.ts +10 -4
- package/lib/engine/webcomponents/needle-engine.js +3 -3
- package/lib/engine/webcomponents/needle-engine.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
- package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
- package/lib/engine/xr/NeedleXRSession.d.ts +3 -2
- package/lib/engine/xr/NeedleXRSession.js +50 -14
- package/lib/engine/xr/NeedleXRSession.js.map +1 -1
- package/lib/engine/xr/TempXRContext.js +2 -2
- package/lib/engine/xr/TempXRContext.js.map +1 -1
- package/lib/engine/xr/events.d.ts +1 -1
- package/lib/engine/xr/events.js.map +1 -1
- package/lib/engine-components/Animation.js +17 -16
- package/lib/engine-components/Animation.js.map +1 -1
- package/lib/engine-components/AnimationBuilder.d.ts +158 -0
- package/lib/engine-components/AnimationBuilder.js +305 -0
- package/lib/engine-components/AnimationBuilder.js.map +1 -0
- package/lib/engine-components/Animator.d.ts +6 -0
- package/lib/engine-components/Animator.js +23 -13
- package/lib/engine-components/Animator.js.map +1 -1
- package/lib/engine-components/AnimatorController.builder.d.ts +191 -0
- package/lib/engine-components/AnimatorController.builder.js +263 -0
- package/lib/engine-components/AnimatorController.builder.js.map +1 -0
- package/lib/engine-components/AnimatorController.d.ts +4 -119
- package/lib/engine-components/AnimatorController.js +37 -233
- package/lib/engine-components/AnimatorController.js.map +1 -1
- package/lib/engine-components/AudioSource.d.ts +19 -3
- package/lib/engine-components/AudioSource.js +121 -68
- package/lib/engine-components/AudioSource.js.map +1 -1
- package/lib/engine-components/Camera.d.ts +6 -1
- package/lib/engine-components/Camera.js +16 -3
- package/lib/engine-components/Camera.js.map +1 -1
- package/lib/engine-components/CameraUtils.js +14 -6
- package/lib/engine-components/CameraUtils.js.map +1 -1
- package/lib/engine-components/Collider.d.ts +18 -9
- package/lib/engine-components/Collider.js +61 -14
- package/lib/engine-components/Collider.js.map +1 -1
- package/lib/engine-components/Component.d.ts +72 -9
- package/lib/engine-components/Component.js +114 -10
- package/lib/engine-components/Component.js.map +1 -1
- package/lib/engine-components/ContactShadows.d.ts +1 -0
- package/lib/engine-components/ContactShadows.js +14 -1
- package/lib/engine-components/ContactShadows.js.map +1 -1
- package/lib/engine-components/DragControls.d.ts +7 -0
- package/lib/engine-components/DragControls.js +19 -7
- package/lib/engine-components/DragControls.js.map +1 -1
- package/lib/engine-components/DropListener.js +4 -0
- package/lib/engine-components/DropListener.js.map +1 -1
- package/lib/engine-components/EventList.d.ts +31 -9
- package/lib/engine-components/EventList.js +37 -76
- package/lib/engine-components/EventList.js.map +1 -1
- package/lib/engine-components/Joints.d.ts +4 -2
- package/lib/engine-components/Joints.js +19 -3
- package/lib/engine-components/Joints.js.map +1 -1
- package/lib/engine-components/Light.d.ts +6 -8
- package/lib/engine-components/Light.js +48 -27
- package/lib/engine-components/Light.js.map +1 -1
- package/lib/engine-components/Networking.d.ts +1 -1
- package/lib/engine-components/Networking.js +1 -1
- package/lib/engine-components/OrbitControls.d.ts +1 -2
- package/lib/engine-components/OrbitControls.js +37 -14
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/ReflectionProbe.js +2 -0
- package/lib/engine-components/ReflectionProbe.js.map +1 -1
- package/lib/engine-components/RigidBody.d.ts +12 -4
- package/lib/engine-components/RigidBody.js +18 -4
- package/lib/engine-components/RigidBody.js.map +1 -1
- package/lib/engine-components/SceneSwitcher.js +3 -0
- package/lib/engine-components/SceneSwitcher.js.map +1 -1
- package/lib/engine-components/SeeThrough.js +2 -2
- package/lib/engine-components/SeeThrough.js.map +1 -1
- package/lib/engine-components/VideoPlayer.d.ts +8 -2
- package/lib/engine-components/VideoPlayer.js +42 -19
- package/lib/engine-components/VideoPlayer.js.map +1 -1
- package/lib/engine-components/Voip.d.ts +16 -7
- package/lib/engine-components/Voip.js +90 -53
- package/lib/engine-components/Voip.js.map +1 -1
- package/lib/engine-components/api.d.ts +3 -1
- package/lib/engine-components/api.js +3 -1
- package/lib/engine-components/api.js.map +1 -1
- package/lib/engine-components/codegen/components.d.ts +7 -13
- package/lib/engine-components/codegen/components.js +7 -13
- package/lib/engine-components/codegen/components.js.map +1 -1
- package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Tonemapping.utils.d.ts +1 -1
- package/lib/engine-components/postprocessing/VolumeParameter.d.ts +2 -0
- package/lib/engine-components/postprocessing/VolumeParameter.js +4 -1
- package/lib/engine-components/postprocessing/VolumeParameter.js.map +1 -1
- package/lib/engine-components/timeline/PlayableDirector.d.ts +21 -11
- package/lib/engine-components/timeline/PlayableDirector.js +75 -67
- package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
- package/lib/engine-components/timeline/SignalAsset.d.ts +3 -1
- package/lib/engine-components/timeline/SignalAsset.js +1 -0
- package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
- package/lib/engine-components/timeline/TimelineBuilder.d.ts +413 -0
- package/lib/engine-components/timeline/TimelineBuilder.js +506 -0
- package/lib/engine-components/timeline/TimelineBuilder.js.map +1 -0
- package/lib/engine-components/timeline/TimelineModels.d.ts +2 -1
- package/lib/engine-components/timeline/TimelineModels.js +3 -0
- package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
- package/lib/engine-components/timeline/TimelineTracks.d.ts +37 -6
- package/lib/engine-components/timeline/TimelineTracks.js +92 -26
- package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
- package/lib/engine-components/timeline/index.d.ts +2 -1
- package/lib/engine-components/timeline/index.js +2 -0
- package/lib/engine-components/timeline/index.js.map +1 -1
- package/lib/engine-components/ui/Canvas.d.ts +1 -1
- package/lib/engine-components/ui/Canvas.js +2 -8
- package/lib/engine-components/ui/Canvas.js.map +1 -1
- package/lib/engine-components/ui/Text.d.ts +1 -0
- package/lib/engine-components/ui/Text.js +10 -7
- package/lib/engine-components/ui/Text.js.map +1 -1
- package/lib/engine-components/web/CursorFollow.d.ts +0 -1
- package/lib/engine-components/web/CursorFollow.js +21 -13
- package/lib/engine-components/web/CursorFollow.js.map +1 -1
- package/lib/engine-components/webxr/WebXRImageTracking.d.ts +62 -1
- package/lib/engine-components/webxr/WebXRImageTracking.js +59 -2
- package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
- package/lib/needle-engine.d.ts +2 -0
- package/lib/needle-engine.js +2 -0
- package/lib/needle-engine.js.map +1 -1
- package/package.json +4 -84
- package/plugins/common/cloud.js +6 -1
- package/plugins/common/license.js +55 -12
- package/plugins/common/worker.js +9 -4
- package/plugins/dts-generator/dts.codegen.js +255 -50
- package/plugins/dts-generator/dts.scan.js +37 -9
- package/plugins/dts-generator/dts.writer.js +1 -1
- package/plugins/dts-generator/glb.discovery.js +140 -23
- package/plugins/dts-generator/glb.extractor.js +48 -8
- package/plugins/dts-generator/glb.reader.js +80 -27
- package/plugins/dts-generator/index.js +1 -1
- package/plugins/types/needle-bindings.d.ts +25 -14
- package/plugins/types/userconfig.d.ts +16 -1
- package/plugins/vite/asap.js +18 -9
- package/plugins/vite/build-pipeline.js +57 -20
- package/plugins/vite/dependencies.js +29 -10
- package/plugins/vite/dependency-watcher.d.ts +2 -2
- package/plugins/vite/dependency-watcher.js +5 -6
- package/plugins/vite/drop.d.ts +2 -2
- package/plugins/vite/drop.js +3 -4
- package/plugins/vite/dts-generator.d.ts +2 -2
- package/plugins/vite/dts-generator.js +43 -9
- package/plugins/vite/editor-connection.js +3 -3
- package/plugins/vite/index.d.ts +9 -3
- package/plugins/vite/index.js +23 -10
- package/plugins/vite/license.js +42 -7
- package/plugins/vite/local-files-core.js +3 -3
- package/plugins/vite/local-files-utils.d.ts +3 -1
- package/plugins/vite/local-files-utils.js +29 -5
- package/plugins/vite/meta.js +4 -2
- package/plugins/vite/poster.d.ts +2 -2
- package/plugins/vite/poster.js +3 -5
- package/plugins/vite/reload.d.ts +2 -2
- package/plugins/vite/reload.js +23 -23
- package/plugins/vite/server.js +2 -1
- package/src/engine/api.ts +12 -2
- package/src/engine/codegen/register_types.ts +10 -18
- package/src/engine/debug/debug_spatial_console.ts +10 -7
- package/src/engine/engine_addressables.ts +6 -3
- package/src/engine/engine_audio.ts +184 -0
- package/src/engine/engine_camera.fit.ts +15 -4
- package/src/engine/engine_components.ts +1 -1
- package/src/engine/engine_context.ts +85 -38
- package/src/engine/engine_context_eventbus.ts +73 -0
- package/src/engine/engine_disposable.ts +214 -0
- package/src/engine/engine_gameobject.ts +54 -159
- package/src/engine/engine_gltf_builtin_components.ts +7 -76
- package/src/engine/engine_init.ts +15 -1
- package/src/engine/engine_input.ts +28 -7
- package/src/engine/engine_instantiate_resolve.ts +407 -0
- package/src/engine/engine_license.ts +209 -61
- package/src/engine/engine_lifecycle_functions_internal.ts +7 -0
- package/src/engine/engine_mainloop_utils.ts +7 -4
- package/src/engine/engine_networking.transport.websocket.ts +45 -0
- package/src/engine/engine_networking.ts +161 -137
- package/src/engine/engine_networking_blob.ts +4 -4
- package/src/engine/engine_networking_instantiate.ts +2 -2
- package/src/engine/engine_networking_types.ts +41 -1
- package/src/engine/engine_physics_rapier.ts +102 -33
- package/src/engine/engine_pmrem.ts +56 -6
- package/src/engine/engine_scenedata.ts +56 -30
- package/src/engine/engine_serialization_builtin_serializer.ts +64 -52
- package/src/engine/engine_serialization_core.ts +9 -0
- package/src/engine/engine_ssr.ts +29 -3
- package/src/engine/engine_types.ts +48 -27
- package/src/engine/engine_util_decorator.ts +7 -2
- package/src/engine/engine_utils.ts +16 -5
- package/src/engine/engine_utils_format.ts +20 -14
- package/src/engine/engine_utils_qrcode.ts +2 -2
- package/src/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
- package/src/engine/webcomponents/jsx.d.ts +51 -0
- package/src/engine/webcomponents/logo-element.ts +1 -0
- package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
- package/src/engine/webcomponents/needle menu/needle-menu.ts +8 -7
- package/src/engine/webcomponents/needle-button.ts +1 -0
- package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
- package/src/engine/webcomponents/needle-engine.ts +13 -6
- package/src/engine/xr/NeedleXRSession.ts +48 -13
- package/src/engine/xr/TempXRContext.ts +2 -2
- package/src/engine/xr/events.ts +1 -1
- package/src/engine-components/Animation.ts +19 -16
- package/src/engine-components/AnimationBuilder.ts +472 -0
- package/src/engine-components/Animator.ts +24 -12
- package/src/engine-components/AnimatorController.builder.ts +387 -0
- package/src/engine-components/AnimatorController.ts +24 -292
- package/src/engine-components/AudioSource.ts +130 -79
- package/src/engine-components/Camera.ts +16 -3
- package/src/engine-components/CameraUtils.ts +12 -5
- package/src/engine-components/Collider.ts +66 -18
- package/src/engine-components/Component.ts +118 -20
- package/src/engine-components/ContactShadows.ts +15 -1
- package/src/engine-components/DragControls.ts +18 -11
- package/src/engine-components/DropListener.ts +4 -0
- package/src/engine-components/EventList.ts +45 -83
- package/src/engine-components/Joints.ts +20 -4
- package/src/engine-components/Light.ts +49 -27
- package/src/engine-components/Networking.ts +1 -1
- package/src/engine-components/OrbitControls.ts +42 -16
- package/src/engine-components/ReflectionProbe.ts +2 -0
- package/src/engine-components/RigidBody.ts +18 -4
- package/src/engine-components/SceneSwitcher.ts +3 -0
- package/src/engine-components/SeeThrough.ts +2 -2
- package/src/engine-components/VideoPlayer.ts +40 -17
- package/src/engine-components/Voip.ts +88 -53
- package/src/engine-components/api.ts +3 -1
- package/src/engine-components/codegen/components.ts +7 -13
- package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
- package/src/engine-components/postprocessing/VolumeParameter.ts +4 -1
- package/src/engine-components/timeline/PlayableDirector.ts +83 -81
- package/src/engine-components/timeline/SignalAsset.ts +4 -1
- package/src/engine-components/timeline/TimelineBuilder.ts +824 -0
- package/src/engine-components/timeline/TimelineModels.ts +5 -1
- package/src/engine-components/timeline/TimelineTracks.ts +96 -27
- package/src/engine-components/timeline/index.ts +2 -1
- package/src/engine-components/ui/Canvas.ts +2 -8
- package/src/engine-components/ui/Text.ts +12 -8
- package/src/engine-components/web/CursorFollow.ts +21 -14
- package/src/engine-components/webxr/WebXRImageTracking.ts +79 -7
- package/src/needle-engine.ts +3 -0
- package/dist/needle-engine.bundle-Dq0Ly8fW.umd.cjs +0 -1732
- package/dist/needle-engine.bundle-YnpzzOPL.min.js +0 -1732
- package/lib/engine-components/AvatarLoader.d.ts +0 -80
- package/lib/engine-components/AvatarLoader.js +0 -232
- package/lib/engine-components/AvatarLoader.js.map +0 -1
- package/lib/engine-components/avatar/AvatarBlink_Simple.d.ts +0 -11
- package/lib/engine-components/avatar/AvatarBlink_Simple.js +0 -77
- package/lib/engine-components/avatar/AvatarBlink_Simple.js.map +0 -1
- package/lib/engine-components/avatar/AvatarEyeLook_Rotation.d.ts +0 -14
- package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js +0 -69
- package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js.map +0 -1
- package/lib/engine-components/avatar/Avatar_Brain_LookAt.d.ts +0 -29
- package/lib/engine-components/avatar/Avatar_Brain_LookAt.js +0 -122
- package/lib/engine-components/avatar/Avatar_Brain_LookAt.js.map +0 -1
- package/lib/engine-components/avatar/Avatar_MouthShapes.d.ts +0 -15
- package/lib/engine-components/avatar/Avatar_MouthShapes.js +0 -80
- package/lib/engine-components/avatar/Avatar_MouthShapes.js.map +0 -1
- package/lib/engine-components/avatar/Avatar_MustacheShake.d.ts +0 -9
- package/lib/engine-components/avatar/Avatar_MustacheShake.js +0 -30
- package/lib/engine-components/avatar/Avatar_MustacheShake.js.map +0 -1
- package/src/engine-components/AvatarLoader.ts +0 -264
- package/src/engine-components/avatar/AvatarBlink_Simple.ts +0 -70
- package/src/engine-components/avatar/AvatarEyeLook_Rotation.ts +0 -64
- package/src/engine-components/avatar/Avatar_Brain_LookAt.ts +0 -140
- package/src/engine-components/avatar/Avatar_MouthShapes.ts +0 -84
- package/src/engine-components/avatar/Avatar_MustacheShake.ts +0 -32
- package/src/vite-env.d.ts +0 -16
|
@@ -20,4 +20,176 @@ export function ensureAudioContextIsResumed() {
|
|
|
20
20
|
});
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Represents an audio clip that can be loaded and played independently.
|
|
25
|
+
* The AudioClip class encapsulates the URL of the audio resource and provides
|
|
26
|
+
* methods for playback control (play, pause, stop) and querying duration.
|
|
27
|
+
*/
|
|
28
|
+
export class AudioClip {
|
|
29
|
+
url;
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new AudioClip instance with the specified URL.
|
|
32
|
+
* @param url The URL of the audio resource to load. This can be a path to an audio file or a MediaStream URL.
|
|
33
|
+
*/
|
|
34
|
+
constructor(url) {
|
|
35
|
+
this.url = url;
|
|
36
|
+
}
|
|
37
|
+
/** Whether the clip is currently playing.
|
|
38
|
+
* @returns `true` if the clip is actively playing audio.
|
|
39
|
+
*/
|
|
40
|
+
get isPlaying() {
|
|
41
|
+
return this._audioElement !== undefined
|
|
42
|
+
&& !this._audioElement.paused
|
|
43
|
+
&& !this._audioElement.ended;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* The total duration of the audio clip in seconds.
|
|
47
|
+
* Loads the audio metadata if not already available.
|
|
48
|
+
* @returns A promise that resolves with the duration in seconds.
|
|
49
|
+
*/
|
|
50
|
+
getDuration() {
|
|
51
|
+
if (this._duration !== undefined) {
|
|
52
|
+
return Promise.resolve(this._duration);
|
|
53
|
+
}
|
|
54
|
+
return this.ensureAudioElement().then(audio => {
|
|
55
|
+
this._duration = audio.duration;
|
|
56
|
+
return audio.duration;
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Plays the audio clip from the current position.
|
|
61
|
+
* @returns A promise that resolves when playback finishes, or rejects on error.
|
|
62
|
+
* If the clip is looping, the promise will never resolve on its own – call {@link stop} or {@link pause} to end playback.
|
|
63
|
+
*/
|
|
64
|
+
// #region Play
|
|
65
|
+
play() {
|
|
66
|
+
return this.ensureAudioElement().then(audio => {
|
|
67
|
+
return new Promise((resolve, reject) => {
|
|
68
|
+
const onEnded = () => {
|
|
69
|
+
cleanup();
|
|
70
|
+
resolve();
|
|
71
|
+
};
|
|
72
|
+
const onError = () => {
|
|
73
|
+
cleanup();
|
|
74
|
+
reject(new Error(`Playback error for ${this.url}`));
|
|
75
|
+
};
|
|
76
|
+
const onPause = () => {
|
|
77
|
+
// pause/stop also resolve the promise
|
|
78
|
+
cleanup();
|
|
79
|
+
resolve();
|
|
80
|
+
};
|
|
81
|
+
const cleanup = () => {
|
|
82
|
+
audio.removeEventListener("ended", onEnded);
|
|
83
|
+
audio.removeEventListener("error", onError);
|
|
84
|
+
audio.removeEventListener("pause", onPause);
|
|
85
|
+
};
|
|
86
|
+
audio.addEventListener("ended", onEnded);
|
|
87
|
+
audio.addEventListener("error", onError);
|
|
88
|
+
audio.addEventListener("pause", onPause);
|
|
89
|
+
audio.play().catch(err => {
|
|
90
|
+
cleanup();
|
|
91
|
+
reject(err);
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Pauses playback at the current position.
|
|
98
|
+
* Call {@link play} to resume.
|
|
99
|
+
*/
|
|
100
|
+
// #region Pause/Stop
|
|
101
|
+
pause() {
|
|
102
|
+
this._audioElement?.pause();
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Stops playback and resets the position to the beginning.
|
|
106
|
+
*/
|
|
107
|
+
stop() {
|
|
108
|
+
if (this._audioElement) {
|
|
109
|
+
this._audioElement.pause();
|
|
110
|
+
this._audioElement.currentTime = 0;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/** Whether the clip should loop when reaching the end. */
|
|
114
|
+
get loop() { return this._loop; }
|
|
115
|
+
set loop(value) {
|
|
116
|
+
this._loop = value;
|
|
117
|
+
if (this._audioElement)
|
|
118
|
+
this._audioElement.loop = value;
|
|
119
|
+
}
|
|
120
|
+
/** Playback volume from 0 (silent) to 1 (full). */
|
|
121
|
+
get volume() { return this._volume; }
|
|
122
|
+
set volume(value) {
|
|
123
|
+
this._volume = value;
|
|
124
|
+
if (this._audioElement)
|
|
125
|
+
this._audioElement.volume = value;
|
|
126
|
+
}
|
|
127
|
+
/** Current playback position in seconds. */
|
|
128
|
+
get currentTime() { return this._audioElement?.currentTime ?? 0; }
|
|
129
|
+
set currentTime(value) {
|
|
130
|
+
if (this._audioElement)
|
|
131
|
+
this._audioElement.currentTime = value;
|
|
132
|
+
}
|
|
133
|
+
/** Normalized playback progress from 0 to 1.
|
|
134
|
+
* @returns The current playback position as a value between 0 and 1, or 0 if the duration is unknown.
|
|
135
|
+
*/
|
|
136
|
+
get progress() {
|
|
137
|
+
if (!this._audioElement || !this._duration)
|
|
138
|
+
return 0;
|
|
139
|
+
return this._audioElement.currentTime / this._duration;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Seeks to a normalized position (0–1) in the clip.
|
|
143
|
+
* @param position A value between 0 (start) and 1 (end).
|
|
144
|
+
*/
|
|
145
|
+
// #region Seek
|
|
146
|
+
seek(position) {
|
|
147
|
+
if (this._audioElement && this._duration) {
|
|
148
|
+
this._audioElement.currentTime = Math.max(0, Math.min(1, position)) * this._duration;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/** The underlying HTMLAudioElement, or `undefined` if not yet created.
|
|
152
|
+
* Use this to connect the element to the Web Audio API via `createMediaElementSource()`.
|
|
153
|
+
* @returns The HTMLAudioElement if the clip has been loaded or played, otherwise `undefined`.
|
|
154
|
+
*/
|
|
155
|
+
get audioElement() { return this._audioElement; }
|
|
156
|
+
_audioElement;
|
|
157
|
+
_duration;
|
|
158
|
+
_loadPromise;
|
|
159
|
+
_loop = false;
|
|
160
|
+
_volume = 1;
|
|
161
|
+
/** Lazily creates and loads the shared HTMLAudioElement. */
|
|
162
|
+
ensureAudioElement() {
|
|
163
|
+
if (this._audioElement && this._loadPromise) {
|
|
164
|
+
return this._loadPromise;
|
|
165
|
+
}
|
|
166
|
+
const audio = this._audioElement ?? new Audio(this.url);
|
|
167
|
+
this._audioElement = audio;
|
|
168
|
+
audio.loop = this._loop;
|
|
169
|
+
audio.volume = this._volume;
|
|
170
|
+
if (audio.readyState >= HTMLMediaElement.HAVE_METADATA) {
|
|
171
|
+
this._duration = audio.duration;
|
|
172
|
+
this._loadPromise = Promise.resolve(audio);
|
|
173
|
+
return this._loadPromise;
|
|
174
|
+
}
|
|
175
|
+
this._loadPromise = new Promise((resolve, reject) => {
|
|
176
|
+
const onLoaded = () => {
|
|
177
|
+
cleanup();
|
|
178
|
+
this._duration = audio.duration;
|
|
179
|
+
resolve(audio);
|
|
180
|
+
};
|
|
181
|
+
const onError = (e) => {
|
|
182
|
+
cleanup();
|
|
183
|
+
reject(new Error(`Failed to load audio clip from ${this.url}: ${e}`));
|
|
184
|
+
};
|
|
185
|
+
const cleanup = () => {
|
|
186
|
+
audio.removeEventListener("loadedmetadata", onLoaded);
|
|
187
|
+
audio.removeEventListener("error", onError);
|
|
188
|
+
};
|
|
189
|
+
audio.addEventListener("loadedmetadata", onLoaded);
|
|
190
|
+
audio.addEventListener("error", onError);
|
|
191
|
+
});
|
|
192
|
+
return this._loadPromise;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
23
195
|
//# sourceMappingURL=engine_audio.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_audio.js","sourceRoot":"","sources":["../../src/engine/engine_audio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD;;6EAE6E;AAC7E,MAAM,UAAU,2BAA2B;IACvC,WAAW,CAAC,0BAA0B,CAAC,GAAG,EAAE;QACxC,8GAA8G;QAC9G,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;QACtC,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE;YACrC,UAAU,CAAC,GAAG,EAAE;gBACZ,qKAAqK;gBACrK,MAAM,KAAK,GAAG,GAAG,CAAC,KAA0C,CAAC;gBAC7D,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;oBACnD,GAAG,CAAC,MAAM,EAAE;yBACP,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC,CAAC,CAAC;yBACjE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,iCAAiC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/E,CAAC;YACL,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
1
|
+
{"version":3,"file":"engine_audio.js","sourceRoot":"","sources":["../../src/engine/engine_audio.ts"],"names":[],"mappings":"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"}
|
|
@@ -146,12 +146,24 @@ export function fitCamera(options) {
|
|
|
146
146
|
else {
|
|
147
147
|
direction.sub(camera.worldPosition);
|
|
148
148
|
}
|
|
149
|
-
if (centerCamera === "y")
|
|
150
|
-
|
|
149
|
+
if (centerCamera === "y") {
|
|
150
|
+
// Preserve the camera's current elevation angle when it's already above the center,
|
|
151
|
+
// but clamp to a minimum elevation to prevent the camera from ending up at or below
|
|
152
|
+
// the scene center (which causes a "looking up from below" effect).
|
|
153
|
+
// direction points FROM camera TO center, so negative Y = camera is above center.
|
|
154
|
+
const horizontalLen = Math.sqrt(direction.x * direction.x + direction.z * direction.z);
|
|
155
|
+
if (horizontalLen > 0.0001) {
|
|
156
|
+
const minY = -horizontalLen * verticalOffset * 4;
|
|
157
|
+
if (direction.y > minY)
|
|
158
|
+
direction.y = minY;
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
// Camera is directly above/below center — pick a default slight angle from +Z
|
|
162
|
+
direction.set(0, -verticalOffset * 4, 1);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
151
165
|
direction.normalize();
|
|
152
166
|
direction.multiplyScalar(distance);
|
|
153
|
-
if (centerCamera === "y")
|
|
154
|
-
direction.y += -verticalOffset * 4 * distance;
|
|
155
167
|
let cameraLocalPosition = center.clone().sub(direction);
|
|
156
168
|
if (options.cameraOffset) {
|
|
157
169
|
if (options.cameraOffset.x !== undefined)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_camera.fit.js","sourceRoot":"","sources":["../../src/engine/engine_camera.fit.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"engine_camera.fit.js","sourceRoot":"","sources":["../../src/engine/engine_camera.fit.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,9 @@ import { removeScriptFromContext, updateActiveInHierarchyWithoutEventCall } from
|
|
|
5
5
|
import { InstantiateIdProvider } from "./engine_networking_instantiate.js";
|
|
6
6
|
import { Context, registerComponent } from "./engine_setup.js";
|
|
7
7
|
import { $componentName } from "./engine_types.js";
|
|
8
|
+
import { TypeStore } from "./engine_typestore.js";
|
|
8
9
|
import { getParam } from "./engine_utils.js";
|
|
9
10
|
import { apply } from "./js-extensions/index.js";
|
|
10
|
-
import { TypeStore } from "./engine_typestore.js";
|
|
11
11
|
const COMPONENT_GUID_NAMESPACE = 'eff8ba80-635d-11ec-90d6-0242ac120003';
|
|
12
12
|
/**
|
|
13
13
|
* Generates a deterministic guid for a component based on the object's guid and the component type.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine_components.js","sourceRoot":"","sources":["../../src/engine/engine_components.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine_components.js","sourceRoot":"","sources":["../../src/engine/engine_components.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import 'three/examples/jsm/renderers/webgl-legacy/nodes/WebGLNodes.js';
|
|
2
|
+
import type { SceneData } from 'needle-bindings';
|
|
2
3
|
import type { EffectComposer } from "postprocessing";
|
|
3
4
|
import { BufferGeometry, Camera, DepthTexture, Group, Material, Object3D, OrthographicCamera, PerspectiveCamera, Scene, Texture, WebGLRenderer, type WebGLRendererParameters, type WebXRArrayCamera } from 'three';
|
|
4
5
|
import type { EffectComposer as ThreeEffectComposer } from "three/examples/jsm/postprocessing/EffectComposer.js";
|
|
@@ -8,6 +9,7 @@ import { AnimationsRegistry } from './engine_animation.js';
|
|
|
8
9
|
import { Application } from './engine_application.js';
|
|
9
10
|
import { AssetDatabase } from './engine_assetdatabase.js';
|
|
10
11
|
import { FocusRect, FocusRectSettings } from './engine_camera.js';
|
|
12
|
+
import { EventBus } from './engine_context_eventbus.js';
|
|
11
13
|
import { Input } from './engine_input.js';
|
|
12
14
|
import { type ILightDataRegistry } from './engine_lightdata.js';
|
|
13
15
|
import { LODsManager } from "./engine_lods.js";
|
|
@@ -15,7 +17,6 @@ import { NetworkConnection } from './engine_networking.js';
|
|
|
15
17
|
import { Physics } from './engine_physics.js';
|
|
16
18
|
import { PlayerViewManager } from './engine_playerview.js';
|
|
17
19
|
import { RendererData as SceneLighting } from './engine_scenelighting.js';
|
|
18
|
-
import type { SceneData } from 'needle:bindings';
|
|
19
20
|
import { Time } from './engine_time.js';
|
|
20
21
|
import type { CoroutineData, ICamera, IComponent, IContext, ILight, Model, SourceIdentifier, Vec2 } from "./engine_types.js";
|
|
21
22
|
import type { INeedleXRSessionEventReceiver, NeedleXRSession } from './engine_xr.js';
|
|
@@ -332,13 +333,14 @@ export declare class Context implements IContext {
|
|
|
332
333
|
* Use `setCurrentCamera` for updating the main camera.
|
|
333
334
|
*/
|
|
334
335
|
/**
|
|
335
|
-
*
|
|
336
|
-
* Types are
|
|
337
|
-
* and written to `src/generated/needle-bindings.d.ts` on every dev-server start and GLB change.
|
|
336
|
+
* Access your scene's full hierarchy, objects, and components directly by name — with full autocomplete.
|
|
337
|
+
* Types are generated automatically from your GLB files when the dev server starts.
|
|
338
338
|
*
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
*
|
|
339
|
+
* You can store references to objects or components for later use.
|
|
340
|
+
* Note that the scene hierarchy can change at runtime (e.g. when objects are added, removed, or re-parented),
|
|
341
|
+
* in which case stored references may become stale.
|
|
342
|
+
*
|
|
343
|
+
* @experimental This API may change in future versions.
|
|
342
344
|
*
|
|
343
345
|
* @example
|
|
344
346
|
* // Toggle auto-rotate on the orbit camera
|
|
@@ -347,12 +349,6 @@ export declare class Context implements IContext {
|
|
|
347
349
|
* @example
|
|
348
350
|
* // Change the background color
|
|
349
351
|
* ctx.sceneData.Camera.Camera.backgroundColor = new RGBAColor(1, 0, 0, 1);
|
|
350
|
-
*
|
|
351
|
-
* @example
|
|
352
|
-
* // Equivalent manual approach (without sceneData)
|
|
353
|
-
* const node = ctx.scene.getObjectByName("Camera");
|
|
354
|
-
* const orbit = getComponent(node, OrbitControls);
|
|
355
|
-
* if (orbit) orbit.autoRotate = true;
|
|
356
352
|
*/
|
|
357
353
|
get sceneData(): SceneData;
|
|
358
354
|
get mainCamera(): Camera;
|
|
@@ -361,30 +357,48 @@ export declare class Context implements IContext {
|
|
|
361
357
|
private _mainCamera;
|
|
362
358
|
private _fallbackCamera;
|
|
363
359
|
/** access application state (e.g. if all audio should be muted) */
|
|
364
|
-
application: Application;
|
|
360
|
+
get application(): Application;
|
|
361
|
+
private _application;
|
|
365
362
|
/** access animation mixer used by components in the scene */
|
|
366
|
-
animations: AnimationsRegistry;
|
|
363
|
+
get animations(): AnimationsRegistry;
|
|
364
|
+
private _animations;
|
|
367
365
|
/** access timings (current frame number, deltaTime, timeScale, ...) */
|
|
368
|
-
time: Time;
|
|
366
|
+
get time(): Time;
|
|
367
|
+
private _time;
|
|
369
368
|
/** access input data (e.g. click or touch events) */
|
|
370
|
-
input: Input;
|
|
369
|
+
get input(): Input;
|
|
370
|
+
private _input;
|
|
371
371
|
/** access physics related methods (e.g. raycasting). To access the phyiscs engine use `context.physics.engine` */
|
|
372
|
-
physics: Physics;
|
|
372
|
+
get physics(): Physics;
|
|
373
|
+
private _physics;
|
|
373
374
|
/** access postprocessing effects stack. Add/remove effects and configure adaptive performance settings */
|
|
374
|
-
postprocessing: PostProcessing;
|
|
375
|
+
get postprocessing(): PostProcessing;
|
|
376
|
+
private _postprocessing;
|
|
375
377
|
/** access networking methods (use it to send or listen to messages or join a networking backend) */
|
|
376
|
-
connection: NetworkConnection;
|
|
378
|
+
get connection(): NetworkConnection;
|
|
379
|
+
private _connection;
|
|
380
|
+
/** context-level event bus for decoupled component communication
|
|
381
|
+
* @see {@link ContextEventMap} for known event types
|
|
382
|
+
*/
|
|
383
|
+
get events(): EventBus;
|
|
384
|
+
private _events;
|
|
377
385
|
/** @deprecated AssetDatabase is deprecated */
|
|
378
386
|
assets: AssetDatabase;
|
|
379
|
-
/**
|
|
380
|
-
|
|
387
|
+
/** All registered lights in the scene, maintained by the Light component.
|
|
388
|
+
* @see mainLight for accessing the main directional light in the scene
|
|
389
|
+
*/
|
|
390
|
+
readonly lights: ILight[];
|
|
391
|
+
/** The brightest registered directional light, or null if none are registered
|
|
392
|
+
* @see lights
|
|
393
|
+
*/
|
|
394
|
+
get mainLight(): ILight | null;
|
|
381
395
|
/** @deprecated Use sceneLighting */
|
|
382
|
-
get rendererData()
|
|
396
|
+
private get rendererData();
|
|
383
397
|
/** Access the scene lighting manager to control lighting settings in the context */
|
|
384
|
-
sceneLighting: SceneLighting;
|
|
385
|
-
addressables: Addressables;
|
|
386
|
-
lightmaps: ILightDataRegistry;
|
|
387
|
-
players: PlayerViewManager;
|
|
398
|
+
readonly sceneLighting: SceneLighting;
|
|
399
|
+
readonly addressables: Addressables;
|
|
400
|
+
readonly lightmaps: ILightDataRegistry;
|
|
401
|
+
readonly players: PlayerViewManager;
|
|
388
402
|
/** Access the LODs manager to control LOD behavior in the context */
|
|
389
403
|
readonly lodsManager: LODsManager;
|
|
390
404
|
/** Access the needle menu to add or remove buttons to the menu element */
|
|
@@ -13,6 +13,7 @@ import { Application } from './engine_application.js';
|
|
|
13
13
|
import { AssetDatabase } from './engine_assetdatabase.js';
|
|
14
14
|
import { updateCameraFocusRect } from './engine_camera.js';
|
|
15
15
|
import { VERSION } from './engine_constants.js';
|
|
16
|
+
import { EventBus } from './engine_context_eventbus.js';
|
|
16
17
|
import { ContextEvent, ContextRegistry } from './engine_context_registry.js';
|
|
17
18
|
import { WaitForPromise } from './engine_coroutine.js';
|
|
18
19
|
import { ObjectUtils } from "./engine_create_objects.js";
|
|
@@ -27,8 +28,8 @@ import * as looputils from './engine_mainloop_utils.js';
|
|
|
27
28
|
import { NetworkConnection } from './engine_networking.js';
|
|
28
29
|
import { Physics } from './engine_physics.js';
|
|
29
30
|
import { PlayerViewManager } from './engine_playerview.js';
|
|
30
|
-
import { RendererData as SceneLighting } from './engine_scenelighting.js';
|
|
31
31
|
import { getSceneData } from './engine_scenedata.js';
|
|
32
|
+
import { RendererData as SceneLighting } from './engine_scenelighting.js';
|
|
32
33
|
import { logHierarchy } from './engine_three_utils.js';
|
|
33
34
|
import { Time } from './engine_time.js';
|
|
34
35
|
import { patchTonemapping } from './engine_tonemapping.js';
|
|
@@ -420,13 +421,14 @@ export class Context {
|
|
|
420
421
|
* Use `setCurrentCamera` for updating the main camera.
|
|
421
422
|
*/
|
|
422
423
|
/**
|
|
423
|
-
*
|
|
424
|
-
* Types are
|
|
425
|
-
*
|
|
424
|
+
* Access your scene's full hierarchy, objects, and components directly by name — with full autocomplete.
|
|
425
|
+
* Types are generated automatically from your GLB files when the dev server starts.
|
|
426
|
+
*
|
|
427
|
+
* You can store references to objects or components for later use.
|
|
428
|
+
* Note that the scene hierarchy can change at runtime (e.g. when objects are added, removed, or re-parented),
|
|
429
|
+
* in which case stored references may become stale.
|
|
426
430
|
*
|
|
427
|
-
*
|
|
428
|
-
* This is a convenience shorthand for `getComponent` lookups; the same result can be
|
|
429
|
-
* achieved manually via `scene.getObjectByName(name)` + `getComponent(node, Type)`.
|
|
431
|
+
* @experimental This API may change in future versions.
|
|
430
432
|
*
|
|
431
433
|
* @example
|
|
432
434
|
* // Toggle auto-rotate on the orbit camera
|
|
@@ -435,12 +437,6 @@ export class Context {
|
|
|
435
437
|
* @example
|
|
436
438
|
* // Change the background color
|
|
437
439
|
* ctx.sceneData.Camera.Camera.backgroundColor = new RGBAColor(1, 0, 0, 1);
|
|
438
|
-
*
|
|
439
|
-
* @example
|
|
440
|
-
* // Equivalent manual approach (without sceneData)
|
|
441
|
-
* const node = ctx.scene.getObjectByName("Camera");
|
|
442
|
-
* const orbit = getComponent(node, OrbitControls);
|
|
443
|
-
* if (orbit) orbit.autoRotate = true;
|
|
444
440
|
*/
|
|
445
441
|
get sceneData() {
|
|
446
442
|
return getSceneData(this);
|
|
@@ -457,6 +453,13 @@ export class Context {
|
|
|
457
453
|
}
|
|
458
454
|
if (!this._fallbackCamera) {
|
|
459
455
|
this._fallbackCamera = new PerspectiveCamera(75, this.domWidth / this.domHeight, 0.1, 1000);
|
|
456
|
+
// Put the fallback into the scene graph. Without this, callers who
|
|
457
|
+
// do `ctx.mainCamera.add(child)` end up parenting children to an
|
|
458
|
+
// orphan camera that the renderer never traverses (since
|
|
459
|
+
// `renderer.render(scene, camera)` walks `scene`, not `camera`).
|
|
460
|
+
// Safe because this branch only runs before a real main camera
|
|
461
|
+
// component exists, and the fallback is replaced once one does.
|
|
462
|
+
this.scene.add(this._fallbackCamera);
|
|
460
463
|
}
|
|
461
464
|
return this._fallbackCamera;
|
|
462
465
|
}
|
|
@@ -467,23 +470,50 @@ export class Context {
|
|
|
467
470
|
_mainCamera = null;
|
|
468
471
|
_fallbackCamera = null;
|
|
469
472
|
/** access application state (e.g. if all audio should be muted) */
|
|
470
|
-
application;
|
|
473
|
+
get application() { return this._application; }
|
|
474
|
+
_application;
|
|
471
475
|
/** access animation mixer used by components in the scene */
|
|
472
|
-
animations;
|
|
476
|
+
get animations() { return this._animations; }
|
|
477
|
+
_animations;
|
|
473
478
|
/** access timings (current frame number, deltaTime, timeScale, ...) */
|
|
474
|
-
time;
|
|
479
|
+
get time() { return this._time; }
|
|
480
|
+
_time;
|
|
475
481
|
/** access input data (e.g. click or touch events) */
|
|
476
|
-
input;
|
|
482
|
+
get input() { return this._input; }
|
|
483
|
+
_input;
|
|
477
484
|
/** access physics related methods (e.g. raycasting). To access the phyiscs engine use `context.physics.engine` */
|
|
478
|
-
physics;
|
|
485
|
+
get physics() { return this._physics; }
|
|
486
|
+
_physics;
|
|
479
487
|
/** access postprocessing effects stack. Add/remove effects and configure adaptive performance settings */
|
|
480
|
-
postprocessing;
|
|
488
|
+
get postprocessing() { return this._postprocessing; }
|
|
489
|
+
_postprocessing;
|
|
481
490
|
/** access networking methods (use it to send or listen to messages or join a networking backend) */
|
|
482
|
-
connection;
|
|
491
|
+
get connection() { return this._connection; }
|
|
492
|
+
_connection;
|
|
493
|
+
/** context-level event bus for decoupled component communication
|
|
494
|
+
* @see {@link ContextEventMap} for known event types
|
|
495
|
+
*/
|
|
496
|
+
get events() { return this._events; }
|
|
497
|
+
_events = new EventBus();
|
|
483
498
|
/** @deprecated AssetDatabase is deprecated */
|
|
484
499
|
assets;
|
|
485
|
-
/**
|
|
486
|
-
|
|
500
|
+
/** All registered lights in the scene, maintained by the Light component.
|
|
501
|
+
* @see mainLight for accessing the main directional light in the scene
|
|
502
|
+
*/
|
|
503
|
+
lights = new Array();
|
|
504
|
+
/** The brightest registered directional light, or null if none are registered
|
|
505
|
+
* @see lights
|
|
506
|
+
*/
|
|
507
|
+
get mainLight() {
|
|
508
|
+
let best = null;
|
|
509
|
+
for (const light of this.lights) {
|
|
510
|
+
if (light.type !== "directional")
|
|
511
|
+
continue;
|
|
512
|
+
if (!best || light.intensity > best.intensity)
|
|
513
|
+
best = light;
|
|
514
|
+
}
|
|
515
|
+
return best;
|
|
516
|
+
}
|
|
487
517
|
/** @deprecated Use sceneLighting */
|
|
488
518
|
get rendererData() { return this.sceneLighting; }
|
|
489
519
|
/** Access the scene lighting manager to control lighting settings in the context */
|
|
@@ -529,12 +559,12 @@ export class Context {
|
|
|
529
559
|
this.scene = new Scene();
|
|
530
560
|
if (args?.camera)
|
|
531
561
|
this._mainCamera = args.camera;
|
|
532
|
-
this.
|
|
533
|
-
this.
|
|
534
|
-
this.
|
|
535
|
-
this.
|
|
536
|
-
this.
|
|
537
|
-
this.
|
|
562
|
+
this._application = new Application(this);
|
|
563
|
+
this._time = new Time();
|
|
564
|
+
this._input = new Input(this);
|
|
565
|
+
this._physics = new Physics(this);
|
|
566
|
+
this._postprocessing = new PostProcessing(this);
|
|
567
|
+
this._connection = new NetworkConnection(this);
|
|
538
568
|
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
539
569
|
this.assets = new AssetDatabase();
|
|
540
570
|
this.sceneLighting = new SceneLighting(this);
|
|
@@ -543,7 +573,7 @@ export class Context {
|
|
|
543
573
|
this.players = new PlayerViewManager(this);
|
|
544
574
|
this.menu = new NeedleMenu(this);
|
|
545
575
|
this.lodsManager = new LODsManager(this);
|
|
546
|
-
this.
|
|
576
|
+
this._animations = new AnimationsRegistry(this);
|
|
547
577
|
this.accessibility = new AccessibilityManager(this);
|
|
548
578
|
const resizeCallback = () => this._needsUpdateSize = true;
|
|
549
579
|
window.addEventListener('resize', resizeCallback);
|
|
@@ -756,11 +786,14 @@ export class Context {
|
|
|
756
786
|
this.scene = new Scene();
|
|
757
787
|
this.addressables?.dispose();
|
|
758
788
|
this.lightmaps?.clear();
|
|
759
|
-
this.physics?.engine?.
|
|
789
|
+
this.physics?.engine?.dispose();
|
|
760
790
|
this.lodsManager.disable();
|
|
761
791
|
this.accessibility?.clear();
|
|
762
792
|
this._onBeforeRenderListeners.clear();
|
|
763
793
|
this._onAfterRenderListeners.clear();
|
|
794
|
+
this._events.clear();
|
|
795
|
+
this._events = new EventBus();
|
|
796
|
+
this.lights.length = 0;
|
|
764
797
|
if (!this.isManagedExternally) {
|
|
765
798
|
if (this.renderer) {
|
|
766
799
|
this.renderer.renderLists.dispose();
|
|
@@ -799,6 +832,7 @@ export class Context {
|
|
|
799
832
|
this.scene = null;
|
|
800
833
|
this.renderer = null;
|
|
801
834
|
this.input.dispose();
|
|
835
|
+
this.connection.dispose();
|
|
802
836
|
this.menu.onDestroy();
|
|
803
837
|
this.animations.onDestroy();
|
|
804
838
|
for (const cb of this._disposeCallbacks) {
|
|
@@ -1615,12 +1649,19 @@ export class Context {
|
|
|
1615
1649
|
const usedJSHeapSize = window.performance && window.performance.memory
|
|
1616
1650
|
? (`${(window.performance.memory.usedJSHeapSize / 1024 / 1024).toFixed(2)} MB`)
|
|
1617
1651
|
: "n/a";
|
|
1652
|
+
const gl = this.renderer.getContext();
|
|
1618
1653
|
console.log(this.renderer.info.render.calls + " DrawCalls", "\nRender:", {
|
|
1619
1654
|
shaders: this.renderer.info.programs?.length,
|
|
1620
1655
|
...this.renderer.info.render,
|
|
1621
1656
|
}, "\nMemory:", {
|
|
1622
1657
|
usedMemory: usedJSHeapSize,
|
|
1623
1658
|
...this.renderer.info.memory
|
|
1659
|
+
}, "\nRenderer:", {
|
|
1660
|
+
dpr: this.renderer.getPixelRatio(),
|
|
1661
|
+
windowDpr: window.devicePixelRatio,
|
|
1662
|
+
antialias: gl.getContextAttributes()?.antialias,
|
|
1663
|
+
samples: gl.getParameter(gl.SAMPLES),
|
|
1664
|
+
resolution: `${this.renderer.domElement.width}x${this.renderer.domElement.height}`,
|
|
1624
1665
|
}, "\nTarget Framerate: " + this.targetFrameRate);
|
|
1625
1666
|
}
|
|
1626
1667
|
}
|