@needle-tools/engine 4.12.5 → 4.13.0-next.1eca7a7
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 +5 -0
- package/README.md +38 -1
- package/components.needle.json +1 -1
- package/custom-elements.json +156 -5
- package/dist/{gltf-progressive-BqUnxvCx.umd.cjs → gltf-progressive-BURrJW0U.umd.cjs} +1 -1
- package/dist/{gltf-progressive-CSaX5HQb.min.js → gltf-progressive-DHLDFNvQ.min.js} +1 -1
- package/dist/{gltf-progressive-ChnIhDXx.js → gltf-progressive-eiJCrjLb.js} +3 -3
- package/dist/materialx-B9ddsHcF.min.js +90 -0
- package/dist/materialx-BF23AVE8.umd.cjs +90 -0
- package/dist/materialx-fkoFuRh3.js +4636 -0
- package/dist/{needle-engine.bundle-Cnemui9H.umd.cjs → needle-engine.bundle-BfrDWglE.umd.cjs} +124 -124
- package/dist/{needle-engine.bundle-B_IGIr6Z.min.js → needle-engine.bundle-Bx_Lq_3v.min.js} +131 -131
- package/dist/{needle-engine.bundle-Cj66livk.js → needle-engine.bundle-MQyZGnMF.js} +3754 -3374
- package/dist/needle-engine.d.ts +2791 -309
- package/dist/needle-engine.js +415 -414
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/{postprocessing-12-UW7je.min.js → postprocessing-BVNrgYZK.min.js} +1 -1
- package/dist/{postprocessing-B3Hu0Ryi.umd.cjs → postprocessing-CI2TjWpu.umd.cjs} +1 -1
- package/dist/{postprocessing-R535krvT.js → postprocessing-DdM-tz1j.js} +2 -2
- package/dist/{three-BzxwLtUE.umd.cjs → three-BW2s1Yl-.umd.cjs} +25 -25
- package/dist/{three-DMvLgxja.min.js → three-I__hSXzr.min.js} +26 -26
- package/dist/{three-D9pcFbxc.js → three-VvRoMeIN.js} +22 -0
- package/dist/{three-examples-F0MJj0vr.js → three-examples-BhfOE7NG.js} +1 -1
- package/dist/{three-examples-CjSwCv_b.umd.cjs → three-examples-Bpfu6ke_.umd.cjs} +1 -1
- package/dist/{three-examples-CIv2roOA.min.js → three-examples-D8zAE_7t.min.js} +1 -1
- package/dist/{three-mesh-ui-BLnJQzMl.umd.cjs → three-mesh-ui-BU55xDxJ.umd.cjs} +1 -1
- package/dist/{three-mesh-ui-BllgajJz.min.js → three-mesh-ui-C3QbemOV.min.js} +1 -1
- package/dist/{three-mesh-ui-DYyiRn5Y.js → three-mesh-ui-CcMp-FQm.js} +1 -1
- package/dist/{vendor-BIFy-gRe.js → vendor-BiyIZ61v.js} +1 -1
- package/dist/{vendor-BFgQSG2m.umd.cjs → vendor-COVQl0b8.umd.cjs} +1 -1
- package/dist/{vendor-ChgmXMYr.min.js → vendor-DW7zqjuT.min.js} +1 -1
- package/lib/engine/engine_context.d.ts +16 -0
- package/lib/engine/engine_context.js +16 -0
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_gameobject.d.ts +72 -0
- package/lib/engine/engine_gameobject.js +38 -0
- package/lib/engine/engine_gameobject.js.map +1 -1
- package/lib/engine/engine_input.d.ts +80 -4
- package/lib/engine/engine_input.js +78 -2
- package/lib/engine/engine_input.js.map +1 -1
- package/lib/engine/engine_loaders.js +7 -1
- package/lib/engine/engine_loaders.js.map +1 -1
- package/lib/engine/engine_math.d.ts +81 -2
- package/lib/engine/engine_math.js +68 -2
- package/lib/engine/engine_math.js.map +1 -1
- package/lib/engine/engine_modules.d.ts +9 -0
- package/lib/engine/engine_modules.js +25 -0
- package/lib/engine/engine_modules.js.map +1 -1
- package/lib/engine/engine_networking.d.ts +181 -14
- package/lib/engine/engine_networking.js +181 -14
- package/lib/engine/engine_networking.js.map +1 -1
- package/lib/engine/engine_networking_auto.d.ts +35 -8
- package/lib/engine/engine_networking_auto.js +35 -8
- package/lib/engine/engine_networking_auto.js.map +1 -1
- package/lib/engine/engine_physics.d.ts +35 -1
- package/lib/engine/engine_physics.js +35 -1
- package/lib/engine/engine_physics.js.map +1 -1
- package/lib/engine/engine_physics_rapier.d.ts +76 -0
- package/lib/engine/engine_physics_rapier.js +76 -0
- package/lib/engine/engine_physics_rapier.js.map +1 -1
- package/lib/engine/engine_serialization_decorator.d.ts +28 -2
- package/lib/engine/engine_serialization_decorator.js +28 -2
- package/lib/engine/engine_serialization_decorator.js.map +1 -1
- package/lib/engine/engine_time.d.ts +23 -3
- package/lib/engine/engine_time.js +23 -3
- package/lib/engine/engine_time.js.map +1 -1
- package/lib/engine/engine_util_decorator.d.ts +31 -1
- package/lib/engine/engine_util_decorator.js +31 -1
- package/lib/engine/engine_util_decorator.js.map +1 -1
- package/lib/engine/engine_utils.d.ts +21 -5
- package/lib/engine/engine_utils.js +21 -5
- package/lib/engine/engine_utils.js.map +1 -1
- package/lib/engine/engine_utils_format.d.ts +1 -1
- package/lib/engine/engine_utils_format.js +4 -1
- package/lib/engine/engine_utils_format.js.map +1 -1
- package/lib/engine/extensions/NEEDLE_materialx.d.ts +29 -0
- package/lib/engine/extensions/NEEDLE_materialx.js +115 -0
- package/lib/engine/extensions/NEEDLE_materialx.js.map +1 -0
- package/lib/engine/extensions/extensions.js +2 -0
- package/lib/engine/extensions/extensions.js.map +1 -1
- package/lib/engine/extensions/index.d.ts +1 -0
- package/lib/engine/extensions/index.js +1 -0
- package/lib/engine/extensions/index.js.map +1 -1
- package/lib/engine-components/AlignmentConstraint.d.ts +23 -3
- package/lib/engine-components/AlignmentConstraint.js +23 -3
- package/lib/engine-components/AlignmentConstraint.js.map +1 -1
- package/lib/engine-components/Animation.d.ts +42 -0
- package/lib/engine-components/Animation.js +36 -0
- package/lib/engine-components/Animation.js.map +1 -1
- package/lib/engine-components/Animator.d.ts +37 -4
- package/lib/engine-components/Animator.js +37 -4
- package/lib/engine-components/Animator.js.map +1 -1
- package/lib/engine-components/AudioSource.d.ts +32 -10
- package/lib/engine-components/AudioSource.js +32 -10
- package/lib/engine-components/AudioSource.js.map +1 -1
- package/lib/engine-components/AxesHelper.d.ts +22 -3
- package/lib/engine-components/AxesHelper.js +22 -3
- package/lib/engine-components/AxesHelper.js.map +1 -1
- package/lib/engine-components/BasicIKConstraint.d.ts +27 -4
- package/lib/engine-components/BasicIKConstraint.js +27 -4
- package/lib/engine-components/BasicIKConstraint.js.map +1 -1
- package/lib/engine-components/Camera.d.ts +31 -1
- package/lib/engine-components/Camera.js +31 -1
- package/lib/engine-components/Camera.js.map +1 -1
- package/lib/engine-components/CharacterController.d.ts +67 -3
- package/lib/engine-components/CharacterController.js +67 -3
- package/lib/engine-components/CharacterController.js.map +1 -1
- package/lib/engine-components/Collider.d.ts +69 -12
- package/lib/engine-components/Collider.js +69 -12
- package/lib/engine-components/Collider.js.map +1 -1
- package/lib/engine-components/ContactShadows.d.ts +26 -6
- package/lib/engine-components/ContactShadows.js +46 -8
- package/lib/engine-components/ContactShadows.js.map +1 -1
- package/lib/engine-components/DeleteBox.d.ts +43 -2
- package/lib/engine-components/DeleteBox.js +43 -2
- package/lib/engine-components/DeleteBox.js.map +1 -1
- package/lib/engine-components/DeviceFlag.d.ts +21 -2
- package/lib/engine-components/DeviceFlag.js +21 -2
- package/lib/engine-components/DeviceFlag.js.map +1 -1
- package/lib/engine-components/DragControls.d.ts +32 -2
- package/lib/engine-components/DragControls.js +32 -2
- package/lib/engine-components/DragControls.js.map +1 -1
- package/lib/engine-components/DropListener.d.ts +33 -21
- package/lib/engine-components/DropListener.js +33 -21
- package/lib/engine-components/DropListener.js.map +1 -1
- package/lib/engine-components/Duplicatable.d.ts +36 -5
- package/lib/engine-components/Duplicatable.js +36 -5
- package/lib/engine-components/Duplicatable.js.map +1 -1
- package/lib/engine-components/EventList.d.ts +38 -10
- package/lib/engine-components/EventList.js +38 -10
- package/lib/engine-components/EventList.js.map +1 -1
- package/lib/engine-components/Fog.d.ts +23 -1
- package/lib/engine-components/Fog.js +23 -1
- package/lib/engine-components/Fog.js.map +1 -1
- package/lib/engine-components/GridHelper.d.ts +18 -2
- package/lib/engine-components/GridHelper.js +18 -2
- package/lib/engine-components/GridHelper.js.map +1 -1
- package/lib/engine-components/GroundProjection.d.ts +24 -2
- package/lib/engine-components/GroundProjection.js +24 -2
- package/lib/engine-components/GroundProjection.js.map +1 -1
- package/lib/engine-components/Interactable.d.ts +17 -2
- package/lib/engine-components/Interactable.js +17 -2
- package/lib/engine-components/Interactable.js.map +1 -1
- package/lib/engine-components/Joints.d.ts +50 -7
- package/lib/engine-components/Joints.js +50 -7
- package/lib/engine-components/Joints.js.map +1 -1
- package/lib/engine-components/LODGroup.d.ts +36 -14
- package/lib/engine-components/LODGroup.js +43 -11
- package/lib/engine-components/LODGroup.js.map +1 -1
- package/lib/engine-components/Light.d.ts +27 -5
- package/lib/engine-components/Light.js +27 -5
- package/lib/engine-components/Light.js.map +1 -1
- package/lib/engine-components/LookAtConstraint.d.ts +22 -7
- package/lib/engine-components/LookAtConstraint.js +22 -7
- package/lib/engine-components/LookAtConstraint.js.map +1 -1
- package/lib/engine-components/NeedleMenu.d.ts +27 -5
- package/lib/engine-components/NeedleMenu.js +27 -5
- package/lib/engine-components/NeedleMenu.js.map +1 -1
- package/lib/engine-components/NestedGltf.d.ts +39 -4
- package/lib/engine-components/NestedGltf.js +42 -4
- package/lib/engine-components/NestedGltf.js.map +1 -1
- package/lib/engine-components/OffsetConstraint.d.ts +27 -3
- package/lib/engine-components/OffsetConstraint.js +27 -3
- package/lib/engine-components/OffsetConstraint.js.map +1 -1
- package/lib/engine-components/OrbitControls.d.ts +41 -3
- package/lib/engine-components/OrbitControls.js +41 -3
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/ReflectionProbe.d.ts +17 -2
- package/lib/engine-components/ReflectionProbe.js +28 -10
- package/lib/engine-components/ReflectionProbe.js.map +1 -1
- package/lib/engine-components/Renderer.d.ts +34 -0
- package/lib/engine-components/Renderer.js +35 -2
- package/lib/engine-components/Renderer.js.map +1 -1
- package/lib/engine-components/SceneSwitcher.d.ts +11 -0
- package/lib/engine-components/SceneSwitcher.js +11 -0
- package/lib/engine-components/SceneSwitcher.js.map +1 -1
- package/lib/engine-components/ScreenCapture.d.ts +38 -6
- package/lib/engine-components/ScreenCapture.js +38 -6
- package/lib/engine-components/ScreenCapture.js.map +1 -1
- package/lib/engine-components/Skybox.js +1 -1
- package/lib/engine-components/Skybox.js.map +1 -1
- package/lib/engine-components/SmoothFollow.d.ts +66 -7
- package/lib/engine-components/SmoothFollow.js +66 -7
- package/lib/engine-components/SmoothFollow.js.map +1 -1
- package/lib/engine-components/SpatialTrigger.d.ts +48 -1
- package/lib/engine-components/SpatialTrigger.js +48 -1
- package/lib/engine-components/SpatialTrigger.js.map +1 -1
- package/lib/engine-components/SpectatorCamera.d.ts +21 -3
- package/lib/engine-components/SpectatorCamera.js +21 -3
- package/lib/engine-components/SpectatorCamera.js.map +1 -1
- package/lib/engine-components/SyncedRoom.d.ts +6 -0
- package/lib/engine-components/SyncedRoom.js +6 -0
- package/lib/engine-components/SyncedRoom.js.map +1 -1
- package/lib/engine-components/SyncedTransform.d.ts +55 -6
- package/lib/engine-components/SyncedTransform.js +55 -6
- package/lib/engine-components/SyncedTransform.js.map +1 -1
- package/lib/engine-components/TransformGizmo.d.ts +30 -3
- package/lib/engine-components/TransformGizmo.js +30 -3
- package/lib/engine-components/TransformGizmo.js.map +1 -1
- package/lib/engine-components/VideoPlayer.d.ts +33 -6
- package/lib/engine-components/VideoPlayer.js +45 -6
- package/lib/engine-components/VideoPlayer.js.map +1 -1
- package/lib/engine-components/Voip.d.ts +33 -2
- package/lib/engine-components/Voip.js +33 -2
- package/lib/engine-components/Voip.js.map +1 -1
- package/lib/engine-components/export/usdz/USDZExporter.d.ts +47 -13
- package/lib/engine-components/export/usdz/USDZExporter.js +47 -13
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
- package/lib/engine-components/particlesystem/ParticleSystem.d.ts +82 -3
- package/lib/engine-components/particlesystem/ParticleSystem.js +82 -3
- package/lib/engine-components/particlesystem/ParticleSystem.js.map +1 -1
- package/lib/engine-components/timeline/PlayableDirector.d.ts +99 -14
- package/lib/engine-components/timeline/PlayableDirector.js +91 -25
- package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
- package/lib/engine-components/ui/Button.d.ts +29 -3
- package/lib/engine-components/ui/Button.js +29 -3
- package/lib/engine-components/ui/Button.js.map +1 -1
- package/lib/engine-components/ui/Canvas.d.ts +28 -3
- package/lib/engine-components/ui/Canvas.js +28 -3
- package/lib/engine-components/ui/Canvas.js.map +1 -1
- package/lib/engine-components/ui/Image.d.ts +22 -3
- package/lib/engine-components/ui/Image.js +22 -3
- package/lib/engine-components/ui/Image.js.map +1 -1
- package/lib/engine-components/ui/Raycaster.d.ts +55 -6
- package/lib/engine-components/ui/Raycaster.js +55 -6
- package/lib/engine-components/ui/Raycaster.js.map +1 -1
- package/lib/engine-components/ui/Text.d.ts +23 -1
- package/lib/engine-components/ui/Text.js +23 -1
- package/lib/engine-components/ui/Text.js.map +1 -1
- package/lib/engine-components/webxr/TeleportTarget.d.ts +21 -2
- package/lib/engine-components/webxr/TeleportTarget.js +21 -2
- package/lib/engine-components/webxr/TeleportTarget.js.map +1 -1
- package/lib/engine-components/webxr/WebXR.d.ts +10 -2
- package/lib/engine-components/webxr/WebXR.js +10 -2
- package/lib/engine-components/webxr/WebXR.js.map +1 -1
- package/lib/engine-components/webxr/WebXRAvatar.d.ts +39 -2
- package/lib/engine-components/webxr/WebXRAvatar.js +35 -3
- package/lib/engine-components/webxr/WebXRAvatar.js.map +1 -1
- package/lib/engine-components/webxr/WebXRImageTracking.d.ts +266 -30
- package/lib/engine-components/webxr/WebXRImageTracking.js +266 -30
- package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
- package/lib/engine-components/webxr/XRFlag.d.ts +29 -2
- package/lib/engine-components/webxr/XRFlag.js +29 -2
- package/lib/engine-components/webxr/XRFlag.js.map +1 -1
- package/package.json +3 -2
- package/plugins/vite/custom-element-data.js +128 -19
- package/plugins/vite/dependencies.js +9 -4
- package/plugins/vite/index.js +0 -2
- package/src/engine/engine_context.ts +16 -0
- package/src/engine/engine_gameobject.ts +73 -0
- package/src/engine/engine_input.ts +83 -7
- package/src/engine/engine_loaders.ts +9 -2
- package/src/engine/engine_math.ts +81 -2
- package/src/engine/engine_modules.ts +24 -0
- package/src/engine/engine_networking.ts +187 -17
- package/src/engine/engine_networking_auto.ts +36 -9
- package/src/engine/engine_physics.ts +37 -1
- package/src/engine/engine_physics_rapier.ts +77 -0
- package/src/engine/engine_serialization_decorator.ts +28 -2
- package/src/engine/engine_time.ts +23 -3
- package/src/engine/engine_util_decorator.ts +31 -1
- package/src/engine/engine_utils.ts +21 -5
- package/src/engine/engine_utils_format.ts +6 -2
- package/src/engine/extensions/NEEDLE_materialx.ts +143 -0
- package/src/engine/extensions/extensions.ts +2 -0
- package/src/engine/extensions/index.ts +1 -0
- package/src/engine-components/AlignmentConstraint.ts +24 -4
- package/src/engine-components/Animation.ts +44 -2
- package/src/engine-components/Animator.ts +40 -7
- package/src/engine-components/AudioSource.ts +37 -15
- package/src/engine-components/AxesHelper.ts +23 -4
- package/src/engine-components/BasicIKConstraint.ts +28 -5
- package/src/engine-components/Camera.ts +33 -3
- package/src/engine-components/CharacterController.ts +73 -6
- package/src/engine-components/Collider.ts +78 -21
- package/src/engine-components/ContactShadows.ts +51 -11
- package/src/engine-components/DeleteBox.ts +43 -2
- package/src/engine-components/DeviceFlag.ts +22 -3
- package/src/engine-components/DragControls.ts +32 -2
- package/src/engine-components/DropListener.ts +42 -29
- package/src/engine-components/Duplicatable.ts +37 -6
- package/src/engine-components/EventList.ts +41 -13
- package/src/engine-components/Fog.ts +23 -1
- package/src/engine-components/GridHelper.ts +18 -2
- package/src/engine-components/GroundProjection.ts +25 -3
- package/src/engine-components/Interactable.ts +17 -2
- package/src/engine-components/Joints.ts +51 -8
- package/src/engine-components/LODGroup.ts +45 -11
- package/src/engine-components/Light.ts +30 -8
- package/src/engine-components/LookAtConstraint.ts +26 -8
- package/src/engine-components/NeedleMenu.ts +29 -7
- package/src/engine-components/NestedGltf.ts +40 -4
- package/src/engine-components/OffsetConstraint.ts +27 -3
- package/src/engine-components/OrbitControls.ts +41 -3
- package/src/engine-components/ReflectionProbe.ts +31 -13
- package/src/engine-components/Renderer.ts +34 -1
- package/src/engine-components/SceneSwitcher.ts +11 -0
- package/src/engine-components/ScreenCapture.ts +41 -9
- package/src/engine-components/Skybox.ts +1 -1
- package/src/engine-components/SmoothFollow.ts +69 -7
- package/src/engine-components/SpatialTrigger.ts +51 -4
- package/src/engine-components/SpectatorCamera.ts +23 -5
- package/src/engine-components/SyncedRoom.ts +6 -0
- package/src/engine-components/SyncedTransform.ts +59 -10
- package/src/engine-components/TransformGizmo.ts +31 -4
- package/src/engine-components/VideoPlayer.ts +48 -6
- package/src/engine-components/Voip.ts +33 -2
- package/src/engine-components/export/usdz/USDZExporter.ts +47 -13
- package/src/engine-components/particlesystem/ParticleSystem.ts +84 -5
- package/src/engine-components/timeline/PlayableDirector.ts +104 -27
- package/src/engine-components/ui/Button.ts +29 -3
- package/src/engine-components/ui/Canvas.ts +28 -3
- package/src/engine-components/ui/Image.ts +22 -3
- package/src/engine-components/ui/Raycaster.ts +57 -8
- package/src/engine-components/ui/Text.ts +24 -2
- package/src/engine-components/webxr/TeleportTarget.ts +23 -4
- package/src/engine-components/webxr/WebXR.ts +11 -3
- package/src/engine-components/webxr/WebXRAvatar.ts +41 -4
- package/src/engine-components/webxr/WebXRImageTracking.ts +282 -38
- package/src/engine-components/webxr/XRFlag.ts +30 -3
- package/plugins/vite/materialx.js +0 -32
|
@@ -56,40 +56,52 @@ class DropListenerAddedEvent extends CustomEvent {
|
|
|
56
56
|
* Key name used for blob storage parameters
|
|
57
57
|
*/
|
|
58
58
|
const blobKeyName = "blob";
|
|
59
|
-
/**
|
|
60
|
-
*
|
|
61
|
-
*
|
|
59
|
+
/**
|
|
60
|
+
* DropListener enables drag-and-drop loading of 3D files directly into your scene.
|
|
61
|
+
* Users can drop glTF/GLB files onto the canvas to dynamically add new objects at runtime.
|
|
62
62
|
*
|
|
63
|
-
*
|
|
64
|
-
* Enable {@link fitIntoVolume} to automatically scale dropped objects to fit within the volume defined by {@link fitVolumeSize}.
|
|
63
|
+
* [](https://engine.needle.tools/samples/droplistener)
|
|
65
64
|
*
|
|
66
|
-
*
|
|
65
|
+
* **Supported formats:** glTF, GLB, FBX, OBJ, USDZ, VRM
|
|
67
66
|
*
|
|
68
|
-
*
|
|
69
|
-
* -
|
|
70
|
-
* -
|
|
67
|
+
* **Key features:**
|
|
68
|
+
* - Drop files directly onto canvas or onto a specific {@link dropArea}
|
|
69
|
+
* - Paste URLs from clipboard (Ctrl/Cmd+V)
|
|
70
|
+
* - Auto-fit objects to a specific size with {@link fitIntoVolume}
|
|
71
|
+
* - Network sync to share dropped objects with other users
|
|
72
|
+
* - Special handling for GitHub and Polyhaven URLs
|
|
71
73
|
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
74
|
+
* **Events:**
|
|
75
|
+
* - `file-dropped` - Fired for each dropped file
|
|
76
|
+
* - `object-added` - Fired when object is loaded and added to scene
|
|
75
77
|
*
|
|
76
|
-
*
|
|
78
|
+
* **Debug:** Use `?debugdroplistener` URL parameter
|
|
77
79
|
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
80
|
+
* @example Listen for dropped objects
|
|
81
|
+
* ```ts
|
|
82
|
+
* const dropListener = myObject.addComponent(DropListener);
|
|
83
|
+
* dropListener.useNetworking = true;
|
|
84
|
+
* dropListener.fitIntoVolume = true;
|
|
83
85
|
*
|
|
84
86
|
* dropListener.on(DropListenerEvents.ObjectAdded, (evt) => {
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
+
* const { object, model } = evt.detail;
|
|
88
|
+
* console.log("Added:", object.name);
|
|
87
89
|
* });
|
|
88
90
|
* ```
|
|
89
91
|
*
|
|
90
|
-
* @
|
|
92
|
+
* @example Load from URL programmatically
|
|
93
|
+
* ```ts
|
|
94
|
+
* const obj = await dropListener.loadFromURL("https://example.com/model.glb");
|
|
95
|
+
* ```
|
|
96
|
+
* Hint: We recommend to use {@link AssetReference} for preloading and referencing assets in code if you simply want to load a model.
|
|
97
|
+
*
|
|
98
|
+
* @summary Drag-and-drop file loading for 3D assets
|
|
91
99
|
* @category Asset Management
|
|
92
100
|
* @group Components
|
|
101
|
+
* @see {@link SceneSwitcher} for loading entire scenes
|
|
102
|
+
* @see {@link AssetReference} for preloading assets
|
|
103
|
+
* @see {@link SyncedTransform} for networking support
|
|
104
|
+
* @link https://engine.needle.tools/samples/droplistener for a live demo
|
|
93
105
|
*/
|
|
94
106
|
export class DropListener extends Behaviour {
|
|
95
107
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropListener.js","sourceRoot":"","sources":["../../src/engine-components/DropListener.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DropListener.js","sourceRoot":"","sources":["../../src/engine-components/DropListener.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,52 @@
|
|
|
1
1
|
import { Behaviour, GameObject } from "./Component.js";
|
|
2
2
|
import { type IPointerEventHandler, PointerEventData } from "./ui/PointerEvents.js";
|
|
3
3
|
/**
|
|
4
|
-
* The Duplicatable component
|
|
4
|
+
* The Duplicatable component creates clones of a GameObject when clicked/tapped/dragged.
|
|
5
|
+
* Perfect for spawning objects, creating drag-and-drop inventories, or multiplayer object creation.
|
|
6
|
+
*
|
|
7
|
+
* 
|
|
8
|
+
*
|
|
9
|
+
* **How it works:**
|
|
10
|
+
* - When the user clicks on this object, it creates a clone of the assigned `object`
|
|
11
|
+
* - The clone is automatically set up with {@link DragControls} so users can drag it
|
|
12
|
+
* - If networking is enabled, clones are synced via {@link SyncedTransform}
|
|
13
|
+
* - Rate limiting prevents spam (controlled by `limitCount`)
|
|
14
|
+
*
|
|
15
|
+
* **Setup tips:**
|
|
16
|
+
* - Assign `object` to a template object (it will be hidden and used as source)
|
|
17
|
+
* - If `object` is not assigned, the component's own GameObject is used as template
|
|
18
|
+
* - Add an {@link ObjectRaycaster} to enable pointer detection (added automatically if missing)
|
|
19
|
+
*
|
|
20
|
+
* @example Basic duplicatable button
|
|
21
|
+
* ```ts
|
|
22
|
+
* const duplicatable = spawnButton.addComponent(Duplicatable);
|
|
23
|
+
* duplicatable.object = templateObject; // Object to clone
|
|
24
|
+
* duplicatable.parent = spawnContainer; // Where to place clones
|
|
25
|
+
* duplicatable.limitCount = 10; // Max 10 per second
|
|
26
|
+
* ```
|
|
5
27
|
*
|
|
6
28
|
* @summary Duplicates a GameObject on pointer events
|
|
7
29
|
* @category Interactivity
|
|
8
30
|
* @group Components
|
|
31
|
+
* @see {@link DragControls} for dragging the duplicated objects
|
|
32
|
+
* @see {@link SyncedTransform} for networking support
|
|
33
|
+
* @see {@link GameObject.instantiateSynced} for the underlying instantiation
|
|
34
|
+
* @link https://engine.needle.tools/samples/collaborative-sandbox/
|
|
9
35
|
*/
|
|
10
36
|
export declare class Duplicatable extends Behaviour implements IPointerEventHandler {
|
|
11
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* Parent object for spawned duplicates.
|
|
39
|
+
* If not set, duplicates are parented to this GameObject's parent.
|
|
40
|
+
*/
|
|
12
41
|
parent: GameObject | null;
|
|
13
|
-
/**
|
|
14
|
-
*
|
|
42
|
+
/**
|
|
43
|
+
* Template object to duplicate. This object will be hidden and used as the source for clones.
|
|
44
|
+
* If not assigned, this GameObject itself is used as the template.
|
|
15
45
|
*/
|
|
16
46
|
object: GameObject | null;
|
|
17
47
|
/**
|
|
18
|
-
*
|
|
48
|
+
* Maximum duplications allowed per second to prevent spam.
|
|
49
|
+
* The counter decreases by 1 each second.
|
|
19
50
|
* @default 60
|
|
20
51
|
*/
|
|
21
52
|
limitCount: number;
|
|
@@ -15,21 +15,52 @@ import { DragControls, DragMode } from "./DragControls.js";
|
|
|
15
15
|
import { SyncedTransform } from "./SyncedTransform.js";
|
|
16
16
|
import { ObjectRaycaster } from "./ui/Raycaster.js";
|
|
17
17
|
/**
|
|
18
|
-
* The Duplicatable component
|
|
18
|
+
* The Duplicatable component creates clones of a GameObject when clicked/tapped/dragged.
|
|
19
|
+
* Perfect for spawning objects, creating drag-and-drop inventories, or multiplayer object creation.
|
|
20
|
+
*
|
|
21
|
+
* 
|
|
22
|
+
*
|
|
23
|
+
* **How it works:**
|
|
24
|
+
* - When the user clicks on this object, it creates a clone of the assigned `object`
|
|
25
|
+
* - The clone is automatically set up with {@link DragControls} so users can drag it
|
|
26
|
+
* - If networking is enabled, clones are synced via {@link SyncedTransform}
|
|
27
|
+
* - Rate limiting prevents spam (controlled by `limitCount`)
|
|
28
|
+
*
|
|
29
|
+
* **Setup tips:**
|
|
30
|
+
* - Assign `object` to a template object (it will be hidden and used as source)
|
|
31
|
+
* - If `object` is not assigned, the component's own GameObject is used as template
|
|
32
|
+
* - Add an {@link ObjectRaycaster} to enable pointer detection (added automatically if missing)
|
|
33
|
+
*
|
|
34
|
+
* @example Basic duplicatable button
|
|
35
|
+
* ```ts
|
|
36
|
+
* const duplicatable = spawnButton.addComponent(Duplicatable);
|
|
37
|
+
* duplicatable.object = templateObject; // Object to clone
|
|
38
|
+
* duplicatable.parent = spawnContainer; // Where to place clones
|
|
39
|
+
* duplicatable.limitCount = 10; // Max 10 per second
|
|
40
|
+
* ```
|
|
19
41
|
*
|
|
20
42
|
* @summary Duplicates a GameObject on pointer events
|
|
21
43
|
* @category Interactivity
|
|
22
44
|
* @group Components
|
|
45
|
+
* @see {@link DragControls} for dragging the duplicated objects
|
|
46
|
+
* @see {@link SyncedTransform} for networking support
|
|
47
|
+
* @see {@link GameObject.instantiateSynced} for the underlying instantiation
|
|
48
|
+
* @link https://engine.needle.tools/samples/collaborative-sandbox/
|
|
23
49
|
*/
|
|
24
50
|
export class Duplicatable extends Behaviour {
|
|
25
|
-
/**
|
|
51
|
+
/**
|
|
52
|
+
* Parent object for spawned duplicates.
|
|
53
|
+
* If not set, duplicates are parented to this GameObject's parent.
|
|
54
|
+
*/
|
|
26
55
|
parent = null;
|
|
27
|
-
/**
|
|
28
|
-
*
|
|
56
|
+
/**
|
|
57
|
+
* Template object to duplicate. This object will be hidden and used as the source for clones.
|
|
58
|
+
* If not assigned, this GameObject itself is used as the template.
|
|
29
59
|
*/
|
|
30
60
|
object = null;
|
|
31
61
|
/**
|
|
32
|
-
*
|
|
62
|
+
* Maximum duplications allowed per second to prevent spam.
|
|
63
|
+
* The counter decreases by 1 each second.
|
|
33
64
|
* @default 60
|
|
34
65
|
*/
|
|
35
66
|
limitCount = 60;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Duplicatable.js","sourceRoot":"","sources":["../../src/engine-components/Duplicatable.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD
|
|
1
|
+
{"version":3,"file":"Duplicatable.js","sourceRoot":"","sources":["../../src/engine-components/Duplicatable.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { InstantiateContext } from "../engine/engine_gameobject.js";
|
|
2
2
|
import type { IEventList } from "../engine/engine_types.js";
|
|
3
|
+
/**
|
|
4
|
+
* CallInfo represents a single callback method that can be invoked by the {@link EventList}.
|
|
5
|
+
*/
|
|
3
6
|
export declare class CallInfo {
|
|
4
7
|
/**
|
|
5
8
|
* When the CallInfo is enabled it will be invoked when the EventList is invoked
|
|
@@ -23,24 +26,49 @@ export declare class EventListEvent<TArgs extends any> extends Event {
|
|
|
23
26
|
args?: TArgs;
|
|
24
27
|
}
|
|
25
28
|
/**
|
|
26
|
-
*
|
|
29
|
+
* EventList manages a list of callbacks that can be invoked together.
|
|
30
|
+
* Used for Unity-style events that can be configured in the editor (Unity or Blender).
|
|
31
|
+
*
|
|
32
|
+
* **Serialization:**
|
|
33
|
+
* EventLists are serializable - callbacks configured in Unity/Blender will work at runtime.
|
|
34
|
+
* Mark fields with `@serializable(EventList)` for editor support.
|
|
35
|
+
*
|
|
36
|
+
* **Usage patterns:**
|
|
37
|
+
* - Button click handlers
|
|
38
|
+
* - Animation events
|
|
39
|
+
* - Custom component callbacks
|
|
40
|
+
* - Scene loading events
|
|
41
|
+
*
|
|
42
|
+
* 
|
|
43
|
+
* *Screenshot of a Unity component with an EventList field*
|
|
27
44
|
*
|
|
28
|
-
*
|
|
45
|
+
* 
|
|
46
|
+
* *Screenshot of a Blender component with an EventList field*
|
|
47
|
+
*
|
|
48
|
+
* @example Create and use an EventList
|
|
29
49
|
* ```ts
|
|
30
|
-
* //
|
|
31
|
-
*
|
|
50
|
+
* // Define in your component
|
|
51
|
+
* @serializable(EventList)
|
|
52
|
+
* onClick: EventList = new EventList();
|
|
53
|
+
*
|
|
54
|
+
* // Add listeners
|
|
55
|
+
* this.onClick.addEventListener(() => console.log("Clicked!"));
|
|
32
56
|
*
|
|
33
|
-
* //
|
|
34
|
-
* onClick.
|
|
35
|
-
*
|
|
36
|
-
* });
|
|
57
|
+
* // Invoke all listeners
|
|
58
|
+
* this.onClick.invoke();
|
|
59
|
+
* ```
|
|
37
60
|
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
61
|
+
* @example Listen with arguments
|
|
62
|
+
* ```ts
|
|
63
|
+
* const onScore = new EventList<{ points: number }>();
|
|
64
|
+
* onScore.addEventListener(data => console.log("Scored:", data.points));
|
|
65
|
+
* onScore.invoke({ points: 100 });
|
|
40
66
|
* ```
|
|
41
67
|
*
|
|
42
68
|
* @category Events
|
|
43
69
|
* @group Utilities
|
|
70
|
+
* @see {@link CallInfo} for individual callback configuration
|
|
71
|
+
* @see {@link Button} for UI button events
|
|
44
72
|
*/
|
|
45
73
|
export declare class EventList<TArgs extends any = any> implements IEventList {
|
|
46
74
|
/** checked during instantiate to create a new instance */
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { isDevEnvironment } from "../engine/debug/index.js";
|
|
2
2
|
const argumentsBuffer = new Array();
|
|
3
|
+
/**
|
|
4
|
+
* CallInfo represents a single callback method that can be invoked by the {@link EventList}.
|
|
5
|
+
*/
|
|
3
6
|
export class CallInfo {
|
|
4
7
|
/**
|
|
5
8
|
* When the CallInfo is enabled it will be invoked when the EventList is invoked
|
|
@@ -83,24 +86,49 @@ export class EventListEvent extends Event {
|
|
|
83
86
|
args;
|
|
84
87
|
}
|
|
85
88
|
/**
|
|
86
|
-
*
|
|
89
|
+
* EventList manages a list of callbacks that can be invoked together.
|
|
90
|
+
* Used for Unity-style events that can be configured in the editor (Unity or Blender).
|
|
91
|
+
*
|
|
92
|
+
* **Serialization:**
|
|
93
|
+
* EventLists are serializable - callbacks configured in Unity/Blender will work at runtime.
|
|
94
|
+
* Mark fields with `@serializable(EventList)` for editor support.
|
|
95
|
+
*
|
|
96
|
+
* **Usage patterns:**
|
|
97
|
+
* - Button click handlers
|
|
98
|
+
* - Animation events
|
|
99
|
+
* - Custom component callbacks
|
|
100
|
+
* - Scene loading events
|
|
101
|
+
*
|
|
102
|
+
* 
|
|
103
|
+
* *Screenshot of a Unity component with an EventList field*
|
|
87
104
|
*
|
|
88
|
-
*
|
|
105
|
+
* 
|
|
106
|
+
* *Screenshot of a Blender component with an EventList field*
|
|
107
|
+
*
|
|
108
|
+
* @example Create and use an EventList
|
|
89
109
|
* ```ts
|
|
90
|
-
* //
|
|
91
|
-
*
|
|
110
|
+
* // Define in your component
|
|
111
|
+
* @serializable(EventList)
|
|
112
|
+
* onClick: EventList = new EventList();
|
|
113
|
+
*
|
|
114
|
+
* // Add listeners
|
|
115
|
+
* this.onClick.addEventListener(() => console.log("Clicked!"));
|
|
92
116
|
*
|
|
93
|
-
* //
|
|
94
|
-
* onClick.
|
|
95
|
-
*
|
|
96
|
-
* });
|
|
117
|
+
* // Invoke all listeners
|
|
118
|
+
* this.onClick.invoke();
|
|
119
|
+
* ```
|
|
97
120
|
*
|
|
98
|
-
*
|
|
99
|
-
*
|
|
121
|
+
* @example Listen with arguments
|
|
122
|
+
* ```ts
|
|
123
|
+
* const onScore = new EventList<{ points: number }>();
|
|
124
|
+
* onScore.addEventListener(data => console.log("Scored:", data.points));
|
|
125
|
+
* onScore.invoke({ points: 100 });
|
|
100
126
|
* ```
|
|
101
127
|
*
|
|
102
128
|
* @category Events
|
|
103
129
|
* @group Utilities
|
|
130
|
+
* @see {@link CallInfo} for individual callback configuration
|
|
131
|
+
* @see {@link Button} for UI button events
|
|
104
132
|
*/
|
|
105
133
|
export class EventList {
|
|
106
134
|
/** checked during instantiate to create a new instance */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventList.js","sourceRoot":"","sources":["../../src/engine-components/EventList.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EventList.js","sourceRoot":"","sources":["../../src/engine-components/EventList.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,34 @@
|
|
|
1
1
|
import { Color, Fog as Fog3 } from "three";
|
|
2
2
|
import { Behaviour } from "./Component.js";
|
|
3
|
+
/**
|
|
4
|
+
* Fog rendering mode
|
|
5
|
+
*/
|
|
3
6
|
declare enum FogMode {
|
|
7
|
+
/** Linear fog increases uniformly with distance */
|
|
4
8
|
Linear = 1,
|
|
9
|
+
/** Exponential fog increases exponentially with distance */
|
|
5
10
|
Exponential = 2,
|
|
11
|
+
/** Exponential squared fog for denser falloff */
|
|
6
12
|
ExponentialSquared = 3
|
|
7
13
|
}
|
|
8
|
-
/**
|
|
14
|
+
/**
|
|
15
|
+
* Adds distance-based fog effect to the scene.
|
|
16
|
+
* When enabled, objects will fade into the fog color based on their distance from the camera.
|
|
17
|
+
*
|
|
18
|
+
* This component is automatically added to the scene when fog is enabled in the editor.
|
|
19
|
+
* For setting fog from code you can simply use `scene.fog = new Fog3(color, near, far)` without adding this component.
|
|
20
|
+
*
|
|
21
|
+
* @summary Adds fog effect to the scene
|
|
22
|
+
* @category Rendering
|
|
23
|
+
* @group Components
|
|
24
|
+
* @link https://threejs.org/docs/#Fog
|
|
25
|
+
*/
|
|
9
26
|
export declare class Fog extends Behaviour {
|
|
27
|
+
/**
|
|
28
|
+
* The underlying Three.js Fog object. You can modify its properties directly for more advanced control.
|
|
29
|
+
* @remarks The Fog component provides convenient access to common fog properties like `near`, `far`, and `color`. Modifying those will update the underlying `fog` object accordingly. However, you can also access and modify the `fog` object directly for more advanced use cases, such as changing the fog mode or using a custom shader.
|
|
30
|
+
* @link https://threejs.org/docs/#Fog for available properties and methods on the Fog object.
|
|
31
|
+
*/
|
|
10
32
|
get fog(): Fog3;
|
|
11
33
|
get mode(): FogMode;
|
|
12
34
|
set near(value: number);
|
|
@@ -7,14 +7,36 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { Color, Fog as Fog3 } from "three";
|
|
8
8
|
import { serializable } from "../engine/engine_serialization.js";
|
|
9
9
|
import { Behaviour } from "./Component.js";
|
|
10
|
+
/**
|
|
11
|
+
* Fog rendering mode
|
|
12
|
+
*/
|
|
10
13
|
var FogMode;
|
|
11
14
|
(function (FogMode) {
|
|
15
|
+
/** Linear fog increases uniformly with distance */
|
|
12
16
|
FogMode[FogMode["Linear"] = 1] = "Linear";
|
|
17
|
+
/** Exponential fog increases exponentially with distance */
|
|
13
18
|
FogMode[FogMode["Exponential"] = 2] = "Exponential";
|
|
19
|
+
/** Exponential squared fog for denser falloff */
|
|
14
20
|
FogMode[FogMode["ExponentialSquared"] = 3] = "ExponentialSquared";
|
|
15
21
|
})(FogMode || (FogMode = {}));
|
|
16
|
-
/**
|
|
22
|
+
/**
|
|
23
|
+
* Adds distance-based fog effect to the scene.
|
|
24
|
+
* When enabled, objects will fade into the fog color based on their distance from the camera.
|
|
25
|
+
*
|
|
26
|
+
* This component is automatically added to the scene when fog is enabled in the editor.
|
|
27
|
+
* For setting fog from code you can simply use `scene.fog = new Fog3(color, near, far)` without adding this component.
|
|
28
|
+
*
|
|
29
|
+
* @summary Adds fog effect to the scene
|
|
30
|
+
* @category Rendering
|
|
31
|
+
* @group Components
|
|
32
|
+
* @link https://threejs.org/docs/#Fog
|
|
33
|
+
*/
|
|
17
34
|
export class Fog extends Behaviour {
|
|
35
|
+
/**
|
|
36
|
+
* The underlying Three.js Fog object. You can modify its properties directly for more advanced control.
|
|
37
|
+
* @remarks The Fog component provides convenient access to common fog properties like `near`, `far`, and `color`. Modifying those will update the underlying `fog` object accordingly. However, you can also access and modify the `fog` object directly for more advanced use cases, such as changing the fog mode or using a custom shader.
|
|
38
|
+
* @link https://threejs.org/docs/#Fog for available properties and methods on the Fog object.
|
|
39
|
+
*/
|
|
18
40
|
get fog() {
|
|
19
41
|
if (!this._fog)
|
|
20
42
|
this._fog = new Fog3(0x000000, 0, 50);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fog.js","sourceRoot":"","sources":["../../src/engine-components/Fog.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,IAAK,
|
|
1
|
+
{"version":3,"file":"Fog.js","sourceRoot":"","sources":["../../src/engine-components/Fog.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,IAAK,OAOJ;AAPD,WAAK,OAAO;IACR,mDAAmD;IACnD,yCAAU,CAAA;IACV,4DAA4D;IAC5D,mDAAe,CAAA;IACf,iDAAiD;IACjD,iEAAsB,CAAA;AAC1B,CAAC,EAPI,OAAO,KAAP,OAAO,QAOX;AAED;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,GAAI,SAAQ,SAAS;IAE9B;;;;OAIG;IACH,IAAI,GAAG;QACH,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,OAAO,CAAC,MAAM,CAAC;IAC1B,CAAC;IAGD,IAAI,IAAI,CAAC,KAAa;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC;IAC1B,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACzB,CAAC;IAGD,IAAI,GAAG,CAAC,KAAa;QACjB,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC;IACzB,CAAC;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACxB,CAAC;IAGD,IAAI,KAAK,CAAC,KAAY;QAClB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEO,IAAI,CAAQ;IAEpB,QAAQ;QACJ,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IAC9B,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI;YAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;IAC9B,CAAC;CAGJ;AAnCG;IADC,YAAY,EAAE;+BAGd;AAMD;IADC,YAAY,EAAE;8BAGd;AAMD;IADC,YAAY,CAAC,KAAK,CAAC;gCAGnB"}
|
|
@@ -1,11 +1,27 @@
|
|
|
1
1
|
import { Color, ColorRepresentation } from "three";
|
|
2
2
|
import { Behaviour } from "./Component.js";
|
|
3
3
|
/**
|
|
4
|
-
* GridHelper
|
|
4
|
+
* GridHelper displays a flat grid in the scene for visual reference.
|
|
5
|
+
* Useful for debugging, level design, or providing spatial context.
|
|
6
|
+
*
|
|
7
|
+
* 
|
|
8
|
+
*
|
|
9
|
+
* **Properties:**
|
|
10
|
+
* - `color0` / `color1` - Alternating grid line colors
|
|
11
|
+
* - `isGizmo` - When true, only shows when gizmos are enabled
|
|
12
|
+
*
|
|
13
|
+
* @example Add a grid to the scene
|
|
14
|
+
* ```ts
|
|
15
|
+
* const grid = myObject.addComponent(GridHelper);
|
|
16
|
+
* grid.color0 = new Color(0.3, 0.3, 0.3);
|
|
17
|
+
* grid.color1 = new Color(0.5, 0.5, 0.5);
|
|
18
|
+
* ```
|
|
5
19
|
*
|
|
6
|
-
* @example Display a grid in the scene
|
|
7
20
|
* @category Helpers
|
|
8
21
|
* @group Components
|
|
22
|
+
* @see {@link Gizmos} for debug visualization
|
|
23
|
+
*
|
|
24
|
+
* 
|
|
9
25
|
*/
|
|
10
26
|
export declare class GridHelper extends Behaviour {
|
|
11
27
|
isGizmo: boolean;
|
|
@@ -9,11 +9,27 @@ import * as params from "../engine/engine_default_parameters.js";
|
|
|
9
9
|
import { serializable } from "../engine/engine_serialization_decorator.js";
|
|
10
10
|
import { Behaviour } from "./Component.js";
|
|
11
11
|
/**
|
|
12
|
-
* GridHelper
|
|
12
|
+
* GridHelper displays a flat grid in the scene for visual reference.
|
|
13
|
+
* Useful for debugging, level design, or providing spatial context.
|
|
14
|
+
*
|
|
15
|
+
* 
|
|
16
|
+
*
|
|
17
|
+
* **Properties:**
|
|
18
|
+
* - `color0` / `color1` - Alternating grid line colors
|
|
19
|
+
* - `isGizmo` - When true, only shows when gizmos are enabled
|
|
20
|
+
*
|
|
21
|
+
* @example Add a grid to the scene
|
|
22
|
+
* ```ts
|
|
23
|
+
* const grid = myObject.addComponent(GridHelper);
|
|
24
|
+
* grid.color0 = new Color(0.3, 0.3, 0.3);
|
|
25
|
+
* grid.color1 = new Color(0.5, 0.5, 0.5);
|
|
26
|
+
* ```
|
|
13
27
|
*
|
|
14
|
-
* @example Display a grid in the scene
|
|
15
28
|
* @category Helpers
|
|
16
29
|
* @group Components
|
|
30
|
+
* @see {@link Gizmos} for debug visualization
|
|
31
|
+
*
|
|
32
|
+
* 
|
|
17
33
|
*/
|
|
18
34
|
export class GridHelper extends Behaviour {
|
|
19
35
|
isGizmo = false;
|