@needle-tools/engine 4.12.0-next.dd87659 → 4.12.0-next.e42c144

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 (265) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/components.needle.json +1 -1
  3. package/dist/generateMeshBVH.worker-iyfPIK6R.js +21 -0
  4. package/dist/{gltf-progressive-DZrY8VT6.min.js → gltf-progressive-BmSygnAC.min.js} +2 -2
  5. package/dist/{gltf-progressive-DgYz5BYa.js → gltf-progressive-DnLBuGK5.js} +24 -24
  6. package/dist/{gltf-progressive-DWcmTMCh.umd.cjs → gltf-progressive-Rs-ojtXy.umd.cjs} +1 -1
  7. package/dist/{loader.worker-Dip-PthR.js → loader.worker-DWzfDpAl.js} +4 -4
  8. package/dist/needle-engine.bundle-CW5U4a3u.umd.cjs +1647 -0
  9. package/dist/needle-engine.bundle-HNQiYV9e.min.js +1647 -0
  10. package/dist/{needle-engine.bundle-CiqX7AtA.js → needle-engine.bundle-qrrKb_xn.js} +8886 -8598
  11. package/dist/needle-engine.d.ts +142 -43
  12. package/dist/needle-engine.js +48 -48
  13. package/dist/needle-engine.min.js +1 -1
  14. package/dist/needle-engine.umd.cjs +1 -1
  15. package/dist/{postprocessing-DYDtB188.min.js → postprocessing-B5ksn9-G.min.js} +54 -54
  16. package/dist/{postprocessing-CMgoN5t5.umd.cjs → postprocessing-DZtb9Nnn.umd.cjs} +81 -81
  17. package/dist/{postprocessing-BTW9pD_s.js → postprocessing-__7s9wON.js} +450 -441
  18. package/dist/{three-DfMvBzXi.js → three-BCCkyCA5.js} +1 -7
  19. package/dist/{three-qj71I7J3.umd.cjs → three-Bf2NBxAw.umd.cjs} +2 -2
  20. package/dist/{three-B7CT31Bt.min.js → three-W7zWTcfP.min.js} +1 -1
  21. package/dist/{three-examples-CsW4_6LI.umd.cjs → three-examples-Dho7cuu4.umd.cjs} +4 -4
  22. package/dist/{three-examples-D1P7eEhn.min.js → three-examples-MsJjauyk.min.js} +10 -10
  23. package/dist/{three-examples-D1SK93ek.js → three-examples-y2GeYlze.js} +2 -20
  24. package/dist/{three-mesh-ui-C_uSB5dD.js → three-mesh-ui-3nSSizT4.js} +1 -1
  25. package/dist/{three-mesh-ui-LQ44s0AL.min.js → three-mesh-ui-CIez6qJQ.min.js} +1 -1
  26. package/dist/{three-mesh-ui-DpATDXwU.umd.cjs → three-mesh-ui-zsOOA5Pq.umd.cjs} +1 -1
  27. package/dist/{vendor-D0zoswDa.js → vendor-DMZcbVO1.js} +3707 -3527
  28. package/dist/vendor-sURMCFSI.min.js +1116 -0
  29. package/dist/{vendor-UCpFAwt1.umd.cjs → vendor-tyBvnMF-.umd.cjs} +39 -39
  30. package/lib/engine/codegen/register_types.js +0 -2
  31. package/lib/engine/codegen/register_types.js.map +1 -1
  32. package/lib/engine/debug/debug_console.js +403 -1
  33. package/lib/engine/debug/debug_console.js.map +1 -1
  34. package/lib/engine/engine_components.js +3 -3
  35. package/lib/engine/engine_components.js.map +1 -1
  36. package/lib/engine/engine_context.js +2 -0
  37. package/lib/engine/engine_context.js.map +1 -1
  38. package/lib/engine/engine_input.d.ts +5 -0
  39. package/lib/engine/engine_input.js +6 -0
  40. package/lib/engine/engine_input.js.map +1 -1
  41. package/lib/engine/engine_license.d.ts +18 -0
  42. package/lib/engine/engine_license.js +115 -18
  43. package/lib/engine/engine_license.js.map +1 -1
  44. package/lib/engine/engine_networking.js +5 -5
  45. package/lib/engine/engine_networking.js.map +1 -1
  46. package/lib/engine/engine_physics.js.map +1 -1
  47. package/lib/engine/engine_physics_rapier.js +1 -1
  48. package/lib/engine/engine_physics_rapier.js.map +1 -1
  49. package/lib/engine/engine_serialization_builtin_serializer.js +1 -1
  50. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  51. package/lib/engine/engine_utils.d.ts +4 -1
  52. package/lib/engine/engine_utils.js +28 -4
  53. package/lib/engine/engine_utils.js.map +1 -1
  54. package/lib/engine/extensions/extensions.d.ts +29 -7
  55. package/lib/engine/extensions/extensions.js.map +1 -1
  56. package/lib/engine/webcomponents/WebXRButtons.js +13 -5
  57. package/lib/engine/webcomponents/WebXRButtons.js.map +1 -1
  58. package/lib/engine/webcomponents/needle menu/needle-menu.js +4 -5
  59. package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
  60. package/lib/engine/webcomponents/needle-engine.ar-overlay.js +4 -0
  61. package/lib/engine/webcomponents/needle-engine.ar-overlay.js.map +1 -1
  62. package/lib/engine/webcomponents/needle-engine.js +1 -1
  63. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  64. package/lib/engine/xr/NeedleXRSession.d.ts +1 -1
  65. package/lib/engine/xr/NeedleXRSession.js +101 -22
  66. package/lib/engine/xr/NeedleXRSession.js.map +1 -1
  67. package/lib/engine/xr/TempXRContext.js +12 -2
  68. package/lib/engine/xr/TempXRContext.js.map +1 -1
  69. package/lib/engine/xr/usdz.js +6 -2
  70. package/lib/engine/xr/usdz.js.map +1 -1
  71. package/lib/engine-components/AlignmentConstraint.d.ts +1 -2
  72. package/lib/engine-components/AlignmentConstraint.js +1 -2
  73. package/lib/engine-components/AlignmentConstraint.js.map +1 -1
  74. package/lib/engine-components/Animation.d.ts +2 -0
  75. package/lib/engine-components/Animation.js +2 -0
  76. package/lib/engine-components/Animation.js.map +1 -1
  77. package/lib/engine-components/Animator.d.ts +1 -0
  78. package/lib/engine-components/Animator.js +1 -0
  79. package/lib/engine-components/Animator.js.map +1 -1
  80. package/lib/engine-components/AudioListener.d.ts +1 -1
  81. package/lib/engine-components/AudioListener.js +1 -1
  82. package/lib/engine-components/AudioSource.d.ts +1 -1
  83. package/lib/engine-components/AudioSource.js +1 -1
  84. package/lib/engine-components/BasicIKConstraint.d.ts +8 -0
  85. package/lib/engine-components/BasicIKConstraint.js +8 -0
  86. package/lib/engine-components/BasicIKConstraint.js.map +1 -1
  87. package/lib/engine-components/BoxHelperComponent.d.ts +1 -0
  88. package/lib/engine-components/BoxHelperComponent.js +1 -0
  89. package/lib/engine-components/BoxHelperComponent.js.map +1 -1
  90. package/lib/engine-components/Camera.d.ts +2 -2
  91. package/lib/engine-components/Camera.js +6 -3
  92. package/lib/engine-components/Camera.js.map +1 -1
  93. package/lib/engine-components/CharacterController.d.ts +6 -2
  94. package/lib/engine-components/CharacterController.js +6 -2
  95. package/lib/engine-components/CharacterController.js.map +1 -1
  96. package/lib/engine-components/Collider.d.ts +2 -2
  97. package/lib/engine-components/Collider.js +1 -1
  98. package/lib/engine-components/Collider.js.map +1 -1
  99. package/lib/engine-components/Component.d.ts +2 -1
  100. package/lib/engine-components/Component.js +3 -2
  101. package/lib/engine-components/Component.js.map +1 -1
  102. package/lib/engine-components/ContactShadows.d.ts +1 -1
  103. package/lib/engine-components/ContactShadows.js +1 -1
  104. package/lib/engine-components/DragControls.js +4 -1
  105. package/lib/engine-components/DragControls.js.map +1 -1
  106. package/lib/engine-components/Gizmos.d.ts +2 -0
  107. package/lib/engine-components/Gizmos.js +2 -0
  108. package/lib/engine-components/Gizmos.js.map +1 -1
  109. package/lib/engine-components/Joints.d.ts +20 -0
  110. package/lib/engine-components/Joints.js +20 -0
  111. package/lib/engine-components/Joints.js.map +1 -1
  112. package/lib/engine-components/LODGroup.d.ts +1 -1
  113. package/lib/engine-components/LODGroup.js +1 -1
  114. package/lib/engine-components/LookAtConstraint.d.ts +1 -1
  115. package/lib/engine-components/LookAtConstraint.js +1 -1
  116. package/lib/engine-components/Networking.d.ts +1 -1
  117. package/lib/engine-components/Networking.js +1 -1
  118. package/lib/engine-components/OrbitControls.d.ts +1 -1
  119. package/lib/engine-components/OrbitControls.js +1 -1
  120. package/lib/engine-components/Renderer.d.ts +6 -0
  121. package/lib/engine-components/Renderer.js +6 -0
  122. package/lib/engine-components/Renderer.js.map +1 -1
  123. package/lib/engine-components/RendererInstancing.js +5 -3
  124. package/lib/engine-components/RendererInstancing.js.map +1 -1
  125. package/lib/engine-components/SceneSwitcher.js +18 -14
  126. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  127. package/lib/engine-components/ShadowCatcher.d.ts +1 -1
  128. package/lib/engine-components/ShadowCatcher.js +1 -1
  129. package/lib/engine-components/SpectatorCamera.d.ts +1 -1
  130. package/lib/engine-components/SpectatorCamera.js +16 -8
  131. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  132. package/lib/engine-components/SpriteRenderer.d.ts +2 -1
  133. package/lib/engine-components/SpriteRenderer.js +2 -1
  134. package/lib/engine-components/SpriteRenderer.js.map +1 -1
  135. package/lib/engine-components/Voip.d.ts +1 -1
  136. package/lib/engine-components/Voip.js +1 -1
  137. package/lib/engine-components/api.d.ts +1 -0
  138. package/lib/engine-components/api.js +1 -0
  139. package/lib/engine-components/api.js.map +1 -1
  140. package/lib/engine-components/codegen/components.d.ts +0 -1
  141. package/lib/engine-components/codegen/components.js +0 -1
  142. package/lib/engine-components/codegen/components.js.map +1 -1
  143. package/lib/engine-components/export/gltf/GltfExport.d.ts +5 -0
  144. package/lib/engine-components/export/gltf/GltfExport.js +5 -0
  145. package/lib/engine-components/export/gltf/GltfExport.js.map +1 -1
  146. package/lib/engine-components/export/usdz/USDZExporter.d.ts +1 -0
  147. package/lib/engine-components/export/usdz/USDZExporter.js +1 -0
  148. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  149. package/lib/engine-components/particlesystem/ParticleSystem.d.ts +1 -1
  150. package/lib/engine-components/particlesystem/ParticleSystem.js +1 -1
  151. package/lib/engine-components/timeline/SignalAsset.d.ts +1 -1
  152. package/lib/engine-components/timeline/SignalAsset.js +1 -1
  153. package/lib/engine-components/ui/Button.d.ts +1 -1
  154. package/lib/engine-components/ui/Button.js +1 -1
  155. package/lib/engine-components/ui/Canvas.d.ts +1 -1
  156. package/lib/engine-components/ui/Canvas.js +1 -1
  157. package/lib/engine-components/ui/CanvasGroup.d.ts +1 -1
  158. package/lib/engine-components/ui/CanvasGroup.js +1 -1
  159. package/lib/engine-components/ui/EventSystem.d.ts +1 -1
  160. package/lib/engine-components/ui/EventSystem.js +1 -1
  161. package/lib/engine-components/ui/Image.d.ts +1 -1
  162. package/lib/engine-components/ui/Image.js +1 -1
  163. package/lib/engine-components/ui/InputField.d.ts +1 -1
  164. package/lib/engine-components/ui/InputField.js +1 -1
  165. package/lib/engine-components/ui/Outline.d.ts +1 -1
  166. package/lib/engine-components/ui/Outline.js +1 -1
  167. package/lib/engine-components/ui/Raycaster.d.ts +3 -2
  168. package/lib/engine-components/ui/Raycaster.js +3 -2
  169. package/lib/engine-components/ui/Raycaster.js.map +1 -1
  170. package/lib/engine-components/ui/RectTransform.d.ts +6 -0
  171. package/lib/engine-components/ui/RectTransform.js +6 -0
  172. package/lib/engine-components/ui/RectTransform.js.map +1 -1
  173. package/lib/engine-components/ui/SpatialHtml.d.ts +7 -0
  174. package/lib/engine-components/ui/SpatialHtml.js +7 -0
  175. package/lib/engine-components/ui/SpatialHtml.js.map +1 -1
  176. package/lib/engine-components/ui/Text.d.ts +2 -0
  177. package/lib/engine-components/ui/Text.js +2 -0
  178. package/lib/engine-components/ui/Text.js.map +1 -1
  179. package/lib/engine-components/utils/LookAt.d.ts +2 -1
  180. package/lib/engine-components/utils/LookAt.js +2 -1
  181. package/lib/engine-components/utils/LookAt.js.map +1 -1
  182. package/lib/engine-components/web/CursorFollow.d.ts +1 -1
  183. package/lib/engine-components/web/CursorFollow.js +1 -1
  184. package/lib/engine-components/web/HoverAnimation.d.ts +1 -1
  185. package/lib/engine-components/web/HoverAnimation.js +1 -1
  186. package/lib/engine-components/web/ViewBox.d.ts +1 -1
  187. package/lib/engine-components/web/ViewBox.js +1 -1
  188. package/lib/engine-components/webxr/Avatar.js +2 -0
  189. package/lib/engine-components/webxr/Avatar.js.map +1 -1
  190. package/lib/engine-components/webxr/WebXR.js +18 -12
  191. package/lib/engine-components/webxr/WebXR.js.map +1 -1
  192. package/package.json +5 -5
  193. package/plugins/vite/poster-client.js +8 -1
  194. package/src/engine/codegen/register_types.ts +0 -2
  195. package/src/engine/debug/debug_console.ts +449 -1
  196. package/src/engine/engine_components.ts +4 -4
  197. package/src/engine/engine_context.ts +2 -0
  198. package/src/engine/engine_input.ts +7 -0
  199. package/src/engine/engine_license.ts +128 -17
  200. package/src/engine/engine_networking.ts +5 -5
  201. package/src/engine/engine_physics.ts +3 -3
  202. package/src/engine/engine_physics_rapier.ts +1 -1
  203. package/src/engine/engine_serialization_builtin_serializer.ts +1 -1
  204. package/src/engine/engine_utils.ts +23 -4
  205. package/src/engine/extensions/extensions.ts +30 -6
  206. package/src/engine/webcomponents/WebXRButtons.ts +15 -5
  207. package/src/engine/webcomponents/needle menu/needle-menu.ts +4 -5
  208. package/src/engine/webcomponents/needle-engine.ar-overlay.ts +6 -0
  209. package/src/engine/webcomponents/needle-engine.ts +2 -2
  210. package/src/engine/xr/NeedleXRSession.ts +114 -24
  211. package/src/engine/xr/TempXRContext.ts +12 -2
  212. package/src/engine/xr/usdz.ts +6 -1
  213. package/src/engine-components/AlignmentConstraint.ts +1 -2
  214. package/src/engine-components/Animation.ts +2 -0
  215. package/src/engine-components/Animator.ts +1 -0
  216. package/src/engine-components/AudioListener.ts +1 -1
  217. package/src/engine-components/AudioSource.ts +1 -1
  218. package/src/engine-components/BasicIKConstraint.ts +8 -0
  219. package/src/engine-components/BoxHelperComponent.ts +1 -0
  220. package/src/engine-components/Camera.ts +6 -3
  221. package/src/engine-components/CharacterController.ts +6 -2
  222. package/src/engine-components/Collider.ts +2 -2
  223. package/src/engine-components/Component.ts +5 -4
  224. package/src/engine-components/ContactShadows.ts +1 -1
  225. package/src/engine-components/DragControls.ts +5 -1
  226. package/src/engine-components/Gizmos.ts +2 -0
  227. package/src/engine-components/Joints.ts +20 -0
  228. package/src/engine-components/LODGroup.ts +1 -1
  229. package/src/engine-components/LookAtConstraint.ts +1 -1
  230. package/src/engine-components/Networking.ts +1 -1
  231. package/src/engine-components/OrbitControls.ts +1 -1
  232. package/src/engine-components/Renderer.ts +6 -0
  233. package/src/engine-components/RendererInstancing.ts +6 -3
  234. package/src/engine-components/SceneSwitcher.ts +17 -17
  235. package/src/engine-components/ShadowCatcher.ts +1 -1
  236. package/src/engine-components/SpectatorCamera.ts +22 -11
  237. package/src/engine-components/SpriteRenderer.ts +2 -1
  238. package/src/engine-components/Voip.ts +1 -1
  239. package/src/engine-components/api.ts +2 -1
  240. package/src/engine-components/codegen/components.ts +0 -1
  241. package/src/engine-components/export/gltf/GltfExport.ts +5 -0
  242. package/src/engine-components/export/usdz/USDZExporter.ts +1 -0
  243. package/src/engine-components/particlesystem/ParticleSystem.ts +1 -1
  244. package/src/engine-components/timeline/SignalAsset.ts +1 -1
  245. package/src/engine-components/ui/Button.ts +1 -1
  246. package/src/engine-components/ui/Canvas.ts +1 -1
  247. package/src/engine-components/ui/CanvasGroup.ts +1 -1
  248. package/src/engine-components/ui/EventSystem.ts +1 -1
  249. package/src/engine-components/ui/Image.ts +1 -1
  250. package/src/engine-components/ui/InputField.ts +1 -1
  251. package/src/engine-components/ui/Outline.ts +1 -1
  252. package/src/engine-components/ui/Raycaster.ts +3 -2
  253. package/src/engine-components/ui/RectTransform.ts +6 -0
  254. package/src/engine-components/ui/SpatialHtml.ts +7 -0
  255. package/src/engine-components/ui/Text.ts +2 -0
  256. package/src/engine-components/utils/LookAt.ts +2 -1
  257. package/src/engine-components/web/CursorFollow.ts +1 -1
  258. package/src/engine-components/web/HoverAnimation.ts +1 -1
  259. package/src/engine-components/web/ViewBox.ts +1 -1
  260. package/src/engine-components/webxr/Avatar.ts +4 -0
  261. package/src/engine-components/webxr/WebXR.ts +19 -11
  262. package/dist/generateMeshBVH.worker-mO20N_b8.js +0 -21
  263. package/dist/needle-engine.bundle-CiL59iU3.min.js +0 -1647
  264. package/dist/needle-engine.bundle-DzYZGJbS.umd.cjs +0 -1647
  265. package/dist/vendor-BKGa4GE0.min.js +0 -1116
@@ -225,9 +225,8 @@ declare type Alignment = "horizontal" | "vertical" | "any";
225
225
  * You can use this to create dynamic beams or connectors between objects.
226
226
  *
227
227
  * @summary Aligns and scales the object between two target GameObjects
228
- * @category Utility
228
+ * @category Constraints
229
229
  * @group Components
230
-
231
230
  **/
232
231
  export declare class AlignmentConstraint extends Component {
233
232
  private from;
@@ -251,6 +250,8 @@ declare type Anchoring = "plane" | "image" | "face" | "none";
251
250
 
252
251
  /**
253
252
  * Animation component to play animations on a GameObject.
253
+ *
254
+ * @summary Plays animations from AnimationClips
254
255
  * @category Animation and Sequencing
255
256
  * @group Components
256
257
  */
@@ -534,6 +535,7 @@ export declare class AnimationUtils {
534
535
  * It works with an {@link AnimatorController} to handle state transitions and animation blending.
535
536
  * A new AnimatorController can be created from code via `AnimatorController.createFromClips`.
536
537
  *
538
+ * @summary Plays and manages animations on a GameObject based on an AnimatorController
537
539
  * @category Animation and Sequencing
538
540
  * @group Components
539
541
  */
@@ -1210,7 +1212,7 @@ export declare class AudioExtension implements IUSDExporterExtension {
1210
1212
  * This component creates and manages a Three.js {@link three#AudioListener}, automatically connecting it
1211
1213
  * to the main camera or a Camera in the parent hierarchy.
1212
1214
  *
1213
- * @summary Audio listener for 3D audio capture
1215
+ * @summary Receives audio in the scene and outputs it to speakers
1214
1216
  * @category Multimedia
1215
1217
  * @group Components
1216
1218
  */
@@ -1266,7 +1268,7 @@ declare enum AudioRolloffMode {
1266
1268
  * is muted, the volume is set to 0. When unmuted, the volume
1267
1269
  * returns to its previous value.
1268
1270
  *
1269
- * @summary 3D audio source with spatial positioning and playback controls
1271
+ * @summary Plays audio clips from files or media streams
1270
1272
  * @category Multimedia
1271
1273
  * @group Components
1272
1274
  */
@@ -1704,6 +1706,14 @@ export declare class BaseUIComponent extends Component {
1704
1706
  setInteractable(value: boolean): void;
1705
1707
  }
1706
1708
 
1709
+ /**
1710
+ * BasicIKConstraint positions the GameObject between two target GameObjects (`from` and `to`) with an optional `hint` GameObject to guide the bending direction.
1711
+ * This is useful for simple inverse kinematics setups, such as positioning a joint in a limb.
1712
+ *
1713
+ * @summary Simple Inverse Kinematics Constraint
1714
+ * @category Animation
1715
+ * @group Components
1716
+ */
1707
1717
  export declare class BasicIKConstraint extends Component {
1708
1718
  private from;
1709
1719
  private to;
@@ -1912,6 +1922,8 @@ export declare class BoxCollider extends Collider implements IBoxCollider {
1912
1922
 
1913
1923
  /**
1914
1924
  * BoxGizmo is a component that displays a box around the object in the scene. It can optionally expand to the object's bounds.
1925
+ *
1926
+ * @summary Display a box around the object
1915
1927
  * @category Helpers
1916
1928
  * @group Components
1917
1929
  */
@@ -1932,6 +1944,7 @@ export declare class BoxGizmo extends Component {
1932
1944
  * Debug mode can be enabled with the URL parameter `?debugboxhelper`, which will visualize intersection tests.
1933
1945
  * Helper visualization can be enabled with the URL parameter `?gizmos`.
1934
1946
  *
1947
+ * @summary Bounding box helper with intersection tests
1935
1948
  * @category Helpers
1936
1949
  * @group Components
1937
1950
  */
@@ -1985,7 +1998,7 @@ export declare const builtinComponentKeyName = "builtin_components";
1985
1998
  * Button is a UI component that can be clicked by the user to perform an action.
1986
1999
  * It supports different visual states such as normal, highlighted, pressed, and disabled.
1987
2000
  * You can customize the button's appearance using colors or animations for each state.
1988
- * @summary Button UI Component
2001
+ * @summary UI Button that can be clicked to perform actions
1989
2002
  * @category User Interface
1990
2003
  * @group Components
1991
2004
  */
@@ -2154,8 +2167,8 @@ export declare class CallInfo {
2154
2167
  * Supports both perspective and orthographic cameras with various rendering options.
2155
2168
  * Internally, this component uses {@link PerspectiveCamera} and {@link OrthographicCamera} three.js objects.
2156
2169
  *
2157
- * @summary Camera rendering scenes from a specific viewpoint
2158
- * @category Camera
2170
+ * @summary Rendering scenes from a specific viewpoint
2171
+ * @category Camera and Controls
2159
2172
  * @group Components
2160
2173
  */
2161
2174
  export declare class Camera extends Component implements ICamera {
@@ -2372,7 +2385,7 @@ export declare class CameraTargetReachedEvent extends CustomEvent<{
2372
2385
  * It defines the area where UI elements are rendered and manages their layout and rendering settings.
2373
2386
  * Canvases can be set to render in world space or screen space (overlay or camera).
2374
2387
  * Multiple canvases can exist in a scene, each with its own settings and hierarchy of UI elements.
2375
- * @summary Canvas UI Component
2388
+ * @summary Root component for UI elements, managing layout and rendering settings
2376
2389
  * @category User Interface
2377
2390
  * @group Components
2378
2391
  */
@@ -2441,7 +2454,7 @@ export declare class Canvas extends UIRootComponent implements ICanvas {
2441
2454
  * CanvasGroup is a UI component that allows you to control the transparency and interactivity of a group of UI elements.
2442
2455
  * By adjusting the alpha property, you can fade in or out all child UI elements simultaneously.
2443
2456
  * The interactable and blocksRaycasts properties let you enable or disable user interaction for the entire group.
2444
- * @summary CanvasGroup UI Component
2457
+ * @summary Group UI elements to control transparency and interactivity
2445
2458
  * @category User Interface
2446
2459
  * @group Components
2447
2460
  */
@@ -2579,8 +2592,12 @@ export declare class CharacterController extends Component {
2579
2592
  }
2580
2593
 
2581
2594
  /**
2582
- * @category Camera
2583
- * @category Interactivity
2595
+ * CharacterControllerInput handles user input to control a CharacterController.
2596
+ * It supports movement, looking around, jumping, and double jumping.
2597
+ * You can customize movement speed, rotation speed, and jump forces.
2598
+ * It also integrates with an Animator component for character animations.
2599
+ * @summary User Input for Character Controller
2600
+ * @category Character
2584
2601
  * @group Components
2585
2602
  */
2586
2603
  export declare class CharacterControllerInput extends Component {
@@ -2739,11 +2756,11 @@ export declare type ClipModel = {
2739
2756
  * - Example: https://samples.needle.tools/physics-playground
2740
2757
  * - Example: https://samples.needle.tools/physics-&-animation
2741
2758
  *
2742
- *
2759
+ * @summary Physics collider
2743
2760
  * @category Physics
2744
2761
  * @group Components
2745
2762
  */
2746
- export declare class Collider extends Component implements ICollider {
2763
+ export declare abstract class Collider extends Component implements ICollider {
2747
2764
  /* Excluded from this release type: isCollider */
2748
2765
  /**
2749
2766
  * The {@link Rigidbody} that this collider is attached to. This handles the physics simulation for this collider.
@@ -3406,7 +3423,7 @@ export declare class ContactPoint {
3406
3423
  *
3407
3424
  * ContactShadows can also be enabled on the `<needle-engine>` web component directly by adding the `contactshadows` attribute. The value of the attribute will be used as opacity and darkness of the shadows: `<needle-engine contactshadows="0.7">`.
3408
3425
  *
3409
- *
3426
+ * @summary Display contact shadows on the ground
3410
3427
  * @category Rendering
3411
3428
  * @group Components
3412
3429
  */
@@ -4058,7 +4075,7 @@ export declare function createMotion(name: string, id?: InstantiateIdProvider):
4058
4075
  * - Example: [Look At Cursor sample](https://engine.needle.tools/samples/look-at-cursor-interactive-3d-header/). This sample combines the CursorFollow component with a LookAt component to create an interactive 3D header that looks at the cursor.
4059
4076
  *
4060
4077
  * @summary Makes the object follow the cursor position on screen
4061
- * @category Web
4078
+ * @category Interactivity
4062
4079
  * @group Components
4063
4080
  * @component
4064
4081
  */
@@ -4295,11 +4312,13 @@ export declare namespace DeviceUtilities {
4295
4312
  export function isAndroidDevice(): boolean;
4296
4313
  /** @returns `true` if we're currently using the Mozilla XR Browser (only available for iOS) */
4297
4314
  export function isMozillaXR(): boolean;
4315
+ /** @returns `true` if we're currently in the Needle App Clip */
4316
+ export function isNeedleAppClip(): boolean;
4298
4317
  /** @returns `true` for MacOS devices */
4299
4318
  export function isMacOS(): boolean;
4300
4319
  /** @returns `true` for VisionOS devices */
4301
4320
  export function isVisionOS(): boolean;
4302
- /** @returns `true` for iOS devices like iPad, iPhone, iPod... */
4321
+ /** @returns `true` for mobile Apple devices like iPad, iPhone, iPod, Vision Pro, ... */
4303
4322
  export function isiOS(): boolean;
4304
4323
  /** @returns `true` if we're currently on safari */
4305
4324
  export function isSafari(): boolean;
@@ -4311,6 +4330,7 @@ export declare namespace DeviceUtilities {
4311
4330
  export function microphonePermissionsGranted(): Promise<boolean>;
4312
4331
  export function getiOSVersion(): string | null;
4313
4332
  export function getChromeVersion(): string | null;
4333
+ export function getSafariVersion(): string | null;
4314
4334
  }
4315
4335
 
4316
4336
  /**
@@ -4876,7 +4896,7 @@ export declare const eventListSerializer: EventListSerializer;
4876
4896
 
4877
4897
  /**
4878
4898
  * The EventSystem is responsible for managing and dispatching input events to UI components within the scene.
4879
- * @summary UI Input Event System
4899
+ * @summary Manages and dispatches input events to UI components
4880
4900
  * @category User Interface
4881
4901
  * @group Components
4882
4902
  */
@@ -5293,6 +5313,12 @@ declare type FitParameters = {
5293
5313
  scaleFactor?: Partial<Vector3Like>;
5294
5314
  };
5295
5315
 
5316
+ /**
5317
+ * The FixedJoint groups together 2 rigidbodies, making them stick together in their bound position
5318
+ * @summary Connect two Rigidbodies and make them stick together
5319
+ * @category Physics
5320
+ * @group Components
5321
+ */
5296
5322
  export declare class FixedJoint extends Joint {
5297
5323
  protected createJoint(self: Rigidbody, other: Rigidbody): void;
5298
5324
  }
@@ -5650,9 +5676,10 @@ export declare abstract class GameObject extends Object3D implements Object3D, I
5650
5676
  * Gets a component of the specified type in the gameObject's children hierarchy
5651
5677
  * @param go GameObject to search in
5652
5678
  * @param typeName Constructor of the component type
5679
+ * @param includeInactive Whether to include inactive objects in the search
5653
5680
  * @returns The first matching component if found, otherwise null
5654
5681
  */
5655
- static getComponentInChildren<T extends IComponent>(go: IGameObject | Object3D, typeName: Constructor<T>): T | null;
5682
+ static getComponentInChildren<T extends IComponent>(go: IGameObject | Object3D, typeName: Constructor<T>, includeInactive?: boolean): T | null;
5656
5683
  /**
5657
5684
  * Gets all components of the specified type in the gameObject's children hierarchy
5658
5685
  * @param go GameObject to search in
@@ -6077,6 +6104,11 @@ export declare class Gizmos {
6077
6104
  export declare type GLTF = GLTF_2;
6078
6105
 
6079
6106
  /**
6107
+ * GltfExport is a component that enables exporting selected 3D objects from the scene to the glTF format.
6108
+ * You can specify whether to export in binary format (.glb) or JSON format (.gltf), and select specific objects to include in the export.
6109
+ * The exported glTF file can be used in various 3D applications and engines that support the glTF standard.
6110
+ *
6111
+ * @summary Export selected 3D objects to glTF format
6080
6112
  * @category Asset Management
6081
6113
  * @group Components
6082
6114
  */
@@ -6148,7 +6180,8 @@ export declare class Graphic extends BaseUIComponent implements IGraphic, IRectT
6148
6180
  /**
6149
6181
  * A Raycaster that performs raycasting against UI elements (objects with a CanvasRenderer component).
6150
6182
  *
6151
- * @category UI
6183
+ * @summary Raycaster for UI elements
6184
+ * @category User Interface
6152
6185
  * @group Components
6153
6186
  */
6154
6187
  export declare class GraphicRaycaster extends ObjectRaycaster {
@@ -6336,6 +6369,14 @@ export declare class HideOnStart extends Component implements UsdzBehaviour {
6336
6369
  beforeCreateDocument(): void;
6337
6370
  }
6338
6371
 
6372
+ /**
6373
+ * The HingeJoint groups together 2 rigid bodies, constraining them to move like connected by a hinge.
6374
+ *
6375
+ * You can specify the anchor point and axis of rotation for the hinge.
6376
+ * @summary Connect two Rigidbodies with a hinge
6377
+ * @category Physics
6378
+ * @group Components
6379
+ */
6339
6380
  export declare class HingeJoint extends Joint {
6340
6381
  anchor?: Vector3;
6341
6382
  axis?: Vector3;
@@ -6387,7 +6428,7 @@ declare enum HorizontalWrapMode {
6387
6428
  * By default, a simple scale-up animation is used. You can customize the hover and idle animations by providing your own animation clips.
6388
6429
  *
6389
6430
  * @summary Hover Animation on Pointer Enter/Exit
6390
- * @category Web
6431
+ * @category Interactivity
6391
6432
  * @group Components
6392
6433
  */
6393
6434
  export declare class HoverAnimation extends Component {
@@ -6698,7 +6739,7 @@ declare interface ILightDataRegistry {
6698
6739
  * Image is a UI component that displays a sprite (2D image) in the user interface.
6699
6740
  * You can set the image property to assign a texture to be displayed.
6700
6741
  * The sprite can be customized with various properties such as color tinting and pixel density.
6701
- * @summary Image UI Component
6742
+ * @summary Display a 2D image in the UI
6702
6743
  * @category User Interface
6703
6744
  * @group Components
6704
6745
  */
@@ -6798,16 +6839,33 @@ export declare interface INeedleEngineComponent extends HTMLElement {
6798
6839
  }
6799
6840
 
6800
6841
  /**
6801
- * Interface for registering custom glTF extensions to the Needle Engine GLTFLoaders. Register your plugin via {@link addCustomExtensionPlugin}
6842
+ * Interface for registering custom glTF extensions to the Needle Engine GLTFLoaders.
6843
+ * Register your plugin using the {@link addCustomExtensionPlugin} method
6802
6844
  */
6803
6845
  export declare interface INeedleGLTFExtensionPlugin {
6804
6846
  /** The Name of your plugin */
6805
6847
  name: string;
6806
- /** Called before starting to load a glTF file. This callback can be used to add custom extensions to the GLTFLoader */
6848
+ /** Called before starting to load a glTF file. This callback can be used to add custom extensions to the [GLTFLoader](https://threejs.org/docs/#GLTFLoader.register)
6849
+ *
6850
+ * @example Add a custom extension to the GLTFloader
6851
+ * ```ts
6852
+ * onImport: (loader, url, context) => {
6853
+ * loader.register((parser) => new MyCustomExtension(parser));
6854
+ * }
6855
+ * ```
6856
+ */
6807
6857
  onImport?: OnImportCallback;
6808
- /** Called after the glTF has been loaded */
6858
+ /** Called after a glTF file has been loaded */
6809
6859
  onLoaded?: (url: string, gltf: GLTF, context: Context) => void;
6810
- /** Called before starting to export a glTF file. This callback can be used to add custom extensions to the GLTFExporter */
6860
+ /** Called before starting to export a glTF file. This callback can be used to add custom extensions to the [GLTFExporter](https://threejs.org/docs/#examples/en/exporters/GLTFExporter.register)
6861
+ *
6862
+ * @example Add a custom extension to the GLTFExporter
6863
+ * ```ts
6864
+ * onExport: (exporter, context) => {
6865
+ * exporter.register((writer) => new MyCustomExportExtension(writer));
6866
+ * }
6867
+ *
6868
+ */
6811
6869
  onExport?: OnExportCallback;
6812
6870
  }
6813
6871
 
@@ -7101,7 +7159,7 @@ export declare const enum InputEvents {
7101
7159
  * InputField is a UI component that allows users to enter and edit text.
7102
7160
  * It provides a text input area where users can type, delete, and modify text.
7103
7161
  * The InputField supports placeholder text, events for value changes, and end edit actions.
7104
- * @summary Text Input Field UI Component
7162
+ * @summary Text field for user input
7105
7163
  * @category User Interface
7106
7164
  * @group Components
7107
7165
  */
@@ -7975,6 +8033,12 @@ export declare class JoinedRoomResponse {
7975
8033
  inRoom: string[];
7976
8034
  }
7977
8035
 
8036
+ /**
8037
+ * Base class for physics joints connecting two rigid bodies.
8038
+ * @summary Connect two Rigidbodies
8039
+ * @category Physics
8040
+ * @group Components
8041
+ */
7978
8042
  declare abstract class Joint extends Component {
7979
8043
  connectedBody?: Rigidbody;
7980
8044
  get rigidBody(): Rigidbody | null;
@@ -8340,7 +8404,7 @@ declare enum LODFadeMode {
8340
8404
  /**
8341
8405
  * LODGroup allows to create a group of LOD levels for an object.
8342
8406
  *
8343
- * @summary Level of Detail (LOD) Group Component
8407
+ * @summary Level of Detail Group for optimizing rendering
8344
8408
  * @category Rendering
8345
8409
  * @group Components
8346
8410
  */
@@ -8414,7 +8478,8 @@ export declare enum LogType {
8414
8478
  * It can also invert the forward direction and keep the up direction.
8415
8479
  *
8416
8480
  * @summary Makes the object look at a target object or the camera
8417
- * @category Interactivity, Everywhere Actions
8481
+ * @category Everywhere Actions
8482
+ * @category Interactivity
8418
8483
  * @group Components
8419
8484
  */
8420
8485
  export declare class LookAt extends Component implements UsdzBehaviour {
@@ -8444,7 +8509,7 @@ export declare class LookAt extends Component implements UsdzBehaviour {
8444
8509
  * This component is used by {@link OrbitControls} internally.
8445
8510
  *
8446
8511
  * @summary Look At Constraint for OrbitControls
8447
- * @category Camera Controls
8512
+ * @category Camera and Controls
8448
8513
  * @group Components
8449
8514
  */
8450
8515
  export declare class LookAtConstraint extends Component {
@@ -9829,7 +9894,7 @@ export declare class NeedleXRSession implements INeedleXRSession {
9829
9894
  * @param init The XRSessionInit to use (optional), docs: https://developer.mozilla.org/en-US/docs/Web/API/XRSessionInit
9830
9895
  * @param context The Needle Engine context to use
9831
9896
  */
9832
- static start(mode: XRSessionMode | "ar", init?: XRSessionInit, context?: Context): Promise<NeedleXRSession | null>;
9897
+ static start(mode: XRSessionMode | "ar" | "quicklook", init?: XRSessionInit, context?: Context): Promise<NeedleXRSession | null>;
9833
9898
  static setSession(mode: XRSessionMode, session: XRSession, init: XRSessionInit, context: Context): NeedleXRSession;
9834
9899
  private static $_stop_request;
9835
9900
  /** stops the active XR session */
@@ -10085,6 +10150,11 @@ export declare class NEPointerEvent extends PointerEvent {
10085
10150
  /** What type of input created this event: touch, mouse, xr controller, xr hand tracking... */
10086
10151
  get pointerType(): PointerTypeNames;
10087
10152
  private readonly _pointerType;
10153
+ /**
10154
+ * The button name that raised this event (e.g. for mouse events "left", "right", "middle" or for XRTrigger "xr-standard-trigger" or "xr-standard-thumbstick")
10155
+ * Use {@link button} to get the numeric button index (e.g. 0, 1, 2...) on the controller or mouse.
10156
+ */
10157
+ readonly buttonName?: ButtonName | "none";
10088
10158
  /** The input that raised this event like `pointerdown` */
10089
10159
  get type(): InputEventNames;
10090
10160
  private readonly _type;
@@ -10362,7 +10432,7 @@ export declare class NetworkedStreams extends EventDispatcher<any> {
10362
10432
  * This component supplies websocket URLs for establishing connections.
10363
10433
  * It implements the {@link INetworkingWebsocketUrlProvider} interface.
10364
10434
  *
10365
- * @summary Networking configuration component
10435
+ * @summary Networking configuration
10366
10436
  * @category Networking
10367
10437
  * @group Components
10368
10438
  */
@@ -10543,7 +10613,7 @@ export declare type ObjectOptions = {
10543
10613
  /**
10544
10614
  * A Raycaster that performs raycasting against its own GameObject.
10545
10615
  *
10546
- * @category Interaction
10616
+ * @category Interactivity
10547
10617
  * @group Components
10548
10618
  */
10549
10619
  export declare class ObjectRaycaster extends Raycaster_2 {
@@ -10758,9 +10828,15 @@ export declare class OneEuroFilterXYZ {
10758
10828
  reset(value?: Vec3): void;
10759
10829
  }
10760
10830
 
10761
- declare type OnExportCallback = (exporter: GLTFExporter, context: Context) => void;
10831
+ /**
10832
+ * Callback type for glTF export plugins. See {@link INeedleGLTFExtensionPlugin.onExport}
10833
+ */
10834
+ export declare type OnExportCallback = (exporter: GLTFExporter, context: Context) => void;
10762
10835
 
10763
- declare type OnImportCallback = (loader: GLTFLoader, url: string, context: Context) => void;
10836
+ /**
10837
+ * Callback type for glTF import plugins. See {@link INeedleGLTFExtensionPlugin.onImport}
10838
+ */
10839
+ export declare type OnImportCallback = (loader: GLTFLoader, url: string, context: Context) => void;
10764
10840
 
10765
10841
  /**
10766
10842
  * Register a callback in the engine context created event.
@@ -10892,7 +10968,7 @@ declare enum OpenURLMode {
10892
10968
  * The three OrbitControls object can be accessed via the `controls` property.
10893
10969
  * The object being controlled by the OrbitControls (usually the camera) can be accessed via the `controllerObject` property.
10894
10970
  * @summary Camera controller using three.js OrbitControls
10895
- * @category Camera
10971
+ * @category Camera and Controls
10896
10972
  * @group Components
10897
10973
  */
10898
10974
  export declare class OrbitControls extends Component implements ICameraController {
@@ -11168,7 +11244,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
11168
11244
  /**
11169
11245
  * Outline is a UI component that adds an outline effect to UI elements.
11170
11246
  * You can customize the outline color and distance to create a visual border around the UI element.
11171
- * @summary Outline UI Component
11247
+ * @summary Add an outline effect to UI elements
11172
11248
  * @category User Interface
11173
11249
  * @group Components
11174
11250
  */
@@ -11310,7 +11386,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
11310
11386
  *
11311
11387
  * Needle Engine uses [three.quarks](https://github.com/Alchemist0823/three.quarks) under the hood to handle particles.
11312
11388
  *
11313
- * @summary Particle System
11389
+ * @summary Handles the motion and rendering of many individual particles
11314
11390
  * @category Rendering
11315
11391
  * @group Components
11316
11392
  */
@@ -12817,6 +12893,12 @@ export declare class OrbitControls extends Component implements ICameraControlle
12817
12893
  height: number;
12818
12894
  }
12819
12895
 
12896
+ /**
12897
+ * RectTransform is a component that defines a rectangle for UI layout.
12898
+ * @summary UI Rectangle Transform
12899
+ * @category User Interface
12900
+ * @group Components
12901
+ */
12820
12902
  export declare class RectTransform extends BaseUIComponent implements IRectTransform, IRectTransformChangedReceiver {
12821
12903
  get parent(): RectTransform | undefined;
12822
12904
  get translation(): Vector3;
@@ -14549,7 +14631,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
14549
14631
  *
14550
14632
  * Note that ShadowCatcher meshes are not raycastable by default; if you want them to be raycastable, change the layers in `onEnable()`.
14551
14633
  *
14552
- * @summary Renders shadows or light on the object
14634
+ * @summary Creates a shadow mask or a light occluder
14553
14635
  * @category Rendering
14554
14636
  * @group Components
14555
14637
  */
@@ -14716,7 +14798,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
14716
14798
  * Signals can be added to a signal track on a {@link PlayableDirector}
14717
14799
  *
14718
14800
  * @summary Receives signals and invokes reactions
14719
- * @category Sequencing and Timelines
14801
+ * @category Animation and Sequencing
14720
14802
  * @group Components
14721
14803
  */
14722
14804
  export declare class SignalReceiver extends Component {
@@ -14781,6 +14863,12 @@ export declare class OrbitControls extends Component implements ICameraControlle
14781
14863
  evaluate(t01: number, target?: Vec3, lerpFactor?: number): Vec3;
14782
14864
  }
14783
14865
 
14866
+ /**
14867
+ * Renders deformable meshes that deform via bones and/or blend shapes.
14868
+ * @summary Renderer for deformable meshes
14869
+ * @category Rendering
14870
+ * @group Components
14871
+ **/
14784
14872
  export declare class SkinnedMeshRenderer extends MeshRenderer {
14785
14873
  private _needUpdateBoundingSphere;
14786
14874
  awake(): void;
@@ -14845,6 +14933,13 @@ export declare class OrbitControls extends Component implements ICameraControlle
14845
14933
  performRaycast(_opts?: IRaycastOptions | RaycastOptions | null): Intersection[] | null;
14846
14934
  }
14847
14935
 
14936
+ /**
14937
+ * SpatialHtml is a component that allows you to integrate HTML elements into a 3D scene.
14938
+ * By specifying the ID of an existing HTML element, you can render it as a 3D object within the scene.
14939
+ * @summary Render HTML elements as 3D objects in the scene
14940
+ * @category User Interface
14941
+ * @group Components
14942
+ */
14848
14943
  export declare class SpatialHtml extends Component {
14849
14944
  id: string | null;
14850
14945
  keepAspect: boolean;
@@ -14952,7 +15047,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
14952
15047
  *
14953
15048
  * Debug mode can be enabled with the URL parameter `?debugspectator`, which provides additional console output.
14954
15049
  *
14955
- * @summary Follow other users in a networked room
15050
+ * @summary Spectator camera for following other users
14956
15051
  * @category Networking
14957
15052
  * @group Components
14958
15053
  */
@@ -15329,7 +15424,8 @@ export declare class OrbitControls extends Component implements ICameraControlle
15329
15424
  *
15330
15425
  * - Example: https://engine.needle.tools/samples/spritesheet-animation
15331
15426
  *
15332
- * @category Sprites
15427
+ * @summary Renders 2D images from a sprite sheet
15428
+ * @category Rendering
15333
15429
  * @group Components
15334
15430
  */
15335
15431
  export declare class SpriteRenderer extends Component {
@@ -15763,6 +15859,8 @@ export declare class OrbitControls extends Component implements ICameraControlle
15763
15859
 
15764
15860
  /**
15765
15861
  * Text is a UI component that displays text in the user interface.
15862
+ *
15863
+ * @summary Display text in the UI
15766
15864
  * @category User Interface
15767
15865
  * @group Components
15768
15866
  */
@@ -16486,6 +16584,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
16486
16584
  * usdz.autoExportAudioSources = true;
16487
16585
  * usdz.exportAsync();
16488
16586
  * ```
16587
+ * @summary Export 3D objects as USDZ files for QuickLook
16489
16588
  * @category XR
16490
16589
  * @group Components
16491
16590
  */
@@ -16970,7 +17069,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
16970
17069
  * ```
16971
17070
 
16972
17071
  * @summary Automatically fits a box area into the camera view
16973
- * @category Camera
17072
+ * @category Camera and Controls
16974
17073
  * @group Components
16975
17074
  * @component
16976
17075
  */
@@ -17063,7 +17162,7 @@ export declare class OrbitControls extends Component implements ICameraControlle
17063
17162
  /**
17064
17163
  * The Voice over IP component (VoIP) allows you to send and receive audio streams to other users in the same networked room.
17065
17164
  * It requires a networking connection to be working (e.g. by having an active SyncedRoom component in the scene or by connecting to a room manually).
17066
- * @summary Voice over IP (VoIP) for networked audio communication
17165
+ * @summary Voice over IP for networked audio communication
17067
17166
  * @category Networking
17068
17167
  * @group Components
17069
17168
  */