@aura3d/engine 1.5.2 → 2.0.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.
Files changed (1262) hide show
  1. package/README.md +163 -119
  2. package/dist/animation/FootIk.d.ts +10 -1
  3. package/dist/animation/FootIk.d.ts.map +1 -1
  4. package/dist/animation/FootIk.js.map +1 -1
  5. package/dist/animation/HumanoidRetargeting.js +1 -1
  6. package/dist/animation/RigQuality.d.ts +1 -1
  7. package/dist/animation/RigQuality.js +2 -2
  8. package/dist/animation/RigQuality.js.map +1 -1
  9. package/dist/animation/SpringBones.d.ts.map +1 -1
  10. package/dist/animation/SpringBones.js +1 -2
  11. package/dist/animation/SpringBones.js.map +1 -1
  12. package/dist/animation/browser-index.d.ts +0 -2
  13. package/dist/animation/browser-index.d.ts.map +1 -1
  14. package/dist/animation/browser-index.js +0 -2
  15. package/dist/animation/browser-index.js.map +1 -1
  16. package/dist/animation/index.d.ts +0 -2
  17. package/dist/animation/index.d.ts.map +1 -1
  18. package/dist/animation/index.js +0 -2
  19. package/dist/animation/index.js.map +1 -1
  20. package/dist/animation/threejs-compatibility/AnimationAction.d.ts +1 -1
  21. package/dist/animation/threejs-compatibility/AnimationDiagnostics.d.ts +3 -3
  22. package/dist/animation/threejs-compatibility/AnimationMixer.d.ts +2 -2
  23. package/dist/animation/threejs-compatibility/SkinnedMesh.d.ts +1 -1
  24. package/dist/animation/threejs-compatibility/index.d.ts +11 -11
  25. package/dist/apps/index.d.ts +3 -3
  26. package/dist/assets/AssetCache.d.ts +1 -1
  27. package/dist/assets/AssetCompatibility.d.ts +2 -2
  28. package/dist/assets/AssetInspection.d.ts +4 -4
  29. package/dist/assets/AssetLoader.d.ts +1 -1
  30. package/dist/assets/AssetManager.d.ts +5 -5
  31. package/dist/assets/AssetRegistry.d.ts +1 -1
  32. package/dist/assets/AssetRenderDefaults.d.ts +1 -1
  33. package/dist/assets/AudioLoader.d.ts +2 -2
  34. package/dist/assets/CarConceptMaterialStability.d.ts +2 -2
  35. package/dist/assets/GLTFAnimationRuntime.d.ts +7 -3
  36. package/dist/assets/GLTFAnimationRuntime.d.ts.map +1 -1
  37. package/dist/assets/GLTFAnimationRuntime.js +29 -6
  38. package/dist/assets/GLTFAnimationRuntime.js.map +1 -1
  39. package/dist/assets/GLTFAutoFit.d.ts +1 -1
  40. package/dist/assets/GLTFCompressionDecoders.d.ts +1 -1
  41. package/dist/assets/GLTFLoader.d.ts +5 -5
  42. package/dist/assets/GLTFLoader.d.ts.map +1 -1
  43. package/dist/assets/GLTFLoader.js +13 -4
  44. package/dist/assets/GLTFLoader.js.map +1 -1
  45. package/dist/assets/GLTFRenderResources.d.ts +3 -3
  46. package/dist/assets/HDRLoader.d.ts +1 -1
  47. package/dist/assets/ImageLoader.d.ts +2 -2
  48. package/dist/assets/KTX2BasisTextureTranscoder.d.ts +1 -1
  49. package/dist/assets/LoadContext.d.ts +2 -2
  50. package/dist/assets/MaterialLoader.d.ts +3 -3
  51. package/dist/assets/MeshOptimization.d.ts +1 -1
  52. package/dist/assets/OBJLoader.d.ts +3 -3
  53. package/dist/assets/SceneLoader.d.ts +4 -4
  54. package/dist/assets/ShaderLoader.d.ts +2 -2
  55. package/dist/assets/TextureLoader.d.ts +3 -3
  56. package/dist/assets/TexturePipeline.d.ts +1 -1
  57. package/dist/assets/WorkerAssetJobs.d.ts +1 -1
  58. package/dist/assets/advanced-gallery/index.d.ts +2 -2
  59. package/dist/assets/asset-corpus/GLTFSceneLoader.d.ts +2 -2
  60. package/dist/assets/asset-corpus/ProductionAssetPipeline.d.ts +2 -2
  61. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts +3 -3
  62. package/dist/assets/asset-corpus/index.d.ts +9 -9
  63. package/dist/assets/browser-index.d.ts +45 -49
  64. package/dist/assets/browser-index.d.ts.map +1 -1
  65. package/dist/assets/browser-index.js +0 -2
  66. package/dist/assets/browser-index.js.map +1 -1
  67. package/dist/assets/createRenderableScene.d.ts +4 -4
  68. package/dist/assets/gltf-runtime.d.ts +6 -0
  69. package/dist/assets/gltf-runtime.d.ts.map +1 -0
  70. package/dist/assets/gltf-runtime.js +4 -0
  71. package/dist/assets/gltf-runtime.js.map +1 -0
  72. package/dist/assets/index.d.ts +76 -80
  73. package/dist/assets/index.d.ts.map +1 -1
  74. package/dist/assets/index.js +0 -2
  75. package/dist/assets/index.js.map +1 -1
  76. package/dist/assets/loadRenderableAsset.d.ts +3 -3
  77. package/dist/assets/loaders/CubeTextureLoader.d.ts +1 -1
  78. package/dist/assets/loaders/HDRLoader.d.ts +1 -1
  79. package/dist/assets/loaders/KTX2Loader.d.ts +1 -1
  80. package/dist/assets/loaders/MTLLoader.d.ts +1 -1
  81. package/dist/assets/loaders/OBJLoader.d.ts +1 -1
  82. package/dist/assets/loaders/TextureLoader.d.ts +1 -1
  83. package/dist/assets/loaders/ThreeCompatGLTFLoader.d.ts +1 -1
  84. package/dist/assets/loaders/index.d.ts +13 -13
  85. package/dist/assets/threejs-compatibility/ThreeCompatAssetRegistry.d.ts +1 -1
  86. package/dist/assets/threejs-example-parity/index.d.ts +1 -1
  87. package/dist/audio/AudioBus.d.ts +20 -2
  88. package/dist/audio/AudioBus.d.ts.map +1 -1
  89. package/dist/audio/AudioBus.js.map +1 -1
  90. package/dist/audio/AudioFileManager.d.ts +7 -2
  91. package/dist/audio/AudioFileManager.d.ts.map +1 -1
  92. package/dist/audio/AudioFileManager.js +13 -0
  93. package/dist/audio/AudioFileManager.js.map +1 -1
  94. package/dist/audio/AudioMixer.d.ts +2 -2
  95. package/dist/audio/AudioSource.d.ts +10 -2
  96. package/dist/audio/AudioSource.d.ts.map +1 -1
  97. package/dist/audio/AudioSource.js +56 -7
  98. package/dist/audio/AudioSource.js.map +1 -1
  99. package/dist/audio/AudioSystem.d.ts +2 -2
  100. package/dist/audio/AudioTimelineTrack.d.ts +2 -2
  101. package/dist/audio/AudioWaveform.d.ts +1 -1
  102. package/dist/audio/SceneAudioBridge.d.ts +3 -3
  103. package/dist/audio/SpatialAudio.d.ts +2 -2
  104. package/dist/audio/effects/Filter.d.ts +2 -2
  105. package/dist/audio/effects/Reverb.d.ts +2 -2
  106. package/dist/audio/index.d.ts +25 -31
  107. package/dist/audio/index.d.ts.map +1 -1
  108. package/dist/audio/index.js +0 -3
  109. package/dist/audio/index.js.map +1 -1
  110. package/dist/aura3d-cli/animation-asset-profiles.d.ts +1 -1
  111. package/dist/aura3d-cli/asset-core-types.d.ts +1 -1
  112. package/dist/aura3d-cli/asset-core-types.d.ts.map +1 -1
  113. package/dist/aura3d-cli/asset-manifest.d.ts.map +1 -1
  114. package/dist/aura3d-cli/asset-manifest.js +36 -2
  115. package/dist/aura3d-cli/asset-manifest.js.map +1 -1
  116. package/dist/aura3d-cli/asset-role-admission.js +1 -1
  117. package/dist/aura3d-cli/asset-role-admission.js.map +1 -1
  118. package/dist/aura3d-cli/cli-help.js +3 -3
  119. package/dist/aura3d-cli/cli-help.js.map +1 -1
  120. package/dist/aura3d-cli/cli-options.d.ts +1 -1
  121. package/dist/aura3d-cli/cli-options.d.ts.map +1 -1
  122. package/dist/aura3d-cli/cli-options.js +2 -2
  123. package/dist/aura3d-cli/cli-options.js.map +1 -1
  124. package/dist/aura3d-cli/cli.js +1 -1
  125. package/dist/aura3d-cli/cli.js.map +1 -1
  126. package/dist/aura3d-cli/game-asset-profiles.d.ts +1 -1
  127. package/dist/aura3d-cli/game-asset-validator.d.ts +2 -2
  128. package/dist/aura3d-cli/index.d.ts.map +1 -1
  129. package/dist/aura3d-cli/index.js +13 -5
  130. package/dist/aura3d-cli/index.js.map +1 -1
  131. package/dist/aura3d-cli/pull-bridge/adapters.d.ts +1 -1
  132. package/dist/aura3d-cli/pull-bridge/profiles.d.ts +1 -1
  133. package/dist/aura3d-cli/pull-bridge/provenance.d.ts +1 -1
  134. package/dist/aura3d-cli/pull-bridge/pullable.d.ts +1 -1
  135. package/dist/aura3d-cli/pull-bridge/scoring.d.ts +1 -1
  136. package/dist/aura3d-cli/pull-bridge/search.d.ts +1 -1
  137. package/dist/aura3d-cli/pull-bridge/types.d.ts +1 -1
  138. package/dist/aura3d-cli/pull-bridge.d.ts +1 -1
  139. package/dist/controls/ControlState.d.ts +1 -1
  140. package/dist/controls/DragControls.d.ts +2 -2
  141. package/dist/controls/FirstPersonControls.d.ts +2 -2
  142. package/dist/controls/FlyControls.d.ts +3 -3
  143. package/dist/controls/InteractionControls.d.ts +5 -5
  144. package/dist/controls/MapControls.d.ts +3 -3
  145. package/dist/controls/OrbitControls.d.ts +3 -3
  146. package/dist/controls/Picking.d.ts +1 -1
  147. package/dist/controls/PickingAnnotations.d.ts +2 -2
  148. package/dist/controls/PointerLockControls.d.ts +3 -3
  149. package/dist/controls/SelectionManager.d.ts +1 -1
  150. package/dist/controls/TrackballControls.d.ts +1 -1
  151. package/dist/controls/TransformControls.d.ts +1 -1
  152. package/dist/controls/index.d.ts +25 -25
  153. package/dist/create-aura3d/index.d.ts.map +1 -1
  154. package/dist/create-aura3d/index.js +10 -4
  155. package/dist/create-aura3d/index.js.map +1 -1
  156. package/dist/create-aura3d/showcase-spec-evidence.js +5 -1
  157. package/dist/create-aura3d/showcase-spec-evidence.js.map +1 -1
  158. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.d.ts +8 -1
  159. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.d.ts.map +1 -1
  160. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.js +191 -31
  161. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.js.map +1 -1
  162. package/dist/create-aura3d/showcase-spec-game-template-evidence.d.ts.map +1 -1
  163. package/dist/create-aura3d/showcase-spec-game-template-evidence.js +7 -0
  164. package/dist/create-aura3d/showcase-spec-game-template-evidence.js.map +1 -1
  165. package/dist/create-aura3d/showcase-spec-parser.js +1 -1
  166. package/dist/create-aura3d/showcase-spec-parser.js.map +1 -1
  167. package/dist/create-aura3d/showcase-spec-types.d.ts +50 -0
  168. package/dist/create-aura3d/showcase-spec-types.d.ts.map +1 -1
  169. package/dist/debug/AnimationInspector.d.ts +1 -1
  170. package/dist/debug/DrawCallTracker.d.ts +1 -1
  171. package/dist/debug/MaterialDiagnostics.d.ts +1 -1
  172. package/dist/debug/PhysicsDebugAdapter.d.ts +1 -1
  173. package/dist/debug/ShaderDiagnostics.d.ts +1 -1
  174. package/dist/ecs/components/TransformComponent.d.ts +1 -1
  175. package/dist/editor/index.d.ts +1 -1
  176. package/dist/editor-runtime/AnimationSceneEditor.d.ts +5 -5
  177. package/dist/editor-runtime/AssetDropZone.d.ts +2 -2
  178. package/dist/editor-runtime/CameraPathEditor.d.ts +3 -3
  179. package/dist/editor-runtime/CommandHistory.d.ts +1 -1
  180. package/dist/editor-runtime/CurveEditor.d.ts +3 -3
  181. package/dist/editor-runtime/EditorRuntime.d.ts +14 -14
  182. package/dist/editor-runtime/EditorStateModel.d.ts +1 -1
  183. package/dist/editor-runtime/EventTrackEditor.d.ts +1 -1
  184. package/dist/editor-runtime/Gizmo.d.ts +3 -3
  185. package/dist/editor-runtime/HierarchyModel.d.ts +1 -1
  186. package/dist/editor-runtime/InspectorModel.d.ts +1 -1
  187. package/dist/editor-runtime/InteractiveTransformGizmo.d.ts +2 -2
  188. package/dist/editor-runtime/KeyframeEditor.d.ts +2 -2
  189. package/dist/editor-runtime/NonlinearAnimationEditor.d.ts +3 -3
  190. package/dist/editor-runtime/PickingService.d.ts +2 -2
  191. package/dist/editor-runtime/ProjectSerializer.d.ts +2 -2
  192. package/dist/editor-runtime/PropertyPanel.d.ts +2 -2
  193. package/dist/editor-runtime/RotateGizmo.d.ts +1 -1
  194. package/dist/editor-runtime/ScaleGizmo.d.ts +1 -1
  195. package/dist/editor-runtime/SceneOutliner.d.ts +3 -3
  196. package/dist/editor-runtime/TimelineEditorController.d.ts +4 -4
  197. package/dist/editor-runtime/TimelineRuntimeBridge.d.ts +2 -2
  198. package/dist/editor-runtime/TimelineTrackTypes.d.ts +1 -1
  199. package/dist/editor-runtime/TimelineUI.d.ts +1 -1
  200. package/dist/editor-runtime/TranslateGizmo.d.ts +1 -1
  201. package/dist/editor-runtime/VisualReviewDashboard.d.ts +1 -1
  202. package/dist/editor-runtime/commands/CreateNodeCommand.d.ts +1 -1
  203. package/dist/editor-runtime/commands/DeleteNodeCommand.d.ts +2 -2
  204. package/dist/editor-runtime/commands/ReparentNodeCommand.d.ts +1 -1
  205. package/dist/editor-runtime/commands/SetPropertyCommand.d.ts +1 -1
  206. package/dist/editor-runtime/commands/TransformCommand.d.ts +1 -1
  207. package/dist/editor-runtime/index.d.ts +79 -81
  208. package/dist/editor-runtime/index.d.ts.map +1 -1
  209. package/dist/editor-runtime/index.js +0 -1
  210. package/dist/editor-runtime/index.js.map +1 -1
  211. package/dist/engine/A3DApp.d.ts +2 -2
  212. package/dist/engine/A3DQualityPresets.d.ts +2 -2
  213. package/dist/engine/advanced-runtime/A3DRenderer.d.ts +2 -2
  214. package/dist/engine/advanced-runtime/A3DScene.d.ts +2 -2
  215. package/dist/engine/advanced-runtime/index.d.ts +4 -4
  216. package/dist/engine/agent-api/AnimationController.d.ts +3 -3
  217. package/dist/engine/agent-api/AuraAppHandle.d.ts +2 -2
  218. package/dist/engine/agent-api/GameAppRuntime.d.ts +4 -4
  219. package/dist/engine/agent-api/GameAssetValidation.js +1 -1
  220. package/dist/engine/agent-api/GameAssetValidation.js.map +1 -1
  221. package/dist/engine/agent-api/GameEvidence.d.ts +1 -1
  222. package/dist/engine/agent-api/GameEvidence.js +1 -1
  223. package/dist/engine/agent-api/GameEvidence.js.map +1 -1
  224. package/dist/engine/agent-api/GameGenreKits.d.ts +73 -0
  225. package/dist/engine/agent-api/GameGenreKits.d.ts.map +1 -1
  226. package/dist/engine/agent-api/GameGenreKits.js +298 -56
  227. package/dist/engine/agent-api/GameGenreKits.js.map +1 -1
  228. package/dist/engine/agent-api/GameRuntime.d.ts +49 -1
  229. package/dist/engine/agent-api/GameRuntime.d.ts.map +1 -1
  230. package/dist/engine/agent-api/GameRuntime.js +87 -1
  231. package/dist/engine/agent-api/GameRuntime.js.map +1 -1
  232. package/dist/engine/agent-api/GameSceneBridge.d.ts +1 -1
  233. package/dist/engine/agent-api/GameSceneGeometryBindings.d.ts +25 -1
  234. package/dist/engine/agent-api/GameSceneGeometryBindings.d.ts.map +1 -1
  235. package/dist/engine/agent-api/GameSceneGeometryBindings.js +52 -0
  236. package/dist/engine/agent-api/GameSceneGeometryBindings.js.map +1 -1
  237. package/dist/engine/agent-api/GameSceneGeometryMath.d.ts +1 -1
  238. package/dist/engine/agent-api/PhysicsRuntime.d.ts +332 -0
  239. package/dist/engine/agent-api/PhysicsRuntime.d.ts.map +1 -0
  240. package/dist/engine/agent-api/PhysicsRuntime.js +619 -0
  241. package/dist/engine/agent-api/PhysicsRuntime.js.map +1 -0
  242. package/dist/engine/agent-api/PlatformerMotion.d.ts +124 -0
  243. package/dist/engine/agent-api/PlatformerMotion.d.ts.map +1 -1
  244. package/dist/engine/agent-api/PlatformerMotion.js +101 -16
  245. package/dist/engine/agent-api/PlatformerMotion.js.map +1 -1
  246. package/dist/engine/agent-api/RootGeometry.d.ts +36 -0
  247. package/dist/engine/agent-api/RootGeometry.d.ts.map +1 -0
  248. package/dist/engine/agent-api/RootGeometry.js +152 -0
  249. package/dist/engine/agent-api/RootGeometry.js.map +1 -0
  250. package/dist/engine/agent-api/RuntimeNodeHandle.d.ts +1 -1
  251. package/dist/engine/agent-api/VehicleChassis.d.ts +52 -0
  252. package/dist/engine/agent-api/VehicleChassis.d.ts.map +1 -1
  253. package/dist/engine/agent-api/VehicleChassis.js +182 -8
  254. package/dist/engine/agent-api/VehicleChassis.js.map +1 -1
  255. package/dist/engine/agent-api/WorldLabelRenderer.d.ts +65 -1
  256. package/dist/engine/agent-api/WorldLabelRenderer.d.ts.map +1 -1
  257. package/dist/engine/agent-api/WorldLabelRenderer.js +48 -5
  258. package/dist/engine/agent-api/WorldLabelRenderer.js.map +1 -1
  259. package/dist/engine/agent-api/game-kits/fighting.d.ts +2 -2
  260. package/dist/engine/agent-api/game-kits/index.d.ts +10 -10
  261. package/dist/engine/agent-api/humanoid-walk-runtime.d.ts +1 -1
  262. package/dist/engine/agent-api/index.d.ts +288 -85
  263. package/dist/engine/agent-api/index.d.ts.map +1 -1
  264. package/dist/engine/agent-api/index.js +1404 -359
  265. package/dist/engine/agent-api/index.js.map +1 -1
  266. package/dist/engine/agent-api/lean-game.d.ts +3 -0
  267. package/dist/engine/agent-api/lean-game.d.ts.map +1 -0
  268. package/dist/engine/agent-api/lean-game.js +3 -0
  269. package/dist/engine/agent-api/lean-game.js.map +1 -0
  270. package/dist/engine/agent-api/lean-product.d.ts +3 -0
  271. package/dist/engine/agent-api/lean-product.d.ts.map +1 -0
  272. package/dist/engine/agent-api/lean-product.js +3 -0
  273. package/dist/engine/agent-api/lean-product.js.map +1 -0
  274. package/dist/engine/agent-api/lean.d.ts +3 -0
  275. package/dist/engine/agent-api/lean.d.ts.map +1 -0
  276. package/dist/engine/agent-api/lean.js +3 -0
  277. package/dist/engine/agent-api/lean.js.map +1 -0
  278. package/dist/engine/agent-api/media-node.d.ts +42 -0
  279. package/dist/engine/agent-api/media-node.d.ts.map +1 -0
  280. package/dist/engine/agent-api/media-node.js +44 -0
  281. package/dist/engine/agent-api/media-node.js.map +1 -0
  282. package/dist/engine/agent-api/product-viewer-runtime.d.ts.map +1 -1
  283. package/dist/engine/animation-studio/animation-episode-validator.d.ts +1 -1
  284. package/dist/engine/animation-studio/director-heuristics.d.ts +1 -1
  285. package/dist/engine/animation-studio/episode-document.d.ts +1 -1
  286. package/dist/engine/animation-studio/index.d.ts +4 -4
  287. package/dist/engine/animation-studio/scene-tools.d.ts +2 -2
  288. package/dist/engine/ecs/ECSRenderSource.d.ts +2 -2
  289. package/dist/engine/game/GameAudio.d.ts +5 -0
  290. package/dist/engine/game/GameAudio.d.ts.map +1 -1
  291. package/dist/engine/game/GameAudio.js +65 -23
  292. package/dist/engine/game/GameAudio.js.map +1 -1
  293. package/dist/engine/index.d.ts +14 -14
  294. package/dist/engine/production-runtime/GameRenderPreset.d.ts +1 -1
  295. package/dist/engine/production-runtime/TypedGLBActor.d.ts +11 -3
  296. package/dist/engine/production-runtime/TypedGLBActor.d.ts.map +1 -1
  297. package/dist/engine/production-runtime/TypedGLBActor.js +25 -7
  298. package/dist/engine/production-runtime/TypedGLBActor.js.map +1 -1
  299. package/dist/engine/production-runtime/index.d.ts +10 -10
  300. package/dist/engine/production-runtime/index.d.ts.map +1 -1
  301. package/dist/engine/threejs-example-parity/FlagshipFoundation.d.ts +3 -3
  302. package/dist/engine/threejs-example-parity/FlagshipFoundation.d.ts.map +1 -1
  303. package/dist/engine/threejs-example-parity/index.d.ts +1 -1
  304. package/dist/environments/EnvironmentPreview.d.ts +1 -1
  305. package/dist/environments/EnvironmentRegistry.d.ts +3 -3
  306. package/dist/environments/HDRIEnvironment.d.ts +1 -1
  307. package/dist/environments/index.d.ts +5 -10
  308. package/dist/environments/index.d.ts.map +1 -1
  309. package/dist/environments/index.js +0 -3
  310. package/dist/environments/index.js.map +1 -1
  311. package/dist/environments/node.d.ts +7 -0
  312. package/dist/environments/node.d.ts.map +1 -0
  313. package/dist/environments/node.js +5 -0
  314. package/dist/environments/node.js.map +1 -0
  315. package/dist/environments/production-runtime/index.d.ts +2 -2
  316. package/dist/index.d.ts +3 -0
  317. package/dist/index.js +3 -0
  318. package/dist/input/ActionMap.d.ts +1 -1
  319. package/dist/input/GamepadDevice.d.ts +1 -1
  320. package/dist/input/GamepadInput.d.ts +2 -2
  321. package/dist/input/GestureControls.d.ts +2 -2
  322. package/dist/input/GestureRecognizer.d.ts +1 -1
  323. package/dist/input/InputSystem.d.ts +5 -5
  324. package/dist/input/InputValueProcessors.d.ts +19 -0
  325. package/dist/input/InputValueProcessors.d.ts.map +1 -0
  326. package/dist/input/InputValueProcessors.js +24 -0
  327. package/dist/input/InputValueProcessors.js.map +1 -0
  328. package/dist/input/InteractionSystem.d.ts +3 -3
  329. package/dist/input/PickingRay.d.ts +2 -2
  330. package/dist/input/PointerDevice.d.ts +1 -1
  331. package/dist/input/controls/CameraRig.d.ts +1 -1
  332. package/dist/input/controls/EditorFlyControls.d.ts +2 -2
  333. package/dist/input/controls/FirstPersonControls.d.ts +2 -2
  334. package/dist/input/controls/OrbitControls.d.ts +2 -2
  335. package/dist/input/controls/PointerLockControls.d.ts +3 -3
  336. package/dist/input/controls/SceneCameraAdapter.d.ts +2 -2
  337. package/dist/input/controls/ThirdPersonFollowControls.d.ts +1 -1
  338. package/dist/input/index.d.ts +39 -43
  339. package/dist/input/index.d.ts.map +1 -1
  340. package/dist/input/index.js +1 -3
  341. package/dist/input/index.js.map +1 -1
  342. package/dist/lean/ArcadeRuntime.d.ts +111 -0
  343. package/dist/lean/ArcadeRuntime.d.ts.map +1 -0
  344. package/dist/lean/ArcadeRuntime.js +219 -0
  345. package/dist/lean/ArcadeRuntime.js.map +1 -0
  346. package/dist/lean/base.d.ts +228 -0
  347. package/dist/lean/base.d.ts.map +1 -0
  348. package/dist/lean/base.js +322 -0
  349. package/dist/lean/base.js.map +1 -0
  350. package/dist/lean/game.d.ts +19 -0
  351. package/dist/lean/game.d.ts.map +1 -0
  352. package/dist/lean/game.js +37 -0
  353. package/dist/lean/game.js.map +1 -0
  354. package/dist/lean/index.d.ts +4 -0
  355. package/dist/lean/index.d.ts.map +1 -0
  356. package/dist/lean/index.js +10 -0
  357. package/dist/lean/index.js.map +1 -0
  358. package/dist/lean/product.d.ts +4 -0
  359. package/dist/lean/product.d.ts.map +1 -0
  360. package/dist/lean/product.js +55 -0
  361. package/dist/lean/product.js.map +1 -0
  362. package/dist/materials/MaterialPresets.d.ts +2 -2
  363. package/dist/materials/MaterialPreviewScene.d.ts +1 -1
  364. package/dist/materials/PBRMaterialLibrary.d.ts +1 -1
  365. package/dist/materials/browser-index.d.ts +6 -6
  366. package/dist/materials/index.d.ts +1 -10
  367. package/dist/materials/index.d.ts.map +1 -1
  368. package/dist/materials/index.js +1 -6
  369. package/dist/materials/index.js.map +1 -1
  370. package/dist/materials/node.d.ts +4 -0
  371. package/dist/materials/node.d.ts.map +1 -0
  372. package/dist/materials/node.js +3 -0
  373. package/dist/materials/node.js.map +1 -0
  374. package/dist/physics/ArcadeCharacterController.d.ts +53 -0
  375. package/dist/physics/ArcadeCharacterController.d.ts.map +1 -0
  376. package/dist/physics/ArcadeCharacterController.js +98 -0
  377. package/dist/physics/ArcadeCharacterController.js.map +1 -0
  378. package/dist/physics/{VehicleDynamics.d.ts → ArcadeVehicleTelemetry.d.ts} +14 -4
  379. package/dist/physics/ArcadeVehicleTelemetry.d.ts.map +1 -0
  380. package/dist/physics/{VehicleDynamics.js → ArcadeVehicleTelemetry.js} +37 -9
  381. package/dist/physics/ArcadeVehicleTelemetry.js.map +1 -0
  382. package/dist/physics/Constraint.d.ts +20 -4
  383. package/dist/physics/Constraint.d.ts.map +1 -1
  384. package/dist/physics/Constraint.js +34 -60
  385. package/dist/physics/Constraint.js.map +1 -1
  386. package/dist/physics/FightingCharacterController.d.ts +32 -0
  387. package/dist/physics/FightingCharacterController.d.ts.map +1 -0
  388. package/dist/physics/FightingCharacterController.js +76 -0
  389. package/dist/physics/FightingCharacterController.js.map +1 -0
  390. package/dist/physics/MeshBVH.d.ts +72 -0
  391. package/dist/physics/MeshBVH.d.ts.map +1 -0
  392. package/dist/physics/MeshBVH.js +244 -0
  393. package/dist/physics/MeshBVH.js.map +1 -0
  394. package/dist/physics/PhysicsDebugDraw.d.ts +40 -1
  395. package/dist/physics/PhysicsDebugDraw.d.ts.map +1 -1
  396. package/dist/physics/PhysicsDebugDraw.js +87 -17
  397. package/dist/physics/PhysicsDebugDraw.js.map +1 -1
  398. package/dist/physics/PhysicsWorld.d.ts +37 -18
  399. package/dist/physics/PhysicsWorld.d.ts.map +1 -1
  400. package/dist/physics/PhysicsWorld.js +231 -630
  401. package/dist/physics/PhysicsWorld.js.map +1 -1
  402. package/dist/physics/Raycast.d.ts +11 -0
  403. package/dist/physics/Raycast.d.ts.map +1 -1
  404. package/dist/physics/Raycast.js +62 -8
  405. package/dist/physics/Raycast.js.map +1 -1
  406. package/dist/physics/RigidBody.d.ts +16 -9
  407. package/dist/physics/RigidBody.d.ts.map +1 -1
  408. package/dist/physics/RigidBody.js +23 -75
  409. package/dist/physics/RigidBody.js.map +1 -1
  410. package/dist/physics/SurfaceQuery.d.ts +72 -0
  411. package/dist/physics/SurfaceQuery.d.ts.map +1 -0
  412. package/dist/physics/SurfaceQuery.js +89 -0
  413. package/dist/physics/SurfaceQuery.js.map +1 -0
  414. package/dist/physics/index.d.ts +62 -17
  415. package/dist/physics/index.d.ts.map +1 -1
  416. package/dist/physics/index.js +70 -17
  417. package/dist/physics/index.js.map +1 -1
  418. package/dist/physics/solverless.d.ts +37 -0
  419. package/dist/physics/solverless.d.ts.map +1 -0
  420. package/dist/physics/solverless.js +36 -0
  421. package/dist/physics/solverless.js.map +1 -0
  422. package/dist/physics/world.d.ts +18 -0
  423. package/dist/physics/world.d.ts.map +1 -0
  424. package/dist/physics/world.js +17 -0
  425. package/dist/physics/world.js.map +1 -0
  426. package/dist/physics-rapier/index.d.ts +169 -0
  427. package/dist/physics-rapier/index.d.ts.map +1 -0
  428. package/dist/physics-rapier/index.js +311 -0
  429. package/dist/physics-rapier/index.js.map +1 -0
  430. package/dist/product-studio/ProductAsset.d.ts +1 -1
  431. package/dist/product-studio/ProductAssetLoader.d.ts +1 -1
  432. package/dist/product-studio/ProductCamera.d.ts +1 -1
  433. package/dist/product-studio/ProductDiagnostics.d.ts +2 -2
  434. package/dist/product-studio/ProductExport.d.ts +1 -1
  435. package/dist/product-studio/ProductFloor.d.ts +2 -2
  436. package/dist/product-studio/ProductLighting.d.ts +1 -1
  437. package/dist/product-studio/ProductLighting.d.ts.map +1 -1
  438. package/dist/product-studio/ProductLighting.js +34 -3
  439. package/dist/product-studio/ProductLighting.js.map +1 -1
  440. package/dist/product-studio/ProductMaterials.d.ts +2 -2
  441. package/dist/product-studio/ProductRenderScene.d.ts +1 -1
  442. package/dist/product-studio/ProductStudio.d.ts +1 -1
  443. package/dist/product-studio/ProductTypes.d.ts +2 -2
  444. package/dist/product-studio/index.d.ts +12 -12
  445. package/dist/react/index.d.ts +1 -1
  446. package/dist/rendering/ArchitecturalLighting.d.ts +35 -0
  447. package/dist/rendering/ArchitecturalLighting.d.ts.map +1 -0
  448. package/dist/rendering/{ArchitecturalLightingFixtures.js → ArchitecturalLighting.js} +3 -12
  449. package/dist/rendering/ArchitecturalLighting.js.map +1 -0
  450. package/dist/rendering/ArchitecturalMaterialCatalog.d.ts +3 -3
  451. package/dist/rendering/ArchitecturalMaterialCatalog.d.ts.map +1 -1
  452. package/dist/rendering/ArchitecturalMaterialCatalog.js +1 -1
  453. package/dist/rendering/ArchitecturalMaterialCatalog.js.map +1 -1
  454. package/dist/rendering/{ArchitecturalMeasurementFixtures.d.ts → ArchitecturalMeasurement.d.ts} +3 -6
  455. package/dist/rendering/ArchitecturalMeasurement.d.ts.map +1 -0
  456. package/dist/rendering/{ArchitecturalMeasurementFixtures.js → ArchitecturalMeasurement.js} +3 -6
  457. package/dist/rendering/ArchitecturalMeasurement.js.map +1 -0
  458. package/dist/rendering/CameraFraming.d.ts +1 -1
  459. package/dist/rendering/{CanonicalSceneFixtures.d.ts → CanonicalProductScene.d.ts} +2 -2
  460. package/dist/rendering/CanonicalProductScene.d.ts.map +1 -0
  461. package/dist/rendering/{CanonicalSceneFixtures.js → CanonicalProductScene.js} +2 -2
  462. package/dist/rendering/CanonicalProductScene.js.map +1 -0
  463. package/dist/rendering/CascadedShadowMaps.d.ts +8 -8
  464. package/dist/rendering/CascadedShadowMaps.d.ts.map +1 -1
  465. package/dist/rendering/CascadedShadowMaps.js +1 -1
  466. package/dist/rendering/CascadedShadowMaps.js.map +1 -1
  467. package/dist/rendering/ClusteredForwardLighting.d.ts +2 -2
  468. package/dist/rendering/DecalGeometry.d.ts +2 -2
  469. package/dist/rendering/DepthPass.d.ts +4 -4
  470. package/dist/rendering/DepthPass.d.ts.map +1 -1
  471. package/dist/rendering/DepthPass.js +2 -2
  472. package/dist/rendering/DepthPass.js.map +1 -1
  473. package/dist/rendering/EnvironmentBackgroundPass.d.ts +4 -4
  474. package/dist/rendering/EnvironmentBackgroundPass.d.ts.map +1 -1
  475. package/dist/rendering/EnvironmentBackgroundPass.js +2 -2
  476. package/dist/rendering/EnvironmentBackgroundPass.js.map +1 -1
  477. package/dist/rendering/EnvironmentBackgroundResources.d.ts +2 -2
  478. package/dist/rendering/EnvironmentLighting.d.ts +1 -1
  479. package/dist/rendering/EnvironmentMapResources.d.ts +2 -2
  480. package/dist/rendering/EnvironmentPipeline.d.ts +2 -2
  481. package/dist/rendering/EnvironmentPlatform.d.ts +3 -3
  482. package/dist/rendering/EnvironmentPlatform.js +2 -2
  483. package/dist/rendering/EnvironmentPlatform.js.map +1 -1
  484. package/dist/rendering/EnvironmentPreset.d.ts +1 -1
  485. package/dist/rendering/Exposure.d.ts +1 -1
  486. package/dist/rendering/ExternalParityRenderPreset.d.ts +3 -3
  487. package/dist/rendering/ForwardPass.d.ts +9 -9
  488. package/dist/rendering/ForwardPass.d.ts.map +1 -1
  489. package/dist/rendering/ForwardPass.js +24 -10
  490. package/dist/rendering/ForwardPass.js.map +1 -1
  491. package/dist/rendering/Geometry.d.ts +5 -3
  492. package/dist/rendering/Geometry.d.ts.map +1 -1
  493. package/dist/rendering/Geometry.js +15 -0
  494. package/dist/rendering/Geometry.js.map +1 -1
  495. package/dist/rendering/GeometryPrimitives.d.ts +2 -2
  496. package/dist/rendering/HDRRenderPipeline.d.ts +4 -4
  497. package/dist/rendering/IBL.d.ts +4 -4
  498. package/dist/rendering/IndexBuffer.d.ts +1 -1
  499. package/dist/rendering/InstancedPBRMaterial.d.ts +2 -2
  500. package/dist/rendering/InstancedPBRMaterial.js +1 -1
  501. package/dist/rendering/InstancedPBRMaterial.js.map +1 -1
  502. package/dist/rendering/InstancedUnlitMaterial.d.ts +1 -1
  503. package/dist/rendering/InstancedUnlitMaterial.js +1 -1
  504. package/dist/rendering/InstancedUnlitMaterial.js.map +1 -1
  505. package/dist/rendering/Instancing.d.ts +1 -1
  506. package/dist/rendering/LightCollector.d.ts +1 -1
  507. package/dist/rendering/LightUniforms.d.ts +2 -2
  508. package/dist/rendering/LightingDebug.d.ts +2 -2
  509. package/dist/rendering/LightingDefaults.d.ts +2 -2
  510. package/dist/rendering/LightingRig.d.ts +1 -1
  511. package/dist/rendering/LineGeometry.d.ts +2 -2
  512. package/dist/rendering/Material.d.ts +1 -1
  513. package/dist/rendering/Material.js +2 -2
  514. package/dist/rendering/Material.js.map +1 -1
  515. package/dist/rendering/MaterialBinding.d.ts +3 -3
  516. package/dist/rendering/MaterialBinding.js +4 -4
  517. package/dist/rendering/MaterialBinding.js.map +1 -1
  518. package/dist/rendering/MaterialInstance.d.ts +2 -2
  519. package/dist/rendering/MaterialInstance.js +2 -2
  520. package/dist/rendering/MaterialInstance.js.map +1 -1
  521. package/dist/rendering/MaterialPresets.d.ts +2 -2
  522. package/dist/rendering/MeshConsolidation.d.ts +3 -3
  523. package/dist/rendering/MorphTarget.d.ts +1 -1
  524. package/dist/rendering/MorphTargetPlan.d.ts +1 -1
  525. package/dist/rendering/MorphUnlitMaterial.d.ts +1 -1
  526. package/dist/rendering/MorphUnlitMaterial.js +1 -1
  527. package/dist/rendering/MorphUnlitMaterial.js.map +1 -1
  528. package/dist/rendering/NormalMappedPBRMaterial.d.ts +4 -4
  529. package/dist/rendering/NormalMappedPBRMaterial.js +1 -1
  530. package/dist/rendering/NormalMappedPBRMaterial.js.map +1 -1
  531. package/dist/rendering/{OceanFixtures.d.ts → OceanSurface.d.ts} +1 -1
  532. package/dist/rendering/OceanSurface.d.ts.map +1 -0
  533. package/dist/rendering/{OceanFixtures.js → OceanSurface.js} +1 -1
  534. package/dist/rendering/OceanSurface.js.map +1 -0
  535. package/dist/rendering/PBRLightingDefaults.d.ts +1 -1
  536. package/dist/rendering/PBRMaterial.d.ts +2 -2
  537. package/dist/rendering/PBRMaterial.d.ts.map +1 -1
  538. package/dist/rendering/PBRMaterial.js +3 -3
  539. package/dist/rendering/PBRMaterial.js.map +1 -1
  540. package/dist/rendering/PMREM.d.ts +2 -2
  541. package/dist/rendering/PortableShaderMaterial.d.ts +60 -0
  542. package/dist/rendering/PortableShaderMaterial.d.ts.map +1 -0
  543. package/dist/rendering/PortableShaderMaterial.js +223 -0
  544. package/dist/rendering/PortableShaderMaterial.js.map +1 -0
  545. package/dist/rendering/PostProcessPass.d.ts +2 -2
  546. package/dist/rendering/PostProcessPass.d.ts.map +1 -1
  547. package/dist/rendering/PostProcessPass.js +30 -6
  548. package/dist/rendering/PostProcessPass.js.map +1 -1
  549. package/dist/rendering/{ProceduralTextureFixtures.d.ts → ProceduralTexture.d.ts} +2 -2
  550. package/dist/rendering/ProceduralTexture.d.ts.map +1 -0
  551. package/dist/rendering/{ProceduralTextureFixtures.js → ProceduralTexture.js} +1 -1
  552. package/dist/rendering/ProceduralTexture.js.map +1 -0
  553. package/dist/rendering/{ProductTurntableFixtures.d.ts → ProductTurntable.d.ts} +4 -4
  554. package/dist/rendering/ProductTurntable.d.ts.map +1 -0
  555. package/dist/rendering/{ProductTurntableFixtures.js → ProductTurntable.js} +2 -2
  556. package/dist/rendering/ProductTurntable.js.map +1 -0
  557. package/dist/rendering/Raycaster.d.ts +1 -1
  558. package/dist/rendering/ReflectionProbe.d.ts +4 -4
  559. package/dist/rendering/ReflectionSurfaces.d.ts +2 -2
  560. package/dist/rendering/RenderBackend.d.ts +3 -3
  561. package/dist/rendering/RenderDevice.d.ts +36 -6
  562. package/dist/rendering/RenderDevice.d.ts.map +1 -1
  563. package/dist/rendering/RenderDevice.js.map +1 -1
  564. package/dist/rendering/RenderGraph.d.ts +1 -1
  565. package/dist/rendering/RenderPass.d.ts +1 -1
  566. package/dist/rendering/RenderPipeline.d.ts +3 -3
  567. package/dist/rendering/RenderQueue.d.ts +2 -2
  568. package/dist/rendering/RenderState.d.ts +2 -2
  569. package/dist/rendering/Renderer.d.ts +17 -16
  570. package/dist/rendering/Renderer.d.ts.map +1 -1
  571. package/dist/rendering/Renderer.js +23 -9
  572. package/dist/rendering/Renderer.js.map +1 -1
  573. package/dist/rendering/RendererFeatureGates.d.ts +1 -1
  574. package/dist/rendering/RendererPostprocessPlan.d.ts +1 -1
  575. package/dist/rendering/RendererPostprocessPlan.js +4 -4
  576. package/dist/rendering/RendererPostprocessPlan.js.map +1 -1
  577. package/dist/rendering/RendererVisualPipelineReport.d.ts +4 -4
  578. package/dist/rendering/ResourceLifecycle.d.ts +1 -1
  579. package/dist/rendering/SceneOptimization.d.ts +3 -3
  580. package/dist/rendering/ScreenSpaceLineMaterial.d.ts +1 -1
  581. package/dist/rendering/ScreenSpaceLineMaterial.js +1 -1
  582. package/dist/rendering/ScreenSpaceLineMaterial.js.map +1 -1
  583. package/dist/rendering/ShaderChunks.d.ts.map +1 -1
  584. package/dist/rendering/ShaderChunks.js +92 -24
  585. package/dist/rendering/ShaderChunks.js.map +1 -1
  586. package/dist/rendering/ShaderLibrary.d.ts +2 -78
  587. package/dist/rendering/ShaderLibrary.d.ts.map +1 -1
  588. package/dist/rendering/ShaderLibrary.js +103 -810
  589. package/dist/rendering/ShaderLibrary.js.map +1 -1
  590. package/dist/rendering/ShaderLibraryCore.d.ts +100 -0
  591. package/dist/rendering/ShaderLibraryCore.d.ts.map +1 -0
  592. package/dist/rendering/ShaderLibraryCore.js +792 -0
  593. package/dist/rendering/ShaderLibraryCore.js.map +1 -0
  594. package/dist/rendering/ShaderModule.d.ts +3 -3
  595. package/dist/rendering/ShaderModule.d.ts.map +1 -1
  596. package/dist/rendering/ShaderModule.js +4 -2
  597. package/dist/rendering/ShaderModule.js.map +1 -1
  598. package/dist/rendering/ShaderReflection.d.ts +1 -1
  599. package/dist/rendering/ShadowMap.d.ts +1 -1
  600. package/dist/rendering/ShadowPass.d.ts +6 -6
  601. package/dist/rendering/ShadowPass.d.ts.map +1 -1
  602. package/dist/rendering/ShadowPass.js +6 -4
  603. package/dist/rendering/ShadowPass.js.map +1 -1
  604. package/dist/rendering/ShadowProjection.d.ts +1 -1
  605. package/dist/rendering/SkinnedLitMaterial.d.ts +3 -3
  606. package/dist/rendering/SkinnedLitMaterial.js +1 -1
  607. package/dist/rendering/SkinnedLitMaterial.js.map +1 -1
  608. package/dist/rendering/SkinnedUnlitMaterial.d.ts +1 -1
  609. package/dist/rendering/SkinnedUnlitMaterial.js +1 -1
  610. package/dist/rendering/SkinnedUnlitMaterial.js.map +1 -1
  611. package/dist/rendering/SkinningBounds.d.ts +2 -2
  612. package/dist/rendering/{SpaceEnvironmentFixtures.d.ts → SpaceEnvironment.d.ts} +4 -9
  613. package/dist/rendering/SpaceEnvironment.d.ts.map +1 -0
  614. package/dist/rendering/{SpaceEnvironmentFixtures.js → SpaceEnvironment.js} +6 -22
  615. package/dist/rendering/SpaceEnvironment.js.map +1 -0
  616. package/dist/rendering/SpecularPrefilter.d.ts +1 -1
  617. package/dist/rendering/SpriteGeometry.d.ts +1 -1
  618. package/dist/rendering/StereoCameraRig.d.ts +2 -2
  619. package/dist/rendering/StereoEffects.d.ts +1 -1
  620. package/dist/rendering/{TerrainFixtures.d.ts → TerrainHeightfield.d.ts} +2 -2
  621. package/dist/rendering/TerrainHeightfield.d.ts.map +1 -0
  622. package/dist/rendering/{TerrainFixtures.js → TerrainHeightfield.js} +1 -1
  623. package/dist/rendering/TerrainHeightfield.js.map +1 -0
  624. package/dist/rendering/TextureBinding.d.ts +16 -2
  625. package/dist/rendering/TextureBinding.d.ts.map +1 -1
  626. package/dist/rendering/TextureBinding.js +17 -0
  627. package/dist/rendering/TextureBinding.js.map +1 -1
  628. package/dist/rendering/TexturedPBRMaterial.d.ts +4 -4
  629. package/dist/rendering/TexturedPBRMaterial.js +1 -1
  630. package/dist/rendering/TexturedPBRMaterial.js.map +1 -1
  631. package/dist/rendering/TexturedUnlitMaterial.d.ts +3 -3
  632. package/dist/rendering/TexturedUnlitMaterial.js +1 -1
  633. package/dist/rendering/TexturedUnlitMaterial.js.map +1 -1
  634. package/dist/rendering/ToneMapping.d.ts +1 -1
  635. package/dist/rendering/UniformBinder.d.ts +1 -1
  636. package/dist/rendering/UnlitMaterial.d.ts +1 -1
  637. package/dist/rendering/UnlitMaterial.js +1 -1
  638. package/dist/rendering/UnlitMaterial.js.map +1 -1
  639. package/dist/rendering/{VegetationFixtures.d.ts → VegetationScatter.d.ts} +2 -2
  640. package/dist/rendering/VegetationScatter.d.ts.map +1 -0
  641. package/dist/rendering/{VegetationFixtures.js → VegetationScatter.js} +2 -2
  642. package/dist/rendering/VegetationScatter.js.map +1 -0
  643. package/dist/rendering/VertexBuffer.d.ts +2 -2
  644. package/dist/rendering/{VoxelWorldFixtures.d.ts → VoxelWorld.d.ts} +12 -15
  645. package/dist/rendering/VoxelWorld.d.ts.map +1 -0
  646. package/dist/rendering/{VoxelWorldFixtures.js → VoxelWorld.js} +6 -9
  647. package/dist/rendering/VoxelWorld.js.map +1 -0
  648. package/dist/rendering/{WeatherFixtures.d.ts → Weather.d.ts} +7 -9
  649. package/dist/rendering/Weather.d.ts.map +1 -0
  650. package/dist/rendering/{WeatherFixtures.js → Weather.js} +5 -7
  651. package/dist/rendering/Weather.js.map +1 -0
  652. package/dist/rendering/WebGL2Device.d.ts +23 -1
  653. package/dist/rendering/WebGL2Device.d.ts.map +1 -1
  654. package/dist/rendering/WebGL2Device.js +134 -23
  655. package/dist/rendering/WebGL2Device.js.map +1 -1
  656. package/dist/rendering/WebGPUDevice.d.ts +20 -3
  657. package/dist/rendering/WebGPUDevice.d.ts.map +1 -1
  658. package/dist/rendering/WebGPUDevice.js +188 -9
  659. package/dist/rendering/WebGPUDevice.js.map +1 -1
  660. package/dist/rendering/WebGPURenderToTextureProof.d.ts +1 -1
  661. package/dist/rendering/advanced-runtime/AdvancedRenderer.d.ts +4 -4
  662. package/dist/rendering/advanced-runtime/index.d.ts +9 -9
  663. package/dist/rendering/cinematic/BloomPass.d.ts +1 -1
  664. package/dist/rendering/cinematic/CinematicDepthComposition.d.ts +1 -1
  665. package/dist/rendering/cinematic/CinematicLightingRig.d.ts +2 -2
  666. package/dist/rendering/cinematic/CinematicMaterialPresets.d.ts +2 -2
  667. package/dist/rendering/cinematic/CinematicPostProcess.d.ts +6 -6
  668. package/dist/rendering/cinematic/DepthHazePass.d.ts +1 -1
  669. package/dist/rendering/cinematic/EmissivePracticalLightSystem.d.ts +2 -2
  670. package/dist/rendering/cinematic/FilmGrainPass.d.ts +1 -1
  671. package/dist/rendering/cinematic/FogVolumeSystem.d.ts +1 -1
  672. package/dist/rendering/cinematic/GlowCardSystem.d.ts +2 -2
  673. package/dist/rendering/cinematic/RainParticleSystem.d.ts +2 -2
  674. package/dist/rendering/cinematic/VignettePass.d.ts +1 -1
  675. package/dist/rendering/cinematic/WetReflectionApproximation.d.ts +1 -1
  676. package/dist/rendering/cinematic/index.d.ts +14 -14
  677. package/dist/rendering/index.d.ts +230 -237
  678. package/dist/rendering/index.d.ts.map +1 -1
  679. package/dist/rendering/index.js +35 -19
  680. package/dist/rendering/index.js.map +1 -1
  681. package/dist/rendering/lean/LeanProductRenderer.d.ts +29 -0
  682. package/dist/rendering/lean/LeanProductRenderer.d.ts.map +1 -0
  683. package/dist/rendering/lean/LeanProductRenderer.js +38 -0
  684. package/dist/rendering/lean/LeanProductRenderer.js.map +1 -0
  685. package/dist/rendering/lean/LeanProductionRenderer.d.ts +38 -0
  686. package/dist/rendering/lean/LeanProductionRenderer.d.ts.map +1 -0
  687. package/dist/rendering/lean/LeanProductionRenderer.js +88 -0
  688. package/dist/rendering/lean/LeanProductionRenderer.js.map +1 -0
  689. package/dist/rendering/lean-runtime.d.ts +18 -0
  690. package/dist/rendering/lean-runtime.d.ts.map +1 -0
  691. package/dist/rendering/lean-runtime.js +13 -0
  692. package/dist/rendering/lean-runtime.js.map +1 -0
  693. package/dist/rendering/materials/PhysicalMaterial.d.ts +1 -1
  694. package/dist/rendering/performance/BVH.d.ts +2 -2
  695. package/dist/rendering/performance/Batcher.d.ts +2 -2
  696. package/dist/rendering/performance/FrustumCuller.d.ts +1 -1
  697. package/dist/rendering/performance/Octree.d.ts +1 -1
  698. package/dist/rendering/postprocess/BloomPass.d.ts +1 -1
  699. package/dist/rendering/postprocess/CinematicDiagnostics.d.ts +1 -1
  700. package/dist/rendering/postprocess/ColorGradingPass.d.ts +1 -1
  701. package/dist/rendering/postprocess/DepthOfFieldPass.d.ts +1 -1
  702. package/dist/rendering/postprocess/EffectComposer.d.ts +3 -3
  703. package/dist/rendering/postprocess/EffectComposer.d.ts.map +1 -1
  704. package/dist/rendering/postprocess/EffectComposer.js +1 -3
  705. package/dist/rendering/postprocess/EffectComposer.js.map +1 -1
  706. package/dist/rendering/postprocess/SSAOPass.d.ts +1 -1
  707. package/dist/rendering/postprocess/index.d.ts +10 -10
  708. package/dist/rendering/production-runtime/AnimationControlsPipeline.d.ts +1 -1
  709. package/dist/rendering/production-runtime/PBRHDRPipeline.d.ts +4 -4
  710. package/dist/rendering/production-runtime/PBRHDRPipeline.d.ts.map +1 -1
  711. package/dist/rendering/production-runtime/PBRHDRPipeline.js +5 -1
  712. package/dist/rendering/production-runtime/PBRHDRPipeline.js.map +1 -1
  713. package/dist/rendering/production-runtime/ProductionEffectsPipeline.d.ts +2 -2
  714. package/dist/rendering/production-runtime/ProductionRendererTypes.d.ts +11 -2
  715. package/dist/rendering/production-runtime/ProductionRendererTypes.d.ts.map +1 -1
  716. package/dist/rendering/production-runtime/ProductionRendererTypes.js.map +1 -1
  717. package/dist/rendering/production-runtime/ProductionRuntimeRenderer.d.ts +8 -3
  718. package/dist/rendering/production-runtime/ProductionRuntimeRenderer.d.ts.map +1 -1
  719. package/dist/rendering/production-runtime/ProductionRuntimeRenderer.js +53 -5
  720. package/dist/rendering/production-runtime/ProductionRuntimeRenderer.js.map +1 -1
  721. package/dist/rendering/production-runtime/ProductionWebGL2Renderer.d.ts +14 -4
  722. package/dist/rendering/production-runtime/ProductionWebGL2Renderer.d.ts.map +1 -1
  723. package/dist/rendering/production-runtime/ProductionWebGL2Renderer.js +21 -2
  724. package/dist/rendering/production-runtime/ProductionWebGL2Renderer.js.map +1 -1
  725. package/dist/rendering/production-runtime/ProductionWebGPURenderer.d.ts +4 -4
  726. package/dist/rendering/production-runtime/ProductionWebGPURenderer.d.ts.map +1 -1
  727. package/dist/rendering/production-runtime/ProductionWebGPURenderer.js +4 -1
  728. package/dist/rendering/production-runtime/ProductionWebGPURenderer.js.map +1 -1
  729. package/dist/rendering/production-runtime/TransmissionBackdropCapture.d.ts +3 -3
  730. package/dist/rendering/production-runtime/backends/RendererBackend.d.ts +1 -1
  731. package/dist/rendering/production-runtime/backends/WebGL2RendererBackend.d.ts +3 -3
  732. package/dist/rendering/production-runtime/backends/WebGPURendererBackend.d.ts +1 -1
  733. package/dist/rendering/production-runtime/backends/webgl2/WebGL2StateCache.d.ts +1 -1
  734. package/dist/rendering/production-runtime/diagnostics/FrameCapture.d.ts +1 -1
  735. package/dist/rendering/production-runtime/environment/HDRLoader.d.ts +2 -2
  736. package/dist/rendering/production-runtime/environment/PMREMGenerator.d.ts +1 -1
  737. package/dist/rendering/production-runtime/framegraph/FrameGraph.d.ts +1 -1
  738. package/dist/rendering/production-runtime/geometry/ProjectedDecalGeometry.d.ts +1 -1
  739. package/dist/rendering/production-runtime/index.d.ts +74 -74
  740. package/dist/rendering/production-runtime/lights/LightManager.d.ts +1 -1
  741. package/dist/rendering/production-runtime/lights/ShadowMapRenderer.d.ts +1 -1
  742. package/dist/rendering/production-runtime/materials/GLTFMaterialAdapter.d.ts +1 -1
  743. package/dist/rendering/production-runtime/materials/GLTFPBRMaterialAdapter.d.ts +2 -2
  744. package/dist/rendering/production-runtime/materials/MaterialCompiler.d.ts +2 -2
  745. package/dist/rendering/production-runtime/materials/MaterialTextureBindings.d.ts +1 -1
  746. package/dist/rendering/production-runtime/passes/ContactShadowPass.d.ts +1 -1
  747. package/dist/rendering/production-runtime/passes/DepthPrepass.d.ts +1 -1
  748. package/dist/rendering/production-runtime/passes/OpaquePass.d.ts +1 -1
  749. package/dist/rendering/production-runtime/passes/ShadowPass.d.ts +1 -1
  750. package/dist/rendering/production-runtime/passes/SkyboxPass.d.ts +1 -1
  751. package/dist/rendering/production-runtime/passes/ToneMappingPass.d.ts +1 -1
  752. package/dist/rendering/production-runtime/passes/TransparentPass.d.ts +1 -1
  753. package/dist/rendering/production-runtime/postprocess/BloomPass.d.ts +2 -2
  754. package/dist/rendering/production-runtime/postprocess/ColorGradingPass.d.ts +2 -2
  755. package/dist/rendering/production-runtime/postprocess/DOFPass.d.ts +2 -2
  756. package/dist/rendering/production-runtime/postprocess/FXAAPass.d.ts +2 -2
  757. package/dist/rendering/production-runtime/postprocess/ProductionEffectComposer.d.ts +1 -1
  758. package/dist/rendering/production-runtime/postprocess/ProductionPostProcessTypes.d.ts +1 -1
  759. package/dist/rendering/production-runtime/postprocess/SSAOPass.d.ts +2 -2
  760. package/dist/rendering/production-runtime/resources/RenderTarget.d.ts +1 -1
  761. package/dist/rendering/production-runtime/scene/RenderableMesh.d.ts +1 -1
  762. package/dist/rendering/production-runtime/scene/RenderableScene.d.ts +3 -3
  763. package/dist/rendering/shadows/CascadedShadowPipeline.d.ts +1 -1
  764. package/dist/rendering/shadows/ShadowDebugViews.d.ts +2 -2
  765. package/dist/rendering/threejs-example-parity/index.d.ts +4 -4
  766. package/dist/rendering/webgpu/WebGPUBuffer.d.ts +1 -1
  767. package/dist/rendering/webgpu/WebGPUCompute.d.ts +2 -2
  768. package/dist/rendering/webgpu/WebGPUPostProcess.d.ts +2 -2
  769. package/dist/rendering/webgpu/WebGPUTexture.d.ts +2 -2
  770. package/dist/rendering/webgpu.d.ts +25 -0
  771. package/dist/rendering/webgpu.d.ts.map +1 -0
  772. package/dist/rendering/webgpu.js +24 -0
  773. package/dist/rendering/webgpu.js.map +1 -0
  774. package/dist/scene/Bounds.d.ts +1 -1
  775. package/dist/scene/Camera.d.ts +1 -1
  776. package/dist/scene/Light.d.ts +1 -1
  777. package/dist/scene/MathTypes.d.ts +2 -1
  778. package/dist/scene/MathTypes.d.ts.map +1 -1
  779. package/dist/scene/MathTypes.js +3 -0
  780. package/dist/scene/MathTypes.js.map +1 -1
  781. package/dist/scene/Renderable.d.ts +6 -0
  782. package/dist/scene/Renderable.d.ts.map +1 -1
  783. package/dist/scene/Renderable.js +8 -2
  784. package/dist/scene/Renderable.js.map +1 -1
  785. package/dist/scripting/AnimationVisualNodes.d.ts +1 -1
  786. package/dist/scripting/Behavior.d.ts +1 -1
  787. package/dist/scripting/BehaviorHost.d.ts +1 -1
  788. package/dist/scripting/BehaviorRegistry.d.ts +1 -1
  789. package/dist/scripting/BehaviorSystem.d.ts +2 -2
  790. package/dist/scripting/HTN.d.ts +1 -1
  791. package/dist/scripting/ScriptContext.d.ts +1 -1
  792. package/dist/scripting/StateMachine.d.ts +1 -1
  793. package/dist/scripting/UtilityAI.d.ts +1 -1
  794. package/dist/scripting/VisualGraph.d.ts +2 -2
  795. package/dist/scripting/VisualGraphExecutor.d.ts +2 -2
  796. package/dist/scripting/VisualNodeCatalog.d.ts +1 -1
  797. package/dist/scripting/index.d.ts +37 -53
  798. package/dist/scripting/index.d.ts.map +1 -1
  799. package/dist/scripting/index.js +0 -8
  800. package/dist/scripting/index.js.map +1 -1
  801. package/dist/workflows/AnimationLabWorkflow.d.ts +1 -1
  802. package/dist/workflows/AssetViewerWorkflow.d.ts +1 -1
  803. package/dist/workflows/ComparisonWorkflow.d.ts +1 -1
  804. package/dist/workflows/InteractiveSceneWorkflow.d.ts +1 -1
  805. package/dist/workflows/MaterialStudioWorkflow.d.ts +1 -1
  806. package/dist/workflows/ProductConfiguratorWorkflow.d.ts +1 -1
  807. package/dist/workflows/SceneShowcaseWorkflow.d.ts +1 -1
  808. package/dist/workflows/WorkflowDiagnostics.d.ts +4 -4
  809. package/dist/workflows/WorkflowTypes.d.ts +4 -4
  810. package/dist/workflows/index.d.ts +12 -12
  811. package/dist/workflows/production-runtime/ProductionExampleRuntime.d.ts +2 -2
  812. package/dist/workflows/production-runtime/ProductionExampleRuntime.d.ts.map +1 -1
  813. package/dist/workflows/production-runtime/ProductionExampleRuntime.js +2 -2
  814. package/dist/workflows/production-runtime/ProductionExampleRuntime.js.map +1 -1
  815. package/dist/workflows/production-runtime/index.d.ts +10 -10
  816. package/dist/workflows/workflow-foundation/index.d.ts +16 -16
  817. package/package.json +157 -40
  818. package/templates/cinematic-scene/node_modules/.vite/deps/_metadata.json +8 -0
  819. package/templates/cinematic-scene/node_modules/.vite/deps/package.json +3 -0
  820. package/templates/cinematic-scene/package.json +1 -1
  821. package/templates/cinematic-scene/test-results/.last-run.json +6 -0
  822. package/templates/cinematic-scene/test-results/route-health-Aura3D-cinematic-scene-reaches-ready-state/error-context.md +64 -0
  823. package/templates/mini-game/README.md +3 -2
  824. package/templates/mini-game/package.json +1 -1
  825. package/templates/mini-game/src/aura-assets.ts +1 -1
  826. package/templates/mini-game/src/main.ts +69 -141
  827. package/templates/product-viewer/README.md +7 -5
  828. package/templates/product-viewer/index.html +1 -1
  829. package/templates/product-viewer/node_modules/.vite/deps/_metadata.json +8 -0
  830. package/templates/product-viewer/node_modules/.vite/deps/package.json +3 -0
  831. package/templates/product-viewer/package.json +1 -1
  832. package/templates/product-viewer/src/aura-assets.ts +1 -1
  833. package/templates/product-viewer/src/main.ts +29 -23
  834. package/dist/animation/MotionMatchingFixtures.d.ts +0 -58
  835. package/dist/animation/MotionMatchingFixtures.d.ts.map +0 -1
  836. package/dist/animation/MotionMatchingFixtures.js +0 -175
  837. package/dist/animation/MotionMatchingFixtures.js.map +0 -1
  838. package/dist/animation/Retargeting.d.ts +0 -12
  839. package/dist/animation/Retargeting.d.ts.map +0 -1
  840. package/dist/animation/Retargeting.js +0 -19
  841. package/dist/animation/Retargeting.js.map +0 -1
  842. package/dist/animation/SecondaryAnimationFixtures.d.ts +0 -55
  843. package/dist/animation/SecondaryAnimationFixtures.d.ts.map +0 -1
  844. package/dist/animation/SecondaryAnimationFixtures.js +0 -145
  845. package/dist/animation/SecondaryAnimationFixtures.js.map +0 -1
  846. package/dist/assets/AssetBundleCacheFixtures.d.ts +0 -62
  847. package/dist/assets/AssetBundleCacheFixtures.d.ts.map +0 -1
  848. package/dist/assets/AssetBundleCacheFixtures.js +0 -222
  849. package/dist/assets/AssetBundleCacheFixtures.js.map +0 -1
  850. package/dist/assets/EXRLoader.d.ts +0 -2
  851. package/dist/assets/EXRLoader.d.ts.map +0 -1
  852. package/dist/assets/EXRLoader.js +0 -2
  853. package/dist/assets/EXRLoader.js.map +0 -1
  854. package/dist/assets/SceneAnalysisFixtures.d.ts +0 -100
  855. package/dist/assets/SceneAnalysisFixtures.d.ts.map +0 -1
  856. package/dist/assets/SceneAnalysisFixtures.js +0 -331
  857. package/dist/assets/SceneAnalysisFixtures.js.map +0 -1
  858. package/dist/assets/loaders/EXRLoader.d.ts +0 -4
  859. package/dist/assets/loaders/EXRLoader.d.ts.map +0 -1
  860. package/dist/assets/loaders/EXRLoader.js +0 -10
  861. package/dist/assets/loaders/EXRLoader.js.map +0 -1
  862. package/dist/audio/AdaptiveMusicFixtures.d.ts +0 -36
  863. package/dist/audio/AdaptiveMusicFixtures.d.ts.map +0 -1
  864. package/dist/audio/AdaptiveMusicFixtures.js +0 -90
  865. package/dist/audio/AdaptiveMusicFixtures.js.map +0 -1
  866. package/dist/audio/AudioEffectsAnalysisFixtures.d.ts +0 -99
  867. package/dist/audio/AudioEffectsAnalysisFixtures.d.ts.map +0 -1
  868. package/dist/audio/AudioEffectsAnalysisFixtures.js +0 -192
  869. package/dist/audio/AudioEffectsAnalysisFixtures.js.map +0 -1
  870. package/dist/audio/SpatialAudioFixtures.d.ts +0 -38
  871. package/dist/audio/SpatialAudioFixtures.d.ts.map +0 -1
  872. package/dist/audio/SpatialAudioFixtures.js +0 -94
  873. package/dist/audio/SpatialAudioFixtures.js.map +0 -1
  874. package/dist/aura3d-cli/cartoon-asset-profiles.d.ts +0 -15
  875. package/dist/aura3d-cli/cartoon-asset-profiles.d.ts.map +0 -1
  876. package/dist/aura3d-cli/cartoon-asset-profiles.js +0 -46
  877. package/dist/aura3d-cli/cartoon-asset-profiles.js.map +0 -1
  878. package/dist/editor-runtime/CartoonSceneEditor.d.ts +0 -111
  879. package/dist/editor-runtime/CartoonSceneEditor.d.ts.map +0 -1
  880. package/dist/editor-runtime/CartoonSceneEditor.js +0 -285
  881. package/dist/editor-runtime/CartoonSceneEditor.js.map +0 -1
  882. package/dist/editor-runtime/LocalizationAccessibilityFixtures.d.ts +0 -70
  883. package/dist/editor-runtime/LocalizationAccessibilityFixtures.d.ts.map +0 -1
  884. package/dist/editor-runtime/LocalizationAccessibilityFixtures.js +0 -275
  885. package/dist/editor-runtime/LocalizationAccessibilityFixtures.js.map +0 -1
  886. package/dist/engine/agent-api/CartoonAssetManifest.d.ts +0 -50
  887. package/dist/engine/agent-api/CartoonAssetManifest.d.ts.map +0 -1
  888. package/dist/engine/agent-api/CartoonAssetManifest.js +0 -65
  889. package/dist/engine/agent-api/CartoonAssetManifest.js.map +0 -1
  890. package/dist/engine/agent-api/CartoonDirector.d.ts +0 -120
  891. package/dist/engine/agent-api/CartoonDirector.d.ts.map +0 -1
  892. package/dist/engine/agent-api/CartoonDirector.js +0 -432
  893. package/dist/engine/agent-api/CartoonDirector.js.map +0 -1
  894. package/dist/engine/agent-api/CartoonEpisodePackage.d.ts +0 -51
  895. package/dist/engine/agent-api/CartoonEpisodePackage.d.ts.map +0 -1
  896. package/dist/engine/agent-api/CartoonEpisodePackage.js +0 -79
  897. package/dist/engine/agent-api/CartoonEpisodePackage.js.map +0 -1
  898. package/dist/engine/agent-api/CartoonMotionQuality.d.ts +0 -83
  899. package/dist/engine/agent-api/CartoonMotionQuality.d.ts.map +0 -1
  900. package/dist/engine/agent-api/CartoonMotionQuality.js +0 -128
  901. package/dist/engine/agent-api/CartoonMotionQuality.js.map +0 -1
  902. package/dist/engine/agent-api/CartoonPerformance.d.ts +0 -150
  903. package/dist/engine/agent-api/CartoonPerformance.d.ts.map +0 -1
  904. package/dist/engine/agent-api/CartoonPerformance.js +0 -345
  905. package/dist/engine/agent-api/CartoonPerformance.js.map +0 -1
  906. package/dist/engine/agent-api/CartoonRenderQueue.d.ts +0 -143
  907. package/dist/engine/agent-api/CartoonRenderQueue.d.ts.map +0 -1
  908. package/dist/engine/agent-api/CartoonRenderQueue.js +0 -410
  909. package/dist/engine/agent-api/CartoonRenderQueue.js.map +0 -1
  910. package/dist/engine/agent-api/CartoonRouteProof.d.ts +0 -112
  911. package/dist/engine/agent-api/CartoonRouteProof.d.ts.map +0 -1
  912. package/dist/engine/agent-api/CartoonRouteProof.js +0 -127
  913. package/dist/engine/agent-api/CartoonRouteProof.js.map +0 -1
  914. package/dist/input/GestureHapticsFixtures.d.ts +0 -57
  915. package/dist/input/GestureHapticsFixtures.d.ts.map +0 -1
  916. package/dist/input/GestureHapticsFixtures.js +0 -115
  917. package/dist/input/GestureHapticsFixtures.js.map +0 -1
  918. package/dist/input/InputActionBindingFixtures.d.ts +0 -44
  919. package/dist/input/InputActionBindingFixtures.d.ts.map +0 -1
  920. package/dist/input/InputActionBindingFixtures.js +0 -86
  921. package/dist/input/InputActionBindingFixtures.js.map +0 -1
  922. package/dist/input/XRFixtures.d.ts +0 -65
  923. package/dist/input/XRFixtures.d.ts.map +0 -1
  924. package/dist/input/XRFixtures.js +0 -136
  925. package/dist/input/XRFixtures.js.map +0 -1
  926. package/dist/physics/CharacterController.d.ts +0 -83
  927. package/dist/physics/CharacterController.d.ts.map +0 -1
  928. package/dist/physics/CharacterController.js +0 -236
  929. package/dist/physics/CharacterController.js.map +0 -1
  930. package/dist/physics/ClothFixtures.d.ts +0 -87
  931. package/dist/physics/ClothFixtures.d.ts.map +0 -1
  932. package/dist/physics/ClothFixtures.js +0 -264
  933. package/dist/physics/ClothFixtures.js.map +0 -1
  934. package/dist/physics/Crowd.d.ts +0 -64
  935. package/dist/physics/Crowd.d.ts.map +0 -1
  936. package/dist/physics/Crowd.js +0 -209
  937. package/dist/physics/Crowd.js.map +0 -1
  938. package/dist/physics/FireSmokeFixtures.d.ts +0 -103
  939. package/dist/physics/FireSmokeFixtures.d.ts.map +0 -1
  940. package/dist/physics/FireSmokeFixtures.js +0 -271
  941. package/dist/physics/FireSmokeFixtures.js.map +0 -1
  942. package/dist/physics/FluidFixtures.d.ts +0 -75
  943. package/dist/physics/FluidFixtures.d.ts.map +0 -1
  944. package/dist/physics/FluidFixtures.js +0 -219
  945. package/dist/physics/FluidFixtures.js.map +0 -1
  946. package/dist/physics/FractureFixtures.d.ts +0 -68
  947. package/dist/physics/FractureFixtures.d.ts.map +0 -1
  948. package/dist/physics/FractureFixtures.js +0 -199
  949. package/dist/physics/FractureFixtures.js.map +0 -1
  950. package/dist/physics/NarrowPhase.d.ts +0 -11
  951. package/dist/physics/NarrowPhase.d.ts.map +0 -1
  952. package/dist/physics/NarrowPhase.js +0 -565
  953. package/dist/physics/NarrowPhase.js.map +0 -1
  954. package/dist/physics/Navigation.d.ts +0 -67
  955. package/dist/physics/Navigation.d.ts.map +0 -1
  956. package/dist/physics/Navigation.js +0 -261
  957. package/dist/physics/Navigation.js.map +0 -1
  958. package/dist/physics/PhysicsSandboxFixtures.d.ts +0 -53
  959. package/dist/physics/PhysicsSandboxFixtures.d.ts.map +0 -1
  960. package/dist/physics/PhysicsSandboxFixtures.js +0 -280
  961. package/dist/physics/PhysicsSandboxFixtures.js.map +0 -1
  962. package/dist/physics/PlatformerFixtures.d.ts +0 -70
  963. package/dist/physics/PlatformerFixtures.d.ts.map +0 -1
  964. package/dist/physics/PlatformerFixtures.js +0 -120
  965. package/dist/physics/PlatformerFixtures.js.map +0 -1
  966. package/dist/physics/SoftBodyFixtures.d.ts +0 -70
  967. package/dist/physics/SoftBodyFixtures.d.ts.map +0 -1
  968. package/dist/physics/SoftBodyFixtures.js +0 -272
  969. package/dist/physics/SoftBodyFixtures.js.map +0 -1
  970. package/dist/physics/Steering.d.ts +0 -161
  971. package/dist/physics/Steering.d.ts.map +0 -1
  972. package/dist/physics/Steering.js +0 -347
  973. package/dist/physics/Steering.js.map +0 -1
  974. package/dist/physics/VehicleDynamics.d.ts.map +0 -1
  975. package/dist/physics/VehicleDynamics.js.map +0 -1
  976. package/dist/rendering/ArchitecturalLightingFixtures.d.ts +0 -40
  977. package/dist/rendering/ArchitecturalLightingFixtures.d.ts.map +0 -1
  978. package/dist/rendering/ArchitecturalLightingFixtures.js.map +0 -1
  979. package/dist/rendering/ArchitecturalMeasurementFixtures.d.ts.map +0 -1
  980. package/dist/rendering/ArchitecturalMeasurementFixtures.js.map +0 -1
  981. package/dist/rendering/CanonicalSceneFixtures.d.ts.map +0 -1
  982. package/dist/rendering/CanonicalSceneFixtures.js.map +0 -1
  983. package/dist/rendering/CullingFixtures.d.ts +0 -70
  984. package/dist/rendering/CullingFixtures.d.ts.map +0 -1
  985. package/dist/rendering/CullingFixtures.js +0 -191
  986. package/dist/rendering/CullingFixtures.js.map +0 -1
  987. package/dist/rendering/OceanFixtures.d.ts.map +0 -1
  988. package/dist/rendering/OceanFixtures.js.map +0 -1
  989. package/dist/rendering/ProceduralTextureFixtures.d.ts.map +0 -1
  990. package/dist/rendering/ProceduralTextureFixtures.js.map +0 -1
  991. package/dist/rendering/ProductTurntableFixtures.d.ts.map +0 -1
  992. package/dist/rendering/ProductTurntableFixtures.js.map +0 -1
  993. package/dist/rendering/SpaceEnvironmentFixtures.d.ts.map +0 -1
  994. package/dist/rendering/SpaceEnvironmentFixtures.js.map +0 -1
  995. package/dist/rendering/TerrainFixtures.d.ts.map +0 -1
  996. package/dist/rendering/TerrainFixtures.js.map +0 -1
  997. package/dist/rendering/VegetationFixtures.d.ts.map +0 -1
  998. package/dist/rendering/VegetationFixtures.js.map +0 -1
  999. package/dist/rendering/VoxelWorldFixtures.d.ts.map +0 -1
  1000. package/dist/rendering/VoxelWorldFixtures.js.map +0 -1
  1001. package/dist/rendering/WeatherFixtures.d.ts.map +0 -1
  1002. package/dist/rendering/WeatherFixtures.js.map +0 -1
  1003. package/dist/rendering/cartoon/CartoonMaterialStyle.d.ts +0 -19
  1004. package/dist/rendering/cartoon/CartoonMaterialStyle.d.ts.map +0 -1
  1005. package/dist/rendering/cartoon/CartoonMaterialStyle.js +0 -13
  1006. package/dist/rendering/cartoon/CartoonMaterialStyle.js.map +0 -1
  1007. package/dist/rendering/cartoon/CartoonRenderPreset.d.ts +0 -36
  1008. package/dist/rendering/cartoon/CartoonRenderPreset.d.ts.map +0 -1
  1009. package/dist/rendering/cartoon/CartoonRenderPreset.js +0 -23
  1010. package/dist/rendering/cartoon/CartoonRenderPreset.js.map +0 -1
  1011. package/dist/rendering/cartoon/CartoonToonMaterial.d.ts +0 -130
  1012. package/dist/rendering/cartoon/CartoonToonMaterial.d.ts.map +0 -1
  1013. package/dist/rendering/cartoon/CartoonToonMaterial.js +0 -303
  1014. package/dist/rendering/cartoon/CartoonToonMaterial.js.map +0 -1
  1015. package/dist/rendering/cartoon/CartoonVisualQuality.d.ts +0 -28
  1016. package/dist/rendering/cartoon/CartoonVisualQuality.d.ts.map +0 -1
  1017. package/dist/rendering/cartoon/CartoonVisualQuality.js +0 -39
  1018. package/dist/rendering/cartoon/CartoonVisualQuality.js.map +0 -1
  1019. package/dist/rendering/cartoon/applyCartoonRenderPreset.d.ts +0 -79
  1020. package/dist/rendering/cartoon/applyCartoonRenderPreset.d.ts.map +0 -1
  1021. package/dist/rendering/cartoon/applyCartoonRenderPreset.js +0 -88
  1022. package/dist/rendering/cartoon/applyCartoonRenderPreset.js.map +0 -1
  1023. package/dist/rendering/cartoon/index.d.ts +0 -6
  1024. package/dist/rendering/cartoon/index.d.ts.map +0 -1
  1025. package/dist/rendering/cartoon/index.js +0 -6
  1026. package/dist/rendering/cartoon/index.js.map +0 -1
  1027. package/dist/rendering/threejs-compatibility/InstancingSystem.d.ts +0 -10
  1028. package/dist/rendering/threejs-compatibility/InstancingSystem.d.ts.map +0 -1
  1029. package/dist/rendering/threejs-compatibility/InstancingSystem.js +0 -11
  1030. package/dist/rendering/threejs-compatibility/InstancingSystem.js.map +0 -1
  1031. package/dist/rendering/threejs-compatibility/LightingSystem.d.ts +0 -11
  1032. package/dist/rendering/threejs-compatibility/LightingSystem.d.ts.map +0 -1
  1033. package/dist/rendering/threejs-compatibility/LightingSystem.js +0 -14
  1034. package/dist/rendering/threejs-compatibility/LightingSystem.js.map +0 -1
  1035. package/dist/rendering/threejs-compatibility/MaterialSystem.d.ts +0 -6
  1036. package/dist/rendering/threejs-compatibility/MaterialSystem.d.ts.map +0 -1
  1037. package/dist/rendering/threejs-compatibility/MaterialSystem.js +0 -7
  1038. package/dist/rendering/threejs-compatibility/MaterialSystem.js.map +0 -1
  1039. package/dist/rendering/threejs-compatibility/RenderTargetSystem.d.ts +0 -16
  1040. package/dist/rendering/threejs-compatibility/RenderTargetSystem.d.ts.map +0 -1
  1041. package/dist/rendering/threejs-compatibility/RenderTargetSystem.js +0 -23
  1042. package/dist/rendering/threejs-compatibility/RenderTargetSystem.js.map +0 -1
  1043. package/dist/rendering/threejs-compatibility/RendererDiagnostics.d.ts +0 -27
  1044. package/dist/rendering/threejs-compatibility/RendererDiagnostics.d.ts.map +0 -1
  1045. package/dist/rendering/threejs-compatibility/RendererDiagnostics.js +0 -41
  1046. package/dist/rendering/threejs-compatibility/RendererDiagnostics.js.map +0 -1
  1047. package/dist/rendering/threejs-compatibility/SceneRenderer.d.ts +0 -19
  1048. package/dist/rendering/threejs-compatibility/SceneRenderer.d.ts.map +0 -1
  1049. package/dist/rendering/threejs-compatibility/SceneRenderer.js +0 -18
  1050. package/dist/rendering/threejs-compatibility/SceneRenderer.js.map +0 -1
  1051. package/dist/rendering/threejs-compatibility/ShadowSystem.d.ts +0 -11
  1052. package/dist/rendering/threejs-compatibility/ShadowSystem.d.ts.map +0 -1
  1053. package/dist/rendering/threejs-compatibility/ShadowSystem.js +0 -12
  1054. package/dist/rendering/threejs-compatibility/ShadowSystem.js.map +0 -1
  1055. package/dist/rendering/threejs-compatibility/TextureSystem.d.ts +0 -9
  1056. package/dist/rendering/threejs-compatibility/TextureSystem.d.ts.map +0 -1
  1057. package/dist/rendering/threejs-compatibility/TextureSystem.js +0 -14
  1058. package/dist/rendering/threejs-compatibility/TextureSystem.js.map +0 -1
  1059. package/dist/rendering/threejs-compatibility/ThreeCompatRenderer.d.ts +0 -37
  1060. package/dist/rendering/threejs-compatibility/ThreeCompatRenderer.d.ts.map +0 -1
  1061. package/dist/rendering/threejs-compatibility/ThreeCompatRenderer.js +0 -77
  1062. package/dist/rendering/threejs-compatibility/ThreeCompatRenderer.js.map +0 -1
  1063. package/dist/rendering/threejs-compatibility/TransparencySystem.d.ts +0 -11
  1064. package/dist/rendering/threejs-compatibility/TransparencySystem.d.ts.map +0 -1
  1065. package/dist/rendering/threejs-compatibility/TransparencySystem.js +0 -12
  1066. package/dist/rendering/threejs-compatibility/TransparencySystem.js.map +0 -1
  1067. package/dist/rendering/threejs-compatibility/index.d.ts +0 -25
  1068. package/dist/rendering/threejs-compatibility/index.d.ts.map +0 -1
  1069. package/dist/rendering/threejs-compatibility/index.js +0 -15
  1070. package/dist/rendering/threejs-compatibility/index.js.map +0 -1
  1071. package/dist/rendering/threejs-compatibility/performance/BVH.d.ts +0 -11
  1072. package/dist/rendering/threejs-compatibility/performance/BVH.d.ts.map +0 -1
  1073. package/dist/rendering/threejs-compatibility/performance/BVH.js +0 -10
  1074. package/dist/rendering/threejs-compatibility/performance/BVH.js.map +0 -1
  1075. package/dist/rendering/threejs-compatibility/performance/FrustumCulling.d.ts +0 -7
  1076. package/dist/rendering/threejs-compatibility/performance/FrustumCulling.d.ts.map +0 -1
  1077. package/dist/rendering/threejs-compatibility/performance/FrustumCulling.js +0 -5
  1078. package/dist/rendering/threejs-compatibility/performance/FrustumCulling.js.map +0 -1
  1079. package/dist/rendering/threejs-compatibility/performance/Instancing.d.ts +0 -7
  1080. package/dist/rendering/threejs-compatibility/performance/Instancing.d.ts.map +0 -1
  1081. package/dist/rendering/threejs-compatibility/performance/Instancing.js +0 -10
  1082. package/dist/rendering/threejs-compatibility/performance/Instancing.js.map +0 -1
  1083. package/dist/rendering/threejs-compatibility/performance/LODSystem.d.ts +0 -9
  1084. package/dist/rendering/threejs-compatibility/performance/LODSystem.d.ts.map +0 -1
  1085. package/dist/rendering/threejs-compatibility/performance/LODSystem.js +0 -11
  1086. package/dist/rendering/threejs-compatibility/performance/LODSystem.js.map +0 -1
  1087. package/dist/rendering/threejs-compatibility/performance/OcclusionCulling.d.ts +0 -3
  1088. package/dist/rendering/threejs-compatibility/performance/OcclusionCulling.d.ts.map +0 -1
  1089. package/dist/rendering/threejs-compatibility/performance/OcclusionCulling.js +0 -5
  1090. package/dist/rendering/threejs-compatibility/performance/OcclusionCulling.js.map +0 -1
  1091. package/dist/rendering/threejs-compatibility/performance/RaycastAcceleration.d.ts +0 -8
  1092. package/dist/rendering/threejs-compatibility/performance/RaycastAcceleration.d.ts.map +0 -1
  1093. package/dist/rendering/threejs-compatibility/performance/RaycastAcceleration.js +0 -11
  1094. package/dist/rendering/threejs-compatibility/performance/RaycastAcceleration.js.map +0 -1
  1095. package/dist/rendering/threejs-compatibility/performance/RendererProfiler.d.ts +0 -11
  1096. package/dist/rendering/threejs-compatibility/performance/RendererProfiler.d.ts.map +0 -1
  1097. package/dist/rendering/threejs-compatibility/performance/RendererProfiler.js +0 -10
  1098. package/dist/rendering/threejs-compatibility/performance/RendererProfiler.js.map +0 -1
  1099. package/dist/rendering/threejs-compatibility/performance/TextureStreaming.d.ts +0 -7
  1100. package/dist/rendering/threejs-compatibility/performance/TextureStreaming.d.ts.map +0 -1
  1101. package/dist/rendering/threejs-compatibility/performance/TextureStreaming.js +0 -10
  1102. package/dist/rendering/threejs-compatibility/performance/TextureStreaming.js.map +0 -1
  1103. package/dist/rendering/threejs-compatibility/performance/index.d.ts +0 -13
  1104. package/dist/rendering/threejs-compatibility/performance/index.d.ts.map +0 -1
  1105. package/dist/rendering/threejs-compatibility/performance/index.js +0 -9
  1106. package/dist/rendering/threejs-compatibility/performance/index.js.map +0 -1
  1107. package/dist/rendering/threejs-compatibility/postprocess/BloomPass.d.ts +0 -9
  1108. package/dist/rendering/threejs-compatibility/postprocess/BloomPass.d.ts.map +0 -1
  1109. package/dist/rendering/threejs-compatibility/postprocess/BloomPass.js +0 -14
  1110. package/dist/rendering/threejs-compatibility/postprocess/BloomPass.js.map +0 -1
  1111. package/dist/rendering/threejs-compatibility/postprocess/ColorGradingPass.d.ts +0 -10
  1112. package/dist/rendering/threejs-compatibility/postprocess/ColorGradingPass.d.ts.map +0 -1
  1113. package/dist/rendering/threejs-compatibility/postprocess/ColorGradingPass.js +0 -16
  1114. package/dist/rendering/threejs-compatibility/postprocess/ColorGradingPass.js.map +0 -1
  1115. package/dist/rendering/threejs-compatibility/postprocess/DepthOfFieldPass.d.ts +0 -9
  1116. package/dist/rendering/threejs-compatibility/postprocess/DepthOfFieldPass.d.ts.map +0 -1
  1117. package/dist/rendering/threejs-compatibility/postprocess/DepthOfFieldPass.js +0 -19
  1118. package/dist/rendering/threejs-compatibility/postprocess/DepthOfFieldPass.js.map +0 -1
  1119. package/dist/rendering/threejs-compatibility/postprocess/EffectComposer.d.ts +0 -7
  1120. package/dist/rendering/threejs-compatibility/postprocess/EffectComposer.d.ts.map +0 -1
  1121. package/dist/rendering/threejs-compatibility/postprocess/EffectComposer.js +0 -11
  1122. package/dist/rendering/threejs-compatibility/postprocess/EffectComposer.js.map +0 -1
  1123. package/dist/rendering/threejs-compatibility/postprocess/FXAAPass.d.ts +0 -7
  1124. package/dist/rendering/threejs-compatibility/postprocess/FXAAPass.d.ts.map +0 -1
  1125. package/dist/rendering/threejs-compatibility/postprocess/FXAAPass.js +0 -10
  1126. package/dist/rendering/threejs-compatibility/postprocess/FXAAPass.js.map +0 -1
  1127. package/dist/rendering/threejs-compatibility/postprocess/MotionBlurPass.d.ts +0 -9
  1128. package/dist/rendering/threejs-compatibility/postprocess/MotionBlurPass.d.ts.map +0 -1
  1129. package/dist/rendering/threejs-compatibility/postprocess/MotionBlurPass.js +0 -18
  1130. package/dist/rendering/threejs-compatibility/postprocess/MotionBlurPass.js.map +0 -1
  1131. package/dist/rendering/threejs-compatibility/postprocess/OutlinePass.d.ts +0 -9
  1132. package/dist/rendering/threejs-compatibility/postprocess/OutlinePass.d.ts.map +0 -1
  1133. package/dist/rendering/threejs-compatibility/postprocess/OutlinePass.js +0 -19
  1134. package/dist/rendering/threejs-compatibility/postprocess/OutlinePass.js.map +0 -1
  1135. package/dist/rendering/threejs-compatibility/postprocess/PostProcessTypes.d.ts +0 -42
  1136. package/dist/rendering/threejs-compatibility/postprocess/PostProcessTypes.d.ts.map +0 -1
  1137. package/dist/rendering/threejs-compatibility/postprocess/PostProcessTypes.js +0 -123
  1138. package/dist/rendering/threejs-compatibility/postprocess/PostProcessTypes.js.map +0 -1
  1139. package/dist/rendering/threejs-compatibility/postprocess/RenderPass.d.ts +0 -7
  1140. package/dist/rendering/threejs-compatibility/postprocess/RenderPass.d.ts.map +0 -1
  1141. package/dist/rendering/threejs-compatibility/postprocess/RenderPass.js +0 -8
  1142. package/dist/rendering/threejs-compatibility/postprocess/RenderPass.js.map +0 -1
  1143. package/dist/rendering/threejs-compatibility/postprocess/SMAAPass.d.ts +0 -7
  1144. package/dist/rendering/threejs-compatibility/postprocess/SMAAPass.d.ts.map +0 -1
  1145. package/dist/rendering/threejs-compatibility/postprocess/SMAAPass.js +0 -10
  1146. package/dist/rendering/threejs-compatibility/postprocess/SMAAPass.js.map +0 -1
  1147. package/dist/rendering/threejs-compatibility/postprocess/SSAOPass.d.ts +0 -9
  1148. package/dist/rendering/threejs-compatibility/postprocess/SSAOPass.d.ts.map +0 -1
  1149. package/dist/rendering/threejs-compatibility/postprocess/SSAOPass.js +0 -19
  1150. package/dist/rendering/threejs-compatibility/postprocess/SSAOPass.js.map +0 -1
  1151. package/dist/rendering/threejs-compatibility/postprocess/ShaderPass.d.ts +0 -9
  1152. package/dist/rendering/threejs-compatibility/postprocess/ShaderPass.d.ts.map +0 -1
  1153. package/dist/rendering/threejs-compatibility/postprocess/ShaderPass.js +0 -11
  1154. package/dist/rendering/threejs-compatibility/postprocess/ShaderPass.js.map +0 -1
  1155. package/dist/rendering/threejs-compatibility/postprocess/TAAPass.d.ts +0 -7
  1156. package/dist/rendering/threejs-compatibility/postprocess/TAAPass.d.ts.map +0 -1
  1157. package/dist/rendering/threejs-compatibility/postprocess/TAAPass.js +0 -10
  1158. package/dist/rendering/threejs-compatibility/postprocess/TAAPass.js.map +0 -1
  1159. package/dist/rendering/threejs-compatibility/postprocess/VignettePass.d.ts +0 -9
  1160. package/dist/rendering/threejs-compatibility/postprocess/VignettePass.d.ts.map +0 -1
  1161. package/dist/rendering/threejs-compatibility/postprocess/VignettePass.js +0 -14
  1162. package/dist/rendering/threejs-compatibility/postprocess/VignettePass.js.map +0 -1
  1163. package/dist/rendering/threejs-compatibility/postprocess/index.d.ts +0 -16
  1164. package/dist/rendering/threejs-compatibility/postprocess/index.d.ts.map +0 -1
  1165. package/dist/rendering/threejs-compatibility/postprocess/index.js +0 -15
  1166. package/dist/rendering/threejs-compatibility/postprocess/index.js.map +0 -1
  1167. package/dist/rendering/threejs-compatibility/shaders/NodeMaterial.d.ts +0 -14
  1168. package/dist/rendering/threejs-compatibility/shaders/NodeMaterial.d.ts.map +0 -1
  1169. package/dist/rendering/threejs-compatibility/shaders/NodeMaterial.js +0 -15
  1170. package/dist/rendering/threejs-compatibility/shaders/NodeMaterial.js.map +0 -1
  1171. package/dist/rendering/threejs-compatibility/shaders/RawShaderMaterial.d.ts +0 -6
  1172. package/dist/rendering/threejs-compatibility/shaders/RawShaderMaterial.d.ts.map +0 -1
  1173. package/dist/rendering/threejs-compatibility/shaders/RawShaderMaterial.js +0 -6
  1174. package/dist/rendering/threejs-compatibility/shaders/RawShaderMaterial.js.map +0 -1
  1175. package/dist/rendering/threejs-compatibility/shaders/ShaderDiagnostics.d.ts +0 -7
  1176. package/dist/rendering/threejs-compatibility/shaders/ShaderDiagnostics.d.ts.map +0 -1
  1177. package/dist/rendering/threejs-compatibility/shaders/ShaderDiagnostics.js +0 -12
  1178. package/dist/rendering/threejs-compatibility/shaders/ShaderDiagnostics.js.map +0 -1
  1179. package/dist/rendering/threejs-compatibility/shaders/ShaderMaterial.d.ts +0 -12
  1180. package/dist/rendering/threejs-compatibility/shaders/ShaderMaterial.d.ts.map +0 -1
  1181. package/dist/rendering/threejs-compatibility/shaders/ShaderMaterial.js +0 -20
  1182. package/dist/rendering/threejs-compatibility/shaders/ShaderMaterial.js.map +0 -1
  1183. package/dist/rendering/threejs-compatibility/shaders/ThreeCompatShaderChunks.d.ts +0 -7
  1184. package/dist/rendering/threejs-compatibility/shaders/ThreeCompatShaderChunks.d.ts.map +0 -1
  1185. package/dist/rendering/threejs-compatibility/shaders/ThreeCompatShaderChunks.js +0 -7
  1186. package/dist/rendering/threejs-compatibility/shaders/ThreeCompatShaderChunks.js.map +0 -1
  1187. package/dist/rendering/threejs-compatibility/shaders/Uniforms.d.ts +0 -8
  1188. package/dist/rendering/threejs-compatibility/shaders/Uniforms.d.ts.map +0 -1
  1189. package/dist/rendering/threejs-compatibility/shaders/Uniforms.js +0 -14
  1190. package/dist/rendering/threejs-compatibility/shaders/Uniforms.js.map +0 -1
  1191. package/dist/rendering/threejs-compatibility/shaders/index.d.ts +0 -10
  1192. package/dist/rendering/threejs-compatibility/shaders/index.d.ts.map +0 -1
  1193. package/dist/rendering/threejs-compatibility/shaders/index.js +0 -7
  1194. package/dist/rendering/threejs-compatibility/shaders/index.js.map +0 -1
  1195. package/dist/rendering/threejs-compatibility/vfx/GPUPointCloud.d.ts +0 -7
  1196. package/dist/rendering/threejs-compatibility/vfx/GPUPointCloud.d.ts.map +0 -1
  1197. package/dist/rendering/threejs-compatibility/vfx/GPUPointCloud.js +0 -12
  1198. package/dist/rendering/threejs-compatibility/vfx/GPUPointCloud.js.map +0 -1
  1199. package/dist/rendering/threejs-compatibility/vfx/LineRenderer.d.ts +0 -10
  1200. package/dist/rendering/threejs-compatibility/vfx/LineRenderer.d.ts.map +0 -1
  1201. package/dist/rendering/threejs-compatibility/vfx/LineRenderer.js +0 -7
  1202. package/dist/rendering/threejs-compatibility/vfx/LineRenderer.js.map +0 -1
  1203. package/dist/rendering/threejs-compatibility/vfx/ParticleSystem.d.ts +0 -12
  1204. package/dist/rendering/threejs-compatibility/vfx/ParticleSystem.d.ts.map +0 -1
  1205. package/dist/rendering/threejs-compatibility/vfx/ParticleSystem.js +0 -15
  1206. package/dist/rendering/threejs-compatibility/vfx/ParticleSystem.js.map +0 -1
  1207. package/dist/rendering/threejs-compatibility/vfx/SpriteSystem.d.ts +0 -11
  1208. package/dist/rendering/threejs-compatibility/vfx/SpriteSystem.d.ts.map +0 -1
  1209. package/dist/rendering/threejs-compatibility/vfx/SpriteSystem.js +0 -7
  1210. package/dist/rendering/threejs-compatibility/vfx/SpriteSystem.js.map +0 -1
  1211. package/dist/rendering/threejs-compatibility/vfx/TrailRenderer.d.ts +0 -5
  1212. package/dist/rendering/threejs-compatibility/vfx/TrailRenderer.d.ts.map +0 -1
  1213. package/dist/rendering/threejs-compatibility/vfx/TrailRenderer.js +0 -9
  1214. package/dist/rendering/threejs-compatibility/vfx/TrailRenderer.js.map +0 -1
  1215. package/dist/rendering/threejs-compatibility/vfx/VFXDiagnostics.d.ts +0 -21
  1216. package/dist/rendering/threejs-compatibility/vfx/VFXDiagnostics.d.ts.map +0 -1
  1217. package/dist/rendering/threejs-compatibility/vfx/VFXDiagnostics.js +0 -12
  1218. package/dist/rendering/threejs-compatibility/vfx/VFXDiagnostics.js.map +0 -1
  1219. package/dist/rendering/threejs-compatibility/vfx/index.d.ts +0 -10
  1220. package/dist/rendering/threejs-compatibility/vfx/index.d.ts.map +0 -1
  1221. package/dist/rendering/threejs-compatibility/vfx/index.js +0 -7
  1222. package/dist/rendering/threejs-compatibility/vfx/index.js.map +0 -1
  1223. package/dist/scripting/AdaptiveDifficultyFixtures.d.ts +0 -58
  1224. package/dist/scripting/AdaptiveDifficultyFixtures.d.ts.map +0 -1
  1225. package/dist/scripting/AdaptiveDifficultyFixtures.js +0 -228
  1226. package/dist/scripting/AdaptiveDifficultyFixtures.js.map +0 -1
  1227. package/dist/scripting/AnalyticsPrivacyFixtures.d.ts +0 -63
  1228. package/dist/scripting/AnalyticsPrivacyFixtures.d.ts.map +0 -1
  1229. package/dist/scripting/AnalyticsPrivacyFixtures.js +0 -120
  1230. package/dist/scripting/AnalyticsPrivacyFixtures.js.map +0 -1
  1231. package/dist/scripting/CartoonNodeCategories.d.ts +0 -3
  1232. package/dist/scripting/CartoonNodeCategories.d.ts.map +0 -1
  1233. package/dist/scripting/CartoonNodeCategories.js +0 -9
  1234. package/dist/scripting/CartoonNodeCategories.js.map +0 -1
  1235. package/dist/scripting/CartoonVisualNodes.d.ts +0 -3
  1236. package/dist/scripting/CartoonVisualNodes.d.ts.map +0 -1
  1237. package/dist/scripting/CartoonVisualNodes.js +0 -41
  1238. package/dist/scripting/CartoonVisualNodes.js.map +0 -1
  1239. package/dist/scripting/CloudServiceFixtures.d.ts +0 -81
  1240. package/dist/scripting/CloudServiceFixtures.d.ts.map +0 -1
  1241. package/dist/scripting/CloudServiceFixtures.js +0 -144
  1242. package/dist/scripting/CloudServiceFixtures.js.map +0 -1
  1243. package/dist/scripting/CulturalBehaviorFixtures.d.ts +0 -75
  1244. package/dist/scripting/CulturalBehaviorFixtures.d.ts.map +0 -1
  1245. package/dist/scripting/CulturalBehaviorFixtures.js +0 -180
  1246. package/dist/scripting/CulturalBehaviorFixtures.js.map +0 -1
  1247. package/dist/scripting/LearningAgentFixtures.d.ts +0 -60
  1248. package/dist/scripting/LearningAgentFixtures.d.ts.map +0 -1
  1249. package/dist/scripting/LearningAgentFixtures.js +0 -122
  1250. package/dist/scripting/LearningAgentFixtures.js.map +0 -1
  1251. package/dist/scripting/NetworkReplicationFixtures.d.ts +0 -82
  1252. package/dist/scripting/NetworkReplicationFixtures.d.ts.map +0 -1
  1253. package/dist/scripting/NetworkReplicationFixtures.js +0 -330
  1254. package/dist/scripting/NetworkReplicationFixtures.js.map +0 -1
  1255. package/dist/scripting/PlayerBehaviorTelemetryFixtures.d.ts +0 -74
  1256. package/dist/scripting/PlayerBehaviorTelemetryFixtures.d.ts.map +0 -1
  1257. package/dist/scripting/PlayerBehaviorTelemetryFixtures.js +0 -189
  1258. package/dist/scripting/PlayerBehaviorTelemetryFixtures.js.map +0 -1
  1259. package/dist/scripting/ProceduralContentAdaptationFixtures.d.ts +0 -52
  1260. package/dist/scripting/ProceduralContentAdaptationFixtures.d.ts.map +0 -1
  1261. package/dist/scripting/ProceduralContentAdaptationFixtures.js +0 -149
  1262. package/dist/scripting/ProceduralContentAdaptationFixtures.js.map +0 -1
@@ -1,19 +1,16 @@
1
- import { Body as CannonBody, Box as CannonBox, Cylinder as CannonCylinder, Plane as CannonPlane, Quaternion as CannonQuaternion, Sphere as CannonSphere, Vec3 as CannonVec3, World as CannonWorld } from "cannon-es";
1
+ import { createRapierPhysicsSync } from "../physics-rapier/index.js";
2
2
  import { Collider } from "./Collider.js";
3
3
  import { CollisionEventQueue } from "./CollisionEvents.js";
4
4
  import { Constraint } from "./Constraint.js";
5
- import { buildNativeNarrowPhaseContact } from "./NarrowPhase.js";
6
5
  import { raycastCollider, sphereCastCollider } from "./Raycast.js";
7
6
  import { RigidBody } from "./RigidBody.js";
8
- import { cloneVec3, dotVec3, lengthVec3, normalizeVec3, scaleVec3, subVec3 } from "./Shape.js";
7
+ import { cloneVec3, dotVec3, lengthVec3, normalizeVec3, scaleVec3, subVec3, validateFiniteVec3 } from "./Shape.js";
9
8
  import { timeOfImpact } from "./TimeOfImpact.js";
10
9
  export class PhysicsWorld {
11
10
  gravity;
12
11
  fixedDelta;
13
12
  solverIterations;
14
13
  enableSleeping;
15
- sleepVelocityThreshold;
16
- sleepDelay;
17
14
  continuousCollision;
18
15
  bodiesById = new Map();
19
16
  collidersById = new Map();
@@ -22,8 +19,10 @@ export class PhysicsWorld {
22
19
  eventQueue = new CollisionEventQueue();
23
20
  requestedBackend;
24
21
  backendSelection;
25
- cannonWorld;
26
- cannonBodiesByAuraId = new Map();
22
+ rapierWorld;
23
+ rapierBodiesByAuraId = new Map();
24
+ rapierCollidersByAuraId = new Map();
25
+ rapierJointsByConstraint = new Map();
27
26
  nextBodyId = 1;
28
27
  nextColliderId = 1;
29
28
  lastEvents = [];
@@ -35,10 +34,9 @@ export class PhysicsWorld {
35
34
  this.requestedBackend = descriptor.backend ?? "auto";
36
35
  this.gravity = cloneVec3(descriptor.gravity ?? [0, -9.81, 0]);
37
36
  this.fixedDelta = descriptor.fixedDelta ?? 1 / 60;
38
- this.solverIterations = descriptor.solverIterations ?? 1;
37
+ // Keep the established public default while configuring Rapier's native solver.
38
+ this.solverIterations = descriptor.solverIterations ?? 10;
39
39
  this.enableSleeping = descriptor.enableSleeping ?? true;
40
- this.sleepVelocityThreshold = descriptor.sleepVelocityThreshold ?? 0.02;
41
- this.sleepDelay = descriptor.sleepDelay ?? 0.5;
42
40
  this.continuousCollision = normalizeContinuousCollisionDescriptor(descriptor.continuousCollision);
43
41
  if (!Number.isFinite(this.fixedDelta) || this.fixedDelta <= 0) {
44
42
  throw new Error("fixedDelta must be a finite positive number.");
@@ -46,39 +44,51 @@ export class PhysicsWorld {
46
44
  if (!Number.isInteger(this.solverIterations) || this.solverIterations <= 0) {
47
45
  throw new Error("solverIterations must be a positive integer.");
48
46
  }
49
- if (!Number.isFinite(this.sleepVelocityThreshold) || this.sleepVelocityThreshold < 0) {
47
+ if (descriptor.sleepVelocityThreshold !== undefined && (!Number.isFinite(descriptor.sleepVelocityThreshold) || descriptor.sleepVelocityThreshold < 0)) {
50
48
  throw new Error("sleepVelocityThreshold must be finite and non-negative.");
51
49
  }
52
- if (!Number.isFinite(this.sleepDelay) || this.sleepDelay < 0) {
50
+ if (descriptor.sleepDelay !== undefined && (!Number.isFinite(descriptor.sleepDelay) || descriptor.sleepDelay < 0)) {
53
51
  throw new Error("sleepDelay must be finite and non-negative.");
54
52
  }
53
+ if (this.requestedBackend !== "auto" && this.requestedBackend !== "rapier") {
54
+ // Reached from JavaScript callers and from code compiled against 1.5.x, where
55
+ // `"aura-js"` was a selectable backend. Failing loudly is the point: the previous
56
+ // behaviour of that string was "quietly run a different solver".
57
+ throw new Error(`Unknown physics backend '${String(this.requestedBackend)}'. Aura3D 2.0 has one ` +
58
+ "production solver, 'rapier'; the legacy 'aura-js' and 'cannon-es' backends were removed " +
59
+ "(see docs/architecture/physics-backend-decision.md). Omit `backend` or pass " +
60
+ "'rapier'.");
61
+ }
55
62
  this.backendSelection = {
56
63
  requested: this.requestedBackend,
57
- active: this.requestedBackend === "aura-js" ? "aura-js" : "cannon-es",
64
+ active: "rapier",
58
65
  deterministic: true,
59
- jsFallbackAvailable: true,
60
66
  continuousCollision: this.continuousCollisionSelection(true)
61
67
  };
62
- if (this.backendSelection.active === "cannon-es") {
63
- this.cannonWorld = new CannonWorld({
64
- gravity: toCannonVec3(this.gravity),
65
- allowSleep: this.enableSleeping
66
- });
67
- this.cannonWorld.solver.iterations = this.solverIterations;
68
- this.cannonWorld.defaultContactMaterial.friction = 0.5;
69
- this.cannonWorld.defaultContactMaterial.restitution = 0;
70
- }
68
+ this.rapierWorld = createRapierPhysicsSync({ gravity: this.gravity });
69
+ this.rapierWorld.unsafeRapierWorld().integrationParameters.numSolverIterations = this.solverIterations;
71
70
  }
72
71
  createRigidBody(descriptor = {}) {
73
72
  const body = new RigidBody(this.nextBodyId, descriptor);
74
73
  this.nextBodyId += 1;
75
74
  this.bodiesById.set(body.id, body);
76
75
  this.bodyColliders.set(body.id, new Set());
77
- const cannonBody = this.createCannonBody(body);
78
- if (cannonBody) {
79
- this.cannonBodiesByAuraId.set(body.id, cannonBody);
80
- this.cannonWorld?.addBody(cannonBody);
81
- }
76
+ const rapierBody = this.rapierWorld.createRigidBody({
77
+ type: body.type === "static" ? "fixed" : body.type === "kinematic" ? "kinematic-position" : "dynamic",
78
+ position: body.position,
79
+ rotation: body.rotation,
80
+ linearVelocity: body.velocity,
81
+ angularVelocity: body.angularVelocity,
82
+ linearDamping: body.linearDamping,
83
+ angularDamping: body.angularDamping,
84
+ ccd: body.type === "dynamic",
85
+ canSleep: this.enableSleeping,
86
+ ...(body.type === "dynamic" ? { mass: body.mass } : {}),
87
+ ...(body.declaredInertia ? { principalAngularInertia: body.declaredInertia } : {})
88
+ });
89
+ if (body.sleeping)
90
+ rapierBody.sleep();
91
+ this.rapierBodiesByAuraId.set(body.id, rapierBody);
82
92
  return body;
83
93
  }
84
94
  createCollider(body, descriptor) {
@@ -90,7 +100,18 @@ export class PhysicsWorld {
90
100
  this.nextColliderId += 1;
91
101
  this.collidersById.set(collider.id, collider);
92
102
  this.bodyColliders.get(bodyId)?.add(collider.id);
93
- this.addCannonCollider(collider);
103
+ const rapierBody = this.rapierBodiesByAuraId.get(bodyId);
104
+ if (!rapierBody)
105
+ throw new Error(`Missing Rapier body for Aura body ${bodyId}.`);
106
+ const rapierCollider = this.rapierWorld.createCollider(rapierBody, {
107
+ shape: collider.shape,
108
+ density: 0,
109
+ friction: collider.material.friction,
110
+ restitution: collider.material.restitution,
111
+ sensor: collider.sensor,
112
+ collisionGroups: encodeRapierCollisionGroups(collider.filter.layer, collider.filter.mask)
113
+ });
114
+ this.rapierCollidersByAuraId.set(collider.id, rapierCollider);
94
115
  return collider;
95
116
  }
96
117
  createConstraint(descriptor) {
@@ -99,8 +120,23 @@ export class PhysicsWorld {
99
120
  }
100
121
  const constraint = new Constraint(descriptor);
101
122
  this.constraintsList.push(constraint);
123
+ this.rapierJointsByConstraint.set(constraint, this.createRapierJoint(constraint));
102
124
  return constraint;
103
125
  }
126
+ /**
127
+ * Change world gravity after construction.
128
+ *
129
+ * Needed for anything that flips or scales gravity at runtime — a low-gravity level, a
130
+ * zero-g section, a game that inverts it as a mechanic. Without a setter the only way to
131
+ * change it was to rebuild the world and lose every body.
132
+ */
133
+ setGravity(gravity) {
134
+ validateFiniteVec3(gravity, "world gravity");
135
+ this.gravity[0] = gravity[0];
136
+ this.gravity[1] = gravity[1];
137
+ this.gravity[2] = gravity[2];
138
+ this.rapierWorld.setGravity(this.gravity);
139
+ }
104
140
  getBody(id) {
105
141
  return this.bodiesById.get(id);
106
142
  }
@@ -129,14 +165,18 @@ export class PhysicsWorld {
129
165
  }
130
166
  this.bodyColliders.delete(id);
131
167
  this.bodiesById.delete(id);
132
- const cannonBody = this.cannonBodiesByAuraId.get(id);
133
- if (cannonBody) {
134
- this.cannonWorld?.removeBody(cannonBody);
135
- this.cannonBodiesByAuraId.delete(id);
168
+ const rapierBody = this.rapierBodiesByAuraId.get(id);
169
+ if (rapierBody) {
170
+ this.rapierWorld.removeBody(rapierBody);
171
+ this.rapierBodiesByAuraId.delete(id);
136
172
  }
137
173
  for (let index = this.constraintsList.length - 1; index >= 0; index -= 1) {
138
174
  const constraint = this.constraintsList[index];
139
175
  if (constraint.bodyA.id === id || constraint.bodyB.id === id) {
176
+ const joint = this.rapierJointsByConstraint.get(constraint);
177
+ if (joint)
178
+ joint.remove();
179
+ this.rapierJointsByConstraint.delete(constraint);
140
180
  this.constraintsList.splice(index, 1);
141
181
  }
142
182
  }
@@ -148,6 +188,10 @@ export class PhysicsWorld {
148
188
  }
149
189
  this.bodyColliders.get(collider.bodyId)?.delete(id);
150
190
  this.collidersById.delete(id);
191
+ const rapierCollider = this.rapierCollidersByAuraId.get(id);
192
+ if (rapierCollider)
193
+ rapierCollider.remove();
194
+ this.rapierCollidersByAuraId.delete(id);
151
195
  const removalEvents = this.eventQueue.removeCollider(id);
152
196
  if (removalEvents.length > 0) {
153
197
  this.lastEvents = [...this.lastEvents, ...removalEvents].sort((a, b) => a.pairKey.localeCompare(b.pairKey) || a.type.localeCompare(b.type));
@@ -157,51 +201,7 @@ export class PhysicsWorld {
157
201
  if (!Number.isFinite(dt) || dt <= 0) {
158
202
  throw new Error("PhysicsWorld.step dt must be finite and positive.");
159
203
  }
160
- if (this.cannonWorld) {
161
- return this.stepCannon(dt);
162
- }
163
- const continuousStep = this.planContinuousCollisionStep(dt);
164
- this.lastContinuousCollisionStep = continuousStep;
165
- this.assertContinuousCollisionPlan(continuousStep);
166
- const subDelta = dt / continuousStep.subSteps;
167
- const outerStepTransforms = new Map(this.bodies().map((body) => [
168
- body.id,
169
- {
170
- position: cloneVec3(body.position),
171
- rotation: [...body.rotation]
172
- }
173
- ]));
174
- let contacts = [];
175
- for (let subStep = 0; subStep < continuousStep.subSteps; subStep += 1) {
176
- for (const body of this.bodyValues()) {
177
- body.integrate(subDelta, this.gravity, false);
178
- }
179
- for (const constraint of this.constraintsList) {
180
- constraint.solve();
181
- }
182
- const contactImpulses = new Map();
183
- for (let i = 0; i < this.solverIterations; i += 1) {
184
- contacts = this.detectContacts();
185
- for (const contact of contacts) {
186
- this.resolveContact(contact, contactImpulses);
187
- }
188
- for (const constraint of this.constraintsList) {
189
- constraint.solve();
190
- }
191
- }
192
- }
193
- for (const body of this.bodyValues()) {
194
- body.clearForces();
195
- const outerTransform = outerStepTransforms.get(body.id);
196
- if (outerTransform) {
197
- body.previousPosition = outerTransform.position;
198
- body.previousRotation = outerTransform.rotation;
199
- }
200
- }
201
- this.lastEvents = this.eventQueue.update(contacts);
202
- this.updateSleeping(dt, contacts);
203
- this.steps += 1;
204
- return this.lastEvents;
204
+ return this.stepProduction(dt);
205
205
  }
206
206
  drainEvents() {
207
207
  const events = this.lastEvents;
@@ -220,6 +220,9 @@ export class PhysicsWorld {
220
220
  if (!body) {
221
221
  continue;
222
222
  }
223
+ if (options.ignoreColliders?.includes(collider.id) || options.ignoreBodies?.includes(collider.bodyId)) {
224
+ continue;
225
+ }
223
226
  const hit = raycastCollider(origin, normalized, collider, body, options);
224
227
  if (hit) {
225
228
  hits.push(hit);
@@ -239,6 +242,9 @@ export class PhysicsWorld {
239
242
  if (!body) {
240
243
  continue;
241
244
  }
245
+ if (options.ignoreColliders?.includes(collider.id) || options.ignoreBodies?.includes(collider.bodyId)) {
246
+ continue;
247
+ }
242
248
  const hit = sphereCastCollider(origin, radius, normalized, collider, body, options);
243
249
  if (hit) {
244
250
  hits.push(hit);
@@ -276,15 +282,61 @@ export class PhysicsWorld {
276
282
  }
277
283
  };
278
284
  }
285
+ /** Release the selected native solver and every world-owned handle. Idempotent. */
286
+ dispose() {
287
+ this.rapierWorld.dispose();
288
+ this.rapierJointsByConstraint.clear();
289
+ this.rapierCollidersByAuraId.clear();
290
+ this.rapierBodiesByAuraId.clear();
291
+ this.constraintsList.length = 0;
292
+ this.collidersById.clear();
293
+ this.bodiesById.clear();
294
+ this.bodyColliders.clear();
295
+ this.lastEvents = [];
296
+ }
279
297
  detectContacts() {
280
298
  const potentialPairs = this.collectPotentialPairs();
281
299
  this.lastBroadphasePairs = potentialPairs.length;
282
300
  const contacts = [];
283
301
  for (const [a, bodyA, b, bodyB] of potentialPairs) {
284
- const contact = buildContact(a, bodyA, b, bodyB);
285
- if (contact) {
286
- contacts.push(contact);
302
+ const colliderA = this.rapierCollidersByAuraId.get(a.id)?.unsafeRapierCollider();
303
+ const colliderB = this.rapierCollidersByAuraId.get(b.id)?.unsafeRapierCollider();
304
+ if (!colliderA || !colliderB)
305
+ continue;
306
+ if (a.sensor || b.sensor) {
307
+ if (!this.rapierWorld.unsafeRapierWorld().intersectionPair(colliderA, colliderB))
308
+ continue;
309
+ const separation = subVec3(bodyB.position, bodyA.position);
310
+ const normal = lengthVec3(separation) > 1e-9 ? normalizeVec3(separation) : [0, 1, 0];
311
+ contacts.push({ colliderA: a.id, colliderB: b.id, bodyA: bodyA.id, bodyB: bodyB.id, normal, penetration: 0, sensor: true });
312
+ continue;
287
313
  }
314
+ let best;
315
+ this.rapierWorld.unsafeRapierWorld().contactPair(colliderA, colliderB, (manifold, flipped) => {
316
+ const normalValue = manifold.normal();
317
+ const direction = flipped ? -1 : 1;
318
+ const normal = [normalValue.x * direction, normalValue.y * direction, normalValue.z * direction];
319
+ const count = Math.max(manifold.numSolverContacts(), manifold.numContacts());
320
+ for (let index = 0; index < count; index += 1) {
321
+ const distance = index < manifold.numSolverContacts() ? manifold.solverContactDist(index) : manifold.contactDist(index);
322
+ const penetration = Math.max(0, -distance);
323
+ const pointValue = index < manifold.numSolverContacts() ? manifold.solverContactPoint(index) : undefined;
324
+ const candidate = {
325
+ colliderA: a.id,
326
+ colliderB: b.id,
327
+ bodyA: bodyA.id,
328
+ bodyB: bodyB.id,
329
+ normal,
330
+ penetration,
331
+ ...(pointValue ? { point: [pointValue.x, pointValue.y, pointValue.z] } : {}),
332
+ sensor: false
333
+ };
334
+ if (!best || candidate.penetration > best.penetration)
335
+ best = candidate;
336
+ }
337
+ });
338
+ if (best)
339
+ contacts.push(best);
288
340
  }
289
341
  contacts.sort((a, b) => a.colliderA - b.colliderA || a.colliderB - b.colliderB);
290
342
  return contacts;
@@ -345,203 +397,88 @@ export class PhysicsWorld {
345
397
  this.lastBroadphaseProfile = profile;
346
398
  return pairs;
347
399
  }
348
- resolveContact(contact, contactImpulses) {
349
- if (contact.sensor) {
350
- return;
351
- }
352
- const bodyA = this.bodiesById.get(contact.bodyA);
353
- const bodyB = this.bodiesById.get(contact.bodyB);
354
- if (!bodyA || !bodyB) {
355
- return;
356
- }
357
- const invMassSum = bodyA.inverseMass + bodyB.inverseMass;
358
- if (invMassSum <= 0) {
359
- return;
360
- }
361
- const correction = scaleVec3(contact.normal, contact.penetration / invMassSum);
362
- if (bodyA.inverseMass > 0) {
363
- bodyA.position = [bodyA.position[0] - correction[0] * bodyA.inverseMass, bodyA.position[1] - correction[1] * bodyA.inverseMass, bodyA.position[2] - correction[2] * bodyA.inverseMass];
364
- }
365
- if (bodyB.inverseMass > 0) {
366
- bodyB.position = [bodyB.position[0] + correction[0] * bodyB.inverseMass, bodyB.position[1] + correction[1] * bodyB.inverseMass, bodyB.position[2] + correction[2] * bodyB.inverseMass];
367
- }
368
- const relativeVelocity = relativeContactVelocity(bodyA, bodyB, contact.point);
369
- const velocityAlongNormal = dotVec3(relativeVelocity, contact.normal);
370
- const materialA = this.effectiveMaterial(bodyA, contact.colliderA);
371
- const materialB = this.effectiveMaterial(bodyB, contact.colliderB);
372
- const restitution = Math.max(materialA.restitution, materialB.restitution);
373
- const pairKey = `${contact.colliderA}:${contact.colliderB}`;
374
- const impulseState = contactImpulses.get(pairKey) ?? { normal: 0, tangent: [0, 0, 0] };
375
- let normalImpulseMagnitude = 0;
376
- if (velocityAlongNormal <= 0) {
377
- const normalDenominator = contactImpulseDenominator(bodyA, bodyB, contact.normal, contact.point);
378
- normalImpulseMagnitude = normalDenominator > 0 ? -(1 + restitution) * velocityAlongNormal / normalDenominator : 0;
379
- impulseState.normal += normalImpulseMagnitude;
380
- this.applyImpulsePair(bodyA, bodyB, scaleVec3(contact.normal, normalImpulseMagnitude), contact.point);
381
- }
382
- const updatedRelativeVelocity = relativeContactVelocity(bodyA, bodyB, contact.point);
383
- const updatedNormalVelocity = dotVec3(updatedRelativeVelocity, contact.normal);
384
- const tangentVelocity = subVec3(updatedRelativeVelocity, scaleVec3(contact.normal, updatedNormalVelocity));
385
- const tangentSpeed = Math.hypot(tangentVelocity[0], tangentVelocity[1], tangentVelocity[2]);
386
- if (tangentSpeed > 1e-9) {
387
- const friction = Math.sqrt(Math.max(0, materialA.friction) * Math.max(0, materialB.friction));
388
- const tangent = scaleVec3(tangentVelocity, 1 / tangentSpeed);
389
- const tangentDenominator = contactImpulseDenominator(bodyA, bodyB, tangent, contact.point);
390
- const targetImpulse = tangentDenominator > 0 ? scaleVec3(tangentVelocity, -1 / tangentDenominator) : [0, 0, 0];
391
- const proposedTangent = [
392
- impulseState.tangent[0] + targetImpulse[0],
393
- impulseState.tangent[1] + targetImpulse[1],
394
- impulseState.tangent[2] + targetImpulse[2]
395
- ];
396
- const proposedMagnitude = lengthVec3(proposedTangent);
397
- const maxFriction = friction * impulseState.normal;
398
- const accumulatedTangent = proposedMagnitude > maxFriction && proposedMagnitude > 0
399
- ? scaleVec3(proposedTangent, maxFriction / proposedMagnitude)
400
- : proposedTangent;
401
- const frictionImpulse = subVec3(accumulatedTangent, impulseState.tangent);
402
- impulseState.tangent = accumulatedTangent;
403
- if (lengthVec3(frictionImpulse) > 0) {
404
- this.applyImpulsePair(bodyA, bodyB, frictionImpulse, contact.point);
405
- }
406
- }
407
- contactImpulses.set(pairKey, impulseState);
408
- }
409
- effectiveMaterial(body, colliderId) {
410
- const collider = this.collidersById.get(colliderId);
411
- return {
412
- restitution: Math.max(body.restitution, collider?.material.restitution ?? 0),
413
- friction: Math.max(body.friction, collider?.material.friction ?? 0)
414
- };
415
- }
416
- applyImpulsePair(bodyA, bodyB, impulse, point) {
417
- if (bodyA.inverseMass > 0) {
418
- if (point)
419
- bodyA.applyContactImpulseAtPoint(scaleVec3(impulse, -1), point);
420
- else
421
- bodyA.velocity = [bodyA.velocity[0] - impulse[0] * bodyA.inverseMass, bodyA.velocity[1] - impulse[1] * bodyA.inverseMass, bodyA.velocity[2] - impulse[2] * bodyA.inverseMass];
422
- if (bodyA.sleeping && bodyA.speedSquared() > this.sleepVelocityThreshold * this.sleepVelocityThreshold) {
423
- bodyA.wake();
400
+ createRapierJoint(constraint) {
401
+ const bodyA = this.rapierBodiesByAuraId.get(constraint.bodyA.id);
402
+ const bodyB = this.rapierBodiesByAuraId.get(constraint.bodyB.id);
403
+ if (!bodyA || !bodyB)
404
+ throw new Error("Cannot create a Rapier joint for missing bodies.");
405
+ return this.rapierWorld.createJoint({
406
+ type: constraint.type,
407
+ localAnchorA: constraint.type === "fixed"
408
+ && constraint.localAnchorA.every((value) => value === 0)
409
+ && constraint.localAnchorB.every((value) => value === 0)
410
+ ? constraint.restOffset
411
+ : constraint.localAnchorA,
412
+ localAnchorB: constraint.localAnchorB,
413
+ axis: constraint.axis,
414
+ restLength: constraint.restLength,
415
+ stiffness: constraint.stiffness,
416
+ damping: constraint.damping,
417
+ motorSpeed: constraint.motorSpeed(),
418
+ maxMotorTorque: Number.isFinite(constraint.maxMotorTorque) ? constraint.maxMotorTorque : Number.MAX_VALUE,
419
+ ...(constraint.limits ? { limits: constraint.limits } : {})
420
+ }, bodyA, bodyB);
421
+ }
422
+ synchronizeRapierJoints() {
423
+ for (const constraint of this.constraintsList) {
424
+ const existing = this.rapierJointsByConstraint.get(constraint);
425
+ if (!constraint.isEnabled()) {
426
+ if (existing)
427
+ existing.remove();
428
+ this.rapierJointsByConstraint.delete(constraint);
429
+ continue;
424
430
  }
425
- }
426
- if (bodyB.inverseMass > 0) {
427
- if (point)
428
- bodyB.applyContactImpulseAtPoint(impulse, point);
429
- else
430
- bodyB.velocity = [bodyB.velocity[0] + impulse[0] * bodyB.inverseMass, bodyB.velocity[1] + impulse[1] * bodyB.inverseMass, bodyB.velocity[2] + impulse[2] * bodyB.inverseMass];
431
- if (bodyB.sleeping && bodyB.speedSquared() > this.sleepVelocityThreshold * this.sleepVelocityThreshold) {
432
- bodyB.wake();
431
+ const joint = existing ?? this.createRapierJoint(constraint);
432
+ this.rapierJointsByConstraint.set(constraint, joint);
433
+ if (constraint.type === "motorised-hinge") {
434
+ joint.configureMotor(constraint.motorSpeed(), Number.isFinite(constraint.maxMotorTorque) ? constraint.maxMotorTorque : Number.MAX_VALUE);
433
435
  }
434
436
  }
435
437
  }
436
- updateSleeping(dt, contacts) {
437
- if (!this.enableSleeping) {
438
- return;
439
- }
440
- const contactBodyIds = new Set();
441
- for (const contact of contacts) {
442
- if (!contact.sensor) {
443
- contactBodyIds.add(contact.bodyA);
444
- contactBodyIds.add(contact.bodyB);
445
- }
446
- }
447
- const gravityMagnitudeSquared = dotVec3(this.gravity, this.gravity);
448
- const thresholdSquared = this.sleepVelocityThreshold * this.sleepVelocityThreshold;
438
+ stepProduction(dt) {
439
+ this.rapierWorld.setGravity(this.gravity);
440
+ const stepForces = new Map();
449
441
  for (const body of this.bodyValues()) {
450
- if (body.type !== "dynamic") {
442
+ const rapierBody = this.rapierBodiesByAuraId.get(body.id);
443
+ if (!rapierBody)
451
444
  continue;
445
+ const force = body.pendingForce();
446
+ const torque = body.pendingTorque();
447
+ if (force[0] !== 0 || force[1] !== 0 || force[2] !== 0 || torque[0] !== 0 || torque[1] !== 0 || torque[2] !== 0) {
448
+ stepForces.set(body.id, { force, torque });
449
+ body.clearForces();
452
450
  }
453
- if (body.speedSquared() > thresholdSquared) {
454
- body.resetSleepTimer();
455
- continue;
456
- }
457
- const supportedOrUnaccelerated = contactBodyIds.has(body.id) || gravityMagnitudeSquared <= thresholdSquared;
458
- if (!supportedOrUnaccelerated) {
459
- body.resetSleepTimer();
460
- continue;
461
- }
462
- if (body.accumulateSleepTime(dt) >= this.sleepDelay) {
463
- body.sleep();
464
- }
465
- }
466
- }
467
- createCannonBody(body) {
468
- if (!this.cannonWorld)
469
- return undefined;
470
- const cannonBody = new CannonBody({
471
- type: body.type === "static" ? CannonBody.STATIC : body.type === "kinematic" ? CannonBody.KINEMATIC : CannonBody.DYNAMIC,
472
- mass: body.type === "dynamic" ? body.mass : 0,
473
- position: toCannonVec3(body.position),
474
- velocity: toCannonVec3(body.velocity),
475
- quaternion: new CannonQuaternion(body.rotation[0], body.rotation[1], body.rotation[2], body.rotation[3]),
476
- angularVelocity: toCannonVec3(body.angularVelocity),
477
- linearDamping: body.linearDamping,
478
- angularDamping: body.angularDamping,
479
- allowSleep: this.enableSleeping,
480
- sleepSpeedLimit: this.sleepVelocityThreshold,
481
- sleepTimeLimit: this.sleepDelay
482
- });
483
- if (body.sleeping)
484
- cannonBody.sleep();
485
- return cannonBody;
486
- }
487
- addCannonCollider(collider) {
488
- if (!this.cannonWorld)
489
- return;
490
- const body = this.bodiesById.get(collider.bodyId);
491
- const cannonBody = this.cannonBodiesByAuraId.get(collider.bodyId);
492
- if (!body || !cannonBody)
493
- return;
494
- const resolved = toCannonShape(collider.shape);
495
- if (!resolved) {
496
- this.disableCannonBackend(`unsupported shape '${collider.shape.kind}'`);
497
- return;
498
- }
499
- cannonBody.collisionFilterGroup = collider.filter.layer;
500
- cannonBody.collisionFilterMask = collider.filter.mask;
501
- cannonBody.isTrigger = cannonBody.isTrigger || collider.sensor;
502
- cannonBody.addShape(resolved.shape, resolved.offset, resolved.orientation);
503
- cannonBody.updateMassProperties();
504
- syncCannonFromAura(body, cannonBody);
505
- }
506
- disableCannonBackend(reason) {
507
- if (!this.cannonWorld)
508
- return;
509
- this.cannonWorld = undefined;
510
- this.cannonBodiesByAuraId.clear();
511
- this.backendSelection = {
512
- requested: this.requestedBackend,
513
- active: "aura-js",
514
- fallback: reason,
515
- deterministic: true,
516
- jsFallbackAvailable: true,
517
- continuousCollision: this.continuousCollisionSelection(true)
518
- };
519
- }
520
- stepCannon(dt) {
521
- if (!this.cannonWorld)
522
- return [];
523
- this.cannonWorld.gravity.copy(toCannonVec3(this.gravity));
524
- for (const body of this.bodyValues()) {
525
- const cannonBody = this.cannonBodiesByAuraId.get(body.id);
526
- if (cannonBody)
527
- syncCannonFromAura(body, cannonBody);
451
+ syncRapierFromAura(body, rapierBody);
528
452
  }
453
+ this.synchronizeRapierJoints();
529
454
  const continuousStep = this.planContinuousCollisionStep(dt);
530
455
  this.lastContinuousCollisionStep = continuousStep;
531
456
  this.assertContinuousCollisionPlan(continuousStep);
532
- const subSteps = continuousStep.subSteps;
533
- const subDelta = dt / subSteps;
534
- for (let index = 0; index < subSteps; index += 1) {
535
- this.cannonWorld.step(subDelta);
457
+ const subDelta = dt / continuousStep.subSteps;
458
+ for (let index = 0; index < continuousStep.subSteps; index += 1) {
459
+ for (const [bodyId, pending] of stepForces) {
460
+ const raw = this.rapierBodiesByAuraId.get(bodyId)?.unsafeRapierBody();
461
+ if (!raw)
462
+ continue;
463
+ raw.resetForces(false);
464
+ raw.resetTorques(false);
465
+ raw.addForce(toRapierVector(pending.force), true);
466
+ raw.addTorque(toRapierVector(pending.torque), true);
467
+ }
468
+ this.rapierWorld.step(subDelta);
469
+ }
470
+ for (const bodyId of stepForces.keys()) {
471
+ const raw = this.rapierBodiesByAuraId.get(bodyId)?.unsafeRapierBody();
472
+ raw?.resetForces(false);
473
+ raw?.resetTorques(false);
536
474
  }
537
475
  for (const body of this.bodyValues()) {
538
- const cannonBody = this.cannonBodiesByAuraId.get(body.id);
539
- if (cannonBody)
540
- syncAuraFromCannon(cannonBody, body);
476
+ const rapierBody = this.rapierBodiesByAuraId.get(body.id);
477
+ if (rapierBody)
478
+ syncAuraFromRapier(rapierBody, body);
541
479
  }
542
480
  const contacts = this.detectContacts();
543
481
  this.lastEvents = this.eventQueue.update(contacts);
544
- this.updateSleeping(dt, contacts);
545
482
  this.steps += 1;
546
483
  return this.lastEvents;
547
484
  }
@@ -638,7 +575,7 @@ export class PhysicsWorld {
638
575
  return {
639
576
  active,
640
577
  mode: active ? "adaptive-substeps" : "disabled",
641
- provider: active ? "aura3d-adaptive-substep-wrapper" : "none",
578
+ provider: active ? "rapier-native-ccd+adaptive-substeps" : "none",
642
579
  maxSubSteps: this.continuousCollision.maxSubSteps,
643
580
  motionThreshold: this.continuousCollision.motionThreshold,
644
581
  onSubstepLimit: this.continuousCollision.onSubstepLimit,
@@ -707,48 +644,40 @@ function colliderBoundingRadius(shape) {
707
644
  }
708
645
  return 0;
709
646
  }
710
- function toCannonVec3(value) {
711
- return new CannonVec3(value[0], value[1], value[2]);
712
- }
713
- function fromCannonVec3(value) {
714
- return [value.x, value.y, value.z];
715
- }
716
- function syncCannonFromAura(body, cannonBody) {
717
- cannonBody.position.set(body.position[0], body.position[1], body.position[2]);
718
- cannonBody.velocity.set(body.velocity[0], body.velocity[1], body.velocity[2]);
719
- cannonBody.quaternion.set(body.rotation[0], body.rotation[1], body.rotation[2], body.rotation[3]);
720
- cannonBody.angularVelocity.set(body.angularVelocity[0], body.angularVelocity[1], body.angularVelocity[2]);
647
+ function toRapierVector(value) {
648
+ return { x: value[0], y: value[1], z: value[2] };
649
+ }
650
+ function encodeRapierCollisionGroups(layer, mask) {
651
+ return (((layer & 0xffff) << 16) | (mask & 0xffff)) >>> 0;
652
+ }
653
+ /** Mirror the public Aura body state onto its sole physical-simulation owner. */
654
+ function syncRapierFromAura(body, rapierBody) {
655
+ const raw = rapierBody.unsafeRapierBody();
656
+ raw.setTranslation(toRapierVector(body.position), false);
657
+ raw.setRotation({ x: body.rotation[0], y: body.rotation[1], z: body.rotation[2], w: body.rotation[3] }, false);
658
+ raw.setLinvel(toRapierVector(body.velocity), false);
659
+ raw.setAngvel(toRapierVector(body.angularVelocity), false);
660
+ raw.setLinearDamping(body.linearDamping);
661
+ raw.setAngularDamping(body.angularDamping);
721
662
  if (body.sleeping)
722
- cannonBody.sleep();
723
- else
724
- cannonBody.wakeUp();
725
- }
726
- function syncAuraFromCannon(cannonBody, body) {
663
+ raw.sleep();
664
+ else if (raw.isSleeping())
665
+ raw.wakeUp();
666
+ }
667
+ /** Publish Rapier's solved transform and velocity through the stable Aura wrapper. */
668
+ function syncAuraFromRapier(rapierBody, body) {
669
+ const raw = rapierBody.unsafeRapierBody();
670
+ const position = raw.translation();
671
+ const rotation = raw.rotation();
672
+ const velocity = raw.linvel();
673
+ const angularVelocity = raw.angvel();
727
674
  body.previousPosition = cloneVec3(body.position);
728
675
  body.previousRotation = [body.rotation[0], body.rotation[1], body.rotation[2], body.rotation[3]];
729
- body.position = fromCannonVec3(cannonBody.position);
730
- body.velocity = fromCannonVec3(cannonBody.velocity);
731
- body.angularVelocity = fromCannonVec3(cannonBody.angularVelocity);
732
- body.rotation = [cannonBody.quaternion.x, cannonBody.quaternion.y, cannonBody.quaternion.z, cannonBody.quaternion.w];
733
- body.sleeping = cannonBody.sleepState === CannonBody.SLEEPING;
734
- }
735
- function toCannonShape(shape) {
736
- if (shape.kind === "box")
737
- return { shape: new CannonBox(toCannonVec3(shape.halfExtents)) };
738
- if (shape.kind === "sphere")
739
- return { shape: new CannonSphere(shape.radius) };
740
- if (shape.kind === "capsule")
741
- return { shape: new CannonCylinder(shape.radius, shape.radius, shape.halfHeight * 2 + shape.radius * 2, 12) };
742
- if (shape.kind === "plane") {
743
- const orientation = new CannonQuaternion();
744
- orientation.setFromVectors(new CannonVec3(0, 0, 1), toCannonVec3(shape.normal));
745
- return {
746
- shape: new CannonPlane(),
747
- offset: toCannonVec3(scaleVec3(shape.normal, shape.constant)),
748
- orientation
749
- };
750
- }
751
- return undefined;
676
+ body.position = [position.x, position.y, position.z];
677
+ body.rotation = [rotation.x, rotation.y, rotation.z, rotation.w];
678
+ body.velocity = [velocity.x, velocity.y, velocity.z];
679
+ body.angularVelocity = [angularVelocity.x, angularVelocity.y, angularVelocity.z];
680
+ body.sleeping = raw.isSleeping();
752
681
  }
753
682
  function totalKineticEnergy(bodies) {
754
683
  let total = 0;
@@ -765,31 +694,6 @@ function totalKineticEnergy(bodies) {
765
694
  }
766
695
  return total;
767
696
  }
768
- function relativeContactVelocity(bodyA, bodyB, point) {
769
- if (!point)
770
- return subVec3(bodyB.velocity, bodyA.velocity);
771
- const radiusA = subVec3(point, bodyA.position);
772
- const radiusB = subVec3(point, bodyB.position);
773
- const velocityA = addVectors(bodyA.velocity, crossVectors(bodyA.angularVelocity, radiusA));
774
- const velocityB = addVectors(bodyB.velocity, crossVectors(bodyB.angularVelocity, radiusB));
775
- return subVec3(velocityB, velocityA);
776
- }
777
- function contactImpulseDenominator(bodyA, bodyB, direction, point) {
778
- let denominator = bodyA.inverseMass + bodyB.inverseMass;
779
- if (!point)
780
- return denominator;
781
- if (bodyA.inverseMass > 0) {
782
- const radius = subVec3(point, bodyA.position);
783
- const angular = bodyA.multiplyInverseInertiaWorld(crossVectors(radius, direction));
784
- denominator += dotVec3(direction, crossVectors(angular, radius));
785
- }
786
- if (bodyB.inverseMass > 0) {
787
- const radius = subVec3(point, bodyB.position);
788
- const angular = bodyB.multiplyInverseInertiaWorld(crossVectors(radius, direction));
789
- denominator += dotVec3(direction, crossVectors(angular, radius));
790
- }
791
- return denominator;
792
- }
793
697
  function addVectors(a, b) {
794
698
  return [a[0] + b[0], a[1] + b[1], a[2] + b[2]];
795
699
  }
@@ -837,307 +741,4 @@ function pushPotentialPair(pairs, seen, a, b) {
837
741
  seen.add(key);
838
742
  pairs.push([first.collider, first.body, second.collider, second.body]);
839
743
  }
840
- function buildContact(a, bodyA, b, bodyB) {
841
- const ab = subVec3(bodyB.position, bodyA.position);
842
- if (a.shape.kind === "plane" || b.shape.kind === "plane") {
843
- const planeCollider = a.shape.kind === "plane" ? a : b;
844
- const planeBody = a.shape.kind === "plane" ? bodyA : bodyB;
845
- const otherCollider = a.shape.kind === "plane" ? b : a;
846
- const otherBody = a.shape.kind === "plane" ? bodyB : bodyA;
847
- if (planeCollider.shape.kind !== "plane") {
848
- return undefined;
849
- }
850
- const radius = supportRadius(otherCollider);
851
- const signedDistance = dotVec3(planeCollider.shape.normal, otherBody.position) + planeCollider.shape.constant + dotVec3(planeCollider.shape.normal, planeBody.position);
852
- if (signedDistance > radius) {
853
- return undefined;
854
- }
855
- const normal = a.shape.kind === "plane" ? planeCollider.shape.normal : scaleVec3(planeCollider.shape.normal, -1);
856
- return {
857
- colliderA: a.id,
858
- colliderB: b.id,
859
- bodyA: bodyA.id,
860
- bodyB: bodyB.id,
861
- normal,
862
- penetration: radius - signedDistance,
863
- sensor: a.sensor || b.sensor
864
- };
865
- }
866
- if (a.shape.kind === "sphere" && b.shape.kind === "sphere") {
867
- const distance = Math.hypot(ab[0], ab[1], ab[2]);
868
- const radiusSum = a.shape.radius + b.shape.radius;
869
- if (distance >= radiusSum) {
870
- return undefined;
871
- }
872
- return {
873
- colliderA: a.id,
874
- colliderB: b.id,
875
- bodyA: bodyA.id,
876
- bodyB: bodyB.id,
877
- normal: distance > 1e-9 ? [ab[0] / distance, ab[1] / distance, ab[2] / distance] : [1, 0, 0],
878
- penetration: radiusSum - distance,
879
- sensor: a.sensor || b.sensor
880
- };
881
- }
882
- if ((a.shape.kind === "sphere" && b.shape.kind === "box") || (a.shape.kind === "box" && b.shape.kind === "sphere")) {
883
- return buildSphereBoxContact(a, bodyA, b, bodyB);
884
- }
885
- if ((a.shape.kind === "capsule" && b.shape.kind === "sphere") || (a.shape.kind === "sphere" && b.shape.kind === "capsule")) {
886
- return buildCapsuleSphereContact(a, bodyA, b, bodyB);
887
- }
888
- if ((a.shape.kind === "capsule" && b.shape.kind === "box") || (a.shape.kind === "box" && b.shape.kind === "capsule")) {
889
- return buildCapsuleBoxContact(a, bodyA, b, bodyB);
890
- }
891
- if (a.shape.kind === "capsule" && b.shape.kind === "capsule") {
892
- return buildCapsuleCapsuleContact(a, bodyA, b, bodyB);
893
- }
894
- const nativeContact = buildNativeNarrowPhaseContact(a, bodyA, b, bodyB);
895
- if (nativeContact) {
896
- return {
897
- colliderA: a.id,
898
- colliderB: b.id,
899
- bodyA: bodyA.id,
900
- bodyB: bodyB.id,
901
- normal: nativeContact.normal,
902
- penetration: nativeContact.penetration,
903
- point: nativeContact.point,
904
- sensor: a.sensor || b.sensor
905
- };
906
- }
907
- const boundsA = a.bounds(bodyA.position);
908
- const boundsB = b.bounds(bodyB.position);
909
- const overlapX = Math.min(boundsA.max[0] - boundsB.min[0], boundsB.max[0] - boundsA.min[0]);
910
- const overlapY = Math.min(boundsA.max[1] - boundsB.min[1], boundsB.max[1] - boundsA.min[1]);
911
- const overlapZ = Math.min(boundsA.max[2] - boundsB.min[2], boundsB.max[2] - boundsA.min[2]);
912
- if (overlapX <= 0 || overlapY <= 0 || overlapZ <= 0) {
913
- return undefined;
914
- }
915
- let normal = [Math.sign(ab[0]) || 1, 0, 0];
916
- let penetration = overlapX;
917
- if (overlapY < penetration) {
918
- normal = [0, Math.sign(ab[1]) || 1, 0];
919
- penetration = overlapY;
920
- }
921
- if (overlapZ < penetration) {
922
- normal = [0, 0, Math.sign(ab[2]) || 1];
923
- penetration = overlapZ;
924
- }
925
- return {
926
- colliderA: a.id,
927
- colliderB: b.id,
928
- bodyA: bodyA.id,
929
- bodyB: bodyB.id,
930
- normal,
931
- penetration,
932
- sensor: a.sensor || b.sensor
933
- };
934
- }
935
- function buildSphereBoxContact(a, bodyA, b, bodyB) {
936
- const sphereCollider = a.shape.kind === "sphere" ? a : b;
937
- const sphereBody = a.shape.kind === "sphere" ? bodyA : bodyB;
938
- const boxCollider = a.shape.kind === "box" ? a : b;
939
- const boxBody = a.shape.kind === "box" ? bodyA : bodyB;
940
- if (sphereCollider.shape.kind !== "sphere" || boxCollider.shape.kind !== "box") {
941
- return undefined;
942
- }
943
- const boxBounds = boxCollider.bounds(boxBody.position);
944
- const closest = [
945
- clamp(sphereBody.position[0], boxBounds.min[0], boxBounds.max[0]),
946
- clamp(sphereBody.position[1], boxBounds.min[1], boxBounds.max[1]),
947
- clamp(sphereBody.position[2], boxBounds.min[2], boxBounds.max[2])
948
- ];
949
- const fromBoxToSphere = subVec3(sphereBody.position, closest);
950
- const distance = Math.hypot(fromBoxToSphere[0], fromBoxToSphere[1], fromBoxToSphere[2]);
951
- if (distance >= sphereCollider.shape.radius) {
952
- return undefined;
953
- }
954
- const normalFromBoxToSphere = distance > 1e-9 ? scaleVec3(fromBoxToSphere, 1 / distance) : axisFromBoxCenter(boxBody.position, sphereBody.position, boxCollider.shape.halfExtents);
955
- const normal = a.shape.kind === "box" ? normalFromBoxToSphere : scaleVec3(normalFromBoxToSphere, -1);
956
- return {
957
- colliderA: a.id,
958
- colliderB: b.id,
959
- bodyA: bodyA.id,
960
- bodyB: bodyB.id,
961
- normal,
962
- penetration: sphereCollider.shape.radius - distance,
963
- sensor: a.sensor || b.sensor
964
- };
965
- }
966
- function buildCapsuleSphereContact(a, bodyA, b, bodyB) {
967
- const capsuleCollider = a.shape.kind === "capsule" ? a : b;
968
- const capsuleBody = a.shape.kind === "capsule" ? bodyA : bodyB;
969
- const sphereCollider = a.shape.kind === "sphere" ? a : b;
970
- const sphereBody = a.shape.kind === "sphere" ? bodyA : bodyB;
971
- if (capsuleCollider.shape.kind !== "capsule" || sphereCollider.shape.kind !== "sphere") {
972
- return undefined;
973
- }
974
- const closest = closestPointOnSegment(sphereBody.position, capsuleSegment(capsuleBody.position, capsuleCollider.shape.halfHeight));
975
- const delta = subVec3(sphereBody.position, closest);
976
- const distance = Math.hypot(delta[0], delta[1], delta[2]);
977
- const radiusSum = capsuleCollider.shape.radius + sphereCollider.shape.radius;
978
- if (distance >= radiusSum) {
979
- return undefined;
980
- }
981
- const normalFromCapsuleToSphere = distance > 1e-9 ? scaleVec3(delta, 1 / distance) : [1, 0, 0];
982
- const normal = a.shape.kind === "capsule" ? normalFromCapsuleToSphere : scaleVec3(normalFromCapsuleToSphere, -1);
983
- return {
984
- colliderA: a.id,
985
- colliderB: b.id,
986
- bodyA: bodyA.id,
987
- bodyB: bodyB.id,
988
- normal,
989
- penetration: radiusSum - distance,
990
- sensor: a.sensor || b.sensor
991
- };
992
- }
993
- function buildCapsuleCapsuleContact(a, bodyA, b, bodyB) {
994
- if (a.shape.kind !== "capsule" || b.shape.kind !== "capsule") {
995
- return undefined;
996
- }
997
- const closest = closestPointsBetweenSegments(capsuleSegment(bodyA.position, a.shape.halfHeight), capsuleSegment(bodyB.position, b.shape.halfHeight));
998
- const delta = subVec3(closest.b, closest.a);
999
- const distance = Math.hypot(delta[0], delta[1], delta[2]);
1000
- const radiusSum = a.shape.radius + b.shape.radius;
1001
- if (distance >= radiusSum) {
1002
- return undefined;
1003
- }
1004
- return {
1005
- colliderA: a.id,
1006
- colliderB: b.id,
1007
- bodyA: bodyA.id,
1008
- bodyB: bodyB.id,
1009
- normal: distance > 1e-9 ? scaleVec3(delta, 1 / distance) : [1, 0, 0],
1010
- penetration: radiusSum - distance,
1011
- sensor: a.sensor || b.sensor
1012
- };
1013
- }
1014
- function buildCapsuleBoxContact(a, bodyA, b, bodyB) {
1015
- const capsuleCollider = a.shape.kind === "capsule" ? a : b;
1016
- const capsuleBody = a.shape.kind === "capsule" ? bodyA : bodyB;
1017
- const boxCollider = a.shape.kind === "box" ? a : b;
1018
- const boxBody = a.shape.kind === "box" ? bodyA : bodyB;
1019
- if (capsuleCollider.shape.kind !== "capsule" || boxCollider.shape.kind !== "box") {
1020
- return undefined;
1021
- }
1022
- const bounds = boxCollider.bounds(boxBody.position);
1023
- const closest = closestVerticalSegmentPointToAabb(capsuleBody.position, capsuleCollider.shape.halfHeight, bounds);
1024
- const fromBoxToCapsule = subVec3(closest.segmentPoint, closest.boxPoint);
1025
- const distance = Math.hypot(fromBoxToCapsule[0], fromBoxToCapsule[1], fromBoxToCapsule[2]);
1026
- if (distance >= capsuleCollider.shape.radius) {
1027
- return undefined;
1028
- }
1029
- const normalFromBoxToCapsule = distance > 1e-9 ? scaleVec3(fromBoxToCapsule, 1 / distance) : axisFromBoxCenter(boxBody.position, closest.segmentPoint, boxCollider.shape.halfExtents);
1030
- const normal = a.shape.kind === "box" ? normalFromBoxToCapsule : scaleVec3(normalFromBoxToCapsule, -1);
1031
- return {
1032
- colliderA: a.id,
1033
- colliderB: b.id,
1034
- bodyA: bodyA.id,
1035
- bodyB: bodyB.id,
1036
- normal,
1037
- penetration: capsuleCollider.shape.radius - distance,
1038
- sensor: a.sensor || b.sensor
1039
- };
1040
- }
1041
- function capsuleSegment(position, halfHeight) {
1042
- return {
1043
- start: [position[0], position[1] - halfHeight, position[2]],
1044
- end: [position[0], position[1] + halfHeight, position[2]]
1045
- };
1046
- }
1047
- function closestPointOnSegment(point, segment) {
1048
- const ab = subVec3(segment.end, segment.start);
1049
- const lengthSquared = dotVec3(ab, ab);
1050
- if (lengthSquared <= 1e-9) {
1051
- return segment.start;
1052
- }
1053
- const t = clamp(dotVec3(subVec3(point, segment.start), ab) / lengthSquared, 0, 1);
1054
- return [
1055
- segment.start[0] + ab[0] * t,
1056
- segment.start[1] + ab[1] * t,
1057
- segment.start[2] + ab[2] * t
1058
- ];
1059
- }
1060
- function closestPointsBetweenSegments(a, b) {
1061
- const d1 = subVec3(a.end, a.start);
1062
- const d2 = subVec3(b.end, b.start);
1063
- const r = subVec3(a.start, b.start);
1064
- const aLength = dotVec3(d1, d1);
1065
- const bLength = dotVec3(d2, d2);
1066
- const d12 = dotVec3(d1, d2);
1067
- const d1r = dotVec3(d1, r);
1068
- const d2r = dotVec3(d2, r);
1069
- const denominator = aLength * bLength - d12 * d12;
1070
- let s = denominator <= 1e-9 ? 0 : clamp((d12 * d2r - bLength * d1r) / denominator, 0, 1);
1071
- let t = bLength <= 1e-9 ? 0 : (d12 * s + d2r) / bLength;
1072
- if (t < 0) {
1073
- t = 0;
1074
- s = aLength <= 1e-9 ? 0 : clamp(-d1r / aLength, 0, 1);
1075
- }
1076
- else if (t > 1) {
1077
- t = 1;
1078
- s = aLength <= 1e-9 ? 0 : clamp((d12 - d1r) / aLength, 0, 1);
1079
- }
1080
- return {
1081
- a: [a.start[0] + d1[0] * s, a.start[1] + d1[1] * s, a.start[2] + d1[2] * s],
1082
- b: [b.start[0] + d2[0] * t, b.start[1] + d2[1] * t, b.start[2] + d2[2] * t]
1083
- };
1084
- }
1085
- function closestVerticalSegmentPointToAabb(position, halfHeight, bounds) {
1086
- const segmentMinY = position[1] - halfHeight;
1087
- const segmentMaxY = position[1] + halfHeight;
1088
- let segmentY;
1089
- let boxY;
1090
- if (segmentMaxY < bounds.min[1]) {
1091
- segmentY = segmentMaxY;
1092
- boxY = bounds.min[1];
1093
- }
1094
- else if (segmentMinY > bounds.max[1]) {
1095
- segmentY = segmentMinY;
1096
- boxY = bounds.max[1];
1097
- }
1098
- else {
1099
- segmentY = clamp(position[1], Math.max(segmentMinY, bounds.min[1]), Math.min(segmentMaxY, bounds.max[1]));
1100
- boxY = segmentY;
1101
- }
1102
- const segmentPoint = [position[0], segmentY, position[2]];
1103
- const boxPoint = [
1104
- clamp(position[0], bounds.min[0], bounds.max[0]),
1105
- boxY,
1106
- clamp(position[2], bounds.min[2], bounds.max[2])
1107
- ];
1108
- return { segmentPoint, boxPoint };
1109
- }
1110
- function axisFromBoxCenter(boxPosition, spherePosition, halfExtents) {
1111
- const local = subVec3(spherePosition, boxPosition);
1112
- const distances = [
1113
- [halfExtents[0] - Math.abs(local[0]), [Math.sign(local[0]) || 1, 0, 0]],
1114
- [halfExtents[1] - Math.abs(local[1]), [0, Math.sign(local[1]) || 1, 0]],
1115
- [halfExtents[2] - Math.abs(local[2]), [0, 0, Math.sign(local[2]) || 1]]
1116
- ];
1117
- return distances.reduce((best, candidate) => candidate[0] < best[0] ? candidate : best)[1];
1118
- }
1119
- function clamp(value, min, max) {
1120
- return Math.max(min, Math.min(max, value));
1121
- }
1122
- function supportRadius(collider) {
1123
- switch (collider.shape.kind) {
1124
- case "box":
1125
- return collider.shape.halfExtents[1];
1126
- case "sphere":
1127
- return collider.shape.radius;
1128
- case "capsule":
1129
- return collider.shape.radius + collider.shape.halfHeight;
1130
- case "plane":
1131
- return 0;
1132
- case "mesh": {
1133
- const bounds = collider.bounds([0, 0, 0]);
1134
- return Math.max(Math.abs(bounds.min[1]), Math.abs(bounds.max[1]));
1135
- }
1136
- case "convex-hull":
1137
- case "heightfield": {
1138
- const bounds = collider.bounds([0, 0, 0]);
1139
- return Math.max(Math.abs(bounds.min[1]), Math.abs(bounds.max[1]));
1140
- }
1141
- }
1142
- }
1143
744
  //# sourceMappingURL=PhysicsWorld.js.map