@woosh/meep-engine 3.21.0 → 3.23.0

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 (1803) hide show
  1. package/README.md +96 -213
  2. package/editor/particles/effect/ParticleEffectDocument.d.ts.map +1 -1
  3. package/editor/particles/effect/ParticleEffectDocument.js +0 -3
  4. package/editor/particles/effect/ParticleReferenceSimulation.js +1 -1
  5. package/editor/persistence/SceneMetadata.d.ts +9 -4
  6. package/editor/persistence/SceneMetadata.d.ts.map +1 -1
  7. package/editor/persistence/SceneMetadata.js +4 -3
  8. package/editor/tools/TransformToolV2.d.ts +2 -1
  9. package/editor/tools/TransformToolV2.d.ts.map +1 -1
  10. package/editor/tools/engine/Tool.d.ts +1 -1
  11. package/editor/tools/engine/Tool.d.ts.map +1 -1
  12. package/editor/tools/engine/ToolEngine.d.ts +1 -1
  13. package/editor/tools/engine/ToolEngine.d.ts.map +1 -1
  14. package/editor/view/ecs/EntityEditor.d.ts +3 -2
  15. package/editor/view/ecs/EntityEditor.d.ts.map +1 -1
  16. package/editor/view/ecs/EntityList.d.ts +7 -3
  17. package/editor/view/ecs/EntityList.d.ts.map +1 -1
  18. package/editor/view/ecs/EntityList.js +3 -2
  19. package/editor/view/ecs/components/common/NumericIntervalController.d.ts +8 -3
  20. package/editor/view/ecs/components/common/NumericIntervalController.d.ts.map +1 -1
  21. package/editor/view/ecs/components/common/NumericIntervalController.js +3 -2
  22. package/editor/view/ecs/components/common/TextController.d.ts +7 -3
  23. package/editor/view/ecs/components/common/TextController.d.ts.map +1 -1
  24. package/editor/view/ecs/components/common/TextController.js +3 -2
  25. package/editor/view/library/MeshLibraryView.d.ts.map +1 -1
  26. package/editor/view/library/MeshLibraryView.js +3 -2
  27. package/editor/view/node-graph/NodeIconView.d.ts +5 -2
  28. package/editor/view/node-graph/NodeIconView.d.ts.map +1 -1
  29. package/editor/view/node-graph/NodeIconView.js +2 -1
  30. package/editor/view/node-graph/PortView.d.ts +9 -4
  31. package/editor/view/node-graph/PortView.d.ts.map +1 -1
  32. package/editor/view/node-graph/PortView.js +4 -3
  33. package/editor/view/particles/ColorLutGradientView.d.ts +7 -3
  34. package/editor/view/particles/ColorLutGradientView.d.ts.map +1 -1
  35. package/editor/view/particles/ColorLutGradientView.js +3 -2
  36. package/editor/view/particles/ScalarLutCurveView.d.ts +9 -4
  37. package/editor/view/particles/ScalarLutCurveView.d.ts.map +1 -1
  38. package/editor/view/particles/ScalarLutCurveView.js +4 -3
  39. package/editor/view/particles/effect/ParticleEmitterInspectorView.d.ts.map +1 -1
  40. package/editor/view/particles/effect/ParticleEmitterInspectorView.js +0 -1
  41. package/editor/view/tools/ToolView.d.ts +7 -3
  42. package/editor/view/tools/ToolView.d.ts.map +1 -1
  43. package/editor/view/tools/ToolView.js +3 -2
  44. package/package.json +2 -1
  45. package/src/core/binary/allocator/OffsetAllocator.d.ts +24 -1
  46. package/src/core/binary/allocator/OffsetAllocator.d.ts.map +1 -1
  47. package/src/core/binary/allocator/OffsetAllocator.js +101 -1
  48. package/src/core/binary/type/Field.d.ts +5 -1
  49. package/src/core/binary/type/Field.d.ts.map +1 -1
  50. package/src/core/binary/type/Field.js +4 -0
  51. package/src/core/binary/type/Type.d.ts +4 -0
  52. package/src/core/binary/type/Type.d.ts.map +1 -1
  53. package/src/core/binary/type/Type.js +4 -0
  54. package/src/core/cache/Cache.d.ts +15 -7
  55. package/src/core/cache/Cache.d.ts.map +1 -1
  56. package/src/core/cache/Cache.js +7 -6
  57. package/src/core/cache/wtinylfu/CacheRegionWTinylfu.d.ts +5 -2
  58. package/src/core/cache/wtinylfu/CacheRegionWTinylfu.d.ts.map +1 -1
  59. package/src/core/cache/wtinylfu/CacheRegionWTinylfu.js +2 -1
  60. package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts +20 -10
  61. package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts.map +1 -1
  62. package/src/core/cache/wtinylfu/CacheWTinylfu.js +9 -8
  63. package/src/core/collection/CuckooFilter.d.ts +8 -4
  64. package/src/core/collection/CuckooFilter.d.ts.map +1 -1
  65. package/src/core/collection/CuckooFilter.js +3 -2
  66. package/src/core/collection/list/List.d.ts +0 -1
  67. package/src/core/collection/list/List.d.ts.map +1 -1
  68. package/src/core/collection/list/List.js +0 -1
  69. package/src/core/collection/map/HashMap.d.ts +12 -7
  70. package/src/core/collection/map/HashMap.d.ts.map +1 -1
  71. package/src/core/collection/map/HashMap.js +5 -5
  72. package/src/core/collection/map/ObservedMap.d.ts +1 -2
  73. package/src/core/collection/map/ObservedMap.d.ts.map +1 -1
  74. package/src/core/collection/map/ObservedMap.js +0 -1
  75. package/src/core/collection/table/RowFirstTable.d.ts +1 -0
  76. package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
  77. package/src/core/collection/table/RowFirstTable.js +4 -0
  78. package/src/core/color/Color.d.ts +1 -2
  79. package/src/core/color/Color.d.ts.map +1 -1
  80. package/src/core/color/Color.js +5 -4
  81. package/src/core/color/hsv/hsv2rgb_float.d.ts +23 -1
  82. package/src/core/color/hsv/hsv2rgb_float.d.ts.map +1 -1
  83. package/src/core/color/hsv/hsv2rgb_float.js +31 -3
  84. package/src/core/color/hsv/hsv_to_rgb.d.ts +20 -9
  85. package/src/core/color/hsv/hsv_to_rgb.d.ts.map +1 -1
  86. package/src/core/color/hsv/hsv_to_rgb.js +30 -10
  87. package/src/core/color/hsv/hsv_to_rgb_uint8.d.ts.map +1 -1
  88. package/src/core/color/hsv/hsv_to_rgb_uint8.js +10 -5
  89. package/src/core/function/FunctionCompiler.d.ts +9 -4
  90. package/src/core/function/FunctionCompiler.d.ts.map +1 -1
  91. package/src/core/function/FunctionCompiler.js +8 -6
  92. package/src/core/geom/3d/hash-grid/PointHashGrid3.d.ts +118 -0
  93. package/src/core/geom/3d/hash-grid/PointHashGrid3.d.ts.map +1 -0
  94. package/src/core/geom/3d/hash-grid/PointHashGrid3.js +283 -0
  95. package/src/core/geom/3d/quaternion/quat3_shortest_arc.d.ts +41 -0
  96. package/src/core/geom/3d/quaternion/quat3_shortest_arc.d.ts.map +1 -0
  97. package/src/core/geom/3d/quaternion/quat3_shortest_arc.js +94 -0
  98. package/src/core/geom/3d/ray/Ray3.d.ts +5 -5
  99. package/src/core/geom/3d/ray/Ray3.d.ts.map +1 -1
  100. package/src/core/geom/3d/ray/Ray3.js +3 -3
  101. package/src/core/geom/3d/shape/AbstractShape3D.d.ts +1 -0
  102. package/src/core/geom/3d/shape/AbstractShape3D.d.ts.map +1 -1
  103. package/src/core/geom/3d/shape/AbstractShape3D.js +4 -0
  104. package/src/core/geom/3d/shape/BoxShape3D.d.ts.map +1 -1
  105. package/src/core/geom/3d/shape/BoxShape3D.js +6 -17
  106. package/src/core/geom/3d/shape/CapsuleShape3D.d.ts.map +1 -1
  107. package/src/core/geom/3d/shape/CapsuleShape3D.js +3 -14
  108. package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts +2 -4
  109. package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts.map +1 -1
  110. package/src/core/geom/3d/shape/ConvexHullShape3D.js +0 -2
  111. package/src/core/geom/3d/shape/CylinderShape3D.d.ts.map +1 -1
  112. package/src/core/geom/3d/shape/CylinderShape3D.js +3 -21
  113. package/src/core/geom/3d/shape/PlaneShape3D.d.ts +105 -0
  114. package/src/core/geom/3d/shape/PlaneShape3D.d.ts.map +1 -0
  115. package/src/core/geom/3d/shape/PlaneShape3D.js +251 -0
  116. package/src/core/geom/3d/shape/SphereShape3D.js +3 -3
  117. package/src/core/geom/3d/shape/TransformedShape3D.d.ts +1 -2
  118. package/src/core/geom/3d/shape/TransformedShape3D.d.ts.map +1 -1
  119. package/src/core/geom/3d/shape/TransformedShape3D.js +0 -1
  120. package/src/core/geom/3d/shape/json/shape_to_type.d.ts.map +1 -1
  121. package/src/core/geom/3d/shape/json/shape_to_type.js +3 -0
  122. package/src/core/geom/3d/shape/json/type_adapters.d.ts +14 -0
  123. package/src/core/geom/3d/shape/json/type_adapters.d.ts.map +1 -1
  124. package/src/core/geom/3d/shape/json/type_adapters.js +15 -0
  125. package/src/core/geom/3d/shape/sdf/sdf3_box.d.ts +51 -0
  126. package/src/core/geom/3d/shape/sdf/sdf3_box.d.ts.map +1 -0
  127. package/src/core/geom/3d/shape/sdf/sdf3_box.js +113 -0
  128. package/src/core/geom/3d/shape/sdf/sdf3_capsule.d.ts +46 -0
  129. package/src/core/geom/3d/shape/sdf/sdf3_capsule.d.ts.map +1 -0
  130. package/src/core/geom/3d/shape/sdf/sdf3_capsule.js +82 -0
  131. package/src/core/geom/3d/shape/sdf/sdf3_cylinder.d.ts +60 -0
  132. package/src/core/geom/3d/shape/sdf/sdf3_cylinder.d.ts.map +1 -0
  133. package/src/core/geom/3d/shape/sdf/sdf3_cylinder.js +126 -0
  134. package/src/core/geom/3d/shape/sdf/sdf3_degenerate_normal.d.ts +50 -0
  135. package/src/core/geom/3d/shape/sdf/sdf3_degenerate_normal.d.ts.map +1 -0
  136. package/src/core/geom/3d/shape/sdf/sdf3_degenerate_normal.js +53 -0
  137. package/src/core/geom/3d/shape/sdf/sdf3_plane.d.ts +52 -0
  138. package/src/core/geom/3d/shape/sdf/sdf3_plane.d.ts.map +1 -0
  139. package/src/core/geom/3d/shape/sdf/sdf3_plane.js +61 -0
  140. package/src/core/geom/3d/shape/sdf/sdf3_sphere.d.ts +41 -0
  141. package/src/core/geom/3d/shape/sdf/sdf3_sphere.d.ts.map +1 -0
  142. package/src/core/geom/3d/shape/sdf/sdf3_sphere.js +71 -0
  143. package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.d.ts +6 -0
  144. package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.d.ts.map +1 -1
  145. package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.js +5 -0
  146. package/src/core/geom/3d/topology/struct/binary/BinaryTopology.d.ts +2 -0
  147. package/src/core/geom/3d/topology/struct/binary/BinaryTopology.d.ts.map +1 -1
  148. package/src/core/geom/3d/topology/struct/binary/BinaryTopology.js +5 -0
  149. package/src/core/geom/Quaternion.d.ts +1 -0
  150. package/src/core/geom/Quaternion.d.ts.map +1 -1
  151. package/src/core/geom/Quaternion.js +4 -0
  152. package/src/core/geom/Vector1.d.ts +8 -0
  153. package/src/core/geom/Vector1.d.ts.map +1 -1
  154. package/src/core/geom/Vector1.js +6 -0
  155. package/src/core/geom/Vector3.d.ts +6 -0
  156. package/src/core/geom/Vector3.d.ts.map +1 -1
  157. package/src/core/geom/Vector3.js +5 -0
  158. package/src/core/geom/Vector4.d.ts +10 -2
  159. package/src/core/geom/Vector4.d.ts.map +1 -1
  160. package/src/core/geom/Vector4.js +6 -1
  161. package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts +4 -4
  162. package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts.map +1 -1
  163. package/src/core/geom/packing/max-rect/MaxRectanglesPacker.js +1 -1
  164. package/src/core/graph/convert_graph_to_dot_string.d.ts +7 -3
  165. package/src/core/graph/convert_graph_to_dot_string.d.ts.map +1 -1
  166. package/src/core/graph/convert_graph_to_dot_string.js +3 -2
  167. package/src/core/localization/Localization.d.ts +3 -2
  168. package/src/core/localization/Localization.d.ts.map +1 -1
  169. package/src/core/localization/Localization.js +4 -0
  170. package/src/core/math/noise/create_simplex_noise_2d.js +6 -6
  171. package/src/core/model/ObservedValue.d.ts +8 -6
  172. package/src/core/model/ObservedValue.d.ts.map +1 -1
  173. package/src/core/model/ObservedValue.js +3 -1
  174. package/src/core/model/node-graph/Connection.d.ts +1 -0
  175. package/src/core/model/node-graph/Connection.d.ts.map +1 -1
  176. package/src/core/model/node-graph/Connection.js +4 -0
  177. package/src/core/model/node-graph/NodeGraph.d.ts +8 -5
  178. package/src/core/model/node-graph/NodeGraph.d.ts.map +1 -1
  179. package/src/core/model/node-graph/NodeGraph.js +3 -3
  180. package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts +9 -4
  181. package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts.map +1 -1
  182. package/src/core/model/node-graph/json/serializeNodeGraphToJSON.js +4 -3
  183. package/src/core/model/node-graph/node/NodeDescription.d.ts +12 -4
  184. package/src/core/model/node-graph/node/NodeDescription.d.ts.map +1 -1
  185. package/src/core/model/node-graph/node/NodeDescription.js +10 -3
  186. package/src/core/model/node-graph/node/NodeInstance.d.ts +5 -2
  187. package/src/core/model/node-graph/node/NodeInstance.d.ts.map +1 -1
  188. package/src/core/model/node-graph/node/NodeInstance.js +6 -0
  189. package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts +5 -2
  190. package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts.map +1 -1
  191. package/src/core/model/node-graph/node/NodeInstancePortReference.js +6 -0
  192. package/src/core/model/node-graph/node/NodeRegistry.d.ts +2 -1
  193. package/src/core/model/node-graph/node/NodeRegistry.d.ts.map +1 -1
  194. package/src/core/model/node-graph/node/NodeRegistry.js +4 -0
  195. package/src/core/model/node-graph/node/Port.d.ts +12 -5
  196. package/src/core/model/node-graph/node/Port.d.ts.map +1 -1
  197. package/src/core/model/node-graph/node/Port.js +9 -4
  198. package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.d.ts +5 -2
  199. package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.d.ts.map +1 -1
  200. package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.js +2 -1
  201. package/src/core/model/node-graph/util/graph_clone_by_node_subset.d.ts +5 -2
  202. package/src/core/model/node-graph/util/graph_clone_by_node_subset.d.ts.map +1 -1
  203. package/src/core/model/node-graph/util/graph_clone_by_node_subset.js +2 -1
  204. package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.d.ts +5 -2
  205. package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.d.ts.map +1 -1
  206. package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.js +2 -1
  207. package/src/core/primitives/Class.d.ts +15 -0
  208. package/src/core/primitives/Class.d.ts.map +1 -0
  209. package/src/core/primitives/Class.js +18 -0
  210. package/src/core/primitives/TypedArray.d.ts +15 -0
  211. package/src/core/primitives/TypedArray.d.ts.map +1 -0
  212. package/src/core/primitives/TypedArray.js +27 -0
  213. package/src/core/process/ConcurrencyGate.d.ts +103 -0
  214. package/src/core/process/ConcurrencyGate.d.ts.map +1 -0
  215. package/src/core/process/ConcurrencyGate.js +207 -0
  216. package/src/core/process/buildPromiseChain.d.ts +9 -4
  217. package/src/core/process/buildPromiseChain.d.ts.map +1 -1
  218. package/src/core/process/buildPromiseChain.js +4 -3
  219. package/src/core/process/executor/ConcurrentExecutor.d.ts +2 -0
  220. package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
  221. package/src/core/process/executor/ConcurrentExecutor.js +5 -0
  222. package/src/core/process/task/Task.d.ts +17 -7
  223. package/src/core/process/task/Task.d.ts.map +1 -1
  224. package/src/core/process/task/Task.js +12 -6
  225. package/src/engine/Engine.d.ts +17 -7
  226. package/src/engine/Engine.d.ts.map +1 -1
  227. package/src/engine/Engine.js +9 -4
  228. package/src/engine/EngineConfiguration.d.ts +33 -9
  229. package/src/engine/EngineConfiguration.d.ts.map +1 -1
  230. package/src/engine/EngineConfiguration.js +22 -4
  231. package/src/engine/EngineHarness.d.ts +22 -10
  232. package/src/engine/EngineHarness.d.ts.map +1 -1
  233. package/src/engine/EngineHarness.js +13 -8
  234. package/src/engine/EntityCreator.d.ts +26 -11
  235. package/src/engine/EntityCreator.d.ts.map +1 -1
  236. package/src/engine/EntityCreator.js +16 -13
  237. package/src/engine/animation/EntityAnimation.d.ts +1 -1
  238. package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
  239. package/src/engine/animation/curve/actionProcessorOperations/curveActions.d.ts +28 -18
  240. package/src/engine/animation/curve/actionProcessorOperations/curveActions.d.ts.map +1 -1
  241. package/src/engine/animation/curve/actionProcessorOperations/curveActions.js +9 -8
  242. package/src/engine/animation/curve/draw/build_plot_entity_from_array.d.ts +18 -8
  243. package/src/engine/animation/curve/draw/build_plot_entity_from_array.d.ts.map +1 -1
  244. package/src/engine/animation/curve/draw/build_plot_entity_from_array.js +8 -7
  245. package/src/engine/animation/curve/editor/CurveEditorView.d.ts +22 -11
  246. package/src/engine/animation/curve/editor/CurveEditorView.d.ts.map +1 -1
  247. package/src/engine/animation/curve/editor/CurveEditorView.js +7 -6
  248. package/src/engine/animation/curve/editor/DragHandler.d.ts +12 -7
  249. package/src/engine/animation/curve/editor/DragHandler.d.ts.map +1 -1
  250. package/src/engine/animation/curve/editor/DragHandler.js +4 -3
  251. package/src/engine/animation/curve/editor/KeyframeStateManager.d.ts +3 -2
  252. package/src/engine/animation/curve/editor/KeyframeStateManager.d.ts.map +1 -1
  253. package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.d.ts +21 -10
  254. package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.d.ts.map +1 -1
  255. package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.js +10 -9
  256. package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.d.ts +20 -9
  257. package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.d.ts.map +1 -1
  258. package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.js +9 -8
  259. package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.d.ts +15 -7
  260. package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.d.ts.map +1 -1
  261. package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.js +7 -6
  262. package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.d.ts +39 -18
  263. package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.d.ts.map +1 -1
  264. package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.js +18 -17
  265. package/src/engine/animation/curve/editor/createPanTool.d.ts +13 -5
  266. package/src/engine/animation/curve/editor/createPanTool.d.ts.map +1 -1
  267. package/src/engine/animation/curve/editor/createPanTool.js +5 -4
  268. package/src/engine/animation/curve/editor/createSelectionBoxTool.d.ts +19 -8
  269. package/src/engine/animation/curve/editor/createSelectionBoxTool.d.ts.map +1 -1
  270. package/src/engine/animation/curve/editor/createSelectionBoxTool.js +8 -7
  271. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +6 -2
  272. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
  273. package/src/engine/animation/keyed2/AnimationTrackPlayback.js +4 -0
  274. package/src/engine/animation/removeEntityGenericEffect.d.ts +13 -6
  275. package/src/engine/animation/removeEntityGenericEffect.d.ts.map +1 -1
  276. package/src/engine/animation/removeEntityGenericEffect.js +6 -5
  277. package/src/engine/animation/removeEntityWithMeshParticlesEffect.d.ts +11 -5
  278. package/src/engine/animation/removeEntityWithMeshParticlesEffect.d.ts.map +1 -1
  279. package/src/engine/animation/removeEntityWithMeshParticlesEffect.js +5 -4
  280. package/src/engine/asset/Asset.d.ts +6 -3
  281. package/src/engine/asset/Asset.d.ts.map +1 -1
  282. package/src/engine/asset/Asset.js +4 -1
  283. package/src/engine/asset/AssetManager.d.ts +52 -21
  284. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  285. package/src/engine/asset/AssetManager.js +30 -12
  286. package/src/engine/asset/AssetRequest.d.ts +4 -2
  287. package/src/engine/asset/AssetRequest.d.ts.map +1 -1
  288. package/src/engine/asset/AssetRequest.js +5 -0
  289. package/src/engine/asset/AssetRequestScope.d.ts +1 -0
  290. package/src/engine/asset/AssetRequestScope.d.ts.map +1 -1
  291. package/src/engine/asset/AssetRequestScope.js +4 -0
  292. package/src/engine/asset/AssetTransformer.d.ts +7 -1
  293. package/src/engine/asset/AssetTransformer.d.ts.map +1 -1
  294. package/src/engine/asset/AssetTransformer.js +5 -0
  295. package/src/engine/asset/PendingAsset.d.ts +8 -0
  296. package/src/engine/asset/PendingAsset.d.ts.map +1 -1
  297. package/src/engine/asset/PendingAsset.js +6 -0
  298. package/src/engine/asset/loaders/ArrayBufferLoader.d.ts +6 -3
  299. package/src/engine/asset/loaders/ArrayBufferLoader.d.ts.map +1 -1
  300. package/src/engine/asset/loaders/ArrayBufferLoader.js +2 -1
  301. package/src/engine/asset/loaders/AssetLoader.d.ts +8 -2
  302. package/src/engine/asset/loaders/AssetLoader.d.ts.map +1 -1
  303. package/src/engine/asset/loaders/AssetLoader.js +5 -0
  304. package/src/engine/asset/loaders/USDSceneBundleAssetLoader.d.ts +10 -0
  305. package/src/engine/asset/loaders/USDSceneBundleAssetLoader.d.ts.map +1 -1
  306. package/src/engine/asset/loaders/image/ImageRGBADataLoader.d.ts +5 -2
  307. package/src/engine/asset/loaders/image/ImageRGBADataLoader.d.ts.map +1 -1
  308. package/src/engine/asset/loaders/image/ImageRGBADataLoader.js +2 -1
  309. package/src/engine/asset/preloader/AssetPreloader.d.ts +2 -1
  310. package/src/engine/asset/preloader/AssetPreloader.d.ts.map +1 -1
  311. package/src/engine/asset/preloader/AssetPreloader.js +4 -0
  312. package/src/engine/development/performance/MetricCollection.d.ts +11 -3
  313. package/src/engine/development/performance/MetricCollection.d.ts.map +1 -1
  314. package/src/engine/development/performance/MetricCollection.js +7 -2
  315. package/src/engine/ecs/Entity.d.ts +3 -2
  316. package/src/engine/ecs/Entity.d.ts.map +1 -1
  317. package/src/engine/ecs/Entity.js +9 -1
  318. package/src/engine/ecs/EntityComponentDataset.d.ts +8 -6
  319. package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
  320. package/src/engine/ecs/EntityComponentDataset.js +9 -0
  321. package/src/engine/ecs/EntityManager.d.ts +2 -1
  322. package/src/engine/ecs/EntityManager.d.ts.map +1 -1
  323. package/src/engine/ecs/EntityManager.js +5 -0
  324. package/src/engine/ecs/EntityObserver.d.ts +4 -0
  325. package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
  326. package/src/engine/ecs/EntityObserver.js +4 -0
  327. package/src/engine/ecs/EntityReference.d.ts +4 -0
  328. package/src/engine/ecs/EntityReference.d.ts.map +1 -1
  329. package/src/engine/ecs/EntityReference.js +4 -0
  330. package/src/engine/ecs/System.d.ts +11 -2
  331. package/src/engine/ecs/System.d.ts.map +1 -1
  332. package/src/engine/ecs/System.js +6 -0
  333. package/src/engine/ecs/async/WorkerSystem.d.ts +10 -0
  334. package/src/engine/ecs/async/WorkerSystem.d.ts.map +1 -1
  335. package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.d.ts +7 -3
  336. package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.d.ts.map +1 -1
  337. package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.js +3 -2
  338. package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.d.ts +7 -3
  339. package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.d.ts.map +1 -1
  340. package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.js +3 -2
  341. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts +36 -17
  342. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts.map +1 -1
  343. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.js +17 -16
  344. package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.d.ts +7 -3
  345. package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.d.ts.map +1 -1
  346. package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.js +3 -2
  347. package/src/engine/ecs/ik/InverseKinematics.d.ts +17 -8
  348. package/src/engine/ecs/ik/InverseKinematics.d.ts.map +1 -1
  349. package/src/engine/ecs/ik/InverseKinematics.js +8 -7
  350. package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts +9 -0
  351. package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts.map +1 -1
  352. package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.js +9 -0
  353. package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts +4 -0
  354. package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts.map +1 -1
  355. package/src/engine/ecs/storage/binary/BinaryClassUpgrader.js +4 -0
  356. package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts +10 -4
  357. package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts.map +1 -1
  358. package/src/engine/ecs/storage/binary/BinarySerializationRegistry.js +5 -0
  359. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts +5 -2
  360. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
  361. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.js +2 -1
  362. package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.d.ts +7 -3
  363. package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.d.ts.map +1 -1
  364. package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.js +3 -2
  365. package/src/engine/ecs/systems/ScriptSystem.d.ts +1 -0
  366. package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
  367. package/src/engine/ecs/terrain/ecs/Terrain.d.ts +7 -2
  368. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  369. package/src/engine/ecs/terrain/ecs/Terrain.js +8 -0
  370. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSerializationUpgrader_0_1.d.ts +6 -0
  371. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSerializationUpgrader_0_1.d.ts.map +1 -1
  372. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts +3 -1
  373. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts.map +1 -1
  374. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.js +5 -0
  375. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts +3 -1
  376. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts.map +1 -1
  377. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.js +5 -0
  378. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts +4 -0
  379. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts.map +1 -1
  380. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.js +4 -0
  381. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts +7 -2
  382. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
  383. package/src/engine/ecs/terrain/tiles/TerrainTile.js +1 -1
  384. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +6 -2
  385. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
  386. package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +6 -1
  387. package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts +9 -4
  388. package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts.map +1 -1
  389. package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.js +4 -3
  390. package/src/engine/ecs/transform/Transform64.d.ts +4 -0
  391. package/src/engine/ecs/transform/Transform64.d.ts.map +1 -1
  392. package/src/engine/ecs/transform/Transform64.js +4 -0
  393. package/src/engine/graphics/CONTEXT_LOSS_RECOVERY_PLAN.md +30 -13
  394. package/src/engine/graphics/camera/CameraShakeBehavior.d.ts +20 -10
  395. package/src/engine/graphics/camera/CameraShakeBehavior.d.ts.map +1 -1
  396. package/src/engine/graphics/camera/CameraShakeBehavior.js +9 -8
  397. package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts +8 -4
  398. package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts.map +1 -1
  399. package/src/engine/graphics/camera/CameraShakeTraumaBehavior.js +3 -2
  400. package/src/engine/graphics/camera/makeOrbitalCameraController.d.ts +11 -5
  401. package/src/engine/graphics/camera/makeOrbitalCameraController.d.ts.map +1 -1
  402. package/src/engine/graphics/camera/makeOrbitalCameraController.js +5 -4
  403. package/src/engine/graphics/canvas/canvas2d_draw_grid.d.ts +19 -9
  404. package/src/engine/graphics/canvas/canvas2d_draw_grid.d.ts.map +1 -1
  405. package/src/engine/graphics/canvas/canvas2d_draw_grid.js +9 -8
  406. package/src/engine/graphics/canvas/canvas2d_draw_label.d.ts +17 -8
  407. package/src/engine/graphics/canvas/canvas2d_draw_label.d.ts.map +1 -1
  408. package/src/engine/graphics/canvas/canvas2d_draw_label.js +8 -7
  409. package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.d.ts +21 -10
  410. package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.d.ts.map +1 -1
  411. package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.js +10 -9
  412. package/src/engine/graphics/canvas/canvas2d_plot_data_line.d.ts +18 -8
  413. package/src/engine/graphics/canvas/canvas2d_plot_data_line.d.ts.map +1 -1
  414. package/src/engine/graphics/canvas/canvas2d_plot_data_line.js +8 -7
  415. package/src/engine/graphics/ecs/camera/Camera.d.ts +4 -0
  416. package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
  417. package/src/engine/graphics/ecs/camera/Camera.js +4 -0
  418. package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts +11 -5
  419. package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts.map +1 -1
  420. package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.js +5 -4
  421. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts +1 -1
  422. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
  423. package/src/engine/graphics/ecs/particles/ParticleEffect.d.ts +5 -5
  424. package/src/engine/graphics/ecs/particles/ParticleEffect.js +5 -5
  425. package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.d.ts +19 -9
  426. package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.d.ts.map +1 -1
  427. package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.js +9 -8
  428. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts +3 -0
  429. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
  430. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +3 -0
  431. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts +9 -4
  432. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts.map +1 -1
  433. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.js +4 -3
  434. package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts +7 -1
  435. package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts.map +1 -1
  436. package/src/engine/graphics/render/frame_graph/FrameGraph.js +5 -0
  437. package/src/engine/graphics/render/frame_graph/FrameGraphNode.d.ts +4 -0
  438. package/src/engine/graphics/render/frame_graph/FrameGraphNode.d.ts.map +1 -1
  439. package/src/engine/graphics/render/frame_graph/FrameGraphNode.js +4 -0
  440. package/src/engine/graphics/render/frame_graph/FramePassBuilder.d.ts +9 -1
  441. package/src/engine/graphics/render/frame_graph/FramePassBuilder.d.ts.map +1 -1
  442. package/src/engine/graphics/render/frame_graph/FramePassBuilder.js +6 -0
  443. package/src/engine/graphics/render/frame_graph/FramePassNode.d.ts +6 -0
  444. package/src/engine/graphics/render/frame_graph/FramePassNode.d.ts.map +1 -1
  445. package/src/engine/graphics/render/frame_graph/FramePassNode.js +5 -0
  446. package/src/engine/graphics/render/frame_graph/FramePassResources.d.ts +7 -1
  447. package/src/engine/graphics/render/frame_graph/FramePassResources.d.ts.map +1 -1
  448. package/src/engine/graphics/render/frame_graph/FramePassResources.js +5 -0
  449. package/src/engine/graphics/render/frame_graph/IFrameGraphContext.d.ts +6 -2
  450. package/src/engine/graphics/render/frame_graph/IFrameGraphContext.d.ts.map +1 -1
  451. package/src/engine/graphics/render/frame_graph/IFrameGraphContext.js +4 -0
  452. package/src/engine/graphics/render/frame_graph/ResourceEntry.d.ts +13 -5
  453. package/src/engine/graphics/render/frame_graph/ResourceEntry.d.ts.map +1 -1
  454. package/src/engine/graphics/render/frame_graph/ResourceEntry.js +7 -1
  455. package/src/engine/graphics/render/frame_graph/ResourceNode.d.ts +9 -3
  456. package/src/engine/graphics/render/frame_graph/ResourceNode.d.ts.map +1 -1
  457. package/src/engine/graphics/render/frame_graph/ResourceNode.js +6 -1
  458. package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.d.ts +5 -1
  459. package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.d.ts.map +1 -1
  460. package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.js +4 -0
  461. package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.d.ts +7 -3
  462. package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.d.ts.map +1 -1
  463. package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.js +6 -2
  464. package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts +5 -2
  465. package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts.map +1 -1
  466. package/src/engine/graphics/texture/atlas/CachingTextureAtlas.js +2 -1
  467. package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.d.ts +9 -4
  468. package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.d.ts.map +1 -1
  469. package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.js +4 -3
  470. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +4 -0
  471. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
  472. package/src/engine/graphics/texture/sampler/Sampler2D.js +4 -0
  473. package/src/engine/graphics/texture/sampler/debug/prototypeSamplerFiltering.js +3 -2
  474. package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts +0 -5
  475. package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts.map +1 -1
  476. package/src/engine/graphics3/GraphicsEngine.d.ts +6 -0
  477. package/src/engine/graphics3/GraphicsEngine.d.ts.map +1 -1
  478. package/src/engine/graphics3/GraphicsEngine.js +9 -0
  479. package/src/engine/graphics3/ParticipatingMedia.d.ts +9 -4
  480. package/src/engine/graphics3/ParticipatingMedia.d.ts.map +1 -1
  481. package/src/engine/graphics3/ParticipatingMedia.js +4 -3
  482. package/src/engine/graphics3/ShadeCameraAdapter.d.ts +5 -1
  483. package/src/engine/graphics3/ShadeCameraAdapter.d.ts.map +1 -1
  484. package/src/engine/graphics3/ShadeCameraAdapter.js +4 -0
  485. package/src/engine/graphics3/TooltipComponentSystem.d.ts +13 -6
  486. package/src/engine/graphics3/TooltipComponentSystem.d.ts.map +1 -1
  487. package/src/engine/graphics3/TooltipComponentSystem.js +6 -5
  488. package/src/engine/graphics3/VolumetricLightMap.d.ts +5 -2
  489. package/src/engine/graphics3/VolumetricLightMap.d.ts.map +1 -1
  490. package/src/engine/graphics3/VolumetricLightMap.js +2 -1
  491. package/src/engine/graphics3/pose/collect_entity_playbacks.d.ts +26 -0
  492. package/src/engine/graphics3/pose/collect_entity_playbacks.d.ts.map +1 -0
  493. package/src/engine/graphics3/pose/collect_entity_playbacks.js +40 -0
  494. package/src/engine/graphics3/pose/query_entity_node_world_pose.d.ts.map +1 -1
  495. package/src/engine/graphics3/pose/query_entity_node_world_pose.js +74 -101
  496. package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
  497. package/src/engine/input/devices/PointerDevice.js +7 -6
  498. package/src/engine/input/devices/gamepad/GamepadHandle.d.ts +4 -0
  499. package/src/engine/input/devices/gamepad/GamepadHandle.d.ts.map +1 -1
  500. package/src/engine/input/devices/gamepad/GamepadHandle.js +4 -0
  501. package/src/engine/input/devices/touch/observePinch.d.ts +17 -8
  502. package/src/engine/input/devices/touch/observePinch.d.ts.map +1 -1
  503. package/src/engine/input/devices/touch/observePinch.js +8 -7
  504. package/src/engine/input/ecs/components/InputBinding.d.ts +11 -5
  505. package/src/engine/input/ecs/components/InputBinding.d.ts.map +1 -1
  506. package/src/engine/input/ecs/components/InputBinding.js +5 -4
  507. package/src/engine/input/ecs/ism/InputMapSystem.d.ts +4 -0
  508. package/src/engine/input/ecs/ism/InputMapSystem.d.ts.map +1 -1
  509. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts +1 -1
  510. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
  511. package/src/engine/input/ecs/util/TerrainCameraTargetSampler.d.ts +5 -2
  512. package/src/engine/input/ecs/util/TerrainCameraTargetSampler.d.ts.map +1 -1
  513. package/src/engine/input/ecs/util/TerrainCameraTargetSampler.js +2 -1
  514. package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.d.ts +9 -4
  515. package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.d.ts.map +1 -1
  516. package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.js +4 -3
  517. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts +9 -4
  518. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts.map +1 -1
  519. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.js +4 -3
  520. package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.d.ts +9 -4
  521. package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.d.ts.map +1 -1
  522. package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.js +4 -3
  523. package/src/engine/intelligence/mcts/MonteCarlo.d.ts +19 -9
  524. package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
  525. package/src/engine/intelligence/mcts/MonteCarlo.js +9 -8
  526. package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +13 -6
  527. package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
  528. package/src/engine/intelligence/optimization/RandomOptimizer.js +6 -5
  529. package/src/engine/interpolation/InterpolationSystem.d.ts +4 -0
  530. package/src/engine/interpolation/InterpolationSystem.d.ts.map +1 -1
  531. package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts +5 -2
  532. package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts.map +1 -1
  533. package/src/engine/knowledge/database/StaticKnowledgeDataTable.js +6 -0
  534. package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts +6 -2
  535. package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts.map +1 -1
  536. package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.js +4 -0
  537. package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts +7 -4
  538. package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts.map +1 -1
  539. package/src/engine/knowledge/database/StaticKnowledgeDatabase.js +6 -0
  540. package/src/engine/makeSimpleTaskProgressView.d.ts +10 -4
  541. package/src/engine/makeSimpleTaskProgressView.d.ts.map +1 -1
  542. package/src/engine/makeSimpleTaskProgressView.js +4 -3
  543. package/src/engine/navigation/mesh/build/navmesh_build_topology.d.ts +20 -9
  544. package/src/engine/navigation/mesh/build/navmesh_build_topology.d.ts.map +1 -1
  545. package/src/engine/navigation/mesh/build/navmesh_build_topology.js +9 -8
  546. package/src/engine/network/sim/ActionLog.d.ts +1 -2
  547. package/src/engine/network/sim/ActionLog.d.ts.map +1 -1
  548. package/src/engine/network/sim/ActionLog.js +0 -1
  549. package/src/engine/network/state/InputRing.d.ts +1 -2
  550. package/src/engine/network/state/InputRing.d.ts.map +1 -1
  551. package/src/engine/network/state/InputRing.js +0 -1
  552. package/src/engine/notify/Notification.d.ts +15 -9
  553. package/src/engine/notify/Notification.d.ts.map +1 -1
  554. package/src/engine/notify/Notification.js +5 -4
  555. package/src/engine/options/OptionAbstract.d.ts +4 -0
  556. package/src/engine/options/OptionAbstract.d.ts.map +1 -1
  557. package/src/engine/options/OptionAbstract.js +4 -0
  558. package/src/engine/options/OptionsView.d.ts +10 -4
  559. package/src/engine/options/OptionsView.d.ts.map +1 -1
  560. package/src/engine/options/OptionsView.js +4 -3
  561. package/src/engine/physics/ccd/linear_sweep.d.ts +4 -7
  562. package/src/engine/physics/ccd/linear_sweep.d.ts.map +1 -1
  563. package/src/engine/physics/ccd/linear_sweep.js +3 -1
  564. package/src/engine/physics/cloth/MEASUREMENTS.md +2239 -0
  565. package/src/engine/physics/cloth/PLAN.md +1967 -0
  566. package/src/engine/physics/cloth/build/ClothProxy.d.ts +147 -0
  567. package/src/engine/physics/cloth/build/ClothProxy.d.ts.map +1 -0
  568. package/src/engine/physics/cloth/build/ClothProxy.js +207 -0
  569. package/src/engine/physics/cloth/build/cloth_proxy_from_joints.d.ts +70 -0
  570. package/src/engine/physics/cloth/build/cloth_proxy_from_joints.d.ts.map +1 -0
  571. package/src/engine/physics/cloth/build/cloth_proxy_from_joints.js +256 -0
  572. package/src/engine/physics/cloth/collider/ClothColliderIndex.d.ts +176 -0
  573. package/src/engine/physics/cloth/collider/ClothColliderIndex.d.ts.map +1 -0
  574. package/src/engine/physics/cloth/collider/ClothColliderIndex.js +435 -0
  575. package/src/engine/physics/cloth/collider/ClothColliderKind.d.ts +12 -0
  576. package/src/engine/physics/cloth/collider/ClothColliderKind.d.ts.map +1 -0
  577. package/src/engine/physics/cloth/collider/ClothColliderKind.js +38 -0
  578. package/src/engine/physics/cloth/collider/ClothColliderRecord.d.ts +120 -0
  579. package/src/engine/physics/cloth/collider/ClothColliderRecord.d.ts.map +1 -0
  580. package/src/engine/physics/cloth/collider/ClothColliderRecord.js +137 -0
  581. package/src/engine/physics/cloth/collider/cloth_collider_bounds.d.ts +25 -0
  582. package/src/engine/physics/cloth/collider/cloth_collider_bounds.d.ts.map +1 -0
  583. package/src/engine/physics/cloth/collider/cloth_collider_bounds.js +190 -0
  584. package/src/engine/physics/cloth/collider/cloth_collider_pack.d.ts +44 -0
  585. package/src/engine/physics/cloth/collider/cloth_collider_pack.d.ts.map +1 -0
  586. package/src/engine/physics/cloth/collider/cloth_collider_pack.js +173 -0
  587. package/src/engine/physics/cloth/collider/cloth_collider_sdf.d.ts +94 -0
  588. package/src/engine/physics/cloth/collider/cloth_collider_sdf.d.ts.map +1 -0
  589. package/src/engine/physics/cloth/collider/cloth_collider_sdf.js +275 -0
  590. package/src/engine/physics/cloth/ecs/Cloth.d.ts +145 -0
  591. package/src/engine/physics/cloth/ecs/Cloth.d.ts.map +1 -0
  592. package/src/engine/physics/cloth/ecs/Cloth.js +212 -0
  593. package/src/engine/physics/cloth/ecs/ClothCollider.d.ts +126 -0
  594. package/src/engine/physics/cloth/ecs/ClothCollider.d.ts.map +1 -0
  595. package/src/engine/physics/cloth/ecs/ClothCollider.js +199 -0
  596. package/src/engine/physics/cloth/ecs/ClothColliderFlags.d.ts +9 -0
  597. package/src/engine/physics/cloth/ecs/ClothColliderFlags.d.ts.map +1 -0
  598. package/src/engine/physics/cloth/ecs/ClothColliderFlags.js +32 -0
  599. package/src/engine/physics/cloth/ecs/ClothColliderSystem.d.ts +114 -0
  600. package/src/engine/physics/cloth/ecs/ClothColliderSystem.d.ts.map +1 -0
  601. package/src/engine/physics/cloth/ecs/ClothColliderSystem.js +243 -0
  602. package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts +208 -0
  603. package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts.map +1 -0
  604. package/src/engine/physics/cloth/ecs/ClothDynamics.js +331 -0
  605. package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.d.ts +10 -0
  606. package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.d.ts.map +1 -0
  607. package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.js +66 -0
  608. package/src/engine/physics/cloth/ecs/ClothExclude.d.ts +45 -0
  609. package/src/engine/physics/cloth/ecs/ClothExclude.d.ts.map +1 -0
  610. package/src/engine/physics/cloth/ecs/ClothExclude.js +59 -0
  611. package/src/engine/physics/cloth/ecs/ClothFlags.d.ts +10 -0
  612. package/src/engine/physics/cloth/ecs/ClothFlags.d.ts.map +1 -0
  613. package/src/engine/physics/cloth/ecs/ClothFlags.js +47 -0
  614. package/src/engine/physics/cloth/ecs/ClothInstance.d.ts +429 -0
  615. package/src/engine/physics/cloth/ecs/ClothInstance.d.ts.map +1 -0
  616. package/src/engine/physics/cloth/ecs/ClothInstance.js +479 -0
  617. package/src/engine/physics/cloth/ecs/ClothRig.d.ts +95 -0
  618. package/src/engine/physics/cloth/ecs/ClothRig.d.ts.map +1 -0
  619. package/src/engine/physics/cloth/ecs/ClothRig.js +140 -0
  620. package/src/engine/physics/cloth/ecs/ClothSystem.d.ts +178 -0
  621. package/src/engine/physics/cloth/ecs/ClothSystem.d.ts.map +1 -0
  622. package/src/engine/physics/cloth/ecs/ClothSystem.js +1021 -0
  623. package/src/engine/physics/cloth/ecs/cloth_build_rows.d.ts +90 -0
  624. package/src/engine/physics/cloth/ecs/cloth_build_rows.d.ts.map +1 -0
  625. package/src/engine/physics/cloth/ecs/cloth_build_rows.js +374 -0
  626. package/src/engine/physics/cloth/ecs/cloth_dynamics_library.d.ts +186 -0
  627. package/src/engine/physics/cloth/ecs/cloth_dynamics_library.d.ts.map +1 -0
  628. package/src/engine/physics/cloth/ecs/cloth_dynamics_library.js +283 -0
  629. package/src/engine/physics/cloth/ecs/cloth_dynamics_map.d.ts +235 -0
  630. package/src/engine/physics/cloth/ecs/cloth_dynamics_map.d.ts.map +1 -0
  631. package/src/engine/physics/cloth/ecs/cloth_dynamics_map.js +271 -0
  632. package/src/engine/physics/cloth/ecs/cloth_gather_colliders.d.ts +59 -0
  633. package/src/engine/physics/cloth/ecs/cloth_gather_colliders.d.ts.map +1 -0
  634. package/src/engine/physics/cloth/ecs/cloth_gather_colliders.js +328 -0
  635. package/src/engine/physics/cloth/ecs/cloth_reconstruct_pose.d.ts +13 -0
  636. package/src/engine/physics/cloth/ecs/cloth_reconstruct_pose.d.ts.map +1 -0
  637. package/src/engine/physics/cloth/ecs/cloth_reconstruct_pose.js +288 -0
  638. package/src/engine/physics/cloth/ecs/cloth_seed_rig.d.ts +58 -0
  639. package/src/engine/physics/cloth/ecs/cloth_seed_rig.d.ts.map +1 -0
  640. package/src/engine/physics/cloth/ecs/cloth_seed_rig.js +199 -0
  641. package/src/engine/physics/cloth/ecs/cloth_seed_subtree.d.ts +59 -0
  642. package/src/engine/physics/cloth/ecs/cloth_seed_subtree.d.ts.map +1 -0
  643. package/src/engine/physics/cloth/ecs/cloth_seed_subtree.js +317 -0
  644. package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts +70 -0
  645. package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts.map +1 -0
  646. package/src/engine/physics/cloth/ecs/cloth_write_back.js +212 -0
  647. package/src/engine/physics/cloth/ecs/cloth_write_back_rig.d.ts +49 -0
  648. package/src/engine/physics/cloth/ecs/cloth_write_back_rig.d.ts.map +1 -0
  649. package/src/engine/physics/cloth/ecs/cloth_write_back_rig.js +115 -0
  650. package/src/engine/physics/cloth/playground/README.md +339 -0
  651. package/src/engine/physics/cloth/playground/cloth_playground_build.d.ts +58 -0
  652. package/src/engine/physics/cloth/playground/cloth_playground_build.d.ts.map +1 -0
  653. package/src/engine/physics/cloth/playground/cloth_playground_build.js +333 -0
  654. package/src/engine/physics/cloth/playground/cloth_playground_draw.d.ts +79 -0
  655. package/src/engine/physics/cloth/playground/cloth_playground_draw.d.ts.map +1 -0
  656. package/src/engine/physics/cloth/playground/cloth_playground_draw.js +519 -0
  657. package/src/engine/physics/cloth/playground/collide.html +178 -0
  658. package/src/engine/physics/cloth/playground/collide_build.d.ts +95 -0
  659. package/src/engine/physics/cloth/playground/collide_build.d.ts.map +1 -0
  660. package/src/engine/physics/cloth/playground/collide_build.js +315 -0
  661. package/src/engine/physics/cloth/playground/collide_main.d.ts +2 -0
  662. package/src/engine/physics/cloth/playground/collide_main.d.ts.map +1 -0
  663. package/src/engine/physics/cloth/playground/collide_main.js +720 -0
  664. package/src/engine/physics/cloth/playground/garment.html +182 -0
  665. package/src/engine/physics/cloth/playground/garment_build.d.ts +78 -0
  666. package/src/engine/physics/cloth/playground/garment_build.d.ts.map +1 -0
  667. package/src/engine/physics/cloth/playground/garment_build.js +359 -0
  668. package/src/engine/physics/cloth/playground/garment_main.d.ts +2 -0
  669. package/src/engine/physics/cloth/playground/garment_main.d.ts.map +1 -0
  670. package/src/engine/physics/cloth/playground/garment_main.js +633 -0
  671. package/src/engine/physics/cloth/playground/index.html +200 -0
  672. package/src/engine/physics/cloth/playground/main.d.ts +2 -0
  673. package/src/engine/physics/cloth/playground/main.d.ts.map +1 -0
  674. package/src/engine/physics/cloth/playground/main.js +876 -0
  675. package/src/engine/physics/cloth/playground/rig.html +187 -0
  676. package/src/engine/physics/cloth/playground/rig_build.d.ts +81 -0
  677. package/src/engine/physics/cloth/playground/rig_build.d.ts.map +1 -0
  678. package/src/engine/physics/cloth/playground/rig_build.js +296 -0
  679. package/src/engine/physics/cloth/playground/rig_main.d.ts +2 -0
  680. package/src/engine/physics/cloth/playground/rig_main.d.ts.map +1 -0
  681. package/src/engine/physics/cloth/playground/rig_main.js +955 -0
  682. package/src/engine/physics/cloth/solver/ClothState.d.ts +526 -0
  683. package/src/engine/physics/cloth/solver/ClothState.d.ts.map +1 -0
  684. package/src/engine/physics/cloth/solver/ClothState.js +967 -0
  685. package/src/engine/physics/cloth/solver/cloth_color_particles.d.ts +67 -0
  686. package/src/engine/physics/cloth/solver/cloth_color_particles.d.ts.map +1 -0
  687. package/src/engine/physics/cloth/solver/cloth_color_particles.js +220 -0
  688. package/src/engine/physics/cloth/solver/cloth_contact_find.d.ts +87 -0
  689. package/src/engine/physics/cloth/solver/cloth_contact_find.d.ts.map +1 -0
  690. package/src/engine/physics/cloth/solver/cloth_contact_find.js +343 -0
  691. package/src/engine/physics/cloth/solver/cloth_self_find.d.ts +112 -0
  692. package/src/engine/physics/cloth/solver/cloth_self_find.d.ts.map +1 -0
  693. package/src/engine/physics/cloth/solver/cloth_self_find.js +448 -0
  694. package/src/engine/physics/cloth/solver/cloth_solve_vertex.d.ts +16 -0
  695. package/src/engine/physics/cloth/solver/cloth_solve_vertex.d.ts.map +1 -0
  696. package/src/engine/physics/cloth/solver/cloth_solve_vertex.js +216 -0
  697. package/src/engine/physics/cloth/solver/cloth_solver_constants.d.ts +204 -0
  698. package/src/engine/physics/cloth/solver/cloth_solver_constants.d.ts.map +1 -0
  699. package/src/engine/physics/cloth/solver/cloth_solver_constants.js +213 -0
  700. package/src/engine/physics/cloth/solver/cloth_step.d.ts +122 -0
  701. package/src/engine/physics/cloth/solver/cloth_step.d.ts.map +1 -0
  702. package/src/engine/physics/cloth/solver/cloth_step.js +401 -0
  703. package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.d.ts +54 -0
  704. package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.d.ts.map +1 -0
  705. package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.js +56 -0
  706. package/src/engine/physics/cloth/solver/constraint/cloth_backstop_row.d.ts +95 -0
  707. package/src/engine/physics/cloth/solver/constraint/cloth_backstop_row.d.ts.map +1 -0
  708. package/src/engine/physics/cloth/solver/constraint/cloth_backstop_row.js +285 -0
  709. package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.d.ts +125 -0
  710. package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.d.ts.map +1 -0
  711. package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.js +383 -0
  712. package/src/engine/physics/cloth/solver/constraint/cloth_contact_row.d.ts +129 -0
  713. package/src/engine/physics/cloth/solver/constraint/cloth_contact_row.d.ts.map +1 -0
  714. package/src/engine/physics/cloth/solver/constraint/cloth_contact_row.js +501 -0
  715. package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.d.ts +112 -0
  716. package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.d.ts.map +1 -0
  717. package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.js +346 -0
  718. package/src/engine/physics/cloth/solver/constraint/cloth_self_row.d.ts +75 -0
  719. package/src/engine/physics/cloth/solver/constraint/cloth_self_row.d.ts.map +1 -0
  720. package/src/engine/physics/cloth/solver/constraint/cloth_self_row.js +202 -0
  721. package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.d.ts +94 -0
  722. package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.d.ts.map +1 -0
  723. package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.js +383 -0
  724. package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.d.ts +27 -0
  725. package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.d.ts.map +1 -0
  726. package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.js +104 -0
  727. package/src/engine/physics/ecs/PhysicsSystem.d.ts +5 -7
  728. package/src/engine/physics/ecs/PhysicsSystem.d.ts.map +1 -1
  729. package/src/engine/physics/ecs/PhysicsSystem.js +4 -1
  730. package/src/engine/physics/ecs/RigidBodySerializationUpgrader_0_1.d.ts +6 -0
  731. package/src/engine/physics/ecs/RigidBodySerializationUpgrader_0_1.d.ts.map +1 -1
  732. package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
  733. package/src/engine/physics/narrowphase/compute_penetration.d.ts +26 -23
  734. package/src/engine/physics/narrowphase/compute_penetration.d.ts.map +1 -1
  735. package/src/engine/physics/narrowphase/compute_penetration.js +25 -4
  736. package/src/engine/physics/narrowphase/narrowphase_step.d.ts +16 -23
  737. package/src/engine/physics/narrowphase/narrowphase_step.d.ts.map +1 -1
  738. package/src/engine/physics/narrowphase/narrowphase_step.js +15 -4
  739. package/src/engine/physics/narrowphase/refine_ray_concave.d.ts +4 -6
  740. package/src/engine/physics/narrowphase/refine_ray_concave.d.ts.map +1 -1
  741. package/src/engine/physics/narrowphase/refine_ray_concave.js +3 -1
  742. package/src/engine/physics/narrowphase/refine_ray_hit.d.ts +6 -6
  743. package/src/engine/physics/narrowphase/refine_ray_hit.d.ts.map +1 -1
  744. package/src/engine/physics/narrowphase/refine_ray_hit.js +5 -1
  745. package/src/engine/physics/queries/shape_cast.d.ts +9 -7
  746. package/src/engine/physics/queries/shape_cast.d.ts.map +1 -1
  747. package/src/engine/physics/queries/shape_cast.js +8 -1
  748. package/src/engine/platform/EnginePlatform.d.ts +4 -0
  749. package/src/engine/platform/EnginePlatform.d.ts.map +1 -1
  750. package/src/engine/platform/EnginePlatform.js +4 -0
  751. package/src/engine/plugin/EnginePlugin.d.ts +9 -0
  752. package/src/engine/plugin/EnginePlugin.d.ts.map +1 -1
  753. package/src/engine/plugin/EnginePlugin.js +9 -0
  754. package/src/engine/plugin/EnginePluginManager.d.ts +13 -2
  755. package/src/engine/plugin/EnginePluginManager.d.ts.map +1 -1
  756. package/src/engine/plugin/EnginePluginManager.js +10 -0
  757. package/src/engine/save/StorageBackedList.d.ts +8 -4
  758. package/src/engine/save/StorageBackedList.d.ts.map +1 -1
  759. package/src/engine/save/StorageBackedList.js +3 -2
  760. package/src/engine/scene/Scene.d.ts +10 -0
  761. package/src/engine/scene/Scene.d.ts.map +1 -1
  762. package/src/engine/scene/Scene.js +7 -0
  763. package/src/engine/scene/SceneManager.d.ts +4 -0
  764. package/src/engine/scene/SceneManager.d.ts.map +1 -1
  765. package/src/engine/scene/SceneManager.js +4 -0
  766. package/src/engine/scene/SerializedScene.d.ts +8 -4
  767. package/src/engine/scene/SerializedScene.d.ts.map +1 -1
  768. package/src/engine/scene/SerializedScene.js +3 -2
  769. package/src/engine/scene/transitionToScene.d.ts +11 -5
  770. package/src/engine/scene/transitionToScene.d.ts.map +1 -1
  771. package/src/engine/scene/transitionToScene.js +5 -4
  772. package/src/engine/simulation/Ticker.d.ts +5 -2
  773. package/src/engine/simulation/Ticker.d.ts.map +1 -1
  774. package/src/engine/simulation/Ticker.js +2 -1
  775. package/src/engine/sound/SoundEngine.d.ts +4 -0
  776. package/src/engine/sound/SoundEngine.d.ts.map +1 -1
  777. package/src/engine/sound/SoundEngine.js +4 -0
  778. package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.d.ts +7 -3
  779. package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.d.ts.map +1 -1
  780. package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.js +3 -2
  781. package/src/engine/sound/simulation/ecs/AcousticSimulationSystem.d.ts +10 -0
  782. package/src/engine/sound/simulation/ecs/AcousticSimulationSystem.d.ts.map +1 -1
  783. package/src/engine/sound/sopra/SopraEngine.d.ts +5 -0
  784. package/src/engine/sound/sopra/SopraEngine.d.ts.map +1 -1
  785. package/src/engine/sound/sopra/SopraEngine.js +8 -0
  786. package/src/engine/sound/sopra/definition/BusDefinition.d.ts +4 -0
  787. package/src/engine/sound/sopra/definition/BusDefinition.d.ts.map +1 -1
  788. package/src/engine/sound/sopra/definition/BusDefinition.js +4 -0
  789. package/src/engine/sound/sopra/definition/EventDescription.d.ts +1 -0
  790. package/src/engine/sound/sopra/definition/EventDescription.d.ts.map +1 -1
  791. package/src/engine/sound/sopra/definition/EventDescription.js +4 -0
  792. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.d.ts +6 -0
  793. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.d.ts.map +1 -1
  794. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.js +5 -0
  795. package/src/engine/sound/sopra/definition/clip/BlendContainerAudioClip.d.ts +1 -1
  796. package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.d.ts +1 -0
  797. package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.d.ts.map +1 -1
  798. package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.d.ts +1 -1
  799. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts +10 -2
  800. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts.map +1 -1
  801. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.js +7 -0
  802. package/src/engine/sound/sopra/definition/clip/SequenceContainerAudioClip.d.ts +1 -1
  803. package/src/engine/sound/sopra/definition/clip/SwitchContainerAudioClip.d.ts +1 -1
  804. package/src/engine/sound/sopra/runtime/BusGraph.d.ts +4 -0
  805. package/src/engine/sound/sopra/runtime/BusGraph.d.ts.map +1 -1
  806. package/src/engine/sound/sopra/runtime/BusGraph.js +4 -0
  807. package/src/engine/sound/sopra/runtime/EventInstance.d.ts +9 -1
  808. package/src/engine/sound/sopra/runtime/EventInstance.d.ts.map +1 -1
  809. package/src/engine/sound/sopra/runtime/EventInstance.js +11 -0
  810. package/src/engine/sound/sopra/runtime/VoiceManager.d.ts +2 -0
  811. package/src/engine/sound/sopra/runtime/VoiceManager.d.ts.map +1 -1
  812. package/src/engine/sound/sopra/runtime/VoiceManager.js +5 -0
  813. package/src/engine/ui/DraggableAspect.d.ts +14 -6
  814. package/src/engine/ui/DraggableAspect.d.ts.map +1 -1
  815. package/src/engine/ui/DraggableAspect.js +6 -5
  816. package/src/engine/ui/GUIEngine.d.ts +73 -26
  817. package/src/engine/ui/GUIEngine.d.ts.map +1 -1
  818. package/src/engine/ui/GUIEngine.js +37 -19
  819. package/src/engine/ui/bindings/DomElementBindingDescription.d.ts +7 -3
  820. package/src/engine/ui/bindings/DomElementBindingDescription.d.ts.map +1 -1
  821. package/src/engine/ui/bindings/DomElementBindingDescription.js +3 -2
  822. package/src/engine/ui/modal/ModalStack.d.ts +4 -0
  823. package/src/engine/ui/modal/ModalStack.d.ts.map +1 -1
  824. package/src/engine/ui/modal/ModalStack.js +4 -0
  825. package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts +4 -0
  826. package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts.map +1 -1
  827. package/src/engine/ui/notification/AnimatedObjectEmitter.js +4 -0
  828. package/src/engine/ui/notification/NotificationManager.d.ts +21 -8
  829. package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
  830. package/src/engine/ui/notification/NotificationManager.js +10 -3
  831. package/src/engine/ui/notification/ViewEmitter.d.ts +8 -2
  832. package/src/engine/ui/notification/ViewEmitter.d.ts.map +1 -1
  833. package/src/engine/ui/notification/ViewEmitter.js +6 -1
  834. package/src/engine/ui/scene/SceneGUIContext.d.ts +4 -0
  835. package/src/engine/ui/scene/SceneGUIContext.d.ts.map +1 -1
  836. package/src/engine/ui/scene/SceneGUIContext.js +4 -0
  837. package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.d.ts +9 -4
  838. package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.d.ts.map +1 -1
  839. package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.js +4 -3
  840. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts +9 -4
  841. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts.map +1 -1
  842. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.js +4 -3
  843. package/src/generation/grid/generation/GridTaskApplyActionToCells.d.ts +9 -4
  844. package/src/generation/grid/generation/GridTaskApplyActionToCells.d.ts.map +1 -1
  845. package/src/generation/grid/generation/GridTaskApplyActionToCells.js +4 -3
  846. package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.d.ts +9 -4
  847. package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.d.ts.map +1 -1
  848. package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.js +4 -3
  849. package/src/generation/grid/generation/grid/select/CellSupplierBestN.d.ts +11 -5
  850. package/src/generation/grid/generation/grid/select/CellSupplierBestN.d.ts.map +1 -1
  851. package/src/generation/grid/generation/grid/select/CellSupplierBestN.js +5 -4
  852. package/src/generation/grid/generation/road/GridTaskGenerateRoads.d.ts +9 -4
  853. package/src/generation/grid/generation/road/GridTaskGenerateRoads.d.ts.map +1 -1
  854. package/src/generation/grid/generation/road/GridTaskGenerateRoads.js +12 -10
  855. package/src/generation/grid/generation/util/buildDistanceMapToObjective.d.ts +19 -9
  856. package/src/generation/grid/generation/util/buildDistanceMapToObjective.d.ts.map +1 -1
  857. package/src/generation/grid/generation/util/buildDistanceMapToObjective.js +9 -8
  858. package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts +17 -8
  859. package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts.map +1 -1
  860. package/src/generation/grid/generation/util/buildPathFromDistanceMap.js +8 -7
  861. package/src/generation/markers/GridActionRuleSet.d.ts +11 -5
  862. package/src/generation/markers/GridActionRuleSet.d.ts.map +1 -1
  863. package/src/generation/markers/GridActionRuleSet.js +5 -4
  864. package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.d.ts +9 -4
  865. package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.d.ts.map +1 -1
  866. package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.js +4 -3
  867. package/src/generation/markers/actions/MarkerNodeActionImaginary.d.ts +9 -4
  868. package/src/generation/markers/actions/MarkerNodeActionImaginary.d.ts.map +1 -1
  869. package/src/generation/markers/actions/MarkerNodeActionImaginary.js +4 -3
  870. package/src/generation/markers/actions/MarkerProcessingRule.d.ts +11 -5
  871. package/src/generation/markers/actions/MarkerProcessingRule.d.ts.map +1 -1
  872. package/src/generation/markers/actions/MarkerProcessingRule.js +5 -4
  873. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts +5 -2
  874. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts.map +1 -1
  875. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.js +2 -1
  876. package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.d.ts +13 -6
  877. package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.d.ts.map +1 -1
  878. package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.js +6 -5
  879. package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.d.ts +7 -3
  880. package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.d.ts.map +1 -1
  881. package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.js +3 -2
  882. package/src/generation/placement/GridCellPlacementRule.d.ts +15 -7
  883. package/src/generation/placement/GridCellPlacementRule.d.ts.map +1 -1
  884. package/src/generation/placement/GridCellPlacementRule.js +7 -6
  885. package/src/shade/descriptor/ObjectDescriptorBase.d.ts +8 -3
  886. package/src/shade/descriptor/ObjectDescriptorBase.d.ts.map +1 -1
  887. package/src/shade/descriptor/ObjectDescriptorBase.js +7 -2
  888. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.d.ts +12 -0
  889. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.d.ts.map +1 -1
  890. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.js +8 -0
  891. package/src/shade/descriptor/binding/BufferBindingLayout.d.ts +11 -6
  892. package/src/shade/descriptor/binding/BufferBindingLayout.d.ts.map +1 -1
  893. package/src/shade/descriptor/binding/BufferBindingLayout.js +5 -4
  894. package/src/shade/descriptor/binding/SamplerBindingLayout.d.ts +2 -2
  895. package/src/shade/descriptor/binding/SamplerBindingLayout.d.ts.map +1 -1
  896. package/src/shade/descriptor/binding/SamplerBindingLayout.js +1 -1
  897. package/src/shade/descriptor/binding/StorageTextureBindingLayout.d.ts +2 -2
  898. package/src/shade/descriptor/binding/StorageTextureBindingLayout.d.ts.map +1 -1
  899. package/src/shade/descriptor/binding/StorageTextureBindingLayout.js +1 -1
  900. package/src/shade/descriptor/binding/TextureBindingLayout.d.ts +4 -4
  901. package/src/shade/descriptor/binding/TextureBindingLayout.d.ts.map +1 -1
  902. package/src/shade/descriptor/binding/TextureBindingLayout.js +2 -2
  903. package/src/shade/descriptor/blend/BlendComponent.d.ts +6 -6
  904. package/src/shade/descriptor/blend/BlendComponent.d.ts.map +1 -1
  905. package/src/shade/descriptor/blend/BlendComponent.js +3 -3
  906. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.d.ts +12 -0
  907. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.d.ts.map +1 -1
  908. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.js +8 -0
  909. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.d.ts +18 -5
  910. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.d.ts.map +1 -1
  911. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.js +14 -4
  912. package/src/shade/descriptor/pipeline/render/DepthStencilState.d.ts +4 -1
  913. package/src/shade/descriptor/pipeline/render/DepthStencilState.d.ts.map +1 -1
  914. package/src/shade/descriptor/pipeline/render/DepthStencilState.js +3 -0
  915. package/src/shade/descriptor/pipeline/render/FragmentState.d.ts +5 -2
  916. package/src/shade/descriptor/pipeline/render/FragmentState.d.ts.map +1 -1
  917. package/src/shade/descriptor/pipeline/render/FragmentState.js +4 -1
  918. package/src/shade/descriptor/pipeline/render/PrimitiveState.d.ts +8 -8
  919. package/src/shade/descriptor/pipeline/render/PrimitiveState.d.ts.map +1 -1
  920. package/src/shade/descriptor/pipeline/render/PrimitiveState.js +4 -4
  921. package/src/shade/descriptor/pipeline/render/StencilFaceState.d.ts +16 -4
  922. package/src/shade/descriptor/pipeline/render/StencilFaceState.d.ts.map +1 -1
  923. package/src/shade/descriptor/pipeline/render/StencilFaceState.js +12 -0
  924. package/src/shade/descriptor/pipeline/render/VertexState.d.ts +5 -2
  925. package/src/shade/descriptor/pipeline/render/VertexState.d.ts.map +1 -1
  926. package/src/shade/descriptor/pipeline/render/VertexState.js +4 -1
  927. package/src/shade/descriptor/texture/SamplerDescriptor.d.ts +24 -6
  928. package/src/shade/descriptor/texture/SamplerDescriptor.d.ts.map +1 -1
  929. package/src/shade/descriptor/texture/SamplerDescriptor.js +18 -0
  930. package/src/shade/descriptor/texture/TextureDescriptor.d.ts +2 -2
  931. package/src/shade/descriptor/texture/TextureDescriptor.d.ts.map +1 -1
  932. package/src/shade/descriptor/texture/TextureDescriptor.js +1 -1
  933. package/src/shade/device/ShadeGPUCommandContext.d.ts +46 -12
  934. package/src/shade/device/ShadeGPUCommandContext.d.ts.map +1 -1
  935. package/src/shade/device/ShadeGPUCommandContext.js +28 -8
  936. package/src/shade/device/graph/GraphicsExecutionContext.d.ts +6 -0
  937. package/src/shade/device/graph/GraphicsExecutionContext.d.ts.map +1 -1
  938. package/src/shade/device/graph/GraphicsExecutionContext.js +5 -0
  939. package/src/shade/device/graph/TextureResourceDescriptor.d.ts +13 -6
  940. package/src/shade/device/graph/TextureResourceDescriptor.d.ts.map +1 -1
  941. package/src/shade/device/graph/TextureResourceDescriptor.js +6 -5
  942. package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts +6 -0
  943. package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts.map +1 -1
  944. package/src/shade/device/pass/ShadeGPUComputePassEncoder.js +5 -0
  945. package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts +6 -0
  946. package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts.map +1 -1
  947. package/src/shade/device/pass/ShadeGPURenderPassEncoder.js +5 -0
  948. package/src/shade/device/pipeline/ComputePipelineManager.d.ts +9 -1
  949. package/src/shade/device/pipeline/ComputePipelineManager.d.ts.map +1 -1
  950. package/src/shade/device/pipeline/ComputePipelineManager.js +6 -0
  951. package/src/shade/device/pipeline/PipelineLayoutManager.d.ts +6 -0
  952. package/src/shade/device/pipeline/PipelineLayoutManager.d.ts.map +1 -1
  953. package/src/shade/device/pipeline/PipelineLayoutManager.js +5 -0
  954. package/src/shade/device/pipeline/RenderPipelineManager.d.ts +7 -1
  955. package/src/shade/device/pipeline/RenderPipelineManager.d.ts.map +1 -1
  956. package/src/shade/device/pipeline/RenderPipelineManager.js +5 -0
  957. package/src/shade/device/shader/ShaderModuleCompiler.d.ts +4 -0
  958. package/src/shade/device/shader/ShaderModuleCompiler.d.ts.map +1 -1
  959. package/src/shade/device/shader/ShaderModuleCompiler.js +4 -0
  960. package/src/shade/device/timing/profile/GPUFrameRecorder.d.ts +6 -0
  961. package/src/shade/device/timing/profile/GPUFrameRecorder.d.ts.map +1 -1
  962. package/src/shade/device/timing/profile/GPUFrameRecorder.js +5 -0
  963. package/src/shade/device/timing/profile/GPUProfileFrame.d.ts +6 -0
  964. package/src/shade/device/timing/profile/GPUProfileFrame.d.ts.map +1 -1
  965. package/src/shade/device/timing/profile/GPUProfileFrame.js +5 -0
  966. package/src/shade/device/timing/profile/GPUProfileSession.d.ts +1 -0
  967. package/src/shade/device/timing/profile/GPUProfileSession.d.ts.map +1 -1
  968. package/src/shade/device/timing/profile/GPUProfileSession.js +4 -0
  969. package/src/shade/device/timing/profile/GPUProfileSpan.d.ts +4 -0
  970. package/src/shade/device/timing/profile/GPUProfileSpan.d.ts.map +1 -1
  971. package/src/shade/device/timing/profile/GPUProfileSpan.js +4 -0
  972. package/src/shade/playground/add_random_meshes.d.ts +19 -8
  973. package/src/shade/playground/add_random_meshes.d.ts.map +1 -1
  974. package/src/shade/playground/add_random_meshes.js +8 -7
  975. package/src/shade/playground/ground_seam/capture_scene_color.d.ts +4 -0
  976. package/src/shade/playground/ground_seam/capture_scene_color.d.ts.map +1 -1
  977. package/src/shade/playground/particle_ecs/index.html +0 -2
  978. package/src/shade/playground/particle_ecs/main.js +8 -29
  979. package/src/shade/playground/particle_system/main.js +8 -21
  980. package/src/shade/playground/particle_system/particle_prototype.js +8 -8
  981. package/src/shade/playground/particle_system/particle_scene.d.ts +0 -61
  982. package/src/shade/playground/particle_system/particle_scene.d.ts.map +1 -1
  983. package/src/shade/playground/particle_system/particle_scene.js +0 -57
  984. package/src/shade/playground/ssr_variance/reference.d.ts +1 -1
  985. package/src/shade/playground/ssr_variance/reference.d.ts.map +1 -1
  986. package/src/shade/playground/vgeo_viewer/README.md +29 -2
  987. package/src/shade/playground/vgeo_viewer/cut_geometry.d.ts.map +1 -1
  988. package/src/shade/playground/vgeo_viewer/cut_geometry.js +3 -40
  989. package/src/shade/playground/vgeo_viewer/main.js +101 -50
  990. package/src/shade/playground/vgeo_viewer/select_cut.d.ts +19 -0
  991. package/src/shade/playground/vgeo_viewer/select_cut.d.ts.map +1 -1
  992. package/src/shade/playground/vgeo_viewer/select_cut.js +53 -9
  993. package/src/shade/renderer/GPUSamplerManager.d.ts +4 -0
  994. package/src/shade/renderer/GPUSamplerManager.d.ts.map +1 -1
  995. package/src/shade/renderer/GPUSamplerManager.js +4 -0
  996. package/src/shade/renderer/GraphicsContext.d.ts +2 -0
  997. package/src/shade/renderer/GraphicsContext.d.ts.map +1 -1
  998. package/src/shade/renderer/GraphicsContext.js +5 -0
  999. package/src/shade/renderer/Renderer.d.ts +14 -4
  1000. package/src/shade/renderer/Renderer.d.ts.map +1 -1
  1001. package/src/shade/renderer/Renderer.js +70 -67
  1002. package/src/shade/renderer/ResourceManager.d.ts +10 -0
  1003. package/src/shade/renderer/ResourceManager.d.ts.map +1 -1
  1004. package/src/shade/renderer/ResourceManager.js +7 -0
  1005. package/src/shade/renderer/animation/GPUAnimationManager.d.ts +18 -11
  1006. package/src/shade/renderer/animation/GPUAnimationManager.d.ts.map +1 -1
  1007. package/src/shade/renderer/animation/GPUAnimationManager.js +2063 -1958
  1008. package/src/shade/renderer/animation/ShadeAnimationChannel.d.ts +2 -0
  1009. package/src/shade/renderer/animation/ShadeAnimationChannel.d.ts.map +1 -1
  1010. package/src/shade/renderer/animation/ShadeAnimationChannel.js +5 -0
  1011. package/src/shade/renderer/animation/ShadeAnimationClip.d.ts +4 -0
  1012. package/src/shade/renderer/animation/ShadeAnimationClip.d.ts.map +1 -1
  1013. package/src/shade/renderer/animation/ShadeAnimationClip.js +4 -0
  1014. package/src/shade/renderer/animation/Skin.d.ts +6 -0
  1015. package/src/shade/renderer/animation/Skin.d.ts.map +1 -1
  1016. package/src/shade/renderer/animation/Skin.js +5 -0
  1017. package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts +48 -0
  1018. package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts.map +1 -1
  1019. package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.js +201 -14
  1020. package/src/shade/renderer/binding/BindGroupDescriptor.d.ts +2 -1
  1021. package/src/shade/renderer/binding/BindGroupDescriptor.d.ts.map +1 -1
  1022. package/src/shade/renderer/binding/BindGroupDescriptor.js +4 -0
  1023. package/src/shade/renderer/binding/BindGroupManager.d.ts +1 -0
  1024. package/src/shade/renderer/binding/BindGroupManager.d.ts.map +1 -1
  1025. package/src/shade/renderer/binding/BindGroupManager.js +4 -0
  1026. package/src/shade/renderer/buffer/GPUBufferAllocatorNative.d.ts +4 -0
  1027. package/src/shade/renderer/buffer/GPUBufferAllocatorNative.d.ts.map +1 -1
  1028. package/src/shade/renderer/buffer/GPUBufferAllocatorNative.js +4 -0
  1029. package/src/shade/renderer/buffer/GPUTypedBuffer.d.ts +20 -8
  1030. package/src/shade/renderer/buffer/GPUTypedBuffer.d.ts.map +1 -1
  1031. package/src/shade/renderer/buffer/GPUTypedBuffer.js +11 -6
  1032. package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.d.ts +15 -7
  1033. package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.d.ts.map +1 -1
  1034. package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.js +7 -6
  1035. package/src/shade/renderer/buffer/inspect_gpu_buffer.d.ts +26 -12
  1036. package/src/shade/renderer/buffer/inspect_gpu_buffer.d.ts.map +1 -1
  1037. package/src/shade/renderer/buffer/inspect_gpu_buffer.js +12 -10
  1038. package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.d.ts +13 -6
  1039. package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.d.ts.map +1 -1
  1040. package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.js +6 -5
  1041. package/src/shade/renderer/buffer/table/GPUDatabase.d.ts +13 -5
  1042. package/src/shade/renderer/buffer/table/GPUDatabase.d.ts.map +1 -1
  1043. package/src/shade/renderer/buffer/table/GPUDatabase.js +201 -66
  1044. package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts +97 -3
  1045. package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts.map +1 -1
  1046. package/src/shade/renderer/buffer/table/GPUTypedTable.js +419 -2
  1047. package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts +4 -0
  1048. package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts.map +1 -1
  1049. package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.js +4 -0
  1050. package/src/shade/renderer/buffer/table/GPU_TABLE_PARTIAL_UPLOAD_DESCRIPTOR_WORDS.d.ts +14 -0
  1051. package/src/shade/renderer/buffer/table/GPU_TABLE_PARTIAL_UPLOAD_DESCRIPTOR_WORDS.d.ts.map +1 -0
  1052. package/src/shade/renderer/buffer/table/GPU_TABLE_PARTIAL_UPLOAD_DESCRIPTOR_WORDS.js +13 -0
  1053. package/src/shade/renderer/buffer/table/gpu_table_partial_upload_shader.d.ts +17 -0
  1054. package/src/shade/renderer/buffer/table/gpu_table_partial_upload_shader.d.ts.map +1 -0
  1055. package/src/shade/renderer/buffer/table/gpu_table_partial_upload_shader.js +116 -0
  1056. package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.d.ts +11 -4
  1057. package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.d.ts.map +1 -1
  1058. package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.js +9 -3
  1059. package/src/shade/renderer/camera/CameraManager.d.ts +4 -0
  1060. package/src/shade/renderer/camera/CameraManager.d.ts.map +1 -1
  1061. package/src/shade/renderer/camera/CameraManager.js +4 -0
  1062. package/src/shade/renderer/camera/GPUCameraContext.d.ts +4 -2
  1063. package/src/shade/renderer/camera/GPUCameraContext.d.ts.map +1 -1
  1064. package/src/shade/renderer/camera/GPUCameraContext.js +5 -0
  1065. package/src/shade/renderer/extension/FrameContext.d.ts +15 -5
  1066. package/src/shade/renderer/extension/FrameContext.d.ts.map +1 -1
  1067. package/src/shade/renderer/extension/FrameContext.js +7 -0
  1068. package/src/shade/renderer/extension/FrameRecord.d.ts +7 -1
  1069. package/src/shade/renderer/extension/FrameRecord.d.ts.map +1 -1
  1070. package/src/shade/renderer/extension/FrameRecord.js +5 -0
  1071. package/src/shade/renderer/extension/RenderExtension.d.ts +4 -0
  1072. package/src/shade/renderer/extension/RenderExtension.d.ts.map +1 -1
  1073. package/src/shade/renderer/extension/RenderExtension.js +4 -0
  1074. package/src/shade/renderer/geometry/Attribute.d.ts +2 -2
  1075. package/src/shade/renderer/geometry/Attribute.d.ts.map +1 -1
  1076. package/src/shade/renderer/geometry/Attribute.js +1 -1
  1077. package/src/shade/renderer/geometry/GPUGeometryManager.d.ts +30 -2
  1078. package/src/shade/renderer/geometry/GPUGeometryManager.d.ts.map +1 -1
  1079. package/src/shade/renderer/geometry/GPUGeometryManager.js +642 -591
  1080. package/src/shade/renderer/geometry/GPUGeometryMetadata.d.ts +4 -0
  1081. package/src/shade/renderer/geometry/GPUGeometryMetadata.d.ts.map +1 -1
  1082. package/src/shade/renderer/geometry/GPUGeometryMetadata.js +4 -0
  1083. package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.d.ts +7 -3
  1084. package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.d.ts.map +1 -1
  1085. package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.js +3 -2
  1086. package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.d.ts +13 -4
  1087. package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.d.ts.map +1 -1
  1088. package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.js +843 -730
  1089. package/src/shade/renderer/geometry/bvh/GPUGeometryMeshletsBVH.d.ts +12 -0
  1090. package/src/shade/renderer/geometry/bvh/GPUGeometryMeshletsBVH.d.ts.map +1 -1
  1091. package/src/shade/renderer/geometry/bvh/GPUGeometryMeshletsBVH.js +13 -0
  1092. package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.d.ts +11 -5
  1093. package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.d.ts.map +1 -1
  1094. package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.js +5 -4
  1095. package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.d.ts +29 -4
  1096. package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.d.ts.map +1 -1
  1097. package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.js +195 -33
  1098. package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts +1 -0
  1099. package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts.map +1 -1
  1100. package/src/shade/renderer/geometry/meshlet/MeshletBatch.js +4 -0
  1101. package/src/shade/renderer/geometry/meshlet_batch_to_bvh.d.ts +13 -6
  1102. package/src/shade/renderer/geometry/meshlet_batch_to_bvh.d.ts.map +1 -1
  1103. package/src/shade/renderer/geometry/meshlet_batch_to_bvh.js +6 -5
  1104. package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.d.ts +2 -0
  1105. package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.d.ts.map +1 -1
  1106. package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.js +5 -0
  1107. package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.d.ts +13 -6
  1108. package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.d.ts.map +1 -1
  1109. package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.js +6 -5
  1110. package/src/shade/renderer/geometry/virtual/MICRON_COMPARISON_2026_08_20.md +17 -0
  1111. package/src/shade/renderer/geometry/virtual/VGEO_FORMAT.md +141 -24
  1112. package/src/shade/renderer/geometry/virtual/VIRTUAL_GEOMETRY_DESIGN.md +204 -64
  1113. package/src/shade/renderer/geometry/virtual/VIRTUAL_GEOMETRY_PLAN.md +110 -10
  1114. package/src/shade/renderer/geometry/virtual/VK_LOD_CLUSTERS_COMPARISON_2026_08_20.md +19 -0
  1115. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.d.ts +19 -6
  1116. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.d.ts.map +1 -1
  1117. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.js +26 -7
  1118. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts +204 -14
  1119. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts.map +1 -1
  1120. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.js +803 -51
  1121. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.d.ts +49 -13
  1122. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.d.ts.map +1 -1
  1123. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.js +52 -14
  1124. package/src/shade/renderer/geometry/virtual/format/read/tool/VGEO_MAX_AUDIT_BYTES.d.ts +20 -0
  1125. package/src/shade/renderer/geometry/virtual/format/read/tool/VGEO_MAX_AUDIT_BYTES.d.ts.map +1 -0
  1126. package/src/shade/renderer/geometry/virtual/format/read/tool/VGEO_MAX_AUDIT_BYTES.js +19 -0
  1127. package/src/shade/renderer/geometry/virtual/format/read/tool/vgeo_audit_container.d.ts +27 -0
  1128. package/src/shade/renderer/geometry/virtual/format/read/tool/vgeo_audit_container.d.ts.map +1 -0
  1129. package/src/shade/renderer/geometry/virtual/format/read/tool/vgeo_audit_container.js +48 -0
  1130. package/src/shade/renderer/geometry/virtual/format/read/tool/vgeo_install_all_pages.d.ts +29 -0
  1131. package/src/shade/renderer/geometry/virtual/format/read/tool/vgeo_install_all_pages.d.ts.map +1 -0
  1132. package/src/shade/renderer/geometry/virtual/format/read/tool/vgeo_install_all_pages.js +60 -0
  1133. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.d.ts +8 -1
  1134. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.d.ts.map +1 -1
  1135. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.js +32 -2
  1136. package/src/shade/renderer/geometry/virtual/residency/VGeoResidencyManager.d.ts +258 -0
  1137. package/src/shade/renderer/geometry/virtual/residency/VGeoResidencyManager.d.ts.map +1 -0
  1138. package/src/shade/renderer/geometry/virtual/residency/VGeoResidencyManager.js +723 -0
  1139. package/src/shade/renderer/geometry/virtual/residency/VGeoResidencyOptions.d.ts +49 -0
  1140. package/src/shade/renderer/geometry/virtual/residency/VGeoResidencyOptions.d.ts.map +1 -0
  1141. package/src/shade/renderer/geometry/virtual/residency/VGeoResidencyOptions.js +50 -0
  1142. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts +11 -5
  1143. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts.map +1 -1
  1144. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.js +5 -4
  1145. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.d.ts +12 -5
  1146. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.d.ts.map +1 -1
  1147. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.js +5 -4
  1148. package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.d.ts +11 -5
  1149. package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.d.ts.map +1 -1
  1150. package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.js +5 -4
  1151. package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.d.ts +5 -1
  1152. package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.d.ts.map +1 -1
  1153. package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.js +4 -0
  1154. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts +4 -0
  1155. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts.map +1 -1
  1156. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.js +4 -0
  1157. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts +7 -1
  1158. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts.map +1 -1
  1159. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.js +5 -0
  1160. package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.d.ts +11 -5
  1161. package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.d.ts.map +1 -1
  1162. package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.js +5 -4
  1163. package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.d.ts +9 -4
  1164. package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.d.ts.map +1 -1
  1165. package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.js +4 -3
  1166. package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.d.ts +9 -4
  1167. package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.d.ts.map +1 -1
  1168. package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.js +4 -3
  1169. package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.d.ts +7 -3
  1170. package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.d.ts.map +1 -1
  1171. package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.js +3 -2
  1172. package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.d.ts +28 -8
  1173. package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.d.ts.map +1 -1
  1174. package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.js +17 -6
  1175. package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.d.ts +13 -6
  1176. package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.d.ts.map +1 -1
  1177. package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.js +6 -5
  1178. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.d.ts +15 -7
  1179. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.d.ts.map +1 -1
  1180. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.js +7 -6
  1181. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.d.ts +17 -8
  1182. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.d.ts.map +1 -1
  1183. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.js +8 -7
  1184. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.d.ts +17 -8
  1185. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.d.ts.map +1 -1
  1186. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.js +8 -7
  1187. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts +15 -7
  1188. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts.map +1 -1
  1189. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.js +7 -6
  1190. package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.d.ts +19 -9
  1191. package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.d.ts.map +1 -1
  1192. package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.js +9 -8
  1193. package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.d.ts +9 -4
  1194. package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.d.ts.map +1 -1
  1195. package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.js +4 -3
  1196. package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.d.ts +11 -5
  1197. package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.d.ts.map +1 -1
  1198. package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.js +5 -4
  1199. package/src/shade/renderer/hiz/HierarchicalZBuffer.d.ts +9 -1
  1200. package/src/shade/renderer/hiz/HierarchicalZBuffer.d.ts.map +1 -1
  1201. package/src/shade/renderer/hiz/HierarchicalZBuffer.js +6 -0
  1202. package/src/shade/renderer/hiz/generate_downsampler_code.d.ts +11 -5
  1203. package/src/shade/renderer/hiz/generate_downsampler_code.d.ts.map +1 -1
  1204. package/src/shade/renderer/hiz/generate_downsampler_code.js +5 -4
  1205. package/src/shade/renderer/hiz/graph_build_hzb.d.ts +13 -6
  1206. package/src/shade/renderer/hiz/graph_build_hzb.d.ts.map +1 -1
  1207. package/src/shade/renderer/hiz/graph_build_hzb.js +6 -5
  1208. package/src/shade/renderer/light/GPULightCollection.d.ts +4 -1
  1209. package/src/shade/renderer/light/GPULightCollection.d.ts.map +1 -1
  1210. package/src/shade/renderer/light/GPULightCollection.js +6 -0
  1211. package/src/shade/renderer/light/LightCollection.d.ts +9 -3
  1212. package/src/shade/renderer/light/LightCollection.d.ts.map +1 -1
  1213. package/src/shade/renderer/light/LightCollection.js +5 -0
  1214. package/src/shade/renderer/light/cluster/cull/graph_cull_lights.d.ts +11 -5
  1215. package/src/shade/renderer/light/cluster/cull/graph_cull_lights.d.ts.map +1 -1
  1216. package/src/shade/renderer/light/cluster/cull/graph_cull_lights.js +17 -14
  1217. package/src/shade/renderer/light/cluster/graph_assign_clsuters.d.ts +13 -6
  1218. package/src/shade/renderer/light/cluster/graph_assign_clsuters.d.ts.map +1 -1
  1219. package/src/shade/renderer/light/cluster/graph_assign_clsuters.js +6 -5
  1220. package/src/shade/renderer/light/cluster/graph_build_light_clusters.d.ts +13 -6
  1221. package/src/shade/renderer/light/cluster/graph_build_light_clusters.d.ts.map +1 -1
  1222. package/src/shade/renderer/light/cluster/graph_build_light_clusters.js +6 -5
  1223. package/src/shade/renderer/light/environment/graph_filter_environment_map.d.ts +7 -3
  1224. package/src/shade/renderer/light/environment/graph_filter_environment_map.d.ts.map +1 -1
  1225. package/src/shade/renderer/light/environment/graph_filter_environment_map.js +3 -2
  1226. package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.d.ts +11 -5
  1227. package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.d.ts.map +1 -1
  1228. package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.js +5 -4
  1229. package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts +1 -1
  1230. package/src/shade/renderer/material/GPUMaterialContext.d.ts +17 -1
  1231. package/src/shade/renderer/material/GPUMaterialContext.d.ts.map +1 -1
  1232. package/src/shade/renderer/material/GPUMaterialContext.js +10 -0
  1233. package/src/shade/renderer/material/GPUMaterialManager.d.ts +19 -5
  1234. package/src/shade/renderer/material/GPUMaterialManager.d.ts.map +1 -1
  1235. package/src/shade/renderer/material/GPUMaterialManager.js +19 -4
  1236. package/src/shade/renderer/material/ShadeMaterial.d.ts +2 -1
  1237. package/src/shade/renderer/material/ShadeMaterial.d.ts.map +1 -1
  1238. package/src/shade/renderer/material/ShadeMaterial.js +4 -0
  1239. package/src/shade/renderer/material/StandardShadeMaterial.d.ts +6 -0
  1240. package/src/shade/renderer/material/StandardShadeMaterial.d.ts.map +1 -1
  1241. package/src/shade/renderer/material/StandardShadeMaterial.js +5 -0
  1242. package/src/shade/renderer/material/resident/GPUResidentMaterialContext.d.ts +12 -0
  1243. package/src/shade/renderer/material/resident/GPUResidentMaterialContext.d.ts.map +1 -1
  1244. package/src/shade/renderer/material/resident/GPUResidentMaterialContext.js +8 -0
  1245. package/src/shade/renderer/particles/DESIGN.md +82 -69
  1246. package/src/shade/renderer/particles/GPUParticleSystem.d.ts +93 -48
  1247. package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
  1248. package/src/shade/renderer/particles/GPUParticleSystem.js +117 -176
  1249. package/src/shade/renderer/particles/ParticleConstants.d.ts +6 -12
  1250. package/src/shade/renderer/particles/ParticleConstants.d.ts.map +1 -1
  1251. package/src/shade/renderer/particles/ParticleConstants.js +6 -13
  1252. package/src/shade/renderer/particles/coherence/graph_particle_bucket.d.ts +4 -4
  1253. package/src/shade/renderer/particles/coherence/graph_particle_bucket.js +6 -6
  1254. package/src/shade/renderer/particles/coherence/particle_program_buckets.d.ts +2 -1
  1255. package/src/shade/renderer/particles/coherence/particle_program_buckets.d.ts.map +1 -1
  1256. package/src/shade/renderer/particles/coherence/particle_program_buckets.js +6 -8
  1257. package/src/shade/renderer/particles/coherence/shader_particle_bucket.d.ts.map +1 -1
  1258. package/src/shade/renderer/particles/coherence/shader_particle_bucket.js +4 -3
  1259. package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.d.ts +10 -14
  1260. package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.d.ts.map +1 -1
  1261. package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.js +10 -14
  1262. package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.d.ts +6 -5
  1263. package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.d.ts.map +1 -1
  1264. package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.js +6 -5
  1265. package/src/shade/renderer/particles/graph_particles.d.ts +19 -32
  1266. package/src/shade/renderer/particles/graph_particles.d.ts.map +1 -1
  1267. package/src/shade/renderer/particles/graph_particles.js +18 -25
  1268. package/src/shade/renderer/particles/graph_particles_avboit.js +16 -16
  1269. package/src/shade/renderer/particles/runtime/EmitterRegistry.d.ts +3 -2
  1270. package/src/shade/renderer/particles/runtime/EmitterRegistry.d.ts.map +1 -1
  1271. package/src/shade/renderer/particles/runtime/EmitterRegistry.js +31 -27
  1272. package/src/shade/renderer/particles/runtime/ParticleEmitter.d.ts +4 -4
  1273. package/src/shade/renderer/particles/runtime/ParticleEmitter.js +4 -4
  1274. package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.js +4 -4
  1275. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts +7 -6
  1276. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts.map +1 -1
  1277. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.js +7 -6
  1278. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts +4 -3
  1279. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts.map +1 -1
  1280. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.js +4 -3
  1281. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.d.ts +2 -2
  1282. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.js +10 -10
  1283. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +3 -3
  1284. package/src/shade/renderer/particles/shaders/shader_particle_avboit_splat.d.ts.map +1 -1
  1285. package/src/shade/renderer/particles/shaders/shader_particle_avboit_splat.js +2 -1
  1286. package/src/shade/renderer/particles/shaders/shader_particle_finalize.d.ts.map +1 -1
  1287. package/src/shade/renderer/particles/shaders/shader_particle_finalize.js +13 -16
  1288. package/src/shade/renderer/particles/shaders/shader_particle_render.d.ts.map +1 -1
  1289. package/src/shade/renderer/particles/shaders/shader_particle_render.js +22 -19
  1290. package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.d.ts +10 -3
  1291. package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.d.ts.map +1 -1
  1292. package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.js +12 -2
  1293. package/src/shade/renderer/path_tracer/graph_path_trace_scene.d.ts +7 -3
  1294. package/src/shade/renderer/path_tracer/graph_path_trace_scene.d.ts.map +1 -1
  1295. package/src/shade/renderer/path_tracer/graph_path_trace_scene.js +3 -2
  1296. package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.d.ts +11 -5
  1297. package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.d.ts.map +1 -1
  1298. package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.js +5 -4
  1299. package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.d.ts +13 -6
  1300. package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.d.ts.map +1 -1
  1301. package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.js +11 -9
  1302. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts +31 -15
  1303. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts.map +1 -1
  1304. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.js +15 -14
  1305. package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.d.ts +21 -10
  1306. package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.d.ts.map +1 -1
  1307. package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.js +10 -9
  1308. package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.d.ts +17 -8
  1309. package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.d.ts.map +1 -1
  1310. package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.js +8 -7
  1311. package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.d.ts +6 -0
  1312. package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.d.ts.map +1 -1
  1313. package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.js +5 -0
  1314. package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.d.ts +6 -0
  1315. package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.d.ts.map +1 -1
  1316. package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.js +5 -0
  1317. package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.d.ts +14 -6
  1318. package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.d.ts.map +1 -1
  1319. package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.js +6 -4
  1320. package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.d.ts +13 -6
  1321. package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.d.ts.map +1 -1
  1322. package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.js +6 -5
  1323. package/src/shade/renderer/postprocess/gtao/render_copy_texture.d.ts +28 -13
  1324. package/src/shade/renderer/postprocess/gtao/render_copy_texture.d.ts.map +1 -1
  1325. package/src/shade/renderer/postprocess/gtao/render_copy_texture.js +13 -11
  1326. package/src/shade/renderer/postprocess/motion_blur/MotionBlur.d.ts +4 -0
  1327. package/src/shade/renderer/postprocess/motion_blur/MotionBlur.d.ts.map +1 -1
  1328. package/src/shade/renderer/postprocess/motion_blur/MotionBlur.js +4 -0
  1329. package/src/shade/renderer/postprocess/nss/NSS.d.ts +7 -1
  1330. package/src/shade/renderer/postprocess/nss/NSS.d.ts.map +1 -1
  1331. package/src/shade/renderer/postprocess/nss/NSS.js +5 -0
  1332. package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.d.ts +9 -4
  1333. package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.d.ts.map +1 -1
  1334. package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.js +4 -3
  1335. package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.d.ts +13 -6
  1336. package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.d.ts.map +1 -1
  1337. package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.js +6 -5
  1338. package/src/shade/renderer/postprocess/taa/TAA.d.ts +15 -7
  1339. package/src/shade/renderer/postprocess/taa/TAA.d.ts.map +1 -1
  1340. package/src/shade/renderer/postprocess/taa/TAA.js +7 -6
  1341. package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.d.ts +13 -6
  1342. package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.d.ts.map +1 -1
  1343. package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.js +6 -5
  1344. package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.d.ts +11 -5
  1345. package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.d.ts.map +1 -1
  1346. package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.js +5 -4
  1347. package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.d.ts +11 -5
  1348. package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.d.ts.map +1 -1
  1349. package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.js +5 -4
  1350. package/src/shade/renderer/rasterize/execute_rasterization_jobs.d.ts +12 -5
  1351. package/src/shade/renderer/rasterize/execute_rasterization_jobs.d.ts.map +1 -1
  1352. package/src/shade/renderer/rasterize/execute_rasterization_jobs.js +5 -4
  1353. package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.d.ts +2 -0
  1354. package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.d.ts.map +1 -1
  1355. package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.js +5 -0
  1356. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.d.ts +11 -5
  1357. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.d.ts.map +1 -1
  1358. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.js +5 -4
  1359. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.d.ts +9 -4
  1360. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.d.ts.map +1 -1
  1361. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.js +4 -3
  1362. package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.d.ts +11 -5
  1363. package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.d.ts.map +1 -1
  1364. package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.js +5 -4
  1365. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.d.ts +15 -7
  1366. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.d.ts.map +1 -1
  1367. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.js +7 -6
  1368. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.d.ts +15 -7
  1369. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.d.ts.map +1 -1
  1370. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.js +7 -6
  1371. package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.d.ts +13 -6
  1372. package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.d.ts.map +1 -1
  1373. package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.js +6 -5
  1374. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.d.ts +17 -8
  1375. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.d.ts.map +1 -1
  1376. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.js +8 -7
  1377. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.d.ts +13 -6
  1378. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.d.ts.map +1 -1
  1379. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.js +6 -5
  1380. package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.d.ts +21 -10
  1381. package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.d.ts.map +1 -1
  1382. package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.js +10 -9
  1383. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.d.ts +13 -6
  1384. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.d.ts.map +1 -1
  1385. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.js +6 -5
  1386. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.d.ts +17 -8
  1387. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.d.ts.map +1 -1
  1388. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.js +8 -7
  1389. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.d.ts +13 -6
  1390. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.d.ts.map +1 -1
  1391. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.js +6 -5
  1392. package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.d.ts +15 -7
  1393. package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.d.ts.map +1 -1
  1394. package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.js +7 -6
  1395. package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.d.ts +11 -5
  1396. package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.d.ts.map +1 -1
  1397. package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.js +5 -4
  1398. package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.d.ts +9 -4
  1399. package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.d.ts.map +1 -1
  1400. package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.js +4 -3
  1401. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts +80 -37
  1402. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts.map +1 -1
  1403. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.js +37 -33
  1404. package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.d.ts +28 -13
  1405. package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.d.ts.map +1 -1
  1406. package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.js +13 -12
  1407. package/src/shade/renderer/rasterize/native/oit/graph_rasterize_meshes_transparent_oit.d.ts.map +1 -1
  1408. package/src/shade/renderer/rasterize/native/oit/graph_rasterize_meshes_transparent_oit.js +12 -11
  1409. package/src/shade/renderer/rasterize/standard/graph_rasterize_remaining_opaque.d.ts.map +1 -1
  1410. package/src/shade/renderer/rasterize/standard/graph_rasterize_remaining_opaque.js +5 -4
  1411. package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.d.ts +9 -4
  1412. package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.d.ts.map +1 -1
  1413. package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.js +4 -3
  1414. package/src/shade/renderer/restir/di/ReSTIRDI.d.ts +10 -0
  1415. package/src/shade/renderer/restir/di/ReSTIRDI.d.ts.map +1 -1
  1416. package/src/shade/renderer/restir/di/ReSTIRDI.js +7 -0
  1417. package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.d.ts +2 -0
  1418. package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.d.ts.map +1 -1
  1419. package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.js +5 -0
  1420. package/src/shade/renderer/scene/GPUSceneContext.d.ts +4 -0
  1421. package/src/shade/renderer/scene/GPUSceneContext.d.ts.map +1 -1
  1422. package/src/shade/renderer/scene/GPUSceneContext.js +15 -0
  1423. package/src/shade/renderer/scene/InstanceBatch.d.ts +11 -3
  1424. package/src/shade/renderer/scene/InstanceBatch.d.ts.map +1 -1
  1425. package/src/shade/renderer/scene/InstanceBatch.js +6 -0
  1426. package/src/shade/renderer/scene/Mesh.d.ts +8 -2
  1427. package/src/shade/renderer/scene/Mesh.d.ts.map +1 -1
  1428. package/src/shade/renderer/scene/Mesh.js +6 -1
  1429. package/src/shade/renderer/scene/SceneManager.d.ts +6 -0
  1430. package/src/shade/renderer/scene/SceneManager.d.ts.map +1 -1
  1431. package/src/shade/renderer/scene/SceneManager.js +5 -0
  1432. package/src/shade/renderer/scene/SkinnedMesh.d.ts +4 -0
  1433. package/src/shade/renderer/scene/SkinnedMesh.d.ts.map +1 -1
  1434. package/src/shade/renderer/scene/SkinnedMesh.js +4 -0
  1435. package/src/shade/renderer/scene/serialization/serialize_scene.d.ts +7 -3
  1436. package/src/shade/renderer/scene/serialization/serialize_scene.d.ts.map +1 -1
  1437. package/src/shade/renderer/scene/serialization/serialize_scene.js +3 -2
  1438. package/src/shade/renderer/shader/ComputeShader.d.ts +64 -29
  1439. package/src/shade/renderer/shader/ComputeShader.d.ts.map +1 -1
  1440. package/src/shade/renderer/shader/ComputeShader.js +29 -23
  1441. package/src/shade/renderer/shader/ImageShader.d.ts +9 -4
  1442. package/src/shade/renderer/shader/ImageShader.d.ts.map +1 -1
  1443. package/src/shade/renderer/shader/ImageShader.js +4 -3
  1444. package/src/shade/renderer/shader/ShaderDescriptor.d.ts +10 -4
  1445. package/src/shade/renderer/shader/ShaderDescriptor.d.ts.map +1 -1
  1446. package/src/shade/renderer/shader/ShaderDescriptor.js +4 -3
  1447. package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.d.ts +7 -3
  1448. package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.d.ts.map +1 -1
  1449. package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.js +6 -4
  1450. package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.d.ts +13 -6
  1451. package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.d.ts.map +1 -1
  1452. package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.js +6 -5
  1453. package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.d.ts +13 -6
  1454. package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.d.ts.map +1 -1
  1455. package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.js +6 -5
  1456. package/src/shade/renderer/shader/graph/compute/graph_compute_pass.d.ts +13 -6
  1457. package/src/shade/renderer/shader/graph/compute/graph_compute_pass.d.ts.map +1 -1
  1458. package/src/shade/renderer/shader/graph/compute/graph_compute_pass.js +6 -5
  1459. package/src/shade/renderer/shader/graph/graph_image_pass.d.ts +27 -13
  1460. package/src/shade/renderer/shader/graph/graph_image_pass.d.ts.map +1 -1
  1461. package/src/shade/renderer/shader/graph/graph_image_pass.js +13 -12
  1462. package/src/shade/renderer/shader/graph/graph_import_raw_buffer.d.ts +15 -7
  1463. package/src/shade/renderer/shader/graph/graph_import_raw_buffer.d.ts.map +1 -1
  1464. package/src/shade/renderer/shader/graph/graph_import_raw_buffer.js +7 -6
  1465. package/src/shade/renderer/shader/graph/graph_import_typed_buffer.d.ts +13 -6
  1466. package/src/shade/renderer/shader/graph/graph_import_typed_buffer.d.ts.map +1 -1
  1467. package/src/shade/renderer/shader/graph/graph_import_typed_buffer.js +6 -5
  1468. package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.d.ts +7 -3
  1469. package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.d.ts.map +1 -1
  1470. package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.js +3 -2
  1471. package/src/shade/renderer/shader/pass/RenderPassDescriptor.d.ts +49 -23
  1472. package/src/shade/renderer/shader/pass/RenderPassDescriptor.d.ts.map +1 -1
  1473. package/src/shade/renderer/shader/pass/RenderPassDescriptor.js +23 -20
  1474. package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.d.ts +6 -0
  1475. package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.d.ts.map +1 -1
  1476. package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.js +9 -0
  1477. package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.d.ts +11 -2
  1478. package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.d.ts.map +1 -1
  1479. package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.js +7 -1
  1480. package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts +10 -3
  1481. package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts.map +1 -1
  1482. package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.js +9 -2
  1483. package/src/shade/renderer/shader/type/WGSLAttribute.d.ts +2 -2
  1484. package/src/shade/renderer/shader/type/WGSLAttribute.d.ts.map +1 -1
  1485. package/src/shade/renderer/shader/type/WGSLAttribute.js +1 -1
  1486. package/src/shade/renderer/shader/type/WGSLStructField.d.ts +6 -2
  1487. package/src/shade/renderer/shader/type/WGSLStructField.d.ts.map +1 -1
  1488. package/src/shade/renderer/shader/type/WGSLStructField.js +5 -1
  1489. package/src/shade/renderer/shader/type/WebGPUArray.d.ts +0 -2
  1490. package/src/shade/renderer/shader/type/WebGPUArray.d.ts.map +1 -1
  1491. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts +2 -4
  1492. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts.map +1 -1
  1493. package/src/shade/renderer/shader/type/WebGPUStruct.js +1 -1
  1494. package/src/shade/renderer/shader/type/WebGPUType.d.ts +5 -1
  1495. package/src/shade/renderer/shader/type/WebGPUType.d.ts.map +1 -1
  1496. package/src/shade/renderer/shader/type/WebGPUType.js +4 -0
  1497. package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.d.ts +7 -3
  1498. package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.d.ts.map +1 -1
  1499. package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.js +3 -2
  1500. package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.d.ts +7 -0
  1501. package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.d.ts.map +1 -1
  1502. package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.js +10 -0
  1503. package/src/shade/renderer/shadow/map/Shadowmap.d.ts +12 -0
  1504. package/src/shade/renderer/shadow/map/Shadowmap.d.ts.map +1 -1
  1505. package/src/shade/renderer/shadow/map/Shadowmap.js +8 -0
  1506. package/src/shade/renderer/shadow/map/SpotLightShadowmap.d.ts +2 -2
  1507. package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.d.ts +7 -3
  1508. package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.d.ts.map +1 -1
  1509. package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.js +3 -2
  1510. package/src/shade/renderer/shadow/map/csm_debug_draw_preview.d.ts +11 -5
  1511. package/src/shade/renderer/shadow/map/csm_debug_draw_preview.d.ts.map +1 -1
  1512. package/src/shade/renderer/shadow/map/csm_debug_draw_preview.js +5 -4
  1513. package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.d.ts +13 -6
  1514. package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.d.ts.map +1 -1
  1515. package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.js +6 -5
  1516. package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.d.ts +9 -4
  1517. package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.d.ts.map +1 -1
  1518. package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.js +4 -3
  1519. package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.d.ts +11 -5
  1520. package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.d.ts.map +1 -1
  1521. package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.js +5 -4
  1522. package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.d.ts +1 -0
  1523. package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.d.ts.map +1 -1
  1524. package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.js +4 -0
  1525. package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.d.ts +13 -6
  1526. package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.d.ts.map +1 -1
  1527. package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.js +6 -5
  1528. package/src/shade/renderer/texture/GPUTextureAllocator.d.ts +4 -0
  1529. package/src/shade/renderer/texture/GPUTextureAllocator.d.ts.map +1 -1
  1530. package/src/shade/renderer/texture/GPUTextureAllocator.js +4 -0
  1531. package/src/shade/renderer/texture/GPUTextureContext.d.ts +1 -0
  1532. package/src/shade/renderer/texture/GPUTextureContext.d.ts.map +1 -1
  1533. package/src/shade/renderer/texture/GPUTextureContext.js +4 -0
  1534. package/src/shade/renderer/texture/RenderTarget.d.ts +7 -3
  1535. package/src/shade/renderer/texture/RenderTarget.d.ts.map +1 -1
  1536. package/src/shade/renderer/texture/RenderTarget.js +3 -2
  1537. package/src/shade/renderer/texture/ShadeTexture.d.ts +2 -1
  1538. package/src/shade/renderer/texture/ShadeTexture.d.ts.map +1 -1
  1539. package/src/shade/renderer/texture/ShadeTexture.js +4 -0
  1540. package/src/shade/renderer/texture/TextureManager.d.ts +1 -0
  1541. package/src/shade/renderer/texture/TextureManager.d.ts.map +1 -1
  1542. package/src/shade/renderer/texture/TextureManager.js +4 -0
  1543. package/src/shade/renderer/texture/bindless/GPUBindlessTextureManager.d.ts +3 -0
  1544. package/src/shade/renderer/texture/bindless/GPUBindlessTextureManager.d.ts.map +1 -1
  1545. package/src/shade/renderer/texture/bindless/GPUBindlessTextureManager.js +121 -21
  1546. package/src/shade/renderer/texture/debug_draw_texture.d.ts +9 -4
  1547. package/src/shade/renderer/texture/debug_draw_texture.d.ts.map +1 -1
  1548. package/src/shade/renderer/texture/debug_draw_texture.js +4 -3
  1549. package/src/shade/renderer/texture/download_texture_data.d.ts +17 -6
  1550. package/src/shade/renderer/texture/download_texture_data.d.ts.map +1 -1
  1551. package/src/shade/renderer/texture/download_texture_data.js +10 -5
  1552. package/src/shade/renderer/texture/draw_texture_as_rgba.d.ts +26 -12
  1553. package/src/shade/renderer/texture/draw_texture_as_rgba.d.ts.map +1 -1
  1554. package/src/shade/renderer/texture/draw_texture_as_rgba.js +12 -10
  1555. package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.d.ts.map +1 -1
  1556. package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.js +5 -4
  1557. package/src/shade/renderer/texture/source/ShadeImage.d.ts +4 -2
  1558. package/src/shade/renderer/texture/source/ShadeImage.d.ts.map +1 -1
  1559. package/src/shade/renderer/texture/source/ShadeImage.js +5 -0
  1560. package/src/shade/renderer/texture/source/ShadeImageSerializationAdapter.d.ts +12 -0
  1561. package/src/shade/renderer/texture/source/ShadeImageSerializationAdapter.d.ts.map +1 -1
  1562. package/src/shade/renderer/texture/util/make_checkers_texture.d.ts +12 -5
  1563. package/src/shade/renderer/texture/util/make_checkers_texture.d.ts.map +1 -1
  1564. package/src/shade/renderer/texture/util/make_checkers_texture.js +5 -4
  1565. package/src/shade/renderer/texture/virtual/README.md +6 -4
  1566. package/src/shade/renderer/texture/virtual/VirtualTextureManager.d.ts +7 -2
  1567. package/src/shade/renderer/texture/virtual/VirtualTextureManager.d.ts.map +1 -1
  1568. package/src/shade/renderer/texture/virtual/VirtualTextureManager.js +15 -0
  1569. package/src/shade/renderer/texture/virtual/source/VTSourceTiled.d.ts +3 -3
  1570. package/src/shade/renderer/texture/virtual/source/VTSourceTiled.js +3 -3
  1571. package/src/shade/renderer/util/Uint32BufferSamplingStats.d.ts +2 -0
  1572. package/src/shade/renderer/util/Uint32BufferSamplingStats.d.ts.map +1 -1
  1573. package/src/shade/renderer/util/Uint32BufferSamplingStats.js +5 -0
  1574. package/src/shade/renderer/view/GPUViewContext.d.ts +4 -1
  1575. package/src/shade/renderer/view/GPUViewContext.d.ts.map +1 -1
  1576. package/src/shade/renderer/view/GPUViewContext.js +11 -5
  1577. package/src/shade/renderer/view/View.d.ts +6 -0
  1578. package/src/shade/renderer/view/View.d.ts.map +1 -1
  1579. package/src/shade/renderer/view/View.js +5 -0
  1580. package/src/shade/renderer/view/ViewManager.d.ts +11 -1
  1581. package/src/shade/renderer/view/ViewManager.d.ts.map +1 -1
  1582. package/src/shade/renderer/view/ViewManager.js +7 -0
  1583. package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.d.ts +6 -0
  1584. package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.d.ts.map +1 -1
  1585. package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.js +5 -0
  1586. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts +15 -6
  1587. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts.map +1 -1
  1588. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.js +11 -5
  1589. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts +5 -5
  1590. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts.map +1 -1
  1591. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.js +1 -1
  1592. package/src/shade/renderer/volumetrics/SceneVolumetrics.d.ts +4 -0
  1593. package/src/shade/renderer/volumetrics/SceneVolumetrics.d.ts.map +1 -1
  1594. package/src/shade/renderer/volumetrics/SceneVolumetrics.js +4 -0
  1595. package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.d.ts +23 -11
  1596. package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.d.ts.map +1 -1
  1597. package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.js +11 -10
  1598. package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts +37 -18
  1599. package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts.map +1 -1
  1600. package/src/shade/renderer/volumetrics/graph_build_volumetrics.js +30 -26
  1601. package/src/view/View.d.ts +8 -3
  1602. package/src/view/View.d.ts.map +1 -1
  1603. package/src/view/View.js +7 -2
  1604. package/src/view/asset/AssetLoaderStatusView.d.ts +7 -3
  1605. package/src/view/asset/AssetLoaderStatusView.d.ts.map +1 -1
  1606. package/src/view/asset/AssetLoaderStatusView.js +3 -2
  1607. package/src/view/common/ListView.d.ts +21 -15
  1608. package/src/view/common/ListView.d.ts.map +1 -1
  1609. package/src/view/common/ListView.js +8 -7
  1610. package/src/view/common/LocalizedLabelView.d.ts +15 -7
  1611. package/src/view/common/LocalizedLabelView.d.ts.map +1 -1
  1612. package/src/view/common/LocalizedLabelView.js +7 -6
  1613. package/src/view/common/TabbedView.d.ts +14 -6
  1614. package/src/view/common/TabbedView.d.ts.map +1 -1
  1615. package/src/view/common/TabbedView.js +6 -4
  1616. package/src/view/controller/controls/BooleanVector3Control.d.ts +1 -1
  1617. package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
  1618. package/src/view/controller/controls/GuiControl.d.ts +1 -1
  1619. package/src/view/controller/controls/GuiControl.d.ts.map +1 -1
  1620. package/src/view/controller/controls/NativeListController.d.ts +15 -7
  1621. package/src/view/controller/controls/NativeListController.d.ts.map +1 -1
  1622. package/src/view/controller/controls/NativeListController.js +7 -6
  1623. package/src/view/controller/controls/Vector1Control.d.ts +1 -1
  1624. package/src/view/controller/controls/Vector1Control.d.ts.map +1 -1
  1625. package/src/view/currency/CompositeCurrencyLabelView.d.ts +10 -5
  1626. package/src/view/currency/CompositeCurrencyLabelView.d.ts.map +1 -1
  1627. package/src/view/currency/CompositeCurrencyLabelView.js +4 -3
  1628. package/src/view/currency/CurrencyDenominationLabelView.d.ts +7 -3
  1629. package/src/view/currency/CurrencyDenominationLabelView.d.ts.map +1 -1
  1630. package/src/view/currency/CurrencyDenominationLabelView.js +3 -2
  1631. package/src/view/elements/CheckboxView.d.ts +7 -3
  1632. package/src/view/elements/CheckboxView.d.ts.map +1 -1
  1633. package/src/view/elements/CheckboxView.js +3 -2
  1634. package/src/view/elements/DropDownSelectionView.d.ts +9 -4
  1635. package/src/view/elements/DropDownSelectionView.d.ts.map +1 -1
  1636. package/src/view/elements/DropDownSelectionView.js +3 -2
  1637. package/src/view/elements/EmptyView.d.ts +29 -13
  1638. package/src/view/elements/EmptyView.d.ts.map +1 -1
  1639. package/src/view/elements/EmptyView.js +13 -11
  1640. package/src/view/elements/SimpleWindow.d.ts +1 -1
  1641. package/src/view/elements/SimpleWindow.d.ts.map +1 -1
  1642. package/src/view/elements/button/ButtonView.d.ts +15 -7
  1643. package/src/view/elements/button/ButtonView.d.ts.map +1 -1
  1644. package/src/view/elements/button/ButtonView.js +7 -6
  1645. package/src/view/elements/image/ImageView.d.ts +7 -3
  1646. package/src/view/elements/image/ImageView.d.ts.map +1 -1
  1647. package/src/view/elements/image/ImageView.js +3 -2
  1648. package/src/view/elements/image/SvgImageView.d.ts +5 -2
  1649. package/src/view/elements/image/SvgImageView.d.ts.map +1 -1
  1650. package/src/view/elements/image/SvgImageView.js +2 -1
  1651. package/src/view/elements/label/LabeledValueView.d.ts +14 -7
  1652. package/src/view/elements/label/LabeledValueView.d.ts.map +1 -1
  1653. package/src/view/elements/label/LabeledValueView.js +6 -5
  1654. package/src/view/elements/progress/SmoothProgressBar.d.ts +14 -7
  1655. package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -1
  1656. package/src/view/elements/progress/SmoothProgressBar.js +6 -5
  1657. package/src/view/elements/progress/segmented/SegmentedResourceBarView.d.ts +9 -4
  1658. package/src/view/elements/progress/segmented/SegmentedResourceBarView.d.ts.map +1 -1
  1659. package/src/view/elements/progress/segmented/SegmentedResourceBarView.js +4 -3
  1660. package/src/view/elements/radial/RadialMenu.d.ts +19 -9
  1661. package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
  1662. package/src/view/elements/radial/RadialMenu.js +9 -8
  1663. package/src/view/elements/radial/RadialMenuElementDefinition.d.ts +63 -31
  1664. package/src/view/elements/radial/RadialMenuElementDefinition.d.ts.map +1 -1
  1665. package/src/view/elements/radial/RadialMenuElementDefinition.js +30 -28
  1666. package/src/view/elements/radial/RadialProgressView.d.ts +1 -1
  1667. package/src/view/elements/radial/RadialProgressView.d.ts.map +1 -1
  1668. package/src/view/elements/radial/RadialText.d.ts +18 -10
  1669. package/src/view/elements/radial/RadialText.d.ts.map +1 -1
  1670. package/src/view/elements/radial/RadialText.js +7 -6
  1671. package/src/view/elements/tiles2d/Tile.d.ts +12 -6
  1672. package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
  1673. package/src/view/elements/tiles2d/Tile.js +4 -3
  1674. package/src/view/elements/tiles2d/TileGrid.d.ts +23 -10
  1675. package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
  1676. package/src/view/elements/tiles2d/TileGrid.js +10 -9
  1677. package/src/view/elements/video/VideoView.d.ts +7 -3
  1678. package/src/view/elements/video/VideoView.d.ts.map +1 -1
  1679. package/src/view/elements/video/VideoView.js +3 -2
  1680. package/src/view/game/achievements/AchievementNotificationView.d.ts +7 -3
  1681. package/src/view/game/achievements/AchievementNotificationView.d.ts.map +1 -1
  1682. package/src/view/game/achievements/AchievementNotificationView.js +3 -2
  1683. package/src/view/graphics/GraphicsContextFailureView.d.ts +11 -5
  1684. package/src/view/graphics/GraphicsContextFailureView.d.ts.map +1 -1
  1685. package/src/view/graphics/GraphicsContextFailureView.js +5 -4
  1686. package/src/view/interaction/InteractionCommand.d.ts +11 -5
  1687. package/src/view/interaction/InteractionCommand.d.ts.map +1 -1
  1688. package/src/view/interaction/InteractionCommand.js +5 -4
  1689. package/src/view/interaction/InterfaceCommand.d.ts +32 -15
  1690. package/src/view/interaction/InterfaceCommand.d.ts.map +1 -1
  1691. package/src/view/interaction/InterfaceCommand.js +15 -13
  1692. package/src/view/interaction/createInterfaceCommandButton.d.ts +9 -4
  1693. package/src/view/interaction/createInterfaceCommandButton.d.ts.map +1 -1
  1694. package/src/view/interaction/createInterfaceCommandButton.js +4 -3
  1695. package/src/view/layout/DockPanel.d.ts +11 -5
  1696. package/src/view/layout/DockPanel.d.ts.map +1 -1
  1697. package/src/view/layout/DockPanel.js +5 -4
  1698. package/src/view/layout/DrawerView.d.ts +7 -3
  1699. package/src/view/layout/DrawerView.d.ts.map +1 -1
  1700. package/src/view/layout/DrawerView.js +3 -2
  1701. package/src/view/layout/FloatingPanelView.d.ts +7 -3
  1702. package/src/view/layout/FloatingPanelView.d.ts.map +1 -1
  1703. package/src/view/layout/FloatingPanelView.js +3 -2
  1704. package/src/view/layout/SplitView.d.ts +11 -5
  1705. package/src/view/layout/SplitView.d.ts.map +1 -1
  1706. package/src/view/layout/SplitView.js +5 -4
  1707. package/src/view/math/FunctionGraphView.d.ts +8 -4
  1708. package/src/view/math/FunctionGraphView.d.ts.map +1 -1
  1709. package/src/view/math/FunctionGraphView.js +3 -2
  1710. package/src/view/minimap/MinimapCanvasView.d.ts +10 -4
  1711. package/src/view/minimap/MinimapCanvasView.d.ts.map +1 -1
  1712. package/src/view/minimap/MinimapCanvasView.js +4 -3
  1713. package/src/view/minimap/dom/MinimapCameraView.d.ts +2 -1
  1714. package/src/view/minimap/dom/MinimapCameraView.d.ts.map +1 -1
  1715. package/src/view/minimap/dom/MinimapMarkerView.d.ts +31 -9
  1716. package/src/view/minimap/dom/MinimapMarkerView.d.ts.map +1 -1
  1717. package/src/view/minimap/dom/MinimapTerrainView.d.ts +9 -4
  1718. package/src/view/minimap/dom/MinimapTerrainView.d.ts.map +1 -1
  1719. package/src/view/minimap/dom/MinimapTerrainView.js +3 -2
  1720. package/src/view/task/TaskProgressView.d.ts +7 -3
  1721. package/src/view/task/TaskProgressView.d.ts.map +1 -1
  1722. package/src/view/task/TaskProgressView.js +3 -2
  1723. package/src/view/tooltip/DomTooltipManager.d.ts +6 -0
  1724. package/src/view/tooltip/DomTooltipManager.d.ts.map +1 -1
  1725. package/src/view/tooltip/DomTooltipManager.js +5 -0
  1726. package/src/view/tooltip/DomTooltipObserver.d.ts +4 -0
  1727. package/src/view/tooltip/DomTooltipObserver.d.ts.map +1 -1
  1728. package/src/view/tooltip/DomTooltipObserver.js +4 -0
  1729. package/src/view/tooltip/TooltipManager.d.ts +6 -0
  1730. package/src/view/tooltip/TooltipManager.d.ts.map +1 -1
  1731. package/src/view/tooltip/TooltipManager.js +5 -0
  1732. package/src/view/tooltip/TooltipView.d.ts +7 -3
  1733. package/src/view/tooltip/TooltipView.d.ts.map +1 -1
  1734. package/src/view/tooltip/TooltipView.js +5 -1
  1735. package/src/view/tooltip/VisualTip.d.ts +6 -0
  1736. package/src/view/tooltip/VisualTip.d.ts.map +1 -1
  1737. package/src/view/tooltip/VisualTip.js +5 -0
  1738. package/src/view/tooltip/gml/GMLEngine.d.ts +14 -2
  1739. package/src/view/tooltip/gml/GMLEngine.d.ts.map +1 -1
  1740. package/src/view/tooltip/gml/GMLEngine.js +8 -0
  1741. package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts +10 -0
  1742. package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts.map +1 -1
  1743. package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.js +7 -0
  1744. package/src/view/util/DomSizeObserver.d.ts +9 -2
  1745. package/src/view/util/DomSizeObserver.d.ts.map +1 -1
  1746. package/src/view/util/DomSizeObserver.js +6 -1
  1747. package/src/engine/graphics/texture/virtual/NOTES.md +0 -128
  1748. package/src/engine/graphics/texture/virtual/VT_DEFAULT_PAGE_RESOLUTION.d.ts +0 -6
  1749. package/src/engine/graphics/texture/virtual/VT_DEFAULT_PAGE_RESOLUTION.d.ts.map +0 -1
  1750. package/src/engine/graphics/texture/virtual/VT_DEFAULT_PAGE_RESOLUTION.js +0 -5
  1751. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts +0 -49
  1752. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts.map +0 -1
  1753. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.js +0 -264
  1754. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts +0 -44
  1755. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts.map +0 -1
  1756. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.js +0 -228
  1757. package/src/engine/graphics/texture/virtual/VirtualTextureUsageShader.d.ts +0 -3
  1758. package/src/engine/graphics/texture/virtual/VirtualTextureUsageShader.d.ts.map +0 -1
  1759. package/src/engine/graphics/texture/virtual/VirtualTextureUsageShader.js +0 -73
  1760. package/src/engine/graphics/texture/virtual/debug/ResidencyDebugView.d.ts +0 -14
  1761. package/src/engine/graphics/texture/virtual/debug/ResidencyDebugView.d.ts.map +0 -1
  1762. package/src/engine/graphics/texture/virtual/debug/ResidencyDebugView.js +0 -85
  1763. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.d.ts +0 -12
  1764. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.d.ts.map +0 -1
  1765. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.js +0 -63
  1766. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.d.ts +0 -12
  1767. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.d.ts.map +0 -1
  1768. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.js +0 -243
  1769. package/src/engine/graphics/texture/virtual/tile/VirtualTextureTile.d.ts +0 -30
  1770. package/src/engine/graphics/texture/virtual/tile/VirtualTextureTile.d.ts.map +0 -1
  1771. package/src/engine/graphics/texture/virtual/tile/VirtualTextureTile.js +0 -39
  1772. package/src/engine/graphics/texture/virtual/tile/compose_finger_print.d.ts +0 -9
  1773. package/src/engine/graphics/texture/virtual/tile/compose_finger_print.d.ts.map +0 -1
  1774. package/src/engine/graphics/texture/virtual/tile/compose_finger_print.js +0 -24
  1775. package/src/engine/graphics/texture/virtual/tile/compose_tile_address.d.ts +0 -9
  1776. package/src/engine/graphics/texture/virtual/tile/compose_tile_address.d.ts.map +0 -1
  1777. package/src/engine/graphics/texture/virtual/tile/compose_tile_address.js +0 -26
  1778. package/src/engine/graphics/texture/virtual/tile/decompose_finger_print.d.ts +0 -11
  1779. package/src/engine/graphics/texture/virtual/tile/decompose_finger_print.d.ts.map +0 -1
  1780. package/src/engine/graphics/texture/virtual/tile/decompose_finger_print.js +0 -12
  1781. package/src/engine/graphics/texture/virtual/tile/finger_print_to_tile_address.d.ts +0 -7
  1782. package/src/engine/graphics/texture/virtual/tile/finger_print_to_tile_address.d.ts.map +0 -1
  1783. package/src/engine/graphics/texture/virtual/tile/finger_print_to_tile_address.js +0 -16
  1784. package/src/engine/graphics/texture/virtual/tile/tile_address_to_finger_print.d.ts +0 -7
  1785. package/src/engine/graphics/texture/virtual/tile/tile_address_to_finger_print.d.ts.map +0 -1
  1786. package/src/engine/graphics/texture/virtual/tile/tile_address_to_finger_print.js +0 -35
  1787. package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.d.ts +0 -395
  1788. package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.d.ts.map +0 -1
  1789. package/src/shade/renderer/particles/ParticleRenderMode.d.ts +0 -19
  1790. package/src/shade/renderer/particles/ParticleRenderMode.d.ts.map +0 -1
  1791. package/src/shade/renderer/particles/ParticleRenderMode.js +0 -33
  1792. package/src/shade/renderer/particles/graph_particles_billboard.d.ts +0 -37
  1793. package/src/shade/renderer/particles/graph_particles_billboard.d.ts.map +0 -1
  1794. package/src/shade/renderer/particles/graph_particles_billboard.js +0 -93
  1795. package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts +0 -55
  1796. package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts.map +0 -1
  1797. package/src/shade/renderer/particles/sort/graph_particle_sort.js +0 -130
  1798. package/src/shade/renderer/particles/sort/particle_counting_sort.d.ts +0 -26
  1799. package/src/shade/renderer/particles/sort/particle_counting_sort.d.ts.map +0 -1
  1800. package/src/shade/renderer/particles/sort/particle_counting_sort.js +0 -51
  1801. package/src/shade/renderer/particles/sort/shader_particle_sort.d.ts +0 -14
  1802. package/src/shade/renderer/particles/sort/shader_particle_sort.d.ts.map +0 -1
  1803. package/src/shade/renderer/particles/sort/shader_particle_sort.js +0 -223
@@ -0,0 +1,271 @@
1
+ /**
2
+ * # Normalised coordinates → row parameters
3
+ *
4
+ * {@link ClothDynamics}' stiffnesses are coordinates in `[0, 1]`, and this is
5
+ * the whole of what they mean. It is one module rather than methods on the
6
+ * value object because the mapping is *measured* — every constant below has a
7
+ * number in `MEASUREMENTS.md` behind it — and a measured mapping deserves to be
8
+ * readable on its own and specced on its own.
9
+ *
10
+ * ## Why neither stiffness maps to newtons per metre
11
+ *
12
+ * M0's central finding: a **soft** row — a plain penalty — is dissipative only
13
+ * while its stiffness stays below about `8·(m/h²)`, and above that boundary the
14
+ * step *adds* energy and the cloth sustains a limit cycle forever. More
15
+ * iterations and more substeps shrink it; neither removes it
16
+ * (`MEASUREMENTS.md` §6). And that boundary is not a stiffness: it is a
17
+ * multiple of the row's own inertial scale, which moved across five decades of
18
+ * particle mass in §4's sweep without the answer changing.
19
+ *
20
+ * Two consequences, one for each stiffness:
21
+ *
22
+ * - **`stretch` cannot be a penalty at all.** Real fabric wants a stretch
23
+ * stiffness far above that boundary — for a half-gram particle at 60 Hz × 2
24
+ * substeps it sits near 60 N/m, a rubber band — so the stretch row is hard
25
+ * (`Infinity`, augmented Lagrangian), and what `stretch` actually selects is
26
+ * {@link cloth_strain_allowance}: how far the fabric may extend before the
27
+ * strain-limit row of §6 stops it.
28
+ * - **`bend` maps to a ratio.** A bend row is soft and must stay inside the
29
+ * dissipative band, so its stiffness is expressed as a multiple of
30
+ * `m_eff/dt²` — the row's own inertial scale at the **fixed** step rather
31
+ * than the substep. Two things fall out of that choice and both are wanted:
32
+ * the fabric's look is invariant to how heavy the author made the particles
33
+ * (which is what a normalised `[0, 1]` knob should mean), and the row is
34
+ * inside the band at *any* substep count, since `k/(m/h²) = ratio/substeps²`
35
+ * and `substeps ≥ 1`. A stiffness in newtons per metre has neither property.
36
+ *
37
+ * @author Alex Goldring
38
+ * @copyright Company Named Limited (c) 2026
39
+ */
40
+
41
+ /**
42
+ * Strain a fabric at `stretch = 0` may carry: a quarter of its own length, a
43
+ * loose knit. Chosen as the loosest thing that still reads as fabric rather
44
+ * than as elastic.
45
+ * @type {number}
46
+ */
47
+ export const CLOTH_STRAIN_MAX = 0.25;
48
+
49
+ /**
50
+ * Strain a fabric at `stretch = 1` may carry: a tenth of a per cent, which is
51
+ * a chain. Below this the strain-limit row is asking for more precision than a
52
+ * `Float32` position over a garment-sized coordinate resolves.
53
+ * @type {number}
54
+ */
55
+ export const CLOTH_STRAIN_MIN = 1e-3;
56
+
57
+ /**
58
+ * Bend stiffness at `bend = 1`, as a multiple of the row's `m_eff/dt²`.
59
+ *
60
+ * It is 8 because that is the top of the dissipative band M0 measured
61
+ * (`MEASUREMENTS.md` §4 and §6) and a bend row is soft. The consequence, stated
62
+ * rather than hidden: **bending saturates**. A fabric stiffer than this cannot
63
+ * be expressed as a soft row that also comes to rest, and asking for one is
64
+ * asking for the limit cycle §7 P5 exists to prevent. If a garment ever needs
65
+ * more, the answer is a hard bend row with a multiplier, not a bigger number
66
+ * here.
67
+ * @type {number}
68
+ */
69
+ export const CLOTH_BEND_RATIO_MAX = 8;
70
+
71
+ /**
72
+ * Bend stiffness just above `bend = 0`, as a multiple of `m_eff/dt²`. Four
73
+ * orders of magnitude below the ceiling, which is what makes the log map
74
+ * useful across the whole range instead of spending most of it near zero.
75
+ * @type {number}
76
+ */
77
+ export const CLOTH_BEND_RATIO_MIN = 1e-3;
78
+
79
+ /**
80
+ * How many times its own **correction authority** a particle may travel in one
81
+ * fixed step before the velocity clamp of §7 P1 catches it.
82
+ *
83
+ * ## Not `thickness`, and the measurement is why
84
+ *
85
+ * §7 P1 asks for a clamp "derived from `thickness` and `h`", and that turns out
86
+ * to be the wrong length scale for this job. `thickness` is a **contact**
87
+ * radius: a clamp built from it is a tunnelling bound, and a tunnelling bound
88
+ * sits *below* ordinary cloth speeds rather than above them. Silk is 4 mm
89
+ * thick, so at 60 Hz "a particle may not cross its own radius in a step" is
90
+ * 0.24 m/s — and M1 measured a rope behind a 9 m/s sprinter reaching 13 m/s
91
+ * (§7 P7). Any multiple large enough to stop the clamp being a *behaviour* for
92
+ * silk is large enough to make it meaningless for leather, because the two
93
+ * thicknesses differ by 5× and their speeds do not.
94
+ *
95
+ * ## What the scale actually is
96
+ *
97
+ * The solver has a measurable ability to pull a particle back, and it is not
98
+ * unlimited: the trust region caps each vertex update at the **shortest row
99
+ * incident on that particle** (§5.3), so one fixed step can move a particle at
100
+ * most `shortest_row · substeps · iterations`. M1 measured what happens past
101
+ * it — a 30-link chain kicked at 16 m/s at 1 substep × 1 iteration stretches to
102
+ * **17× its own reach** before recovering, against 1.02× when it is dropped
103
+ * under gravity, and 2.6× for the same kick at 2×4. The tether row is not what
104
+ * failed there; the tether row was never given a chance to act.
105
+ *
106
+ * So the clamp is a multiple of exactly that quantity, which makes it a bound
107
+ * on *the solver being asked to do more than it can*, and makes it scale with
108
+ * the budget the fabric bought and the mesh it is built on rather than with a
109
+ * contact radius it does not use until M2.
110
+ *
111
+ * Four, because one would bind: a coat on a sprinting character carries several
112
+ * metres a second of anchor-relative velocity, and a clamp that engages there
113
+ * is a behaviour rather than a backstop. Four leaves every library entry an
114
+ * order of magnitude of headroom over its measured peak and still bounds the
115
+ * absurd cases in a handful of steps.
116
+ * @type {number}
117
+ */
118
+ export const CLOTH_VELOCITY_CORRECTION_MARGIN = 4;
119
+
120
+ /**
121
+ * Velocity decay rate at `damping = 1`, per second.
122
+ *
123
+ * `damping` maps to an exponential decay rather than a per-step multiplier so
124
+ * that the same value means the same thing at any fixed rate. At the default
125
+ * `damping = 0.15` the time constant is a third of a second, which is a cape
126
+ * that stops swinging without looking like it is under water.
127
+ * @type {number}
128
+ */
129
+ export const CLOTH_DAMPING_RATE = 20;
130
+
131
+ /**
132
+ * How far a cloth's anchor may carry it in one fixed step, as a multiple of the
133
+ * cloth's own reach. Motion above this is felt as though it were exactly this,
134
+ * which is what "anchor speed limit" means in §7 P7.
135
+ *
136
+ * Expressing it as a fraction of reach rather than in metres per second is what
137
+ * makes it work for a 3 cm pendant and a 30 m mooring line at the same time: a
138
+ * cloth is whipped by motion large *compared to itself*, and the reach is the
139
+ * only length scale the cloth carries. Half a reach per step is 30 reaches a
140
+ * second at 60 Hz, which no character locomotion comes near — §7 P7's own
141
+ * profile peaks two orders below it — and which a lift, a lurching vehicle or a
142
+ * badly-keyed cut does exceed.
143
+ * @type {number}
144
+ */
145
+ export const CLOTH_ANCHOR_TRAVEL_REACH = 0.5;
146
+
147
+ /**
148
+ * How far a cloth's anchor may rotate in one fixed step, radians. Rotation
149
+ * above this is felt as though it were exactly this.
150
+ *
151
+ * Unlike the travel limit this has no length scale to hang off — an angle is
152
+ * already dimensionless — so it is a plain number. Half a radian per step is
153
+ * about 1,700 degrees a second, which is a spin rather than a turn.
154
+ * @type {number}
155
+ */
156
+ export const CLOTH_ANCHOR_ROTATION_LIMIT = 0.5;
157
+
158
+ /**
159
+ * Anchor displacement in one fixed step, as a multiple of the cloth's reach,
160
+ * above which the motion is a **teleport** rather than locomotion (§7 P6).
161
+ *
162
+ * Four reaches in one step is 240 reaches a second: for a 1 m rope that is
163
+ * 240 m/s, well past anything the world moves at and well short of the values a
164
+ * cut or a level load produces.
165
+ * @type {number}
166
+ */
167
+ export const CLOTH_TELEPORT_REACH = 4;
168
+
169
+ /**
170
+ * Absolute floor on the teleport threshold, metres per fixed step.
171
+ *
172
+ * The reach multiple alone would make a small cloth absurdly twitchy — a 3 cm
173
+ * pendant would call 7 m/s a teleport, which is a brisk walk. This floor is
174
+ * 2 metres in a sixtieth of a second, so nothing under 120 m/s is a teleport
175
+ * whatever size the cloth is.
176
+ * @type {number}
177
+ */
178
+ export const CLOTH_TELEPORT_FLOOR = 2;
179
+
180
+ /**
181
+ * Length of the stabilisation window after a teleport reset, in fixed steps.
182
+ *
183
+ * The velocity limit ramps linearly from zero back to its full value across it,
184
+ * so a re-seeded cloth cannot leave the animated pose faster than the window
185
+ * allows however wrong its first solve is. A third of a second at 60 Hz.
186
+ * @type {number}
187
+ */
188
+ export const CLOTH_STABILISE_STEPS = 20;
189
+
190
+ /**
191
+ * Speed below which a particle counts as still, as a fraction of the cloth's
192
+ * reach per second. A metre-long rope sleeps once nothing on it is moving
193
+ * faster than a millimetre a second.
194
+ * @type {number}
195
+ */
196
+ export const CLOTH_SLEEP_SPEED_RATIO = 1e-3;
197
+
198
+ /**
199
+ * How many consecutive still steps put a cloth to sleep (§7 P5). Half a second
200
+ * at 60 Hz, which is long enough that a cloth pausing at the top of a swing
201
+ * does not sleep through the way down.
202
+ * @type {number}
203
+ */
204
+ export const CLOTH_SLEEP_STEPS = 30;
205
+
206
+ /**
207
+ * Fabric extension allowance for a normalised `stretch`, as a fraction of rest
208
+ * length. Log-mapped between {@link CLOTH_STRAIN_MAX} and
209
+ * {@link CLOTH_STRAIN_MIN}, so equal steps in `stretch` are equal ratios in
210
+ * strain and `0.9` is not four orders of magnitude away from `0.7`.
211
+ *
212
+ * @param {number} stretch `[0, 1]`
213
+ * @returns {number} strain, `L_max = L₀·(1 + ε)`
214
+ */
215
+ export function cloth_strain_allowance(stretch) {
216
+ const t = stretch < 0 ? 0 : (stretch > 1 ? 1 : stretch);
217
+
218
+ return CLOTH_STRAIN_MAX * Math.pow(CLOTH_STRAIN_MIN / CLOTH_STRAIN_MAX, t);
219
+ }
220
+
221
+ /**
222
+ * Bend row stiffness for a normalised `bend`, as a multiple of the row's own
223
+ * `m_eff/dt²`. Log-mapped, and **exactly zero at `bend = 0`** — a log map
224
+ * cannot reach zero, and "no bending resistance at all" is a state a chain is
225
+ * actually in rather than a limit it approaches.
226
+ *
227
+ * @param {number} bend `[0, 1]`
228
+ * @returns {number} ratio of `m_eff/dt²`
229
+ */
230
+ export function cloth_bend_ratio(bend) {
231
+ if (bend <= 0) {
232
+ return 0;
233
+ }
234
+
235
+ const t = bend > 1 ? 1 : bend;
236
+
237
+ return CLOTH_BEND_RATIO_MIN * Math.pow(CLOTH_BEND_RATIO_MAX / CLOTH_BEND_RATIO_MIN, t);
238
+ }
239
+
240
+ /**
241
+ * Largest speed a particle may carry, metres per second. §7 P1, and see
242
+ * {@link CLOTH_VELOCITY_CORRECTION_MARGIN} for why this is built out of the
243
+ * mesh and the budget rather than out of `thickness`.
244
+ *
245
+ * @param {number} shortest_row metres — the shortest row in the cloth, which
246
+ is what the trust region caps a vertex update at
247
+ * @param {number} substeps
248
+ * @param {number} iterations
249
+ * @param {number} dt fixed step, seconds
250
+ * @returns {number}
251
+ */
252
+ export function cloth_velocity_limit(shortest_row, substeps, iterations, dt) {
253
+ return CLOTH_VELOCITY_CORRECTION_MARGIN * shortest_row * substeps * iterations / dt;
254
+ }
255
+
256
+ /**
257
+ * Fraction of a particle's velocity surviving one fixed step. §7 P5, and see
258
+ * {@link ClothDynamics#damping} for why this is a correctness mechanism rather
259
+ * than a taste control.
260
+ *
261
+ * @param {number} damping `[0, 1]`
262
+ * @param {number} dt fixed step, seconds
263
+ * @returns {number} `[0, 1]`
264
+ */
265
+ export function cloth_velocity_retention(damping, dt) {
266
+ if (damping <= 0) {
267
+ return 1;
268
+ }
269
+
270
+ return Math.exp(-CLOTH_DAMPING_RATE * (damping > 1 ? 1 : damping) * dt);
271
+ }
@@ -0,0 +1,59 @@
1
+ /**
2
+ * # Bringing the world's colliders into a cloth's frame
3
+ *
4
+ * The index holds every live cloth collider in **world** coordinates; the
5
+ * solver works in the cloth's own **local** frame (§12 — garment-sized
6
+ * coordinates are what makes `Float32` particle state ample, and the local
7
+ * frame is what makes §7 P7's inertia model natural). So once per cloth per
8
+ * step, the colliders that could touch it are queried out of the index and
9
+ * rewritten into its frame.
10
+ *
11
+ * ## Both poses go into the *current* anchor frame
12
+ *
13
+ * A record carries where the collider was and where it is. Both are converted
14
+ * using the anchor's pose **now**, not each with the anchor pose of its own
15
+ * step, so what the sweep interpolates is the collider's motion *relative to
16
+ * the cloth's frame*. That is the motion the particles actually see: the frame
17
+ * change has already been applied to them by `move_local_frame`, scaled by
18
+ * `ClothDynamics#inertia`, before the step begins.
19
+ *
20
+ * The alternative — converting each pose in its own frame — would make a
21
+ * collider appear to move whenever the anchor did, so a character running past
22
+ * a static wall would sweep the wall through their own cape.
23
+ *
24
+ * ## The query box
25
+ *
26
+ * The cloth's own particle bounds, fattened by how far a contact reaches, and
27
+ * then by how far the solver will let a particle travel in one step. The second
28
+ * term is what stops a fast cloth outrunning its own broadphase within the step
29
+ * it was gathered for; it is the velocity clamp of §7 P1 read as a distance,
30
+ * which is the quantity it was built out of.
31
+ *
32
+ * @author Alex Goldring
33
+ * @copyright Company Named Limited (c) 2026
34
+ */
35
+ /**
36
+ * Query the index and rewrite the overlapping colliders into the cloth's frame.
37
+ *
38
+ * @param {ClothInstance} instance filled in place — `collider_table`,
39
+ * `collider_key` and `collider_count`
40
+ * @param {ClothColliderIndex} index
41
+ * @param {number} reach how far a particle may travel this step, metres
42
+ * @returns {number} how many colliders were gathered
43
+ */
44
+ export function cloth_gather_colliders(instance: ClothInstance, index: ClothColliderIndex, reach: number): number;
45
+ /**
46
+ * Whether any collider overlapping this cloth moved between the previous step
47
+ * and this one — §7 P5's "wake on collider motion", asked without waking.
48
+ *
49
+ * A sleeping cloth is not stepped and not written back, so something has to
50
+ * notice when the world it was resting against moves. This is that something,
51
+ * and it is a broadphase query plus a pose comparison: cheaper than a step by
52
+ * three orders of magnitude, which is what makes sleep worth having at all.
53
+ *
54
+ * @param {ClothInstance} instance
55
+ * @param {ClothColliderIndex} index
56
+ * @returns {boolean}
57
+ */
58
+ export function cloth_colliders_moved(instance: ClothInstance, index: ClothColliderIndex): boolean;
59
+ //# sourceMappingURL=cloth_gather_colliders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloth_gather_colliders.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/physics/cloth/ecs/cloth_gather_colliders.js"],"names":[],"mappings":"AA8BA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH;;;;;;;;GAQG;AACH,kGAHW,MAAM,GACJ,MAAM,CAsJlB;AAgDD;;;;;;;;;;;;GAYG;AACH,2FAFa,OAAO,CAsBnB"}
@@ -0,0 +1,328 @@
1
+ import { quat3_multiply } from "../../../../core/geom/3d/quaternion/quat3_multiply.js";
2
+ import { v3_quaternion_apply } from "../../../../core/geom/vec3/v3_quaternion_apply.js";
3
+ import { v3_quaternion_apply_inverse } from "../../../../core/geom/vec3/v3_quaternion_apply_inverse.js";
4
+ import {
5
+ CCR_FEATURE,
6
+ CCR_FRICTION,
7
+ CCR_INFLATION,
8
+ CCR_KIND,
9
+ CCR_PARAM_0,
10
+ CCR_PARAM_1,
11
+ CCR_PARAM_2,
12
+ CCR_PARAM_3,
13
+ CCR_PREV_QW,
14
+ CCR_PREV_QX,
15
+ CCR_PREV_QY,
16
+ CCR_PREV_QZ,
17
+ CCR_PREV_TX,
18
+ CCR_PREV_TY,
19
+ CCR_PREV_TZ,
20
+ CCR_QW,
21
+ CCR_QX,
22
+ CCR_QY,
23
+ CCR_QZ,
24
+ CCR_STRIDE,
25
+ CCR_TX,
26
+ CCR_TY,
27
+ CCR_TZ
28
+ } from "../collider/ClothColliderRecord.js";
29
+ import { cloth_collider_refit_bounds } from "../collider/cloth_collider_bounds.js";
30
+
31
+ /**
32
+ * # Bringing the world's colliders into a cloth's frame
33
+ *
34
+ * The index holds every live cloth collider in **world** coordinates; the
35
+ * solver works in the cloth's own **local** frame (§12 — garment-sized
36
+ * coordinates are what makes `Float32` particle state ample, and the local
37
+ * frame is what makes §7 P7's inertia model natural). So once per cloth per
38
+ * step, the colliders that could touch it are queried out of the index and
39
+ * rewritten into its frame.
40
+ *
41
+ * ## Both poses go into the *current* anchor frame
42
+ *
43
+ * A record carries where the collider was and where it is. Both are converted
44
+ * using the anchor's pose **now**, not each with the anchor pose of its own
45
+ * step, so what the sweep interpolates is the collider's motion *relative to
46
+ * the cloth's frame*. That is the motion the particles actually see: the frame
47
+ * change has already been applied to them by `move_local_frame`, scaled by
48
+ * `ClothDynamics#inertia`, before the step begins.
49
+ *
50
+ * The alternative — converting each pose in its own frame — would make a
51
+ * collider appear to move whenever the anchor did, so a character running past
52
+ * a static wall would sweep the wall through their own cape.
53
+ *
54
+ * ## The query box
55
+ *
56
+ * The cloth's own particle bounds, fattened by how far a contact reaches, and
57
+ * then by how far the solver will let a particle travel in one step. The second
58
+ * term is what stops a fast cloth outrunning its own broadphase within the step
59
+ * it was gathered for; it is the velocity clamp of §7 P1 read as a distance,
60
+ * which is the quantity it was built out of.
61
+ *
62
+ * @author Alex Goldring
63
+ * @copyright Company Named Limited (c) 2026
64
+ */
65
+
66
+ /**
67
+ * Query the index and rewrite the overlapping colliders into the cloth's frame.
68
+ *
69
+ * @param {ClothInstance} instance filled in place — `collider_table`,
70
+ * `collider_key` and `collider_count`
71
+ * @param {ClothColliderIndex} index
72
+ * @param {number} reach how far a particle may travel this step, metres
73
+ * @returns {number} how many colliders were gathered
74
+ */
75
+ export function cloth_gather_colliders(instance, index, reach) {
76
+ const state = instance.state;
77
+
78
+ const particle_count = state.particle_count;
79
+ const position = state.position;
80
+
81
+ let min_x = Infinity;
82
+ let min_y = Infinity;
83
+ let min_z = Infinity;
84
+ let max_x = -Infinity;
85
+ let max_y = -Infinity;
86
+ let max_z = -Infinity;
87
+
88
+ for (let i = 0; i < particle_count; i++) {
89
+ const p = i * 3;
90
+
91
+ const x = position[p];
92
+ const y = position[p + 1];
93
+ const z = position[p + 2];
94
+
95
+ if (x < min_x) { min_x = x; }
96
+ if (y < min_y) { min_y = y; }
97
+ if (z < min_z) { min_z = z; }
98
+ if (x > max_x) { max_x = x; }
99
+ if (y > max_y) { max_y = y; }
100
+ if (z > max_z) { max_z = z; }
101
+ }
102
+
103
+ if (particle_count === 0) {
104
+ instance.collider_count = 0;
105
+
106
+ return 0;
107
+ }
108
+
109
+ const margin = reach + state.contact_radius * 2;
110
+
111
+ min_x -= margin;
112
+ min_y -= margin;
113
+ min_z -= margin;
114
+ max_x += margin;
115
+ max_y += margin;
116
+ max_z += margin;
117
+
118
+ // The anchor pose the particles were carried into this step, not the live
119
+ // component — those are the same value by the time this runs, and the
120
+ // cached pair is the one `move_local_frame` used.
121
+ const anchor_x = instance.anchor_translation[0];
122
+ const anchor_y = instance.anchor_translation[1];
123
+ const anchor_z = instance.anchor_translation[2];
124
+
125
+ const qx = instance.anchor_rotation[0];
126
+ const qy = instance.anchor_rotation[1];
127
+ const qz = instance.anchor_rotation[2];
128
+ const qw = instance.anchor_rotation[3];
129
+
130
+ // The local box's eight corners, in world. A rotated box is not a box, so
131
+ // the world query volume is the bounds of the rotated one rather than the
132
+ // rotation of the bounds.
133
+ let world_min_x = Infinity;
134
+ let world_min_y = Infinity;
135
+ let world_min_z = Infinity;
136
+ let world_max_x = -Infinity;
137
+ let world_max_y = -Infinity;
138
+ let world_max_z = -Infinity;
139
+
140
+ for (let corner = 0; corner < 8; corner++) {
141
+ v3_quaternion_apply(
142
+ CORNER, 0,
143
+ (corner & 1) === 0 ? min_x : max_x,
144
+ (corner & 2) === 0 ? min_y : max_y,
145
+ (corner & 4) === 0 ? min_z : max_z,
146
+ qx, qy, qz, qw
147
+ );
148
+
149
+ const x = CORNER[0] + anchor_x;
150
+ const y = CORNER[1] + anchor_y;
151
+ const z = CORNER[2] + anchor_z;
152
+
153
+ if (x < world_min_x) { world_min_x = x; }
154
+ if (y < world_min_y) { world_min_y = y; }
155
+ if (z < world_min_z) { world_min_z = z; }
156
+ if (x > world_max_x) { world_max_x = x; }
157
+ if (y > world_max_y) { world_max_y = y; }
158
+ if (z > world_max_z) { world_max_z = z; }
159
+ }
160
+
161
+ const cloth = instance.cloth;
162
+
163
+ const found = index.query(
164
+ HANDLES, world_min_x, world_min_y, world_min_z,
165
+ world_max_x, world_max_y, world_max_z,
166
+ cloth.layer, cloth.mask
167
+ );
168
+
169
+ if (instance.collider_table === null || instance.collider_table.length < found * CCR_STRIDE) {
170
+ let capacity = 8;
171
+
172
+ while (capacity < found) {
173
+ capacity *= 2;
174
+ }
175
+
176
+ instance.collider_table = new Float32Array(capacity * CCR_STRIDE);
177
+ instance.collider_key = new Int32Array(capacity);
178
+ }
179
+
180
+ const table = instance.collider_table;
181
+ const keys = instance.collider_key;
182
+
183
+ const source = index.table;
184
+
185
+ for (let i = 0; i < found; i++) {
186
+ const handle = HANDLES[i];
187
+
188
+ const from = handle * CCR_STRIDE;
189
+ const to = i * CCR_STRIDE;
190
+
191
+ keys[i] = handle;
192
+
193
+ table[to + CCR_KIND] = source[from + CCR_KIND];
194
+ table[to + CCR_PARAM_0] = source[from + CCR_PARAM_0];
195
+ table[to + CCR_PARAM_1] = source[from + CCR_PARAM_1];
196
+ table[to + CCR_PARAM_2] = source[from + CCR_PARAM_2];
197
+ table[to + CCR_PARAM_3] = source[from + CCR_PARAM_3];
198
+ table[to + CCR_FEATURE] = source[from + CCR_FEATURE];
199
+ table[to + CCR_FRICTION] = source[from + CCR_FRICTION];
200
+ table[to + CCR_INFLATION] = source[from + CCR_INFLATION];
201
+
202
+ localise(
203
+ table, to + CCR_TX, to + CCR_QX,
204
+ source[from + CCR_TX], source[from + CCR_TY], source[from + CCR_TZ],
205
+ source[from + CCR_QX], source[from + CCR_QY], source[from + CCR_QZ], source[from + CCR_QW],
206
+ anchor_x, anchor_y, anchor_z, qx, qy, qz, qw
207
+ );
208
+
209
+ localise(
210
+ table, to + CCR_PREV_TX, to + CCR_PREV_QX,
211
+ source[from + CCR_PREV_TX], source[from + CCR_PREV_TY], source[from + CCR_PREV_TZ],
212
+ source[from + CCR_PREV_QX], source[from + CCR_PREV_QY],
213
+ source[from + CCR_PREV_QZ], source[from + CCR_PREV_QW],
214
+ anchor_x, anchor_y, anchor_z, qx, qy, qz, qw
215
+ );
216
+
217
+ cloth_collider_refit_bounds(table, i, CCR_STRIDE);
218
+ }
219
+
220
+ instance.collider_count = found;
221
+
222
+ return found;
223
+ }
224
+
225
+ /**
226
+ * Write a world pose into a record's translation and rotation slots, expressed
227
+ * in the anchor's frame.
228
+ *
229
+ * @param {Float32Array} table
230
+ * @param {number} translation_slot
231
+ * @param {number} rotation_slot
232
+ * @param {number} tx
233
+ * @param {number} ty
234
+ * @param {number} tz
235
+ * @param {number} rx
236
+ * @param {number} ry
237
+ * @param {number} rz
238
+ * @param {number} rw
239
+ * @param {number} anchor_x
240
+ * @param {number} anchor_y
241
+ * @param {number} anchor_z
242
+ * @param {number} qx
243
+ * @param {number} qy
244
+ * @param {number} qz
245
+ * @param {number} qw
246
+ * @private
247
+ */
248
+ function localise(
249
+ table, translation_slot, rotation_slot,
250
+ tx, ty, tz, rx, ry, rz, rw,
251
+ anchor_x, anchor_y, anchor_z, qx, qy, qz, qw
252
+ ) {
253
+ v3_quaternion_apply_inverse(
254
+ LOCAL_TRANSLATION, 0,
255
+ tx - anchor_x, ty - anchor_y, tz - anchor_z,
256
+ qx, qy, qz, qw
257
+ );
258
+
259
+ table[translation_slot] = LOCAL_TRANSLATION[0];
260
+ table[translation_slot + 1] = LOCAL_TRANSLATION[1];
261
+ table[translation_slot + 2] = LOCAL_TRANSLATION[2];
262
+
263
+ quat3_multiply(LOCAL_ROTATION, 0, -qx, -qy, -qz, qw, rx, ry, rz, rw);
264
+
265
+ table[rotation_slot] = LOCAL_ROTATION[0];
266
+ table[rotation_slot + 1] = LOCAL_ROTATION[1];
267
+ table[rotation_slot + 2] = LOCAL_ROTATION[2];
268
+ table[rotation_slot + 3] = LOCAL_ROTATION[3];
269
+ }
270
+
271
+ /**
272
+ * Whether any collider overlapping this cloth moved between the previous step
273
+ * and this one — §7 P5's "wake on collider motion", asked without waking.
274
+ *
275
+ * A sleeping cloth is not stepped and not written back, so something has to
276
+ * notice when the world it was resting against moves. This is that something,
277
+ * and it is a broadphase query plus a pose comparison: cheaper than a step by
278
+ * three orders of magnitude, which is what makes sleep worth having at all.
279
+ *
280
+ * @param {ClothInstance} instance
281
+ * @param {ClothColliderIndex} index
282
+ * @returns {boolean}
283
+ */
284
+ export function cloth_colliders_moved(instance, index) {
285
+ const found = cloth_gather_colliders(instance, index, 0);
286
+
287
+ const table = instance.collider_table;
288
+
289
+ for (let i = 0; i < found; i++) {
290
+ const r = i * CCR_STRIDE;
291
+
292
+ if (table[r + CCR_TX] !== table[r + CCR_PREV_TX]
293
+ || table[r + CCR_TY] !== table[r + CCR_PREV_TY]
294
+ || table[r + CCR_TZ] !== table[r + CCR_PREV_TZ]
295
+ || table[r + CCR_QX] !== table[r + CCR_PREV_QX]
296
+ || table[r + CCR_QY] !== table[r + CCR_PREV_QY]
297
+ || table[r + CCR_QZ] !== table[r + CCR_PREV_QZ]
298
+ || table[r + CCR_QW] !== table[r + CCR_PREV_QW]) {
299
+ return true;
300
+ }
301
+ }
302
+
303
+ return false;
304
+ }
305
+
306
+ /**
307
+ * @type {number[]}
308
+ * @private
309
+ */
310
+ const HANDLES = [];
311
+
312
+ /**
313
+ * @type {Float64Array}
314
+ * @private
315
+ */
316
+ const CORNER = new Float64Array(3);
317
+
318
+ /**
319
+ * @type {Float64Array}
320
+ * @private
321
+ */
322
+ const LOCAL_TRANSLATION = new Float64Array(3);
323
+
324
+ /**
325
+ * @type {Float64Array}
326
+ * @private
327
+ */
328
+ const LOCAL_ROTATION = new Float64Array(4);
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Fill `blended_position` and `blended_rotation` from the solved particles.
3
+ *
4
+ * Both are in the **cloth's own frame**: the position is the particle lerped
5
+ * towards its animated one by `Cloth#blend`, and the rotation is the swing
6
+ * composed onto the animated orientation. Node 0 — the anchor — is the origin of
7
+ * that frame, so its rotation is the identity rather than anything read off it.
8
+ *
9
+ * @param {ClothInstance} instance
10
+ * @returns {void}
11
+ */
12
+ export function cloth_reconstruct_pose(instance: ClothInstance): void;
13
+ //# sourceMappingURL=cloth_reconstruct_pose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloth_reconstruct_pose.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/physics/cloth/ecs/cloth_reconstruct_pose.js"],"names":[],"mappings":"AA6DA;;;;;;;;;;GAUG;AACH,iEAFa,IAAI,CAqEhB"}