@needle-tools/engine 5.0.3 → 5.1.0-alpha.1
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 +31 -4
- package/README.md +6 -7
- package/components.needle.json +1 -1
- package/dist/{needle-engine.bundle-BXk8jYW3.js → needle-engine.bundle-BGyKqxBH.js} +12394 -11786
- package/dist/needle-engine.bundle-CiYtOO2O.min.js +1732 -0
- package/dist/needle-engine.bundle-DzVx9Z8D.umd.cjs +1732 -0
- package/dist/needle-engine.d.ts +660 -63
- package/dist/needle-engine.js +579 -566
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/{vendor-vHLk8sXu.js → vendor-CAcsI0eU.js} +116 -115
- package/dist/{vendor-CntUvmJu.umd.cjs → vendor-CEM38hLE.umd.cjs} +2 -2
- package/dist/{vendor-DPbfJJ4d.min.js → vendor-HRlxIBga.min.js} +2 -2
- package/lib/engine/api.d.ts +2 -0
- package/lib/engine/api.js +2 -0
- package/lib/engine/api.js.map +1 -1
- package/lib/engine/engine_addressables.js +5 -1
- package/lib/engine/engine_addressables.js.map +1 -1
- package/lib/engine/engine_animation.d.ts +14 -7
- package/lib/engine/engine_animation.js +49 -9
- package/lib/engine/engine_animation.js.map +1 -1
- package/lib/engine/engine_components.js +33 -4
- package/lib/engine/engine_components.js.map +1 -1
- package/lib/engine/engine_context.d.ts +7 -2
- package/lib/engine/engine_context.js +10 -2
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_gameobject.d.ts +4 -0
- package/lib/engine/engine_gameobject.js.map +1 -1
- package/lib/engine/engine_init.js +4 -0
- package/lib/engine/engine_init.js.map +1 -1
- package/lib/engine/engine_input.js +4 -1
- package/lib/engine/engine_input.js.map +1 -1
- package/lib/engine/engine_materialpropertyblock.js +0 -19
- package/lib/engine/engine_materialpropertyblock.js.map +1 -1
- package/lib/engine/engine_networking.d.ts +11 -8
- package/lib/engine/engine_networking.js +43 -26
- package/lib/engine/engine_networking.js.map +1 -1
- package/lib/engine/engine_networking_instantiate.d.ts +100 -5
- package/lib/engine/engine_networking_instantiate.js +150 -16
- package/lib/engine/engine_networking_instantiate.js.map +1 -1
- package/lib/engine/engine_networking_prefabs.d.ts +59 -0
- package/lib/engine/engine_networking_prefabs.js +67 -0
- package/lib/engine/engine_networking_prefabs.js.map +1 -0
- package/lib/engine/engine_physics_rapier.d.ts +3 -0
- package/lib/engine/engine_physics_rapier.js +13 -9
- package/lib/engine/engine_physics_rapier.js.map +1 -1
- package/lib/engine/engine_utils.js +2 -2
- package/lib/engine/engine_utils.js.map +1 -1
- package/lib/engine/postprocessing/api.d.ts +2 -0
- package/lib/engine/postprocessing/api.js +2 -0
- package/lib/engine/postprocessing/api.js.map +1 -0
- package/lib/engine/postprocessing/index.d.ts +2 -0
- package/lib/engine/postprocessing/index.js +2 -0
- package/lib/engine/postprocessing/index.js.map +1 -0
- package/lib/engine/postprocessing/postprocessing.d.ts +83 -0
- package/lib/engine/postprocessing/postprocessing.js +280 -0
- package/lib/engine/postprocessing/postprocessing.js.map +1 -0
- package/lib/engine/postprocessing/types.d.ts +39 -0
- package/lib/engine/postprocessing/types.js +2 -0
- package/lib/engine/postprocessing/types.js.map +1 -0
- package/lib/engine/webcomponents/WebXRButtons.js +17 -3
- package/lib/engine/webcomponents/WebXRButtons.js.map +1 -1
- package/lib/engine/xr/NeedleXRSession.d.ts +2 -0
- package/lib/engine/xr/NeedleXRSession.js +47 -14
- package/lib/engine/xr/NeedleXRSession.js.map +1 -1
- package/lib/engine/xr/events.d.ts +30 -3
- package/lib/engine/xr/events.js +38 -0
- package/lib/engine/xr/events.js.map +1 -1
- package/lib/engine/xr/init.d.ts +4 -0
- package/lib/engine/xr/init.js +43 -0
- package/lib/engine/xr/init.js.map +1 -0
- package/lib/engine-components/AnimationUtils.d.ts +4 -1
- package/lib/engine-components/AnimationUtils.js +7 -19
- package/lib/engine-components/AnimationUtils.js.map +1 -1
- package/lib/engine-components/AnimatorController.d.ts +135 -2
- package/lib/engine-components/AnimatorController.js +216 -13
- package/lib/engine-components/AnimatorController.js.map +1 -1
- package/lib/engine-components/SeeThrough.d.ts +0 -2
- package/lib/engine-components/SeeThrough.js +0 -89
- package/lib/engine-components/SeeThrough.js.map +1 -1
- package/lib/engine-components/SyncedRoom.d.ts +4 -0
- package/lib/engine-components/SyncedRoom.js +23 -8
- package/lib/engine-components/SyncedRoom.js.map +1 -1
- package/lib/engine-components/SyncedTransform.js +5 -5
- package/lib/engine-components/SyncedTransform.js.map +1 -1
- package/lib/engine-components/Voip.d.ts +46 -0
- package/lib/engine-components/Voip.js +126 -2
- package/lib/engine-components/Voip.js.map +1 -1
- package/lib/engine-components/api.d.ts +1 -0
- package/lib/engine-components/api.js +1 -0
- package/lib/engine-components/api.js.map +1 -1
- package/lib/engine-components/codegen/components.d.ts +1 -0
- package/lib/engine-components/codegen/components.js +1 -0
- package/lib/engine-components/codegen/components.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/Tonemapping.d.ts +5 -2
- package/lib/engine-components/postprocessing/Effects/Tonemapping.js +11 -18
- package/lib/engine-components/postprocessing/Effects/Tonemapping.js.map +1 -1
- package/lib/engine-components/postprocessing/PostProcessingEffect.d.ts +3 -4
- package/lib/engine-components/postprocessing/PostProcessingEffect.js +6 -15
- package/lib/engine-components/postprocessing/PostProcessingEffect.js.map +1 -1
- package/lib/engine-components/postprocessing/PostProcessingHandler.d.ts +2 -1
- package/lib/engine-components/postprocessing/PostProcessingHandler.js.map +1 -1
- package/lib/engine-components/postprocessing/Volume.d.ts +18 -11
- package/lib/engine-components/postprocessing/Volume.js +61 -140
- package/lib/engine-components/postprocessing/Volume.js.map +1 -1
- package/lib/engine-components/postprocessing/index.d.ts +1 -0
- package/lib/engine-components/postprocessing/index.js +1 -0
- package/lib/engine-components/postprocessing/index.js.map +1 -1
- package/lib/engine-components/postprocessing/utils.d.ts +2 -0
- package/lib/engine-components/postprocessing/utils.js +2 -0
- package/lib/engine-components/postprocessing/utils.js.map +1 -1
- package/lib/engine-components/ui/Canvas.js +2 -2
- package/lib/engine-components/ui/Canvas.js.map +1 -1
- package/lib/engine-components/ui/Graphic.d.ts +3 -3
- package/lib/engine-components/ui/Graphic.js +6 -2
- package/lib/engine-components/ui/Graphic.js.map +1 -1
- package/lib/engine-components/ui/Text.d.ts +64 -11
- package/lib/engine-components/ui/Text.js +154 -45
- package/lib/engine-components/ui/Text.js.map +1 -1
- package/lib/engine-components/ui/index.d.ts +1 -0
- package/lib/engine-components/ui/index.js +1 -0
- package/lib/engine-components/ui/index.js.map +1 -1
- package/lib/engine-components-experimental/networking/PlayerSync.d.ts +25 -3
- package/lib/engine-components-experimental/networking/PlayerSync.js +60 -11
- package/lib/engine-components-experimental/networking/PlayerSync.js.map +1 -1
- package/package.json +5 -4
- package/plugins/common/logger.js +42 -19
- package/plugins/vite/ai.d.ts +11 -10
- package/plugins/vite/ai.js +305 -31
- package/plugins/vite/logger.client.js +4 -3
- package/src/engine/api.ts +3 -0
- package/src/engine/engine_addressables.ts +4 -1
- package/src/engine/engine_animation.ts +47 -9
- package/src/engine/engine_components.ts +36 -7
- package/src/engine/engine_context.ts +11 -2
- package/src/engine/engine_gameobject.ts +5 -0
- package/src/engine/engine_init.ts +4 -0
- package/src/engine/engine_input.ts +2 -1
- package/src/engine/engine_materialpropertyblock.ts +0 -19
- package/src/engine/engine_networking.ts +46 -23
- package/src/engine/engine_networking_instantiate.ts +160 -18
- package/src/engine/engine_networking_prefabs.ts +80 -0
- package/src/engine/engine_physics_rapier.ts +14 -9
- package/src/engine/engine_utils.ts +2 -2
- package/src/engine/postprocessing/api.ts +2 -0
- package/src/engine/postprocessing/index.ts +2 -0
- package/src/engine/postprocessing/postprocessing.ts +322 -0
- package/src/engine/postprocessing/types.ts +43 -0
- package/src/engine/webcomponents/WebXRButtons.ts +21 -4
- package/src/engine/xr/NeedleXRSession.ts +55 -20
- package/src/engine/xr/events.ts +44 -1
- package/src/engine/xr/init.ts +49 -0
- package/src/engine-components/AnimationUtils.ts +7 -17
- package/src/engine-components/AnimatorController.ts +288 -18
- package/src/engine-components/SeeThrough.ts +0 -116
- package/src/engine-components/SyncedRoom.ts +28 -9
- package/src/engine-components/SyncedTransform.ts +5 -5
- package/src/engine-components/Voip.ts +129 -2
- package/src/engine-components/api.ts +1 -0
- package/src/engine-components/codegen/components.ts +1 -0
- package/src/engine-components/postprocessing/Effects/Tonemapping.ts +16 -24
- package/src/engine-components/postprocessing/PostProcessingEffect.ts +9 -16
- package/src/engine-components/postprocessing/PostProcessingHandler.ts +2 -1
- package/src/engine-components/postprocessing/Volume.ts +72 -163
- package/src/engine-components/postprocessing/index.ts +1 -0
- package/src/engine-components/postprocessing/utils.ts +2 -0
- package/src/engine-components/ui/Canvas.ts +2 -2
- package/src/engine-components/ui/Graphic.ts +7 -3
- package/src/engine-components/ui/Text.ts +170 -52
- package/src/engine-components/ui/index.ts +2 -1
- package/src/engine-components-experimental/networking/PlayerSync.ts +64 -11
- package/dist/needle-engine.bundle-CNH61kLA.umd.cjs +0 -1730
- package/dist/needle-engine.bundle-Dvh1jROn.min.js +0 -1730
package/CHANGELOG.md
CHANGED
|
@@ -4,10 +4,37 @@ All notable changes to this package will be documented in this file.
|
|
|
4
4
|
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
|
5
5
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
6
6
|
|
|
7
|
-
## [5.0.
|
|
8
|
-
- Add:
|
|
9
|
-
-
|
|
10
|
-
-
|
|
7
|
+
## [5.1.0-alpha.1] - 2026-04-10
|
|
8
|
+
- Add: `AnimatorControllerBuilder` for building animator controllers from code (experimental)
|
|
9
|
+
- Add: XR global events now return an unsubscribe function + `onBeforeXRSessionRequest` event
|
|
10
|
+
- Add: `getComponent` by string name (experimental)
|
|
11
|
+
- Add: FastHDR (PMREM) support for `GroundProjection`
|
|
12
|
+
- Fix: `setParamWithoutReload` losing URL hash
|
|
13
|
+
- Fix: Physics treeshaking when used in code-only projects
|
|
14
|
+
- Improved: Vite logger with "latest" symlink, mobile fix, and more readable timestamps (at `node_modules/.needle/logs`). This is useful for local AI to help debug
|
|
15
|
+
|
|
16
|
+
## [5.1.0-alpha] - 2026-04-07
|
|
17
|
+
#### Networking
|
|
18
|
+
- Add: VOIP `volume` property and `speaking` event
|
|
19
|
+
- Add: `onSyncInstantiate` and `onSyncDestroy` callbacks
|
|
20
|
+
- Change: `requestOwnership` now returns a `Promise`
|
|
21
|
+
- Change: `addComponent` generates deterministic component GUIDs for reliable networking of runtime-added components
|
|
22
|
+
- Change: `syncInstantiate` automatically adds to prefabProvider and assigns GUID
|
|
23
|
+
|
|
24
|
+
#### Rendering
|
|
25
|
+
- Add: MaterialX Voronoi node "cell" output
|
|
26
|
+
- Add: Postprocessing tests
|
|
27
|
+
- Change: Postprocessing moved to core — accessible via `context.postprocessing` and exported from `@needle-tools/engine`
|
|
28
|
+
- Improved: Tonemapping without other postprocessing effects is now applied directly to the renderer, avoiding an unnecessary postprocessing pass
|
|
29
|
+
- Fix: MaterialPropertyBlock multimaterial change from opaque to transparent
|
|
30
|
+
|
|
31
|
+
#### XR
|
|
32
|
+
- Improved: iOS AppClip AR session now opens reliably on first visit and first tap
|
|
33
|
+
- Fix: XR light intensity in scaled sessions
|
|
34
|
+
|
|
35
|
+
#### UI
|
|
36
|
+
- Fix: HTML mobile icon not rendering
|
|
37
|
+
- Fix: UI `Text` component absolute font URL handling
|
|
11
38
|
|
|
12
39
|
## [5.0.2] - 2026-04-03
|
|
13
40
|
- Updated `@needle-tools/materialx` to 1.6.0:
|
package/README.md
CHANGED
|
@@ -92,19 +92,17 @@ onUpdate((context) => {
|
|
|
92
92
|
|
|
93
93
|
**WebXR & AR** — immersive experiences on Android and iOS
|
|
94
94
|
- WebXR support including [WebXR on iOS](https://engine.needle.tools/docs/how-to-guides/xr/ios-webxr-app-clip.html)
|
|
95
|
-
- `WebXRImageTracking` — AR image targets with full tracking lifecycle
|
|
95
|
+
- [`WebXRImageTracking`](https://engine.needle.tools/docs/api/WebXRImageTracking) — AR image targets with full tracking lifecycle
|
|
96
96
|
- `WebXRPlaneTracking` — AR surface detection
|
|
97
97
|
- Interactive QuickLook for AR on Vision Pro
|
|
98
98
|
|
|
99
99
|
**Scene & Asset Management**
|
|
100
|
-
- `SceneSwitcher` — load different scenes by URL
|
|
100
|
+
- `SceneSwitcher` — load different scenes / hierarchies by URL
|
|
101
101
|
- `AssetReference` — runtime asset loading by URL
|
|
102
|
-
- `NestedGltf` — lazy-load GLB files on demand within a scene
|
|
103
102
|
- Multi-scene support with dynamic content loading
|
|
104
103
|
|
|
105
104
|
**Physics & Interaction** — Built-in [Rapier](https://rapier.rs/) physics engine
|
|
106
105
|
- `Rigidbody`, `BoxCollider`, `SphereCollider`, `MeshCollider` — full physics simulation
|
|
107
|
-
- `CharacterController` — movement with gravity, slopes, and steps
|
|
108
106
|
- `DragControls` — click-and-drag 3D objects with zero code
|
|
109
107
|
- `SpatialTrigger` — proximity and enter-zone detection
|
|
110
108
|
|
|
@@ -113,17 +111,18 @@ onUpdate((context) => {
|
|
|
113
111
|
- `Voip` — built-in WebRTC voice chat
|
|
114
112
|
- `PlayerSync` — player object sync on join/leave
|
|
115
113
|
- `SyncedCamera` — camera sync for observer sessions
|
|
114
|
+
- Low level networking events for full control
|
|
116
115
|
|
|
117
116
|
**Rendering & Effects**
|
|
118
117
|
- Advanced PBR rendering with lightmap support
|
|
119
|
-
- Post-processing (Bloom, DepthOfField, SSAO, ChromaticAberration, and more)
|
|
120
|
-
- Progressive texture and mesh loading with automatic LOD generation
|
|
118
|
+
- Post-processing (Bloom, DepthOfField, SSAO, ChromaticAberration, Tonemapping and more)
|
|
119
|
+
- [Progressive texture and mesh loading](https://engine.needle.tools/docs/gltf-progressive/) with automatic LOD generation
|
|
121
120
|
|
|
122
121
|
**Animation & Media**
|
|
123
122
|
- Animation state machines and timeline animations
|
|
124
123
|
- `VideoPlayer` — full video playback component
|
|
125
124
|
- `AudioSource` — 3D spatial audio
|
|
126
|
-
- Animate anything via [KHR_animation_pointer](https://
|
|
125
|
+
- Animate anything via [KHR_animation_pointer](https://www.npmjs.com/package/@needle-tools/three-animation-pointer)
|
|
127
126
|
|
|
128
127
|
**Framework Integration** — works with React, Vue, Svelte, or vanilla JS/TS
|
|
129
128
|
|