@needle-tools/engine 4.4.1 → 4.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +3671 -3667
- package/LICENSE.md +10 -10
- package/README.md +64 -64
- package/components.needle.json +1 -1
- package/dist/needle-engine.bundle.js +333 -219
- package/dist/needle-engine.bundle.light.js +333 -219
- package/dist/needle-engine.bundle.light.min.js +4 -4
- package/dist/needle-engine.bundle.light.umd.cjs +4 -4
- package/dist/needle-engine.bundle.min.js +4 -4
- package/dist/needle-engine.bundle.umd.cjs +4 -4
- package/dist/needle-engine.d.ts +130 -129
- package/dist/needle-engine.light.d.ts +130 -129
- package/lib/asap/needle-asap.d.ts +1 -1
- package/lib/asap/needle-asap.js +95 -95
- package/lib/asap/sessiongranted.d.ts +3 -3
- package/lib/asap/sessiongranted.js +65 -65
- package/lib/asap/utils.d.ts +1 -1
- package/lib/asap/utils.js +3 -3
- package/lib/engine/analytics/index.d.ts +6 -6
- package/lib/engine/analytics/index.js +12 -12
- package/lib/engine/analytics/lcp.d.ts +3 -3
- package/lib/engine/analytics/lcp.js +34 -34
- package/lib/engine/api.d.ts +81 -81
- package/lib/engine/api.js +80 -80
- package/lib/engine/assets/index.d.ts +11 -11
- package/lib/engine/assets/index.js +47 -47
- package/lib/engine/assets/static.d.ts +1 -1
- package/lib/engine/assets/static.js +4 -4
- package/lib/engine/codegen/register_types.d.ts +1 -1
- package/lib/engine/codegen/register_types.js +300 -300
- package/lib/engine/debug/debug.d.ts +15 -15
- package/lib/engine/debug/debug.js +44 -44
- package/lib/engine/debug/debug_console.d.ts +2 -2
- package/lib/engine/debug/debug_console.js +307 -307
- package/lib/engine/debug/debug_overlay.d.ts +22 -22
- package/lib/engine/debug/debug_overlay.js +316 -316
- package/lib/engine/debug/debug_spatial_console.d.ts +2 -2
- package/lib/engine/debug/debug_spatial_console.js +390 -390
- package/lib/engine/debug/index.d.ts +2 -2
- package/lib/engine/debug/index.js +2 -2
- package/lib/engine/engine_addressables.d.ts +166 -166
- package/lib/engine/engine_addressables.js +608 -608
- package/lib/engine/engine_animation.d.ts +43 -43
- package/lib/engine/engine_animation.js +133 -133
- package/lib/engine/engine_application.d.ts +40 -40
- package/lib/engine/engine_application.js +104 -104
- package/lib/engine/engine_assetdatabase.d.ts +25 -25
- package/lib/engine/engine_assetdatabase.js +344 -344
- package/lib/engine/engine_audio.d.ts +4 -4
- package/lib/engine/engine_audio.js +23 -23
- package/lib/engine/engine_camera.d.ts +13 -13
- package/lib/engine/engine_camera.js +30 -30
- package/lib/engine/engine_components.d.ts +110 -110
- package/lib/engine/engine_components.js +382 -382
- package/lib/engine/engine_components_internal.d.ts +9 -9
- package/lib/engine/engine_components_internal.js +36 -36
- package/lib/engine/engine_constants.d.ts +10 -10
- package/lib/engine/engine_constants.js +41 -41
- package/lib/engine/engine_context.d.ts +472 -354
- package/lib/engine/engine_context.js +1653 -1536
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_context_registry.d.ts +71 -71
- package/lib/engine/engine_context_registry.js +117 -117
- package/lib/engine/engine_coroutine.d.ts +35 -35
- package/lib/engine/engine_coroutine.js +52 -52
- package/lib/engine/engine_create_objects.d.ts +118 -118
- package/lib/engine/engine_create_objects.js +308 -308
- package/lib/engine/engine_default_parameters.d.ts +2 -2
- package/lib/engine/engine_default_parameters.js +3 -3
- package/lib/engine/engine_editor-sync.d.ts +21 -21
- package/lib/engine/engine_editor-sync.js +4 -4
- package/lib/engine/engine_element.d.ts +113 -113
- package/lib/engine/engine_element.js +832 -832
- package/lib/engine/engine_element_attributes.d.ts +72 -72
- package/lib/engine/engine_element_attributes.js +1 -1
- package/lib/engine/engine_element_extras.d.ts +6 -6
- package/lib/engine/engine_element_extras.js +13 -13
- package/lib/engine/engine_element_loading.d.ts +44 -44
- package/lib/engine/engine_element_loading.js +349 -349
- package/lib/engine/engine_element_overlay.d.ts +21 -21
- package/lib/engine/engine_element_overlay.js +166 -166
- package/lib/engine/engine_fileloader.d.ts +2 -2
- package/lib/engine/engine_fileloader.js +8 -8
- package/lib/engine/engine_gameobject.d.ts +68 -68
- package/lib/engine/engine_gameobject.js +596 -596
- package/lib/engine/engine_generic_utils.d.ts +1 -1
- package/lib/engine/engine_generic_utils.js +13 -13
- package/lib/engine/engine_gizmos.d.ts +149 -149
- package/lib/engine/engine_gizmos.js +530 -530
- package/lib/engine/engine_gltf.d.ts +12 -12
- package/lib/engine/engine_gltf.js +15 -15
- package/lib/engine/engine_gltf_builtin_components.d.ts +7 -7
- package/lib/engine/engine_gltf_builtin_components.js +341 -341
- package/lib/engine/engine_hot_reload.d.ts +7 -7
- package/lib/engine/engine_hot_reload.js +184 -184
- package/lib/engine/engine_input.d.ts +352 -352
- package/lib/engine/engine_input.js +1265 -1265
- package/lib/engine/engine_input_utils.d.ts +2 -2
- package/lib/engine/engine_input_utils.js +22 -22
- package/lib/engine/engine_instancing.d.ts +19 -19
- package/lib/engine/engine_instancing.js +39 -39
- package/lib/engine/engine_license.d.ts +11 -11
- package/lib/engine/engine_license.js +361 -361
- package/lib/engine/engine_lifecycle_api.d.ts +76 -76
- package/lib/engine/engine_lifecycle_api.js +99 -99
- package/lib/engine/engine_lifecycle_functions_internal.d.ts +32 -32
- package/lib/engine/engine_lifecycle_functions_internal.js +146 -146
- package/lib/engine/engine_lightdata.d.ts +23 -23
- package/lib/engine/engine_lightdata.js +91 -91
- package/lib/engine/engine_loaders.d.ts +13 -13
- package/lib/engine/engine_loaders.js +62 -62
- package/lib/engine/engine_lods.d.ts +31 -31
- package/lib/engine/engine_lods.js +146 -146
- package/lib/engine/engine_mainloop_utils.d.ts +32 -32
- package/lib/engine/engine_mainloop_utils.js +466 -466
- package/lib/engine/engine_math.d.ts +114 -114
- package/lib/engine/engine_math.js +247 -247
- package/lib/engine/engine_modules.d.ts +36 -36
- package/lib/engine/engine_modules.js +85 -85
- package/lib/engine/engine_networking.d.ts +252 -252
- package/lib/engine/engine_networking.js +743 -743
- package/lib/engine/engine_networking_auto.d.ts +24 -24
- package/lib/engine/engine_networking_auto.js +310 -310
- package/lib/engine/engine_networking_blob.d.ts +48 -48
- package/lib/engine/engine_networking_blob.js +228 -228
- package/lib/engine/engine_networking_files.d.ts +35 -35
- package/lib/engine/engine_networking_files.js +172 -172
- package/lib/engine/engine_networking_files_default_components.d.ts +6 -6
- package/lib/engine/engine_networking_files_default_components.js +42 -42
- package/lib/engine/engine_networking_instantiate.d.ts +100 -100
- package/lib/engine/engine_networking_instantiate.js +345 -345
- package/lib/engine/engine_networking_peer.d.ts +15 -15
- package/lib/engine/engine_networking_peer.js +132 -132
- package/lib/engine/engine_networking_streams.d.ts +123 -123
- package/lib/engine/engine_networking_streams.js +645 -645
- package/lib/engine/engine_networking_types.d.ts +22 -22
- package/lib/engine/engine_networking_types.js +7 -7
- package/lib/engine/engine_networking_utils.d.ts +2 -2
- package/lib/engine/engine_networking_utils.js +20 -20
- package/lib/engine/engine_networking_websocket.d.ts +1 -1
- package/lib/engine/engine_networking_websocket.js +2 -2
- package/lib/engine/engine_patcher.d.ts +10 -10
- package/lib/engine/engine_patcher.js +142 -142
- package/lib/engine/engine_physics.d.ts +152 -152
- package/lib/engine/engine_physics.js +645 -645
- package/lib/engine/engine_physics.types.d.ts +40 -40
- package/lib/engine/engine_physics.types.js +33 -33
- package/lib/engine/engine_physics_rapier.d.ts +147 -147
- package/lib/engine/engine_physics_rapier.js +1433 -1433
- package/lib/engine/engine_playerview.d.ts +26 -26
- package/lib/engine/engine_playerview.js +64 -64
- package/lib/engine/engine_scenelighting.d.ts +71 -71
- package/lib/engine/engine_scenelighting.js +226 -226
- package/lib/engine/engine_scenetools.d.ts +50 -50
- package/lib/engine/engine_scenetools.js +321 -321
- package/lib/engine/engine_serialization.d.ts +3 -3
- package/lib/engine/engine_serialization.js +3 -3
- package/lib/engine/engine_serialization_builtin_serializer.d.ts +72 -72
- package/lib/engine/engine_serialization_builtin_serializer.js +403 -403
- package/lib/engine/engine_serialization_core.d.ts +85 -85
- package/lib/engine/engine_serialization_core.js +606 -606
- package/lib/engine/engine_serialization_decorator.d.ts +23 -23
- package/lib/engine/engine_serialization_decorator.js +66 -66
- package/lib/engine/engine_setup.d.ts +1 -1
- package/lib/engine/engine_setup.js +2 -2
- package/lib/engine/engine_shaders.d.ts +53 -53
- package/lib/engine/engine_shaders.js +252 -252
- package/lib/engine/engine_shims.d.ts +4 -4
- package/lib/engine/engine_shims.js +24 -24
- package/lib/engine/engine_test_utils.d.ts +39 -39
- package/lib/engine/engine_test_utils.js +83 -83
- package/lib/engine/engine_texture.d.ts +28 -28
- package/lib/engine/engine_texture.js +64 -64
- package/lib/engine/engine_three_utils.d.ts +201 -201
- package/lib/engine/engine_three_utils.js +731 -731
- package/lib/engine/engine_time.d.ts +51 -51
- package/lib/engine/engine_time.js +82 -82
- package/lib/engine/engine_time_utils.d.ts +88 -88
- package/lib/engine/engine_time_utils.js +215 -215
- package/lib/engine/engine_tonemapping.d.ts +2 -2
- package/lib/engine/engine_tonemapping.js +194 -194
- package/lib/engine/engine_types.d.ts +572 -572
- package/lib/engine/engine_types.js +88 -88
- package/lib/engine/engine_typestore.d.ts +28 -28
- package/lib/engine/engine_typestore.js +55 -55
- package/lib/engine/engine_util_decorator.d.ts +13 -13
- package/lib/engine/engine_util_decorator.js +116 -116
- package/lib/engine/engine_utils.d.ts +266 -266
- package/lib/engine/engine_utils.js +878 -878
- package/lib/engine/engine_utils_format.d.ts +21 -21
- package/lib/engine/engine_utils_format.js +193 -193
- package/lib/engine/engine_utils_screenshot.d.ts +159 -159
- package/lib/engine/engine_utils_screenshot.js +513 -513
- package/lib/engine/engine_utils_screenshot.xr.d.ts +5 -5
- package/lib/engine/engine_utils_screenshot.xr.js +90 -90
- package/lib/engine/engine_xr.d.ts +1 -1
- package/lib/engine/engine_xr.js +1 -1
- package/lib/engine/export/gltf/Writers.d.ts +19 -19
- package/lib/engine/export/gltf/Writers.js +24 -24
- package/lib/engine/export/gltf/index.d.ts +11 -11
- package/lib/engine/export/gltf/index.js +123 -123
- package/lib/engine/export/index.d.ts +2 -2
- package/lib/engine/export/index.js +2 -2
- package/lib/engine/export/state.d.ts +7 -7
- package/lib/engine/export/state.js +17 -17
- package/lib/engine/export/utils.d.ts +2 -2
- package/lib/engine/export/utils.js +7 -7
- package/lib/engine/extensions/EXT_texture_exr.d.ts +8 -8
- package/lib/engine/extensions/EXT_texture_exr.js +32 -32
- package/lib/engine/extensions/NEEDLE_animator_controller_model.d.ts +122 -122
- package/lib/engine/extensions/NEEDLE_animator_controller_model.js +95 -95
- package/lib/engine/extensions/NEEDLE_components.d.ts +35 -35
- package/lib/engine/extensions/NEEDLE_components.js +220 -220
- package/lib/engine/extensions/NEEDLE_gameobject_data.d.ts +10 -10
- package/lib/engine/extensions/NEEDLE_gameobject_data.js +57 -57
- package/lib/engine/extensions/NEEDLE_lighting_settings.d.ts +37 -37
- package/lib/engine/extensions/NEEDLE_lighting_settings.js +157 -157
- package/lib/engine/extensions/NEEDLE_lightmaps.d.ts +18 -18
- package/lib/engine/extensions/NEEDLE_lightmaps.js +99 -99
- package/lib/engine/extensions/NEEDLE_persistent_assets.d.ts +11 -11
- package/lib/engine/extensions/NEEDLE_persistent_assets.js +63 -63
- package/lib/engine/extensions/NEEDLE_progressive.d.ts +1 -1
- package/lib/engine/extensions/NEEDLE_progressive.js +1 -1
- package/lib/engine/extensions/NEEDLE_render_objects.d.ts +13 -13
- package/lib/engine/extensions/NEEDLE_render_objects.js +159 -159
- package/lib/engine/extensions/NEEDLE_techniques_webgl.d.ts +38 -38
- package/lib/engine/extensions/NEEDLE_techniques_webgl.js +564 -564
- package/lib/engine/extensions/extension_resolver.d.ts +4 -4
- package/lib/engine/extensions/extension_resolver.js +1 -1
- package/lib/engine/extensions/extension_utils.d.ts +12 -12
- package/lib/engine/extensions/extension_utils.js +152 -152
- package/lib/engine/extensions/extensions.d.ts +31 -31
- package/lib/engine/extensions/extensions.js +103 -103
- package/lib/engine/extensions/index.d.ts +6 -6
- package/lib/engine/extensions/index.js +6 -6
- package/lib/engine/extensions/usage_tracker.d.ts +13 -13
- package/lib/engine/extensions/usage_tracker.js +65 -65
- package/lib/engine/js-extensions/Camera.d.ts +1 -1
- package/lib/engine/js-extensions/Camera.js +39 -39
- package/lib/engine/js-extensions/ExtensionUtils.d.ts +9 -9
- package/lib/engine/js-extensions/ExtensionUtils.js +67 -67
- package/lib/engine/js-extensions/Layers.d.ts +6 -6
- package/lib/engine/js-extensions/Layers.js +22 -22
- package/lib/engine/js-extensions/Object3D.d.ts +120 -120
- package/lib/engine/js-extensions/Object3D.js +136 -136
- package/lib/engine/js-extensions/RGBAColor.d.ts +23 -23
- package/lib/engine/js-extensions/RGBAColor.js +111 -110
- package/lib/engine/js-extensions/RGBAColor.js.map +1 -1
- package/lib/engine/js-extensions/Vector.d.ts +3 -3
- package/lib/engine/js-extensions/Vector.js +13 -13
- package/lib/engine/js-extensions/index.d.ts +5 -5
- package/lib/engine/js-extensions/index.js +5 -5
- package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.d.ts +4 -4
- package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +76 -76
- package/lib/engine/shaders/shaderData.d.ts +55 -55
- package/lib/engine/shaders/shaderData.js +58 -58
- package/lib/engine/tests/test_utils.d.ts +2 -2
- package/lib/engine/tests/test_utils.js +53 -53
- package/lib/engine/webcomponents/WebXRButtons.d.ts +56 -56
- package/lib/engine/webcomponents/WebXRButtons.js +230 -230
- package/lib/engine/webcomponents/api.d.ts +5 -5
- package/lib/engine/webcomponents/api.js +4 -4
- package/lib/engine/webcomponents/buttons.d.ts +39 -39
- package/lib/engine/webcomponents/buttons.js +237 -237
- package/lib/engine/webcomponents/fonts.d.ts +9 -9
- package/lib/engine/webcomponents/fonts.js +32 -32
- package/lib/engine/webcomponents/icons.d.ts +9 -9
- package/lib/engine/webcomponents/icons.js +52 -52
- package/lib/engine/webcomponents/index.d.ts +1 -1
- package/lib/engine/webcomponents/index.js +1 -1
- package/lib/engine/webcomponents/logo-element.d.ts +10 -10
- package/lib/engine/webcomponents/logo-element.js +67 -67
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.d.ts +37 -37
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +513 -513
- package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +155 -155
- package/lib/engine/webcomponents/needle menu/needle-menu.js +1029 -1029
- package/lib/engine/webcomponents/needle-button.d.ts +34 -34
- package/lib/engine/webcomponents/needle-button.js +161 -161
- package/lib/engine/xr/NeedleXRController.d.ts +313 -313
- package/lib/engine/xr/NeedleXRController.js +1007 -1007
- package/lib/engine/xr/NeedleXRSession.d.ts +339 -339
- package/lib/engine/xr/NeedleXRSession.js +1427 -1427
- package/lib/engine/xr/NeedleXRSync.d.ts +22 -22
- package/lib/engine/xr/NeedleXRSync.js +188 -188
- package/lib/engine/xr/SceneTransition.d.ts +18 -18
- package/lib/engine/xr/SceneTransition.js +69 -69
- package/lib/engine/xr/TempXRContext.d.ts +34 -34
- package/lib/engine/xr/TempXRContext.js +187 -187
- package/lib/engine/xr/XRRig.d.ts +7 -7
- package/lib/engine/xr/XRRig.js +1 -1
- package/lib/engine/xr/api.d.ts +6 -6
- package/lib/engine/xr/api.js +6 -6
- package/lib/engine/xr/events.d.ts +66 -66
- package/lib/engine/xr/events.js +93 -93
- package/lib/engine/xr/internal.d.ts +12 -12
- package/lib/engine/xr/internal.js +25 -25
- package/lib/engine/xr/usdz.d.ts +12 -12
- package/lib/engine/xr/usdz.js +29 -29
- package/lib/engine/xr/utils.d.ts +11 -11
- package/lib/engine/xr/utils.js +34 -34
- package/lib/engine-components/AlignmentConstraint.d.ts +10 -10
- package/lib/engine-components/AlignmentConstraint.js +39 -39
- package/lib/engine-components/Animation.d.ts +156 -156
- package/lib/engine-components/Animation.js +508 -508
- package/lib/engine-components/AnimationCurve.d.ts +40 -40
- package/lib/engine-components/AnimationCurve.js +159 -159
- package/lib/engine-components/AnimationUtils.d.ts +8 -8
- package/lib/engine-components/AnimationUtils.js +27 -27
- package/lib/engine-components/AnimationUtilsAutoplay.d.ts +1 -1
- package/lib/engine-components/AnimationUtilsAutoplay.js +39 -39
- package/lib/engine-components/Animator.d.ts +217 -217
- package/lib/engine-components/Animator.js +354 -354
- package/lib/engine-components/AnimatorController.d.ts +227 -227
- package/lib/engine-components/AnimatorController.js +1152 -1152
- package/lib/engine-components/AudioListener.d.ts +33 -33
- package/lib/engine-components/AudioListener.js +86 -86
- package/lib/engine-components/AudioSource.d.ts +217 -217
- package/lib/engine-components/AudioSource.js +634 -634
- package/lib/engine-components/AvatarLoader.d.ts +80 -80
- package/lib/engine-components/AvatarLoader.js +231 -231
- package/lib/engine-components/AxesHelper.d.ts +32 -32
- package/lib/engine-components/AxesHelper.js +67 -67
- package/lib/engine-components/BasicIKConstraint.d.ts +9 -9
- package/lib/engine-components/BasicIKConstraint.js +43 -43
- package/lib/engine-components/BoxCollider.d.ts +2 -2
- package/lib/engine-components/BoxCollider.js +2 -2
- package/lib/engine-components/BoxHelperComponent.d.ts +47 -47
- package/lib/engine-components/BoxHelperComponent.js +102 -102
- package/lib/engine-components/Camera.d.ts +231 -231
- package/lib/engine-components/Camera.js +700 -700
- package/lib/engine-components/CameraUtils.d.ts +1 -1
- package/lib/engine-components/CameraUtils.js +121 -121
- package/lib/engine-components/CharacterController.d.ts +55 -55
- package/lib/engine-components/CharacterController.js +236 -236
- package/lib/engine-components/Collider.d.ts +188 -188
- package/lib/engine-components/Collider.js +369 -369
- package/lib/engine-components/Component.d.ts +792 -792
- package/lib/engine-components/Component.js +915 -915
- package/lib/engine-components/ContactShadows.d.ts +82 -82
- package/lib/engine-components/ContactShadows.js +430 -430
- package/lib/engine-components/DeleteBox.d.ts +19 -19
- package/lib/engine-components/DeleteBox.js +58 -58
- package/lib/engine-components/DeviceFlag.d.ts +16 -16
- package/lib/engine-components/DeviceFlag.js +47 -47
- package/lib/engine-components/DragControls.d.ts +170 -170
- package/lib/engine-components/DragControls.js +1421 -1421
- package/lib/engine-components/DropListener.d.ts +215 -215
- package/lib/engine-components/DropListener.js +630 -630
- package/lib/engine-components/Duplicatable.d.ts +35 -35
- package/lib/engine-components/Duplicatable.js +202 -202
- package/lib/engine-components/EventList.d.ts +54 -54
- package/lib/engine-components/EventList.js +232 -232
- package/lib/engine-components/EventTrigger.d.ts +33 -33
- package/lib/engine-components/EventTrigger.js +75 -75
- package/lib/engine-components/EventType.d.ts +22 -22
- package/lib/engine-components/EventType.js +23 -23
- package/lib/engine-components/Fog.d.ts +22 -22
- package/lib/engine-components/Fog.js +61 -61
- package/lib/engine-components/Gizmos.d.ts +17 -17
- package/lib/engine-components/Gizmos.js +64 -64
- package/lib/engine-components/GridHelper.d.ts +20 -20
- package/lib/engine-components/GridHelper.js +54 -54
- package/lib/engine-components/GroundProjection.d.ts +67 -67
- package/lib/engine-components/GroundProjection.js +343 -343
- package/lib/engine-components/Interactable.d.ts +12 -12
- package/lib/engine-components/Interactable.js +12 -12
- package/lib/engine-components/Joints.d.ts +19 -19
- package/lib/engine-components/Joints.js +51 -51
- package/lib/engine-components/LODGroup.d.ts +35 -35
- package/lib/engine-components/LODGroup.js +152 -152
- package/lib/engine-components/Light.d.ts +180 -180
- package/lib/engine-components/Light.js +535 -535
- package/lib/engine-components/LookAtConstraint.d.ts +19 -19
- package/lib/engine-components/LookAtConstraint.js +35 -35
- package/lib/engine-components/NeedleMenu.d.ts +50 -50
- package/lib/engine-components/NeedleMenu.js +92 -92
- package/lib/engine-components/NestedGltf.d.ts +25 -25
- package/lib/engine-components/NestedGltf.js +88 -88
- package/lib/engine-components/Networking.d.ts +54 -54
- package/lib/engine-components/Networking.js +112 -112
- package/lib/engine-components/OffsetConstraint.d.ts +14 -14
- package/lib/engine-components/OffsetConstraint.js +65 -65
- package/lib/engine-components/OrbitControls.d.ts +266 -266
- package/lib/engine-components/OrbitControls.js +1011 -1011
- package/lib/engine-components/PlayerColor.d.ts +19 -19
- package/lib/engine-components/PlayerColor.js +94 -94
- package/lib/engine-components/ReflectionProbe.d.ts +27 -27
- package/lib/engine-components/ReflectionProbe.js +201 -201
- package/lib/engine-components/Renderer.d.ts +153 -153
- package/lib/engine-components/Renderer.js +830 -830
- package/lib/engine-components/RendererInstancing.d.ts +140 -140
- package/lib/engine-components/RendererInstancing.js +744 -744
- package/lib/engine-components/RendererLightmap.d.ts +24 -24
- package/lib/engine-components/RendererLightmap.js +182 -182
- package/lib/engine-components/RigidBody.d.ts +155 -155
- package/lib/engine-components/RigidBody.js +517 -517
- package/lib/engine-components/SceneSwitcher.d.ts +263 -263
- package/lib/engine-components/SceneSwitcher.js +972 -972
- package/lib/engine-components/ScreenCapture.d.ts +144 -144
- package/lib/engine-components/ScreenCapture.js +547 -547
- package/lib/engine-components/ShadowCatcher.d.ts +33 -33
- package/lib/engine-components/ShadowCatcher.js +166 -166
- package/lib/engine-components/Skybox.d.ts +82 -82
- package/lib/engine-components/Skybox.js +448 -448
- package/lib/engine-components/SmoothFollow.d.ts +34 -34
- package/lib/engine-components/SmoothFollow.js +82 -82
- package/lib/engine-components/SpatialTrigger.d.ts +102 -102
- package/lib/engine-components/SpatialTrigger.js +225 -225
- package/lib/engine-components/SpectatorCamera.d.ts +111 -111
- package/lib/engine-components/SpectatorCamera.js +715 -715
- package/lib/engine-components/SphereCollider.d.ts +2 -2
- package/lib/engine-components/SphereCollider.js +2 -2
- package/lib/engine-components/SpriteRenderer.d.ts +132 -132
- package/lib/engine-components/SpriteRenderer.js +472 -472
- package/lib/engine-components/SyncedCamera.d.ts +41 -41
- package/lib/engine-components/SyncedCamera.js +199 -199
- package/lib/engine-components/SyncedRoom.d.ts +106 -106
- package/lib/engine-components/SyncedRoom.js +371 -371
- package/lib/engine-components/SyncedTransform.d.ts +94 -94
- package/lib/engine-components/SyncedTransform.js +331 -331
- package/lib/engine-components/TestRunner.d.ts +16 -16
- package/lib/engine-components/TestRunner.js +102 -102
- package/lib/engine-components/TransformGizmo.d.ts +75 -75
- package/lib/engine-components/TransformGizmo.js +209 -209
- package/lib/engine-components/VideoPlayer.d.ts +184 -184
- package/lib/engine-components/VideoPlayer.js +978 -978
- package/lib/engine-components/Voip.d.ts +67 -67
- package/lib/engine-components/Voip.js +360 -360
- package/lib/engine-components/api.d.ts +51 -51
- package/lib/engine-components/api.js +50 -50
- package/lib/engine-components/avatar/AvatarBlink_Simple.d.ts +11 -11
- package/lib/engine-components/avatar/AvatarBlink_Simple.js +76 -76
- package/lib/engine-components/avatar/AvatarEyeLook_Rotation.d.ts +14 -14
- package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js +68 -68
- package/lib/engine-components/avatar/Avatar_Brain_LookAt.d.ts +29 -29
- package/lib/engine-components/avatar/Avatar_Brain_LookAt.js +121 -121
- package/lib/engine-components/avatar/Avatar_MouthShapes.d.ts +15 -15
- package/lib/engine-components/avatar/Avatar_MouthShapes.js +79 -79
- package/lib/engine-components/avatar/Avatar_MustacheShake.d.ts +9 -9
- package/lib/engine-components/avatar/Avatar_MustacheShake.js +29 -29
- package/lib/engine-components/codegen/components.d.ts +216 -216
- package/lib/engine-components/codegen/components.js +218 -218
- package/lib/engine-components/debug/LogStats.d.ts +5 -5
- package/lib/engine-components/debug/LogStats.js +18 -18
- package/lib/engine-components/export/gltf/GltfExport.d.ts +30 -30
- package/lib/engine-components/export/gltf/GltfExport.js +246 -246
- package/lib/engine-components/export/gltf/index.d.ts +1 -1
- package/lib/engine-components/export/gltf/index.js +1 -1
- package/lib/engine-components/export/index.d.ts +1 -1
- package/lib/engine-components/export/index.js +1 -1
- package/lib/engine-components/export/usdz/Extension.d.ts +22 -22
- package/lib/engine-components/export/usdz/Extension.js +1 -1
- package/lib/engine-components/export/usdz/ThreeUSDZExporter.d.ts +160 -160
- package/lib/engine-components/export/usdz/ThreeUSDZExporter.js +1782 -1782
- package/lib/engine-components/export/usdz/USDZExporter.d.ts +130 -130
- package/lib/engine-components/export/usdz/USDZExporter.js +663 -663
- package/lib/engine-components/export/usdz/extensions/Animation.d.ts +106 -106
- package/lib/engine-components/export/usdz/extensions/Animation.js +1071 -1071
- package/lib/engine-components/export/usdz/extensions/DocumentExtension.d.ts +5 -5
- package/lib/engine-components/export/usdz/extensions/DocumentExtension.js +6 -6
- package/lib/engine-components/export/usdz/extensions/USDZText.d.ts +54 -54
- package/lib/engine-components/export/usdz/extensions/USDZText.js +203 -203
- package/lib/engine-components/export/usdz/extensions/USDZUI.d.ts +8 -8
- package/lib/engine-components/export/usdz/extensions/USDZUI.js +158 -158
- package/lib/engine-components/export/usdz/extensions/behavior/Actions.d.ts +30 -30
- package/lib/engine-components/export/usdz/extensions/behavior/Actions.js +88 -88
- package/lib/engine-components/export/usdz/extensions/behavior/AudioExtension.d.ts +10 -10
- package/lib/engine-components/export/usdz/extensions/behavior/AudioExtension.js +86 -86
- package/lib/engine-components/export/usdz/extensions/behavior/Behaviour.d.ts +28 -28
- package/lib/engine-components/export/usdz/extensions/behavior/Behaviour.js +290 -290
- package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.d.ts +190 -190
- package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js +1060 -1060
- package/lib/engine-components/export/usdz/extensions/behavior/BehavioursBuilder.d.ts +135 -135
- package/lib/engine-components/export/usdz/extensions/behavior/BehavioursBuilder.js +548 -548
- package/lib/engine-components/export/usdz/extensions/behavior/PhysicsExtension.d.ts +7 -7
- package/lib/engine-components/export/usdz/extensions/behavior/PhysicsExtension.js +115 -115
- package/lib/engine-components/export/usdz/index.d.ts +3 -3
- package/lib/engine-components/export/usdz/index.js +2 -2
- package/lib/engine-components/export/usdz/utils/animationutils.d.ts +7 -7
- package/lib/engine-components/export/usdz/utils/animationutils.js +163 -163
- package/lib/engine-components/export/usdz/utils/quicklook.d.ts +2 -2
- package/lib/engine-components/export/usdz/utils/quicklook.js +43 -43
- package/lib/engine-components/particlesystem/ParticleSystem.d.ts +177 -177
- package/lib/engine-components/particlesystem/ParticleSystem.js +1176 -1176
- package/lib/engine-components/particlesystem/ParticleSystemModules.d.ts +526 -526
- package/lib/engine-components/particlesystem/ParticleSystemModules.js +1930 -1930
- package/lib/engine-components/particlesystem/ParticleSystemSubEmitter.d.ts +25 -25
- package/lib/engine-components/particlesystem/ParticleSystemSubEmitter.js +87 -87
- package/lib/engine-components/particlesystem/api.d.ts +2 -2
- package/lib/engine-components/particlesystem/api.js +2 -2
- package/lib/engine-components/postprocessing/Effects/Antialiasing.d.ts +17 -17
- package/lib/engine-components/postprocessing/Effects/Antialiasing.js +50 -50
- package/lib/engine-components/postprocessing/Effects/BloomEffect.d.ts +46 -46
- package/lib/engine-components/postprocessing/Effects/BloomEffect.js +113 -113
- package/lib/engine-components/postprocessing/Effects/ChromaticAberration.d.ts +11 -11
- package/lib/engine-components/postprocessing/Effects/ChromaticAberration.js +39 -39
- package/lib/engine-components/postprocessing/Effects/ColorAdjustments.d.ts +15 -15
- package/lib/engine-components/postprocessing/Effects/ColorAdjustments.js +92 -92
- package/lib/engine-components/postprocessing/Effects/DepthOfField.d.ts +25 -25
- package/lib/engine-components/postprocessing/Effects/DepthOfField.js +104 -104
- package/lib/engine-components/postprocessing/Effects/EffectWrapper.d.ts +12 -12
- package/lib/engine-components/postprocessing/Effects/EffectWrapper.js +18 -18
- package/lib/engine-components/postprocessing/Effects/Pixelation.d.ts +11 -11
- package/lib/engine-components/postprocessing/Effects/Pixelation.js +32 -32
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.d.ts +18 -18
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.js +91 -91
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.d.ts +70 -70
- package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.js +175 -175
- package/lib/engine-components/postprocessing/Effects/Sharpening.d.ts +17 -17
- package/lib/engine-components/postprocessing/Effects/Sharpening.js +123 -123
- package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.d.ts +17 -17
- package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.js +70 -70
- package/lib/engine-components/postprocessing/Effects/Tonemapping.d.ts +26 -26
- package/lib/engine-components/postprocessing/Effects/Tonemapping.js +138 -138
- package/lib/engine-components/postprocessing/Effects/Vignette.d.ts +15 -15
- package/lib/engine-components/postprocessing/Effects/Vignette.js +60 -60
- package/lib/engine-components/postprocessing/PostProcessingEffect.d.ts +72 -72
- package/lib/engine-components/postprocessing/PostProcessingEffect.js +149 -149
- package/lib/engine-components/postprocessing/PostProcessingHandler.d.ts +25 -25
- package/lib/engine-components/postprocessing/PostProcessingHandler.js +350 -350
- package/lib/engine-components/postprocessing/Volume.d.ts +89 -89
- package/lib/engine-components/postprocessing/Volume.js +367 -367
- package/lib/engine-components/postprocessing/VolumeParameter.d.ts +26 -26
- package/lib/engine-components/postprocessing/VolumeParameter.js +136 -136
- package/lib/engine-components/postprocessing/VolumeProfile.d.ts +15 -15
- package/lib/engine-components/postprocessing/VolumeProfile.js +60 -60
- package/lib/engine-components/postprocessing/index.d.ts +5 -5
- package/lib/engine-components/postprocessing/index.js +5 -5
- package/lib/engine-components/postprocessing/utils.d.ts +11 -11
- package/lib/engine-components/postprocessing/utils.js +37 -37
- package/lib/engine-components/timeline/PlayableDirector.d.ts +163 -163
- package/lib/engine-components/timeline/PlayableDirector.js +686 -686
- package/lib/engine-components/timeline/SignalAsset.d.ts +24 -24
- package/lib/engine-components/timeline/SignalAsset.js +130 -130
- package/lib/engine-components/timeline/TimelineModels.d.ts +89 -89
- package/lib/engine-components/timeline/TimelineModels.js +22 -22
- package/lib/engine-components/timeline/TimelineTracks.d.ts +110 -110
- package/lib/engine-components/timeline/TimelineTracks.js +879 -879
- package/lib/engine-components/timeline/index.d.ts +4 -4
- package/lib/engine-components/timeline/index.js +3 -3
- package/lib/engine-components/ui/BaseUIComponent.d.ts +48 -48
- package/lib/engine-components/ui/BaseUIComponent.js +170 -170
- package/lib/engine-components/ui/Button.d.ts +64 -64
- package/lib/engine-components/ui/Button.js +315 -315
- package/lib/engine-components/ui/Canvas.d.ts +74 -74
- package/lib/engine-components/ui/Canvas.js +407 -407
- package/lib/engine-components/ui/CanvasGroup.d.ts +19 -19
- package/lib/engine-components/ui/CanvasGroup.js +58 -58
- package/lib/engine-components/ui/EventSystem.d.ts +125 -125
- package/lib/engine-components/ui/EventSystem.js +764 -764
- package/lib/engine-components/ui/Graphic.d.ts +55 -55
- package/lib/engine-components/ui/Graphic.js +255 -255
- package/lib/engine-components/ui/Image.d.ts +35 -35
- package/lib/engine-components/ui/Image.js +116 -116
- package/lib/engine-components/ui/InputField.d.ts +42 -42
- package/lib/engine-components/ui/InputField.js +268 -268
- package/lib/engine-components/ui/Interfaces.d.ts +38 -38
- package/lib/engine-components/ui/Interfaces.js +12 -12
- package/lib/engine-components/ui/Layout.d.ts +84 -84
- package/lib/engine-components/ui/Layout.js +330 -330
- package/lib/engine-components/ui/Outline.d.ts +7 -7
- package/lib/engine-components/ui/Outline.js +20 -20
- package/lib/engine-components/ui/PointerEvents.d.ts +115 -115
- package/lib/engine-components/ui/PointerEvents.js +145 -145
- package/lib/engine-components/ui/RaycastUtils.d.ts +11 -11
- package/lib/engine-components/ui/RaycastUtils.js +67 -67
- package/lib/engine-components/ui/Raycaster.d.ts +30 -30
- package/lib/engine-components/ui/Raycaster.js +95 -95
- package/lib/engine-components/ui/RectTransform.d.ts +61 -61
- package/lib/engine-components/ui/RectTransform.js +356 -356
- package/lib/engine-components/ui/SpatialHtml.d.ts +8 -8
- package/lib/engine-components/ui/SpatialHtml.js +79 -79
- package/lib/engine-components/ui/Symbols.d.ts +1 -1
- package/lib/engine-components/ui/Symbols.js +1 -1
- package/lib/engine-components/ui/Text.d.ts +78 -78
- package/lib/engine-components/ui/Text.js +539 -539
- package/lib/engine-components/ui/Utils.d.ts +24 -24
- package/lib/engine-components/ui/Utils.js +90 -90
- package/lib/engine-components/ui/index.d.ts +1 -1
- package/lib/engine-components/ui/index.js +1 -1
- package/lib/engine-components/utils/EnvironmentScene.d.ts +5 -5
- package/lib/engine-components/utils/EnvironmentScene.js +205 -205
- package/lib/engine-components/utils/LookAt.d.ts +31 -31
- package/lib/engine-components/utils/LookAt.js +82 -82
- package/lib/engine-components/utils/OpenURL.d.ts +42 -42
- package/lib/engine-components/utils/OpenURL.js +119 -119
- package/lib/engine-components/webxr/Avatar.d.ts +25 -25
- package/lib/engine-components/webxr/Avatar.js +255 -255
- package/lib/engine-components/webxr/TeleportTarget.d.ts +7 -7
- package/lib/engine-components/webxr/TeleportTarget.js +7 -7
- package/lib/engine-components/webxr/WebARCameraBackground.d.ts +30 -30
- package/lib/engine-components/webxr/WebARCameraBackground.js +155 -155
- package/lib/engine-components/webxr/WebARSessionRoot.d.ts +98 -98
- package/lib/engine-components/webxr/WebARSessionRoot.js +770 -770
- package/lib/engine-components/webxr/WebXR.d.ts +232 -232
- package/lib/engine-components/webxr/WebXR.js +561 -561
- package/lib/engine-components/webxr/WebXRAvatar.d.ts +27 -27
- package/lib/engine-components/webxr/WebXRAvatar.js +44 -44
- package/lib/engine-components/webxr/WebXRImageTracking.d.ts +86 -86
- package/lib/engine-components/webxr/WebXRImageTracking.js +470 -470
- package/lib/engine-components/webxr/WebXRPlaneTracking.d.ts +92 -92
- package/lib/engine-components/webxr/WebXRPlaneTracking.js +500 -500
- package/lib/engine-components/webxr/WebXRRig.d.ts +32 -32
- package/lib/engine-components/webxr/WebXRRig.js +72 -72
- package/lib/engine-components/webxr/XRFlag.d.ts +38 -38
- package/lib/engine-components/webxr/XRFlag.js +139 -139
- package/lib/engine-components/webxr/controllers/XRControllerFollow.d.ts +47 -47
- package/lib/engine-components/webxr/controllers/XRControllerFollow.js +120 -120
- package/lib/engine-components/webxr/controllers/XRControllerModel.d.ts +43 -43
- package/lib/engine-components/webxr/controllers/XRControllerModel.js +351 -351
- package/lib/engine-components/webxr/controllers/XRControllerMovement.d.ts +78 -78
- package/lib/engine-components/webxr/controllers/XRControllerMovement.js +506 -506
- package/lib/engine-components/webxr/index.d.ts +3 -3
- package/lib/engine-components/webxr/index.js +3 -3
- package/lib/engine-components/webxr/types.d.ts +3 -3
- package/lib/engine-components/webxr/types.js +1 -1
- package/lib/engine-components-experimental/Presentation.d.ts +6 -6
- package/lib/engine-components-experimental/Presentation.js +9 -9
- package/lib/engine-components-experimental/api.d.ts +4 -4
- package/lib/engine-components-experimental/api.js +4 -4
- package/lib/engine-components-experimental/networking/PlayerSync.d.ts +156 -156
- package/lib/engine-components-experimental/networking/PlayerSync.js +377 -377
- package/lib/engine-schemes/api.d.ts +12 -12
- package/lib/engine-schemes/api.js +12 -12
- package/lib/engine-schemes/schemes.d.ts +7 -7
- package/lib/engine-schemes/schemes.js +19 -19
- package/lib/engine-schemes/synced-camera-model.d.ts +25 -25
- package/lib/engine-schemes/synced-camera-model.js +67 -67
- package/lib/engine-schemes/synced-transform-model.d.ts +31 -31
- package/lib/engine-schemes/synced-transform-model.js +66 -66
- package/lib/engine-schemes/transform.d.ts +12 -12
- package/lib/engine-schemes/transform.js +39 -39
- package/lib/engine-schemes/vec2.d.ts +10 -10
- package/lib/engine-schemes/vec2.js +25 -25
- package/lib/engine-schemes/vec3.d.ts +11 -11
- package/lib/engine-schemes/vec3.js +29 -29
- package/lib/engine-schemes/vec4.d.ts +12 -12
- package/lib/engine-schemes/vec4.js +33 -33
- package/lib/engine-schemes/vr-user-state-buffer.d.ts +37 -37
- package/lib/engine-schemes/vr-user-state-buffer.js +110 -110
- package/lib/include/three/EXT_mesh_gpu_instancing_exporter.d.ts +6 -6
- package/lib/include/three/EXT_mesh_gpu_instancing_exporter.js +45 -45
- package/lib/needle-engine.d.ts +7 -7
- package/lib/needle-engine.js +64 -64
- package/package.json +1 -1
- package/plugins/common/buildinfo.js +64 -64
- package/plugins/common/cloud.js +1 -1
- package/plugins/common/config.cjs +31 -31
- package/plugins/common/config.js +35 -35
- package/plugins/common/files.js +31 -31
- package/plugins/common/generator.js +10 -10
- package/plugins/common/license.js +405 -365
- package/plugins/common/npm.js +15 -15
- package/plugins/common/timers.js +7 -7
- package/plugins/common/version.js +37 -37
- package/plugins/gltf-packer.mjs +1 -1
- package/plugins/next/alias.cjs +39 -39
- package/plugins/next/license.cjs +18 -18
- package/plugins/next/meshbvhworker.cjs +18 -18
- package/plugins/next/next.js +128 -128
- package/plugins/types/index.d.ts +2 -2
- package/plugins/types/license.d.ts +24 -24
- package/plugins/types/needleConfig.d.ts +27 -27
- package/plugins/types/userconfig.d.ts +113 -110
- package/plugins/types/webmanifest.d.ts +32 -32
- package/plugins/vite/alias.js +174 -174
- package/plugins/vite/asap.js +245 -245
- package/plugins/vite/build-pipeline.js +355 -355
- package/plugins/vite/build.js +19 -19
- package/plugins/vite/buildinfo.js +41 -41
- package/plugins/vite/config.js +106 -106
- package/plugins/vite/copyfiles.js +138 -138
- package/plugins/vite/defines.js +68 -66
- package/plugins/vite/dependencies.js +232 -223
- package/plugins/vite/dependency-watcher.js +231 -231
- package/plugins/vite/drop-client.js +76 -76
- package/plugins/vite/drop.js +87 -87
- package/plugins/vite/editor-connection.js +124 -124
- package/plugins/vite/facebook-instant-games.js +102 -102
- package/plugins/vite/gzip.js +5 -5
- package/plugins/vite/imports-logger.js +143 -143
- package/plugins/vite/index.js +139 -139
- package/plugins/vite/license.js +56 -55
- package/plugins/vite/meta.js +163 -163
- package/plugins/vite/npm.js +7 -7
- package/plugins/vite/peer.js +29 -29
- package/plugins/vite/poster-client.js +73 -73
- package/plugins/vite/poster.js +79 -79
- package/plugins/vite/pwa.js +604 -604
- package/plugins/vite/reload-client.js +15 -15
- package/plugins/vite/reload.js +363 -363
- package/plugins/vite/server.js +66 -66
- package/plugins/vite/transform-codegen.js +55 -55
- package/plugins/vite/transform.js +31 -31
- package/plugins/vite/vite-4.4-hack.js +31 -31
- package/src/asap/needle-asap.ts +111 -111
- package/src/asap/sessiongranted.ts +75 -75
- package/src/asap/utils.ts +4 -4
- package/src/engine/analytics/index.ts +10 -10
- package/src/engine/analytics/lcp.ts +35 -35
- package/src/engine/api.ts +81 -81
- package/src/engine/assets/index.ts +59 -59
- package/src/engine/assets/static.js +5 -5
- package/src/engine/codegen/register_types.ts +300 -300
- package/src/engine/debug/debug.ts +51 -51
- package/src/engine/debug/debug_console.ts +333 -333
- package/src/engine/debug/debug_overlay.ts +332 -332
- package/src/engine/debug/debug_spatial_console.ts +429 -429
- package/src/engine/debug/index.ts +1 -1
- package/src/engine/engine_addressables.ts +680 -680
- package/src/engine/engine_animation.ts +145 -145
- package/src/engine/engine_application.ts +113 -113
- package/src/engine/engine_assetdatabase.ts +387 -387
- package/src/engine/engine_audio.ts +24 -24
- package/src/engine/engine_camera.ts +39 -39
- package/src/engine/engine_components.ts +374 -374
- package/src/engine/engine_components_internal.ts +40 -40
- package/src/engine/engine_constants.ts +52 -52
- package/src/engine/engine_context.ts +1798 -1686
- package/src/engine/engine_context_registry.ts +129 -129
- package/src/engine/engine_coroutine.ts +54 -54
- package/src/engine/engine_create_objects.ts +398 -398
- package/src/engine/engine_default_parameters.ts +3 -3
- package/src/engine/engine_editor-sync.ts +28 -28
- package/src/engine/engine_element.ts +872 -872
- package/src/engine/engine_element_attributes.ts +85 -85
- package/src/engine/engine_element_extras.ts +16 -16
- package/src/engine/engine_element_loading.ts +381 -381
- package/src/engine/engine_element_overlay.ts +186 -186
- package/src/engine/engine_fileloader.js +9 -9
- package/src/engine/engine_gameobject.ts +691 -691
- package/src/engine/engine_generic_utils.js +13 -13
- package/src/engine/engine_gizmos.ts +577 -577
- package/src/engine/engine_gltf.ts +29 -29
- package/src/engine/engine_gltf_builtin_components.ts +403 -403
- package/src/engine/engine_hot_reload.ts +198 -198
- package/src/engine/engine_input.ts +1460 -1460
- package/src/engine/engine_input_utils.ts +23 -23
- package/src/engine/engine_instancing.ts +45 -45
- package/src/engine/engine_license.ts +378 -378
- package/src/engine/engine_lifecycle_api.ts +106 -106
- package/src/engine/engine_lifecycle_functions_internal.ts +193 -193
- package/src/engine/engine_lightdata.ts +117 -117
- package/src/engine/engine_loaders.ts +82 -82
- package/src/engine/engine_lods.ts +168 -168
- package/src/engine/engine_mainloop_utils.ts +472 -472
- package/src/engine/engine_math.ts +282 -282
- package/src/engine/engine_modules.ts +83 -83
- package/src/engine/engine_networking.ts +841 -841
- package/src/engine/engine_networking_auto.ts +352 -352
- package/src/engine/engine_networking_blob.ts +275 -275
- package/src/engine/engine_networking_files.ts +217 -217
- package/src/engine/engine_networking_files_default_components.ts +58 -58
- package/src/engine/engine_networking_instantiate.ts +419 -419
- package/src/engine/engine_networking_peer.ts +159 -159
- package/src/engine/engine_networking_streams.ts +713 -713
- package/src/engine/engine_networking_types.ts +24 -24
- package/src/engine/engine_networking_utils.ts +23 -23
- package/src/engine/engine_networking_websocket.ts +2 -2
- package/src/engine/engine_patcher.ts +199 -199
- package/src/engine/engine_physics.ts +783 -783
- package/src/engine/engine_physics.types.ts +46 -46
- package/src/engine/engine_physics_rapier.ts +1577 -1577
- package/src/engine/engine_playerview.ts +80 -80
- package/src/engine/engine_scenelighting.ts +294 -294
- package/src/engine/engine_scenetools.ts +365 -365
- package/src/engine/engine_serialization.ts +2 -2
- package/src/engine/engine_serialization_builtin_serializer.ts +473 -473
- package/src/engine/engine_serialization_core.ts +710 -710
- package/src/engine/engine_serialization_decorator.ts +80 -80
- package/src/engine/engine_setup.ts +1 -1
- package/src/engine/engine_shaders.ts +267 -267
- package/src/engine/engine_shims.ts +32 -32
- package/src/engine/engine_test_utils.ts +109 -109
- package/src/engine/engine_texture.ts +82 -82
- package/src/engine/engine_three_utils.ts +849 -849
- package/src/engine/engine_time.ts +94 -94
- package/src/engine/engine_time_utils.ts +237 -237
- package/src/engine/engine_tonemapping.ts +210 -210
- package/src/engine/engine_types.ts +714 -714
- package/src/engine/engine_typestore.ts +63 -63
- package/src/engine/engine_util_decorator.ts +136 -136
- package/src/engine/engine_utils.ts +972 -972
- package/src/engine/engine_utils_format.ts +212 -212
- package/src/engine/engine_utils_screenshot.ts +698 -698
- package/src/engine/engine_utils_screenshot.xr.ts +103 -103
- package/src/engine/export/gltf/Writers.ts +34 -34
- package/src/engine/export/gltf/index.ts +158 -158
- package/src/engine/export/index.ts +2 -2
- package/src/engine/export/state.ts +19 -19
- package/src/engine/export/utils.ts +9 -9
- package/src/engine/extensions/EXT_texture_exr.ts +50 -50
- package/src/engine/extensions/NEEDLE_animator_controller_model.ts +195 -195
- package/src/engine/extensions/NEEDLE_components.ts +268 -268
- package/src/engine/extensions/NEEDLE_gameobject_data.ts +81 -81
- package/src/engine/extensions/NEEDLE_lighting_settings.ts +185 -185
- package/src/engine/extensions/NEEDLE_lightmaps.ts +119 -119
- package/src/engine/extensions/NEEDLE_persistent_assets.ts +76 -76
- package/src/engine/extensions/NEEDLE_render_objects.ts +209 -209
- package/src/engine/extensions/NEEDLE_techniques_webgl.ts +640 -640
- package/src/engine/extensions/extension_resolver.ts +4 -4
- package/src/engine/extensions/extension_utils.ts +166 -166
- package/src/engine/extensions/extensions.ts +135 -135
- package/src/engine/extensions/index.ts +5 -5
- package/src/engine/extensions/usage_tracker.ts +100 -100
- package/src/engine/js-extensions/Camera.ts +37 -37
- package/src/engine/js-extensions/ExtensionUtils.ts +85 -85
- package/src/engine/js-extensions/Layers.ts +23 -23
- package/src/engine/js-extensions/Object3D.ts +296 -296
- package/src/engine/js-extensions/RGBAColor.ts +126 -125
- package/src/engine/js-extensions/Vector.ts +18 -18
- package/src/engine/js-extensions/index.ts +4 -4
- package/src/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +122 -122
- package/src/engine/shaders/shaderData.ts +67 -67
- package/src/engine/tests/test_utils.ts +63 -63
- package/src/engine/webcomponents/WebXRButtons.ts +260 -260
- package/src/engine/webcomponents/api.ts +6 -6
- package/src/engine/webcomponents/buttons.ts +262 -262
- package/src/engine/webcomponents/fonts.ts +41 -41
- package/src/engine/webcomponents/icons.ts +57 -57
- package/src/engine/webcomponents/index.ts +1 -1
- package/src/engine/webcomponents/logo-element.ts +78 -78
- package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +573 -573
- package/src/engine/webcomponents/needle menu/needle-menu.ts +1118 -1118
- package/src/engine/webcomponents/needle-button.ts +181 -181
- package/src/engine/xr/NeedleXRController.ts +1125 -1125
- package/src/engine/xr/NeedleXRSession.ts +1585 -1585
- package/src/engine/xr/NeedleXRSync.ts +220 -220
- package/src/engine/xr/SceneTransition.ts +78 -78
- package/src/engine/xr/TempXRContext.ts +216 -216
- package/src/engine/xr/XRRig.ts +9 -9
- package/src/engine/xr/api.ts +5 -5
- package/src/engine/xr/events.ts +102 -102
- package/src/engine/xr/internal.ts +34 -34
- package/src/engine/xr/usdz.ts +30 -30
- package/src/engine/xr/utils.ts +39 -39
- package/src/engine-components/AlignmentConstraint.ts +36 -36
- package/src/engine-components/Animation.ts +557 -557
- package/src/engine-components/AnimationCurve.ts +150 -150
- package/src/engine-components/AnimationUtils.ts +28 -28
- package/src/engine-components/AnimationUtilsAutoplay.ts +43 -43
- package/src/engine-components/Animator.ts +397 -397
- package/src/engine-components/AnimatorController.ts +1293 -1293
- package/src/engine-components/AudioListener.ts +92 -92
- package/src/engine-components/AudioSource.ts +644 -644
- package/src/engine-components/AvatarLoader.ts +263 -263
- package/src/engine-components/AxesHelper.ts +59 -59
- package/src/engine-components/BasicIKConstraint.ts +54 -54
- package/src/engine-components/BoxCollider.ts +1 -1
- package/src/engine-components/BoxHelperComponent.ts +114 -114
- package/src/engine-components/Camera.ts +719 -719
- package/src/engine-components/CameraUtils.ts +136 -136
- package/src/engine-components/CharacterController.ts +253 -253
- package/src/engine-components/Collider.ts +374 -374
- package/src/engine-components/Component.ts +1294 -1294
- package/src/engine-components/ContactShadows.ts +482 -482
- package/src/engine-components/DeleteBox.ts +62 -62
- package/src/engine-components/DeviceFlag.ts +46 -46
- package/src/engine-components/DragControls.ts +1623 -1623
- package/src/engine-components/DropListener.ts +698 -698
- package/src/engine-components/Duplicatable.ts +198 -198
- package/src/engine-components/EventList.ts +266 -266
- package/src/engine-components/EventTrigger.ts +74 -74
- package/src/engine-components/EventType.ts +22 -22
- package/src/engine-components/Fog.ts +60 -60
- package/src/engine-components/Gizmos.ts +56 -56
- package/src/engine-components/GridHelper.ts +48 -48
- package/src/engine-components/GroundProjection.ts +356 -356
- package/src/engine-components/Interactable.ts +14 -14
- package/src/engine-components/Joints.ts +52 -52
- package/src/engine-components/LODGroup.ts +153 -153
- package/src/engine-components/Light.ts +558 -558
- package/src/engine-components/LookAtConstraint.ts +25 -25
- package/src/engine-components/NeedleMenu.ts +84 -84
- package/src/engine-components/NestedGltf.ts +86 -86
- package/src/engine-components/Networking.ts +114 -114
- package/src/engine-components/OffsetConstraint.ts +60 -60
- package/src/engine-components/OrbitControls.ts +1069 -1069
- package/src/engine-components/PlayerColor.ts +103 -103
- package/src/engine-components/ReflectionProbe.ts +216 -216
- package/src/engine-components/Renderer.ts +900 -900
- package/src/engine-components/RendererInstancing.ts +855 -855
- package/src/engine-components/RendererLightmap.ts +198 -198
- package/src/engine-components/RigidBody.ts +526 -526
- package/src/engine-components/SceneSwitcher.ts +1030 -1030
- package/src/engine-components/ScreenCapture.ts +592 -592
- package/src/engine-components/ShadowCatcher.ts +172 -172
- package/src/engine-components/Skybox.ts +455 -455
- package/src/engine-components/SmoothFollow.ts +76 -76
- package/src/engine-components/SpatialTrigger.ts +229 -229
- package/src/engine-components/SpectatorCamera.ts +787 -787
- package/src/engine-components/SphereCollider.ts +1 -1
- package/src/engine-components/SpriteRenderer.ts +468 -468
- package/src/engine-components/SyncedCamera.ts +220 -220
- package/src/engine-components/SyncedRoom.ts +380 -380
- package/src/engine-components/SyncedTransform.ts +383 -383
- package/src/engine-components/TestRunner.ts +118 -118
- package/src/engine-components/TransformGizmo.ts +219 -219
- package/src/engine-components/VideoPlayer.ts +1025 -1025
- package/src/engine-components/Voip.ts +363 -363
- package/src/engine-components/api.ts +60 -60
- package/src/engine-components/avatar/AvatarBlink_Simple.ts +69 -69
- package/src/engine-components/avatar/AvatarEyeLook_Rotation.ts +63 -63
- package/src/engine-components/avatar/Avatar_Brain_LookAt.ts +139 -139
- package/src/engine-components/avatar/Avatar_MouthShapes.ts +83 -83
- package/src/engine-components/avatar/Avatar_MustacheShake.ts +31 -31
- package/src/engine-components/codegen/components.ts +217 -217
- package/src/engine-components/debug/LogStats.ts +21 -21
- package/src/engine-components/export/gltf/GltfExport.ts +265 -265
- package/src/engine-components/export/usdz/Extension.ts +24 -24
- package/src/engine-components/export/usdz/ThreeUSDZExporter.ts +2413 -2413
- package/src/engine-components/export/usdz/USDZExporter.ts +705 -705
- package/src/engine-components/export/usdz/extensions/Animation.ts +1204 -1204
- package/src/engine-components/export/usdz/extensions/DocumentExtension.ts +9 -9
- package/src/engine-components/export/usdz/extensions/USDZText.ts +240 -240
- package/src/engine-components/export/usdz/extensions/USDZUI.ts +189 -189
- package/src/engine-components/export/usdz/extensions/behavior/Actions.ts +99 -99
- package/src/engine-components/export/usdz/extensions/behavior/AudioExtension.ts +102 -102
- package/src/engine-components/export/usdz/extensions/behavior/Behaviour.ts +320 -320
- package/src/engine-components/export/usdz/extensions/behavior/BehaviourComponents.ts +1225 -1225
- package/src/engine-components/export/usdz/extensions/behavior/BehavioursBuilder.ts +646 -646
- package/src/engine-components/export/usdz/extensions/behavior/PhysicsExtension.ts +132 -132
- package/src/engine-components/export/usdz/index.ts +2 -2
- package/src/engine-components/export/usdz/utils/animationutils.ts +191 -191
- package/src/engine-components/export/usdz/utils/quicklook.ts +50 -50
- package/src/engine-components/particlesystem/ParticleSystem.ts +1287 -1287
- package/src/engine-components/particlesystem/ParticleSystemModules.ts +1765 -1765
- package/src/engine-components/particlesystem/ParticleSystemSubEmitter.ts +111 -111
- package/src/engine-components/particlesystem/api.ts +1 -1
- package/src/engine-components/postprocessing/Effects/Antialiasing.ts +55 -55
- package/src/engine-components/postprocessing/Effects/BloomEffect.ts +116 -116
- package/src/engine-components/postprocessing/Effects/ChromaticAberration.ts +37 -37
- package/src/engine-components/postprocessing/Effects/ColorAdjustments.ts +95 -95
- package/src/engine-components/postprocessing/Effects/DepthOfField.ts +103 -103
- package/src/engine-components/postprocessing/Effects/EffectWrapper.ts +25 -25
- package/src/engine-components/postprocessing/Effects/Pixelation.ts +32 -32
- package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.ts +90 -90
- package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.ts +191 -191
- package/src/engine-components/postprocessing/Effects/Sharpening.ts +138 -138
- package/src/engine-components/postprocessing/Effects/TiltShiftEffect.ts +61 -61
- package/src/engine-components/postprocessing/Effects/Tonemapping.ts +155 -155
- package/src/engine-components/postprocessing/Effects/Vignette.ts +59 -59
- package/src/engine-components/postprocessing/PostProcessingEffect.ts +172 -172
- package/src/engine-components/postprocessing/PostProcessingHandler.ts +398 -398
- package/src/engine-components/postprocessing/Volume.ts +410 -410
- package/src/engine-components/postprocessing/VolumeParameter.ts +158 -158
- package/src/engine-components/postprocessing/VolumeProfile.ts +61 -61
- package/src/engine-components/postprocessing/index.ts +5 -5
- package/src/engine-components/postprocessing/utils.ts +52 -52
- package/src/engine-components/timeline/PlayableDirector.ts +722 -722
- package/src/engine-components/timeline/SignalAsset.ts +144 -144
- package/src/engine-components/timeline/TimelineModels.ts +92 -92
- package/src/engine-components/timeline/TimelineTracks.ts +967 -967
- package/src/engine-components/timeline/index.ts +3 -3
- package/src/engine-components/ui/BaseUIComponent.ts +203 -203
- package/src/engine-components/ui/Button.ts +307 -307
- package/src/engine-components/ui/Canvas.ts +419 -419
- package/src/engine-components/ui/CanvasGroup.ts +54 -54
- package/src/engine-components/ui/EventSystem.ts +853 -853
- package/src/engine-components/ui/Graphic.ts +275 -275
- package/src/engine-components/ui/Image.ts +112 -112
- package/src/engine-components/ui/InputField.ts +321 -321
- package/src/engine-components/ui/Interfaces.ts +57 -57
- package/src/engine-components/ui/Layout.ts +334 -334
- package/src/engine-components/ui/Outline.ts +13 -13
- package/src/engine-components/ui/PointerEvents.ts +206 -206
- package/src/engine-components/ui/RaycastUtils.ts +69 -69
- package/src/engine-components/ui/Raycaster.ts +102 -102
- package/src/engine-components/ui/RectTransform.ts +375 -375
- package/src/engine-components/ui/SpatialHtml.ts +79 -79
- package/src/engine-components/ui/Symbols.ts +1 -1
- package/src/engine-components/ui/Text.ts +578 -578
- package/src/engine-components/ui/Utils.ts +113 -113
- package/src/engine-components/utils/EnvironmentScene.ts +245 -245
- package/src/engine-components/utils/LookAt.ts +88 -88
- package/src/engine-components/utils/OpenURL.ts +114 -114
- package/src/engine-components/webxr/Avatar.ts +265 -265
- package/src/engine-components/webxr/TeleportTarget.ts +9 -9
- package/src/engine-components/webxr/WebARCameraBackground.ts +175 -175
- package/src/engine-components/webxr/WebARSessionRoot.ts +880 -880
- package/src/engine-components/webxr/WebXR.ts +585 -585
- package/src/engine-components/webxr/WebXRAvatar.ts +66 -66
- package/src/engine-components/webxr/WebXRImageTracking.ts +518 -518
- package/src/engine-components/webxr/WebXRPlaneTracking.ts +570 -570
- package/src/engine-components/webxr/WebXRRig.ts +77 -77
- package/src/engine-components/webxr/XRFlag.ts +147 -147
- package/src/engine-components/webxr/controllers/XRControllerFollow.ts +118 -118
- package/src/engine-components/webxr/controllers/XRControllerModel.ts +374 -374
- package/src/engine-components/webxr/controllers/XRControllerMovement.ts +550 -550
- package/src/engine-components/webxr/index.ts +2 -2
- package/src/engine-components/webxr/types.ts +3 -3
- package/src/engine-components-experimental/Presentation.ts +12 -12
- package/src/engine-components-experimental/api.ts +4 -4
- package/src/engine-components-experimental/networking/PlayerSync.ts +401 -401
- package/src/engine-schemes/COMPILE_SCHEMES.bat +3 -3
- package/src/engine-schemes/COMPILE_TS.bat +11 -11
- package/src/engine-schemes/README.md +1 -1
- package/src/engine-schemes/api.ts +12 -12
- package/src/engine-schemes/schemes.ts +28 -28
- package/src/engine-schemes/synced-camera-model.ts +92 -92
- package/src/engine-schemes/synced-transform-model.ts +90 -90
- package/src/engine-schemes/syncedCamera.fbs +10 -10
- package/src/engine-schemes/transform.ts +50 -50
- package/src/engine-schemes/transforms.fbs +25 -25
- package/src/engine-schemes/vec.fbs +19 -19
- package/src/engine-schemes/vec2.ts +33 -33
- package/src/engine-schemes/vec3.ts +38 -38
- package/src/engine-schemes/vec4.ts +43 -43
- package/src/engine-schemes/vr-user-state-buffer.ts +145 -145
- package/src/engine-schemes/vrUserStateBuffer.fbs +17 -17
- package/src/include/draco/draco_decoder.js +34 -34
- package/src/include/ktx2/basis_transcoder.js +21 -21
- package/src/include/needle/arial-msdf.json +1471 -1471
- package/src/include/three/DragControls.js +231 -231
- package/src/include/three/EXT_mesh_gpu_instancing_exporter.js +66 -66
- package/src/needle-engine.ts +70 -70
- package/lib/engine/engine.d.ts +0 -4
- package/lib/engine/engine.js +0 -12
- package/lib/engine/engine.js.map +0 -1
- package/lib/engine/engine_web_api.d.ts +0 -12
- package/lib/engine/engine_web_api.js +0 -113
- package/lib/engine/engine_web_api.js.map +0 -1
- package/lib/engine-components/FlyControls.d.ts +0 -10
- package/lib/engine-components/FlyControls.js +0 -29
- package/lib/engine-components/FlyControls.js.map +0 -1
- package/src/engine-schemes/dist/api.js +0 -17
- package/src/engine-schemes/dist/api.js.meta +0 -7
- package/src/engine-schemes/dist/schemes.js +0 -25
- package/src/engine-schemes/dist/schemes.js.meta +0 -7
- package/src/engine-schemes/dist/synced-camera-model.js +0 -74
- package/src/engine-schemes/dist/synced-camera-model.js.meta +0 -7
- package/src/engine-schemes/dist/synced-transform-model.js +0 -73
- package/src/engine-schemes/dist/synced-transform-model.js.meta +0 -7
- package/src/engine-schemes/dist/transform.js +0 -46
- package/src/engine-schemes/dist/transform.js.meta +0 -7
- package/src/engine-schemes/dist/vec2.js +0 -32
- package/src/engine-schemes/dist/vec2.js.meta +0 -7
- package/src/engine-schemes/dist/vec3.js +0 -36
- package/src/engine-schemes/dist/vec3.js.meta +0 -7
- package/src/engine-schemes/dist/vec4.js +0 -40
- package/src/engine-schemes/dist/vec4.js.meta +0 -7
- package/src/engine-schemes/dist/vr-user-state-buffer.js +0 -110
- package/src/engine-schemes/dist/vr-user-state-buffer.js.meta +0 -7
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { RGBAColor } from "../engine/js-extensions/index.js";
|
|
2
|
-
import { Behaviour } from "./Component.js";
|
|
3
|
-
/**
|
|
4
|
-
* The mode of the ShadowCatcher.
|
|
5
|
-
* - ShadowMask: only renders shadows.
|
|
6
|
-
* - Additive: renders shadows additively.
|
|
7
|
-
* - Occluder: occludes light.
|
|
8
|
-
*/
|
|
9
|
-
declare enum ShadowMode {
|
|
10
|
-
ShadowMask = 0,
|
|
11
|
-
Additive = 1,
|
|
12
|
-
Occluder = 2
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* ShadowCatcher can be added to an Object3D to make it render shadows (or light) in the scene. It can also be used to create a shadow mask, or to occlude light.
|
|
16
|
-
* If the GameObject is a Mesh, it will apply a shadow-catching material to it - otherwise it will create a quad with the shadow-catching material.
|
|
17
|
-
*
|
|
18
|
-
* Note that ShadowCatcher meshes are not raycastable by default; if you want them to be raycastable, change the layers in `onEnable()`.
|
|
19
|
-
* @category Rendering
|
|
20
|
-
* @group Components
|
|
21
|
-
*/
|
|
22
|
-
export declare class ShadowCatcher extends Behaviour {
|
|
23
|
-
mode: ShadowMode;
|
|
24
|
-
shadowColor: RGBAColor;
|
|
25
|
-
private targetMesh?;
|
|
26
|
-
/** @internal */
|
|
27
|
-
start(): void;
|
|
28
|
-
applyLightBlendMaterial(): void;
|
|
29
|
-
applyShadowMaterial(): void;
|
|
30
|
-
applyOccluderMaterial(): void;
|
|
31
|
-
private applyMaterialOptions;
|
|
32
|
-
}
|
|
33
|
-
export {};
|
|
1
|
+
import { RGBAColor } from "../engine/js-extensions/index.js";
|
|
2
|
+
import { Behaviour } from "./Component.js";
|
|
3
|
+
/**
|
|
4
|
+
* The mode of the ShadowCatcher.
|
|
5
|
+
* - ShadowMask: only renders shadows.
|
|
6
|
+
* - Additive: renders shadows additively.
|
|
7
|
+
* - Occluder: occludes light.
|
|
8
|
+
*/
|
|
9
|
+
declare enum ShadowMode {
|
|
10
|
+
ShadowMask = 0,
|
|
11
|
+
Additive = 1,
|
|
12
|
+
Occluder = 2
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* ShadowCatcher can be added to an Object3D to make it render shadows (or light) in the scene. It can also be used to create a shadow mask, or to occlude light.
|
|
16
|
+
* If the GameObject is a Mesh, it will apply a shadow-catching material to it - otherwise it will create a quad with the shadow-catching material.
|
|
17
|
+
*
|
|
18
|
+
* Note that ShadowCatcher meshes are not raycastable by default; if you want them to be raycastable, change the layers in `onEnable()`.
|
|
19
|
+
* @category Rendering
|
|
20
|
+
* @group Components
|
|
21
|
+
*/
|
|
22
|
+
export declare class ShadowCatcher extends Behaviour {
|
|
23
|
+
mode: ShadowMode;
|
|
24
|
+
shadowColor: RGBAColor;
|
|
25
|
+
private targetMesh?;
|
|
26
|
+
/** @internal */
|
|
27
|
+
start(): void;
|
|
28
|
+
applyLightBlendMaterial(): void;
|
|
29
|
+
applyShadowMaterial(): void;
|
|
30
|
+
applyOccluderMaterial(): void;
|
|
31
|
+
private applyMaterialOptions;
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
@@ -1,167 +1,167 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
import { AdditiveBlending, Mesh, MeshBasicMaterial, MeshStandardMaterial, ShadowMaterial } from "three";
|
|
8
|
-
import { ObjectUtils, PrimitiveType } from "../engine/engine_create_objects.js";
|
|
9
|
-
import { serializable } from "../engine/engine_serialization_decorator.js";
|
|
10
|
-
import { RGBAColor } from "../engine/js-extensions/index.js";
|
|
11
|
-
import { Behaviour } from "./Component.js";
|
|
12
|
-
/**
|
|
13
|
-
* The mode of the ShadowCatcher.
|
|
14
|
-
* - ShadowMask: only renders shadows.
|
|
15
|
-
* - Additive: renders shadows additively.
|
|
16
|
-
* - Occluder: occludes light.
|
|
17
|
-
*/
|
|
18
|
-
var ShadowMode;
|
|
19
|
-
(function (ShadowMode) {
|
|
20
|
-
ShadowMode[ShadowMode["ShadowMask"] = 0] = "ShadowMask";
|
|
21
|
-
ShadowMode[ShadowMode["Additive"] = 1] = "Additive";
|
|
22
|
-
ShadowMode[ShadowMode["Occluder"] = 2] = "Occluder";
|
|
23
|
-
})(ShadowMode || (ShadowMode = {}));
|
|
24
|
-
/**
|
|
25
|
-
* ShadowCatcher can be added to an Object3D to make it render shadows (or light) in the scene. It can also be used to create a shadow mask, or to occlude light.
|
|
26
|
-
* If the GameObject is a Mesh, it will apply a shadow-catching material to it - otherwise it will create a quad with the shadow-catching material.
|
|
27
|
-
*
|
|
28
|
-
* Note that ShadowCatcher meshes are not raycastable by default; if you want them to be raycastable, change the layers in `onEnable()`.
|
|
29
|
-
* @category Rendering
|
|
30
|
-
* @group Components
|
|
31
|
-
*/
|
|
32
|
-
export class ShadowCatcher extends Behaviour {
|
|
33
|
-
//@type Needle.Engine.ShadowCatcher.Mode
|
|
34
|
-
mode = ShadowMode.ShadowMask;
|
|
35
|
-
//@type UnityEngine.Color
|
|
36
|
-
shadowColor = new RGBAColor(0, 0, 0, 1);
|
|
37
|
-
targetMesh;
|
|
38
|
-
/** @internal */
|
|
39
|
-
start() {
|
|
40
|
-
// if there's no geometry, make a basic quad
|
|
41
|
-
if (!(this.gameObject instanceof Mesh)) {
|
|
42
|
-
const quad = ObjectUtils.createPrimitive(PrimitiveType.Quad, {
|
|
43
|
-
name: "ShadowCatcher",
|
|
44
|
-
material: new MeshStandardMaterial({
|
|
45
|
-
// HACK heuristic to get approx. the same colors out as with the current default ShadowCatcher material
|
|
46
|
-
// not clear why this is needed; assumption is that the Renderer component does something we're not respecting here
|
|
47
|
-
color: 0x999999,
|
|
48
|
-
roughness: 1,
|
|
49
|
-
metalness: 0,
|
|
50
|
-
transparent: true,
|
|
51
|
-
})
|
|
52
|
-
});
|
|
53
|
-
quad.receiveShadow = true;
|
|
54
|
-
quad.geometry.rotateX(-Math.PI / 2);
|
|
55
|
-
// TODO breaks shadow catching right now
|
|
56
|
-
// const renderer = new Renderer();
|
|
57
|
-
// renderer.receiveShadows = true;
|
|
58
|
-
// GameObject.addComponent(quad, Renderer);
|
|
59
|
-
this.gameObject.add(quad);
|
|
60
|
-
this.targetMesh = quad;
|
|
61
|
-
}
|
|
62
|
-
else if (this.gameObject instanceof Mesh && this.gameObject.material) {
|
|
63
|
-
// make sure we have a unique material to work with
|
|
64
|
-
this.gameObject.material = this.gameObject.material.clone();
|
|
65
|
-
this.targetMesh = this.gameObject;
|
|
66
|
-
// make sure the mesh can receive shadows
|
|
67
|
-
this.targetMesh.receiveShadow = true;
|
|
68
|
-
}
|
|
69
|
-
if (!this.targetMesh) {
|
|
70
|
-
console.warn("ShadowCatcher: no mesh to apply shadow catching to. Groups are currently not supported.");
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
// Shadowcatcher mesh isnt raycastable
|
|
74
|
-
this.targetMesh.layers.set(2);
|
|
75
|
-
switch (this.mode) {
|
|
76
|
-
case ShadowMode.ShadowMask:
|
|
77
|
-
this.applyShadowMaterial();
|
|
78
|
-
break;
|
|
79
|
-
case ShadowMode.Additive:
|
|
80
|
-
this.applyLightBlendMaterial();
|
|
81
|
-
break;
|
|
82
|
-
case ShadowMode.Occluder:
|
|
83
|
-
this.applyOccluderMaterial();
|
|
84
|
-
break;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
// Custom blending, diffuse-only lighting blended onto the scene additively.
|
|
88
|
-
// Works great for Point Lights and spot lights,
|
|
89
|
-
// doesn't work for directional lights (since they're lighting up everything else).
|
|
90
|
-
// Works even better with an additional black-ish gradient to darken parts of the AR scene
|
|
91
|
-
// so that lights become more visible on bright surfaces.
|
|
92
|
-
applyLightBlendMaterial() {
|
|
93
|
-
if (!this.targetMesh)
|
|
94
|
-
return;
|
|
95
|
-
const material = this.targetMesh.material;
|
|
96
|
-
material.blending = AdditiveBlending;
|
|
97
|
-
this.applyMaterialOptions(material);
|
|
98
|
-
material.onBeforeCompile = (shader) => {
|
|
99
|
-
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L181
|
|
100
|
-
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib.js#LL284C11-L284C11
|
|
101
|
-
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib/shadow.glsl.js#L40
|
|
102
|
-
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderChunk/shadowmask_pars_fragment.glsl.js#L2
|
|
103
|
-
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L281
|
|
104
|
-
shader.fragmentShader = shader.fragmentShader.replace("vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;", `vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;
|
|
105
|
-
// diffuse-only lighting with overdrive to somewhat compensate
|
|
106
|
-
// for the loss of indirect lighting and to make it more visible.
|
|
107
|
-
vec3 direct = (reflectedLight.directDiffuse + reflectedLight.directSpecular) * 6.6;
|
|
108
|
-
float max = max(direct.r, max(direct.g, direct.b));
|
|
109
|
-
|
|
110
|
-
// early out - we're simply returning direct lighting and some alpha based on it so it can
|
|
111
|
-
// be blended onto the scene.
|
|
112
|
-
gl_FragColor = vec4(direct, max);
|
|
113
|
-
return;
|
|
114
|
-
`);
|
|
115
|
-
};
|
|
116
|
-
material.userData.isLightBlendMaterial = true;
|
|
117
|
-
}
|
|
118
|
-
// ShadowMaterial: only does a mask; shadowed areas are fully black.
|
|
119
|
-
// doesn't take light attenuation into account.
|
|
120
|
-
// works great for Directional Lights.
|
|
121
|
-
applyShadowMaterial() {
|
|
122
|
-
if (this.targetMesh) {
|
|
123
|
-
if (this.targetMesh.material.type !== "ShadowMaterial") {
|
|
124
|
-
const material = new ShadowMaterial();
|
|
125
|
-
material.color = this.shadowColor;
|
|
126
|
-
material.opacity = this.shadowColor.alpha;
|
|
127
|
-
this.applyMaterialOptions(material);
|
|
128
|
-
this.targetMesh.material = material;
|
|
129
|
-
material.userData.isShadowCatcherMaterial = true;
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
const material = this.targetMesh.material;
|
|
133
|
-
material.color = this.shadowColor;
|
|
134
|
-
material.opacity = this.shadowColor.alpha;
|
|
135
|
-
this.applyMaterialOptions(material);
|
|
136
|
-
material.userData.isShadowCatcherMaterial = true;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
applyOccluderMaterial() {
|
|
141
|
-
if (this.targetMesh) {
|
|
142
|
-
let material = this.targetMesh.material;
|
|
143
|
-
if (!material) {
|
|
144
|
-
const mat = new MeshBasicMaterial();
|
|
145
|
-
this.targetMesh.material = mat;
|
|
146
|
-
material = mat;
|
|
147
|
-
}
|
|
148
|
-
material.depthWrite = true;
|
|
149
|
-
material.stencilWrite = true;
|
|
150
|
-
material.colorWrite = false;
|
|
151
|
-
this.gameObject.renderOrder = -100;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
applyMaterialOptions(material) {
|
|
155
|
-
if (material) {
|
|
156
|
-
material.depthWrite = false;
|
|
157
|
-
material.stencilWrite = false;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
__decorate([
|
|
162
|
-
serializable()
|
|
163
|
-
], ShadowCatcher.prototype, "mode", void 0);
|
|
164
|
-
__decorate([
|
|
165
|
-
serializable(RGBAColor)
|
|
166
|
-
], ShadowCatcher.prototype, "shadowColor", void 0);
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { AdditiveBlending, Mesh, MeshBasicMaterial, MeshStandardMaterial, ShadowMaterial } from "three";
|
|
8
|
+
import { ObjectUtils, PrimitiveType } from "../engine/engine_create_objects.js";
|
|
9
|
+
import { serializable } from "../engine/engine_serialization_decorator.js";
|
|
10
|
+
import { RGBAColor } from "../engine/js-extensions/index.js";
|
|
11
|
+
import { Behaviour } from "./Component.js";
|
|
12
|
+
/**
|
|
13
|
+
* The mode of the ShadowCatcher.
|
|
14
|
+
* - ShadowMask: only renders shadows.
|
|
15
|
+
* - Additive: renders shadows additively.
|
|
16
|
+
* - Occluder: occludes light.
|
|
17
|
+
*/
|
|
18
|
+
var ShadowMode;
|
|
19
|
+
(function (ShadowMode) {
|
|
20
|
+
ShadowMode[ShadowMode["ShadowMask"] = 0] = "ShadowMask";
|
|
21
|
+
ShadowMode[ShadowMode["Additive"] = 1] = "Additive";
|
|
22
|
+
ShadowMode[ShadowMode["Occluder"] = 2] = "Occluder";
|
|
23
|
+
})(ShadowMode || (ShadowMode = {}));
|
|
24
|
+
/**
|
|
25
|
+
* ShadowCatcher can be added to an Object3D to make it render shadows (or light) in the scene. It can also be used to create a shadow mask, or to occlude light.
|
|
26
|
+
* If the GameObject is a Mesh, it will apply a shadow-catching material to it - otherwise it will create a quad with the shadow-catching material.
|
|
27
|
+
*
|
|
28
|
+
* Note that ShadowCatcher meshes are not raycastable by default; if you want them to be raycastable, change the layers in `onEnable()`.
|
|
29
|
+
* @category Rendering
|
|
30
|
+
* @group Components
|
|
31
|
+
*/
|
|
32
|
+
export class ShadowCatcher extends Behaviour {
|
|
33
|
+
//@type Needle.Engine.ShadowCatcher.Mode
|
|
34
|
+
mode = ShadowMode.ShadowMask;
|
|
35
|
+
//@type UnityEngine.Color
|
|
36
|
+
shadowColor = new RGBAColor(0, 0, 0, 1);
|
|
37
|
+
targetMesh;
|
|
38
|
+
/** @internal */
|
|
39
|
+
start() {
|
|
40
|
+
// if there's no geometry, make a basic quad
|
|
41
|
+
if (!(this.gameObject instanceof Mesh)) {
|
|
42
|
+
const quad = ObjectUtils.createPrimitive(PrimitiveType.Quad, {
|
|
43
|
+
name: "ShadowCatcher",
|
|
44
|
+
material: new MeshStandardMaterial({
|
|
45
|
+
// HACK heuristic to get approx. the same colors out as with the current default ShadowCatcher material
|
|
46
|
+
// not clear why this is needed; assumption is that the Renderer component does something we're not respecting here
|
|
47
|
+
color: 0x999999,
|
|
48
|
+
roughness: 1,
|
|
49
|
+
metalness: 0,
|
|
50
|
+
transparent: true,
|
|
51
|
+
})
|
|
52
|
+
});
|
|
53
|
+
quad.receiveShadow = true;
|
|
54
|
+
quad.geometry.rotateX(-Math.PI / 2);
|
|
55
|
+
// TODO breaks shadow catching right now
|
|
56
|
+
// const renderer = new Renderer();
|
|
57
|
+
// renderer.receiveShadows = true;
|
|
58
|
+
// GameObject.addComponent(quad, Renderer);
|
|
59
|
+
this.gameObject.add(quad);
|
|
60
|
+
this.targetMesh = quad;
|
|
61
|
+
}
|
|
62
|
+
else if (this.gameObject instanceof Mesh && this.gameObject.material) {
|
|
63
|
+
// make sure we have a unique material to work with
|
|
64
|
+
this.gameObject.material = this.gameObject.material.clone();
|
|
65
|
+
this.targetMesh = this.gameObject;
|
|
66
|
+
// make sure the mesh can receive shadows
|
|
67
|
+
this.targetMesh.receiveShadow = true;
|
|
68
|
+
}
|
|
69
|
+
if (!this.targetMesh) {
|
|
70
|
+
console.warn("ShadowCatcher: no mesh to apply shadow catching to. Groups are currently not supported.");
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
// Shadowcatcher mesh isnt raycastable
|
|
74
|
+
this.targetMesh.layers.set(2);
|
|
75
|
+
switch (this.mode) {
|
|
76
|
+
case ShadowMode.ShadowMask:
|
|
77
|
+
this.applyShadowMaterial();
|
|
78
|
+
break;
|
|
79
|
+
case ShadowMode.Additive:
|
|
80
|
+
this.applyLightBlendMaterial();
|
|
81
|
+
break;
|
|
82
|
+
case ShadowMode.Occluder:
|
|
83
|
+
this.applyOccluderMaterial();
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// Custom blending, diffuse-only lighting blended onto the scene additively.
|
|
88
|
+
// Works great for Point Lights and spot lights,
|
|
89
|
+
// doesn't work for directional lights (since they're lighting up everything else).
|
|
90
|
+
// Works even better with an additional black-ish gradient to darken parts of the AR scene
|
|
91
|
+
// so that lights become more visible on bright surfaces.
|
|
92
|
+
applyLightBlendMaterial() {
|
|
93
|
+
if (!this.targetMesh)
|
|
94
|
+
return;
|
|
95
|
+
const material = this.targetMesh.material;
|
|
96
|
+
material.blending = AdditiveBlending;
|
|
97
|
+
this.applyMaterialOptions(material);
|
|
98
|
+
material.onBeforeCompile = (shader) => {
|
|
99
|
+
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib/meshphysical.glsl.js#L181
|
|
100
|
+
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib.js#LL284C11-L284C11
|
|
101
|
+
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderLib/shadow.glsl.js#L40
|
|
102
|
+
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderChunk/shadowmask_pars_fragment.glsl.js#L2
|
|
103
|
+
// see https://github.com/mrdoob/three.js/blob/dev/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js#L281
|
|
104
|
+
shader.fragmentShader = shader.fragmentShader.replace("vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;", `vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;
|
|
105
|
+
// diffuse-only lighting with overdrive to somewhat compensate
|
|
106
|
+
// for the loss of indirect lighting and to make it more visible.
|
|
107
|
+
vec3 direct = (reflectedLight.directDiffuse + reflectedLight.directSpecular) * 6.6;
|
|
108
|
+
float max = max(direct.r, max(direct.g, direct.b));
|
|
109
|
+
|
|
110
|
+
// early out - we're simply returning direct lighting and some alpha based on it so it can
|
|
111
|
+
// be blended onto the scene.
|
|
112
|
+
gl_FragColor = vec4(direct, max);
|
|
113
|
+
return;
|
|
114
|
+
`);
|
|
115
|
+
};
|
|
116
|
+
material.userData.isLightBlendMaterial = true;
|
|
117
|
+
}
|
|
118
|
+
// ShadowMaterial: only does a mask; shadowed areas are fully black.
|
|
119
|
+
// doesn't take light attenuation into account.
|
|
120
|
+
// works great for Directional Lights.
|
|
121
|
+
applyShadowMaterial() {
|
|
122
|
+
if (this.targetMesh) {
|
|
123
|
+
if (this.targetMesh.material.type !== "ShadowMaterial") {
|
|
124
|
+
const material = new ShadowMaterial();
|
|
125
|
+
material.color = this.shadowColor;
|
|
126
|
+
material.opacity = this.shadowColor.alpha;
|
|
127
|
+
this.applyMaterialOptions(material);
|
|
128
|
+
this.targetMesh.material = material;
|
|
129
|
+
material.userData.isShadowCatcherMaterial = true;
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
const material = this.targetMesh.material;
|
|
133
|
+
material.color = this.shadowColor;
|
|
134
|
+
material.opacity = this.shadowColor.alpha;
|
|
135
|
+
this.applyMaterialOptions(material);
|
|
136
|
+
material.userData.isShadowCatcherMaterial = true;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
applyOccluderMaterial() {
|
|
141
|
+
if (this.targetMesh) {
|
|
142
|
+
let material = this.targetMesh.material;
|
|
143
|
+
if (!material) {
|
|
144
|
+
const mat = new MeshBasicMaterial();
|
|
145
|
+
this.targetMesh.material = mat;
|
|
146
|
+
material = mat;
|
|
147
|
+
}
|
|
148
|
+
material.depthWrite = true;
|
|
149
|
+
material.stencilWrite = true;
|
|
150
|
+
material.colorWrite = false;
|
|
151
|
+
this.gameObject.renderOrder = -100;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
applyMaterialOptions(material) {
|
|
155
|
+
if (material) {
|
|
156
|
+
material.depthWrite = false;
|
|
157
|
+
material.stencilWrite = false;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
__decorate([
|
|
162
|
+
serializable()
|
|
163
|
+
], ShadowCatcher.prototype, "mode", void 0);
|
|
164
|
+
__decorate([
|
|
165
|
+
serializable(RGBAColor)
|
|
166
|
+
], ShadowCatcher.prototype, "shadowColor", void 0);
|
|
167
167
|
//# sourceMappingURL=ShadowCatcher.js.map
|
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
import { Behaviour } from "./Component.js";
|
|
2
|
-
/**
|
|
3
|
-
* RemoteSkybox is a component that allows you to set the skybox of a scene from a URL or a local file.
|
|
4
|
-
* It supports .hdr, .exr, .jpg, .png files.
|
|
5
|
-
*
|
|
6
|
-
* ### Events
|
|
7
|
-
* - `dropped-unknown-url`: Emitted when a file is dropped on the scene. The event detail contains the sender, the url and a function to apply the url.
|
|
8
|
-
*
|
|
9
|
-
* @example adding a skybox
|
|
10
|
-
* ```ts
|
|
11
|
-
* GameObject.addComponent(gameObject, Skybox, { url: "https://example.com/skybox.hdr", background: true, environment: true });
|
|
12
|
-
* ```
|
|
13
|
-
*
|
|
14
|
-
* @example handle custom url
|
|
15
|
-
* ```ts
|
|
16
|
-
* const skybox = GameObject.addComponent(gameObject, Skybox);
|
|
17
|
-
* skybox.addEventListener("dropped-unknown-url", (evt) => {
|
|
18
|
-
* let url = evt.detail.url;
|
|
19
|
-
* console.log("User dropped file", url);
|
|
20
|
-
* // change url or resolve it differently
|
|
21
|
-
* url = "https://example.com/skybox.hdr";
|
|
22
|
-
* // apply the url
|
|
23
|
-
* evt.detail.apply(url);
|
|
24
|
-
* });
|
|
25
|
-
* ```
|
|
26
|
-
*/
|
|
27
|
-
export declare class RemoteSkybox extends Behaviour {
|
|
28
|
-
/**
|
|
29
|
-
* URL to a remote skybox. This value can also use a magic skybox name. Options are "quicklook", "quicklook-ar", "studio", "blurred-skybox".
|
|
30
|
-
* @example
|
|
31
|
-
* ```ts
|
|
32
|
-
* skybox.url = "https://example.com/skybox.hdr";
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
url?: string;
|
|
36
|
-
/**
|
|
37
|
-
* When enabled a user can drop a link to a skybox image on the scene to set the skybox.
|
|
38
|
-
* @default true
|
|
39
|
-
*/
|
|
40
|
-
allowDrop: boolean;
|
|
41
|
-
/**
|
|
42
|
-
* When enabled the skybox will be set as the background of the scene.
|
|
43
|
-
* @default true
|
|
44
|
-
*/
|
|
45
|
-
background: boolean;
|
|
46
|
-
/**
|
|
47
|
-
* When enabled the skybox will be set as the environment of the scene (to be used as environment map for reflections and lighting)
|
|
48
|
-
* @default true
|
|
49
|
-
*/
|
|
50
|
-
environment: boolean;
|
|
51
|
-
/**
|
|
52
|
-
* When enabled dropped skybox urls (or assigned skybox urls) will be networked to other users in the same networked room.
|
|
53
|
-
* @default true
|
|
54
|
-
*/
|
|
55
|
-
allowNetworking: boolean;
|
|
56
|
-
private _loader?;
|
|
57
|
-
private _prevUrl?;
|
|
58
|
-
private _prevLoadedEnvironment?;
|
|
59
|
-
private _prevEnvironment;
|
|
60
|
-
private _prevBackground;
|
|
61
|
-
/** @internal */
|
|
62
|
-
onEnable(): void;
|
|
63
|
-
/** @internal */
|
|
64
|
-
onDisable(): void;
|
|
65
|
-
private urlChangedSyncField;
|
|
66
|
-
/**
|
|
67
|
-
* Set the skybox from a given url
|
|
68
|
-
* @param url The url of the skybox image
|
|
69
|
-
* @param name Define name of the file with extension if it isn't apart of the url
|
|
70
|
-
* @returns Whether the skybox was successfully set
|
|
71
|
-
*/
|
|
72
|
-
setSkybox(url: string | undefined | null, name?: string): Promise<boolean>;
|
|
73
|
-
private loadTexture;
|
|
74
|
-
private applySkybox;
|
|
75
|
-
private readonly validTextureTypes;
|
|
76
|
-
private isRemoteTexture;
|
|
77
|
-
private isValidTextureType;
|
|
78
|
-
private registerDropEvents;
|
|
79
|
-
private unregisterDropEvents;
|
|
80
|
-
private onDragOverEvent;
|
|
81
|
-
private onDrop;
|
|
82
|
-
}
|
|
1
|
+
import { Behaviour } from "./Component.js";
|
|
2
|
+
/**
|
|
3
|
+
* RemoteSkybox is a component that allows you to set the skybox of a scene from a URL or a local file.
|
|
4
|
+
* It supports .hdr, .exr, .jpg, .png files.
|
|
5
|
+
*
|
|
6
|
+
* ### Events
|
|
7
|
+
* - `dropped-unknown-url`: Emitted when a file is dropped on the scene. The event detail contains the sender, the url and a function to apply the url.
|
|
8
|
+
*
|
|
9
|
+
* @example adding a skybox
|
|
10
|
+
* ```ts
|
|
11
|
+
* GameObject.addComponent(gameObject, Skybox, { url: "https://example.com/skybox.hdr", background: true, environment: true });
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* @example handle custom url
|
|
15
|
+
* ```ts
|
|
16
|
+
* const skybox = GameObject.addComponent(gameObject, Skybox);
|
|
17
|
+
* skybox.addEventListener("dropped-unknown-url", (evt) => {
|
|
18
|
+
* let url = evt.detail.url;
|
|
19
|
+
* console.log("User dropped file", url);
|
|
20
|
+
* // change url or resolve it differently
|
|
21
|
+
* url = "https://example.com/skybox.hdr";
|
|
22
|
+
* // apply the url
|
|
23
|
+
* evt.detail.apply(url);
|
|
24
|
+
* });
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare class RemoteSkybox extends Behaviour {
|
|
28
|
+
/**
|
|
29
|
+
* URL to a remote skybox. This value can also use a magic skybox name. Options are "quicklook", "quicklook-ar", "studio", "blurred-skybox".
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* skybox.url = "https://example.com/skybox.hdr";
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
url?: string;
|
|
36
|
+
/**
|
|
37
|
+
* When enabled a user can drop a link to a skybox image on the scene to set the skybox.
|
|
38
|
+
* @default true
|
|
39
|
+
*/
|
|
40
|
+
allowDrop: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* When enabled the skybox will be set as the background of the scene.
|
|
43
|
+
* @default true
|
|
44
|
+
*/
|
|
45
|
+
background: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* When enabled the skybox will be set as the environment of the scene (to be used as environment map for reflections and lighting)
|
|
48
|
+
* @default true
|
|
49
|
+
*/
|
|
50
|
+
environment: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* When enabled dropped skybox urls (or assigned skybox urls) will be networked to other users in the same networked room.
|
|
53
|
+
* @default true
|
|
54
|
+
*/
|
|
55
|
+
allowNetworking: boolean;
|
|
56
|
+
private _loader?;
|
|
57
|
+
private _prevUrl?;
|
|
58
|
+
private _prevLoadedEnvironment?;
|
|
59
|
+
private _prevEnvironment;
|
|
60
|
+
private _prevBackground;
|
|
61
|
+
/** @internal */
|
|
62
|
+
onEnable(): void;
|
|
63
|
+
/** @internal */
|
|
64
|
+
onDisable(): void;
|
|
65
|
+
private urlChangedSyncField;
|
|
66
|
+
/**
|
|
67
|
+
* Set the skybox from a given url
|
|
68
|
+
* @param url The url of the skybox image
|
|
69
|
+
* @param name Define name of the file with extension if it isn't apart of the url
|
|
70
|
+
* @returns Whether the skybox was successfully set
|
|
71
|
+
*/
|
|
72
|
+
setSkybox(url: string | undefined | null, name?: string): Promise<boolean>;
|
|
73
|
+
private loadTexture;
|
|
74
|
+
private applySkybox;
|
|
75
|
+
private readonly validTextureTypes;
|
|
76
|
+
private isRemoteTexture;
|
|
77
|
+
private isValidTextureType;
|
|
78
|
+
private registerDropEvents;
|
|
79
|
+
private unregisterDropEvents;
|
|
80
|
+
private onDragOverEvent;
|
|
81
|
+
private onDrop;
|
|
82
|
+
}
|