@needle-tools/engine 5.1.0 → 5.1.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.
Files changed (80) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/dist/{needle-engine.bundle-5oIL49YP.js → needle-engine.bundle-BAUfRyBA.js} +7692 -7506
  3. package/dist/{needle-engine.bundle-DvOrfXws.umd.cjs → needle-engine.bundle-BL2wG5Te.umd.cjs} +159 -159
  4. package/dist/{needle-engine.bundle-DAAfj8Cs.min.js → needle-engine.bundle-BpNRkY3s.min.js} +184 -184
  5. package/dist/needle-engine.d.ts +25 -7
  6. package/dist/needle-engine.js +533 -533
  7. package/dist/needle-engine.min.js +1 -1
  8. package/dist/needle-engine.umd.cjs +1 -1
  9. package/lib/engine/api.d.ts +1 -1
  10. package/lib/engine/api.js +1 -1
  11. package/lib/engine/api.js.map +1 -1
  12. package/lib/engine/engine_init.js +2 -2
  13. package/lib/engine/engine_init.js.map +1 -1
  14. package/lib/engine/engine_license.d.ts +45 -7
  15. package/lib/engine/engine_license.js +276 -77
  16. package/lib/engine/engine_license.js.map +1 -1
  17. package/lib/engine/engine_networking.js +6 -0
  18. package/lib/engine/engine_networking.js.map +1 -1
  19. package/lib/engine/engine_networking_blob.js +3 -3
  20. package/lib/engine/engine_networking_blob.js.map +1 -1
  21. package/lib/engine/engine_networking_peer.js +19 -13
  22. package/lib/engine/engine_networking_peer.js.map +1 -1
  23. package/lib/engine/engine_utils_qrcode.js +2 -2
  24. package/lib/engine/engine_utils_qrcode.js.map +1 -1
  25. package/lib/engine/webcomponents/WebXRButtons.js +5 -6
  26. package/lib/engine/webcomponents/WebXRButtons.js.map +1 -1
  27. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
  28. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
  29. package/lib/engine/webcomponents/needle menu/needle-menu.js +5 -5
  30. package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
  31. package/lib/engine/webcomponents/needle-engine.js +31 -2
  32. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  33. package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
  34. package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
  35. package/lib/engine/xr/NeedleXRSession.d.ts +7 -1
  36. package/lib/engine/xr/NeedleXRSession.js +70 -11
  37. package/lib/engine/xr/NeedleXRSession.js.map +1 -1
  38. package/lib/engine/xr/NeedleXRSync.js +23 -4
  39. package/lib/engine/xr/NeedleXRSync.js.map +1 -1
  40. package/lib/engine/xr/TempXRContext.js +2 -2
  41. package/lib/engine/xr/TempXRContext.js.map +1 -1
  42. package/lib/engine-components/SyncedTransform.d.ts +5 -1
  43. package/lib/engine-components/SyncedTransform.js +45 -8
  44. package/lib/engine-components/SyncedTransform.js.map +1 -1
  45. package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
  46. package/lib/engine-components/webxr/Avatar.d.ts +8 -0
  47. package/lib/engine-components/webxr/Avatar.js +60 -32
  48. package/lib/engine-components/webxr/Avatar.js.map +1 -1
  49. package/lib/engine-components/webxr/WebXR.js +25 -14
  50. package/lib/engine-components/webxr/WebXR.js.map +1 -1
  51. package/lib/engine-schemes/synced-transform-model.d.ts +2 -0
  52. package/lib/engine-schemes/synced-transform-model.js +8 -1
  53. package/lib/engine-schemes/synced-transform-model.js.map +1 -1
  54. package/package.json +2 -2
  55. package/plugins/common/license.js +4 -4
  56. package/plugins/types/userconfig.d.ts +4 -3
  57. package/plugins/vite/build-pipeline.d.ts +3 -1
  58. package/plugins/vite/build-pipeline.js +19 -9
  59. package/plugins/vite/license.js +4 -4
  60. package/src/engine/api.ts +1 -1
  61. package/src/engine/engine_init.ts +2 -2
  62. package/src/engine/engine_license.ts +263 -73
  63. package/src/engine/engine_networking.ts +5 -0
  64. package/src/engine/engine_networking_blob.ts +3 -3
  65. package/src/engine/engine_networking_peer.ts +12 -13
  66. package/src/engine/engine_utils_qrcode.ts +2 -2
  67. package/src/engine/webcomponents/WebXRButtons.ts +5 -6
  68. package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
  69. package/src/engine/webcomponents/needle menu/needle-menu.ts +5 -5
  70. package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
  71. package/src/engine/webcomponents/needle-engine.ts +31 -2
  72. package/src/engine/xr/NeedleXRSession.ts +72 -14
  73. package/src/engine/xr/NeedleXRSync.ts +24 -4
  74. package/src/engine/xr/TempXRContext.ts +2 -2
  75. package/src/engine-components/SyncedTransform.ts +49 -10
  76. package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
  77. package/src/engine-components/webxr/Avatar.ts +60 -33
  78. package/src/engine-components/webxr/WebXR.ts +23 -15
  79. package/src/engine-schemes/synced-transform-model.ts +10 -1
  80. package/src/engine-schemes/transforms.fbs +1 -0
package/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ 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.1.2] - 2026-06-25
8
+
9
+ **Fixed**
10
+ - `SyncedTransform`: added world scale support — networked objects now keep the correct scale across clients, even when nested under scaled parents, with smooth interpolation
11
+ - AR & XR improvements: networked avatars now use the correct scale, stale avatars are reliably removed after a peer disconnects, and remote hands display correctly in Screen AR
12
+
7
13
  ## [5.1.0] - 2026-06-23
8
14
 
9
15
  ### ⭐ Highlights
@@ -75,7 +81,7 @@ onEnable() {
75
81
  ```
76
82
  - `AudioClip` type with standalone playback control, `AudioSource` spatial blend and `.opus` support
77
83
  - `context.lights` array and `context.mainLight` getter for quick access to scene lighting
78
- - `NeedleXRSession.appClipUrl` — launch a custom-branded Needle AppClip experience on iOS AR (provide your registered `appclip.needle.tools/x/…` URL or experience id) for your own App Clip card title and image
84
+ - `NeedleXRSession.appClipUrl` — launch a custom-branded Needle AppClip experience on iOS AR (provide your registered `appclip.needle.tools/x/…` URL or experience id) for your own App Clip card title and image (custom branding requires PRO — see [Custom Branding for iOS AR](https://engine.needle.tools/docs/how-to-guides/xr/ios-webxr-app-clip#custom-branding-for-ios-ar))
79
85
  - Physics raycast `includeTriggers` option
80
86
  - Unsubscribe functions returned from `Input`, `Networking`, and XR event subscriptions
81
87
  - `needlePlugins()` can now be called without arguments — the Vite command is resolved automatically: