@woosh/meep-engine 3.20.0 → 3.22.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 (2123) hide show
  1. package/README.md +96 -213
  2. package/build/bundle-worker-terrain.js +1 -1
  3. package/editor/Editor.d.ts.map +1 -1
  4. package/editor/enableEditor.d.ts.map +1 -1
  5. package/editor/particles/effect/ParticleEffectDocument.d.ts.map +1 -1
  6. package/editor/particles/effect/ParticleEffectDocument.js +0 -3
  7. package/editor/particles/effect/ParticleReferenceSimulation.d.ts.map +1 -1
  8. package/editor/particles/effect/ParticleReferenceSimulation.js +1 -1
  9. package/editor/persistence/SceneMetadata.d.ts +9 -4
  10. package/editor/persistence/SceneMetadata.d.ts.map +1 -1
  11. package/editor/persistence/SceneMetadata.js +4 -3
  12. package/editor/templates/entity_templates.d.ts.map +1 -1
  13. package/editor/tools/TransformToolV2.d.ts +2 -1
  14. package/editor/tools/TransformToolV2.d.ts.map +1 -1
  15. package/editor/tools/engine/Tool.d.ts +1 -1
  16. package/editor/tools/engine/Tool.d.ts.map +1 -1
  17. package/editor/tools/engine/ToolEngine.d.ts +1 -1
  18. package/editor/tools/engine/ToolEngine.d.ts.map +1 -1
  19. package/editor/tools/v2/GizmoNode.d.ts +1 -1
  20. package/editor/tools/v2/GizmoNode.d.ts.map +1 -1
  21. package/editor/view/ecs/EntityEditor.d.ts +3 -2
  22. package/editor/view/ecs/EntityEditor.d.ts.map +1 -1
  23. package/editor/view/ecs/EntityList.d.ts +7 -3
  24. package/editor/view/ecs/EntityList.d.ts.map +1 -1
  25. package/editor/view/ecs/EntityList.js +3 -2
  26. package/editor/view/ecs/HierarchicalEntityListView.d.ts +3 -3
  27. package/editor/view/ecs/HierarchicalEntityListView.d.ts.map +1 -1
  28. package/editor/view/ecs/components/common/NumericIntervalController.d.ts +8 -3
  29. package/editor/view/ecs/components/common/NumericIntervalController.d.ts.map +1 -1
  30. package/editor/view/ecs/components/common/NumericIntervalController.js +3 -2
  31. package/editor/view/ecs/components/common/TextController.d.ts +7 -3
  32. package/editor/view/ecs/components/common/TextController.d.ts.map +1 -1
  33. package/editor/view/ecs/components/common/TextController.js +3 -2
  34. package/editor/view/library/MeshLibraryView.d.ts.map +1 -1
  35. package/editor/view/library/MeshLibraryView.js +3 -2
  36. package/editor/view/makeEntityDecorators.d.ts.map +1 -1
  37. package/editor/view/node-graph/NodeGraphClipboard.d.ts.map +1 -1
  38. package/editor/view/node-graph/NodeIconView.d.ts +5 -2
  39. package/editor/view/node-graph/NodeIconView.d.ts.map +1 -1
  40. package/editor/view/node-graph/NodeIconView.js +2 -1
  41. package/editor/view/node-graph/PortView.d.ts +9 -4
  42. package/editor/view/node-graph/PortView.d.ts.map +1 -1
  43. package/editor/view/node-graph/PortView.js +4 -3
  44. package/editor/view/particles/ColorLutGradientView.d.ts +7 -3
  45. package/editor/view/particles/ColorLutGradientView.d.ts.map +1 -1
  46. package/editor/view/particles/ColorLutGradientView.js +3 -2
  47. package/editor/view/particles/ScalarLutCurveView.d.ts +9 -4
  48. package/editor/view/particles/ScalarLutCurveView.d.ts.map +1 -1
  49. package/editor/view/particles/ScalarLutCurveView.js +4 -3
  50. package/editor/view/particles/effect/ParticleEmitterInspectorView.d.ts.map +1 -1
  51. package/editor/view/particles/effect/ParticleEmitterInspectorView.js +0 -1
  52. package/editor/view/tools/ToolSettingsView.d.ts +1 -1
  53. package/editor/view/tools/ToolSettingsView.d.ts.map +1 -1
  54. package/editor/view/tools/ToolView.d.ts +7 -3
  55. package/editor/view/tools/ToolView.d.ts.map +1 -1
  56. package/editor/view/tools/ToolView.js +3 -2
  57. package/package.json +13 -12
  58. package/src/core/IdPool.d.ts.map +1 -1
  59. package/src/core/binary/32BitEncoder.d.ts.map +1 -1
  60. package/src/core/binary/BinaryBuffer.d.ts +1 -1
  61. package/src/core/binary/BinaryBuffer.d.ts.map +1 -1
  62. package/src/core/binary/allocator/OffsetAllocator.d.ts +24 -1
  63. package/src/core/binary/allocator/OffsetAllocator.d.ts.map +1 -1
  64. package/src/core/binary/allocator/OffsetAllocator.js +101 -1
  65. package/src/core/binary/type/Field.d.ts +5 -1
  66. package/src/core/binary/type/Field.d.ts.map +1 -1
  67. package/src/core/binary/type/Field.js +4 -0
  68. package/src/core/binary/type/Type.d.ts +4 -0
  69. package/src/core/binary/type/Type.d.ts.map +1 -1
  70. package/src/core/binary/type/Type.js +4 -0
  71. package/src/core/bvh2/binary/2/BinaryUint32BVH.d.ts +1 -1
  72. package/src/core/bvh2/binary/2/BinaryUint32BVH.d.ts.map +1 -1
  73. package/src/core/bvh2/bvh3/BVH.d.ts +3 -3
  74. package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
  75. package/src/core/bvh2/bvh3/BVH.js +1 -2
  76. package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.d.ts.map +1 -1
  77. package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.d.ts.map +1 -1
  78. package/src/core/cache/Cache.d.ts +16 -8
  79. package/src/core/cache/Cache.d.ts.map +1 -1
  80. package/src/core/cache/Cache.js +7 -6
  81. package/src/core/cache/wtinylfu/CacheRegionWTinylfu.d.ts +5 -2
  82. package/src/core/cache/wtinylfu/CacheRegionWTinylfu.d.ts.map +1 -1
  83. package/src/core/cache/wtinylfu/CacheRegionWTinylfu.js +2 -1
  84. package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts +20 -10
  85. package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts.map +1 -1
  86. package/src/core/cache/wtinylfu/CacheWTinylfu.js +9 -8
  87. package/src/core/collection/CuckooFilter.d.ts +8 -4
  88. package/src/core/collection/CuckooFilter.d.ts.map +1 -1
  89. package/src/core/collection/CuckooFilter.js +3 -2
  90. package/src/core/collection/list/List.d.ts +0 -1
  91. package/src/core/collection/list/List.d.ts.map +1 -1
  92. package/src/core/collection/list/List.js +0 -1
  93. package/src/core/collection/list/ListForwarder.d.ts +1 -1
  94. package/src/core/collection/list/ListForwarder.d.ts.map +1 -1
  95. package/src/core/collection/map/HashMap.d.ts +12 -7
  96. package/src/core/collection/map/HashMap.d.ts.map +1 -1
  97. package/src/core/collection/map/HashMap.js +5 -5
  98. package/src/core/collection/map/ObservedMap.d.ts +1 -2
  99. package/src/core/collection/map/ObservedMap.d.ts.map +1 -1
  100. package/src/core/collection/map/ObservedMap.js +0 -1
  101. package/src/core/collection/set/ArraySet.d.ts.map +1 -1
  102. package/src/core/collection/table/RowFirstTable.d.ts +2 -1
  103. package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
  104. package/src/core/collection/table/RowFirstTable.js +4 -0
  105. package/src/core/collection/table/bind/TableRecord.d.ts +1 -1
  106. package/src/core/collection/table/bind/TableRecord.d.ts.map +1 -1
  107. package/src/core/color/Color.d.ts +9 -10
  108. package/src/core/color/Color.d.ts.map +1 -1
  109. package/src/core/color/Color.js +5 -4
  110. package/src/core/color/hsv/hsv2rgb_float.d.ts +23 -1
  111. package/src/core/color/hsv/hsv2rgb_float.d.ts.map +1 -1
  112. package/src/core/color/hsv/hsv2rgb_float.js +31 -3
  113. package/src/core/color/hsv/hsv_to_rgb.d.ts +20 -9
  114. package/src/core/color/hsv/hsv_to_rgb.d.ts.map +1 -1
  115. package/src/core/color/hsv/hsv_to_rgb.js +30 -10
  116. package/src/core/color/hsv/hsv_to_rgb_uint8.d.ts.map +1 -1
  117. package/src/core/color/hsv/hsv_to_rgb_uint8.js +10 -5
  118. package/src/core/color/hsv/rgb_to_hsv.d.ts.map +1 -1
  119. package/src/core/events/signal/Signal.d.ts +1 -1
  120. package/src/core/events/signal/Signal.d.ts.map +1 -1
  121. package/src/core/events/signal/signal_aggregate_by_time_window.d.ts.map +1 -1
  122. package/src/core/fsm/simple/SimpleStateMachineDescription.d.ts.map +1 -1
  123. package/src/core/function/FunctionCompiler.d.ts +9 -4
  124. package/src/core/function/FunctionCompiler.d.ts.map +1 -1
  125. package/src/core/function/FunctionCompiler.js +8 -6
  126. package/src/core/geom/2d/aabb/AABB2.d.ts +4 -4
  127. package/src/core/geom/2d/aabb/AABB2.d.ts.map +1 -1
  128. package/src/core/geom/2d/bvh/BVH2D.d.ts +1 -1
  129. package/src/core/geom/2d/bvh/BVH2D.d.ts.map +1 -1
  130. package/src/core/geom/2d/triangle/tri2_rasterize_conservative.d.ts.map +1 -1
  131. package/src/core/geom/3d/aabb/AABB3.d.ts +6 -6
  132. package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
  133. package/src/core/geom/3d/atlas/atlas_bench_lib.d.ts.map +1 -1
  134. package/src/core/geom/3d/atlas/atlas_compute_charts.d.ts.map +1 -1
  135. package/src/core/geom/3d/atlas/atlas_generate.d.ts.map +1 -1
  136. package/src/core/geom/3d/atlas/pack/atlas_pack_charts.d.ts.map +1 -1
  137. package/src/core/geom/3d/atlas/param/atlas_chart_param_validity.d.ts.map +1 -1
  138. package/src/core/geom/3d/atlas/param/atlas_chart_parameterize_bff.d.ts.map +1 -1
  139. package/src/core/geom/3d/atlas/param/atlas_chart_parameterize_lscm.d.ts.map +1 -1
  140. package/src/core/geom/3d/atlas/segment/atlas_compute_planar_regions.d.ts.map +1 -1
  141. package/src/core/geom/3d/atlas/segment/atlas_segment_charts.d.ts.map +1 -1
  142. package/src/core/geom/3d/atlas/segment/atlas_segment_charts_atomic.d.ts.map +1 -1
  143. package/src/core/geom/3d/mat4/m4_decompose.d.ts +7 -1
  144. package/src/core/geom/3d/mat4/m4_decompose.d.ts.map +1 -1
  145. package/src/core/geom/3d/quadric/Quadric3.d.ts +11 -11
  146. package/src/core/geom/3d/quadric/Quadric3.d.ts.map +1 -1
  147. package/src/core/geom/3d/quaternion/quat3_shortest_arc.d.ts +41 -0
  148. package/src/core/geom/3d/quaternion/quat3_shortest_arc.d.ts.map +1 -0
  149. package/src/core/geom/3d/quaternion/quat3_shortest_arc.js +94 -0
  150. package/src/core/geom/3d/ray/Ray3.d.ts +8 -8
  151. package/src/core/geom/3d/ray/Ray3.d.ts.map +1 -1
  152. package/src/core/geom/3d/ray/Ray3.js +3 -3
  153. package/src/core/geom/3d/shape/AbstractShape3D.d.ts +1 -0
  154. package/src/core/geom/3d/shape/AbstractShape3D.d.ts.map +1 -1
  155. package/src/core/geom/3d/shape/AbstractShape3D.js +4 -0
  156. package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts +2 -4
  157. package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts.map +1 -1
  158. package/src/core/geom/3d/shape/ConvexHullShape3D.js +0 -2
  159. package/src/core/geom/3d/shape/TransformedShape3D.d.ts +2 -3
  160. package/src/core/geom/3d/shape/TransformedShape3D.d.ts.map +1 -1
  161. package/src/core/geom/3d/shape/TransformedShape3D.js +0 -1
  162. package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts.map +1 -1
  163. package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.d.ts.map +1 -1
  164. package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.d.ts.map +1 -1
  165. package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_carve_outside_surface.d.ts.map +1 -1
  166. package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_improve_quality.d.ts.map +1 -1
  167. package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.d.ts.map +1 -1
  168. package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.d.ts.map +1 -1
  169. package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.d.ts +6 -0
  170. package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.d.ts.map +1 -1
  171. package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.js +5 -0
  172. package/src/core/geom/3d/topology/struct/binary/BinaryTopology.d.ts +2 -0
  173. package/src/core/geom/3d/topology/struct/binary/BinaryTopology.d.ts.map +1 -1
  174. package/src/core/geom/3d/topology/struct/binary/BinaryTopology.js +5 -0
  175. package/src/core/geom/3d/topology/struct/binary/io/bt_mesh_to_indexed_geometry.d.ts.map +1 -1
  176. package/src/core/geom/3d/util/aabb3_emit_point_grid.d.ts.map +1 -1
  177. package/src/core/geom/Quaternion.d.ts +5 -4
  178. package/src/core/geom/Quaternion.d.ts.map +1 -1
  179. package/src/core/geom/Quaternion.js +4 -0
  180. package/src/core/geom/Vector1.d.ts +9 -1
  181. package/src/core/geom/Vector1.d.ts.map +1 -1
  182. package/src/core/geom/Vector1.js +6 -0
  183. package/src/core/geom/Vector2.d.ts +2 -2
  184. package/src/core/geom/Vector2.d.ts.map +1 -1
  185. package/src/core/geom/Vector3.d.ts +9 -3
  186. package/src/core/geom/Vector3.d.ts.map +1 -1
  187. package/src/core/geom/Vector3.js +5 -0
  188. package/src/core/geom/Vector4.d.ts +14 -6
  189. package/src/core/geom/Vector4.d.ts.map +1 -1
  190. package/src/core/geom/Vector4.js +6 -1
  191. package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts +4 -4
  192. package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts.map +1 -1
  193. package/src/core/geom/packing/max-rect/MaxRectanglesPacker.js +1 -1
  194. package/src/core/geom/packing/max-rect/find_best_container.d.ts.map +1 -1
  195. package/src/core/geom/vec3/v3_hash.d.ts +12 -0
  196. package/src/core/geom/vec3/v3_hash.d.ts.map +1 -0
  197. package/src/core/geom/vec3/v3_hash.js +19 -0
  198. package/src/core/geom/vec3/v3_lerp.d.ts +3 -1
  199. package/src/core/geom/vec3/v3_lerp.d.ts.map +1 -1
  200. package/src/core/geom/vec3/v3_set.d.ts +14 -0
  201. package/src/core/geom/vec3/v3_set.d.ts.map +1 -0
  202. package/src/core/geom/vec3/v3_set.js +17 -0
  203. package/src/core/geom/vec3/v3_slerp.d.ts +3 -1
  204. package/src/core/geom/vec3/v3_slerp.d.ts.map +1 -1
  205. package/src/core/geom/vec4/v4_equals_array.d.ts +11 -0
  206. package/src/core/geom/vec4/v4_equals_array.d.ts.map +1 -0
  207. package/src/core/geom/vec4/v4_equals_array.js +16 -0
  208. package/src/core/geom/vec4/v4_hash.d.ts +12 -0
  209. package/src/core/geom/vec4/v4_hash.d.ts.map +1 -0
  210. package/src/core/geom/vec4/v4_hash.js +18 -0
  211. package/src/core/geom/vec4/v4_set.d.ts +15 -0
  212. package/src/core/geom/vec4/v4_set.d.ts.map +1 -0
  213. package/src/core/geom/vec4/v4_set.js +19 -0
  214. package/src/core/graph/convert_graph_to_dot_string.d.ts +7 -3
  215. package/src/core/graph/convert_graph_to_dot_string.d.ts.map +1 -1
  216. package/src/core/graph/convert_graph_to_dot_string.js +3 -2
  217. package/src/core/graph/metis/native/bisection/split_graph_two_way.d.ts.map +1 -1
  218. package/src/core/graph/metis/native/metis_partition_kway.d.ts.map +1 -1
  219. package/src/core/graph/metis/native/refine/fm_kway.d.ts.map +1 -1
  220. package/src/core/json/abstractJSONSerializer.d.ts.map +1 -1
  221. package/src/core/lang/reactive/AbstractCachingParser.d.ts.map +1 -1
  222. package/src/core/localization/Localization.d.ts +3 -2
  223. package/src/core/localization/Localization.d.ts.map +1 -1
  224. package/src/core/localization/Localization.js +4 -0
  225. package/src/core/math/linalg/cg/cg_solve.d.ts.map +1 -1
  226. package/src/core/math/noise/create_simplex_noise_2d.d.ts.map +1 -1
  227. package/src/core/math/noise/create_simplex_noise_2d.js +6 -6
  228. package/src/core/math/physics/mie/compute_bhmie_optical_properties.d.ts.map +1 -1
  229. package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.d.ts.map +1 -1
  230. package/src/core/math/random/seededRandom_Mulberry32.d.ts +1 -1
  231. package/src/core/math/random/seededRandom_Mulberry32.d.ts.map +1 -1
  232. package/src/core/model/ModuleRegistry.d.ts.map +1 -1
  233. package/src/core/model/ObservedValue.d.ts +8 -6
  234. package/src/core/model/ObservedValue.d.ts.map +1 -1
  235. package/src/core/model/ObservedValue.js +3 -1
  236. package/src/core/model/node-graph/Connection.d.ts +1 -0
  237. package/src/core/model/node-graph/Connection.d.ts.map +1 -1
  238. package/src/core/model/node-graph/Connection.js +4 -0
  239. package/src/core/model/node-graph/NodeGraph.d.ts +8 -5
  240. package/src/core/model/node-graph/NodeGraph.d.ts.map +1 -1
  241. package/src/core/model/node-graph/NodeGraph.js +3 -3
  242. package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts +9 -4
  243. package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts.map +1 -1
  244. package/src/core/model/node-graph/json/serializeNodeGraphToJSON.js +4 -3
  245. package/src/core/model/node-graph/node/NodeDescription.d.ts +12 -4
  246. package/src/core/model/node-graph/node/NodeDescription.d.ts.map +1 -1
  247. package/src/core/model/node-graph/node/NodeDescription.js +10 -3
  248. package/src/core/model/node-graph/node/NodeInstance.d.ts +5 -2
  249. package/src/core/model/node-graph/node/NodeInstance.d.ts.map +1 -1
  250. package/src/core/model/node-graph/node/NodeInstance.js +6 -0
  251. package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts +5 -2
  252. package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts.map +1 -1
  253. package/src/core/model/node-graph/node/NodeInstancePortReference.js +6 -0
  254. package/src/core/model/node-graph/node/NodeRegistry.d.ts +2 -1
  255. package/src/core/model/node-graph/node/NodeRegistry.d.ts.map +1 -1
  256. package/src/core/model/node-graph/node/NodeRegistry.js +4 -0
  257. package/src/core/model/node-graph/node/Port.d.ts +12 -5
  258. package/src/core/model/node-graph/node/Port.d.ts.map +1 -1
  259. package/src/core/model/node-graph/node/Port.js +9 -4
  260. package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.d.ts +5 -2
  261. package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.d.ts.map +1 -1
  262. package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.js +2 -1
  263. package/src/core/model/node-graph/util/graph_clone_by_node_subset.d.ts +5 -2
  264. package/src/core/model/node-graph/util/graph_clone_by_node_subset.d.ts.map +1 -1
  265. package/src/core/model/node-graph/util/graph_clone_by_node_subset.js +2 -1
  266. package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.d.ts +5 -2
  267. package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.d.ts.map +1 -1
  268. package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.js +2 -1
  269. package/src/core/model/node-graph/visual/layout/layout_assign_coordinates.d.ts.map +1 -1
  270. package/src/core/model/node-graph/visual/layout/layout_node_graph.d.ts.map +1 -1
  271. package/src/core/model/node-graph/visual/layout/layout_order_layers.d.ts.map +1 -1
  272. package/src/core/model/reactive/model/ReactiveExpression.d.ts.map +1 -1
  273. package/src/core/model/validate_enum_schema.d.ts.map +1 -1
  274. package/src/core/primitives/Class.d.ts +15 -0
  275. package/src/core/primitives/Class.d.ts.map +1 -0
  276. package/src/core/primitives/Class.js +18 -0
  277. package/src/core/primitives/TypedArray.d.ts +15 -0
  278. package/src/core/primitives/TypedArray.d.ts.map +1 -0
  279. package/src/core/primitives/TypedArray.js +27 -0
  280. package/src/core/process/Future.d.ts.map +1 -1
  281. package/src/core/process/buildPromiseChain.d.ts +9 -4
  282. package/src/core/process/buildPromiseChain.d.ts.map +1 -1
  283. package/src/core/process/buildPromiseChain.js +4 -3
  284. package/src/core/process/executor/ConcurrentExecutor.d.ts +2 -0
  285. package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
  286. package/src/core/process/executor/ConcurrentExecutor.js +5 -0
  287. package/src/core/process/task/Task.d.ts +17 -7
  288. package/src/core/process/task/Task.d.ts.map +1 -1
  289. package/src/core/process/task/Task.js +12 -6
  290. package/src/core/process/task/util/countTask.d.ts.map +1 -1
  291. package/src/core/process/task/util/randomCountTask.d.ts.map +1 -1
  292. package/src/core/process/worker/WorkerBuilder.d.ts.map +1 -1
  293. package/src/engine/Clock.d.ts +1 -1
  294. package/src/engine/Clock.d.ts.map +1 -1
  295. package/src/engine/Engine.d.ts +17 -7
  296. package/src/engine/Engine.d.ts.map +1 -1
  297. package/src/engine/Engine.js +9 -4
  298. package/src/engine/EngineConfiguration.d.ts +33 -9
  299. package/src/engine/EngineConfiguration.d.ts.map +1 -1
  300. package/src/engine/EngineConfiguration.js +22 -4
  301. package/src/engine/EngineHarness.d.ts +22 -10
  302. package/src/engine/EngineHarness.d.ts.map +1 -1
  303. package/src/engine/EngineHarness.js +13 -8
  304. package/src/engine/EntityCreator.d.ts +26 -11
  305. package/src/engine/EntityCreator.d.ts.map +1 -1
  306. package/src/engine/EntityCreator.js +16 -13
  307. package/src/engine/animation/Animations.d.ts.map +1 -1
  308. package/src/engine/animation/EntityAnimation.d.ts +1 -1
  309. package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
  310. package/src/engine/animation/TransitionFunctions.d.ts.map +1 -1
  311. package/src/engine/animation/Tween.d.ts.map +1 -1
  312. package/src/engine/animation/curve/actionProcessorOperations/curveActions.d.ts +28 -18
  313. package/src/engine/animation/curve/actionProcessorOperations/curveActions.d.ts.map +1 -1
  314. package/src/engine/animation/curve/actionProcessorOperations/curveActions.js +9 -8
  315. package/src/engine/animation/curve/draw/build_plot_entity_from_array.d.ts +18 -8
  316. package/src/engine/animation/curve/draw/build_plot_entity_from_array.d.ts.map +1 -1
  317. package/src/engine/animation/curve/draw/build_plot_entity_from_array.js +8 -7
  318. package/src/engine/animation/curve/editor/CurveEditorView.d.ts +22 -11
  319. package/src/engine/animation/curve/editor/CurveEditorView.d.ts.map +1 -1
  320. package/src/engine/animation/curve/editor/CurveEditorView.js +7 -6
  321. package/src/engine/animation/curve/editor/DragHandler.d.ts +12 -7
  322. package/src/engine/animation/curve/editor/DragHandler.d.ts.map +1 -1
  323. package/src/engine/animation/curve/editor/DragHandler.js +4 -3
  324. package/src/engine/animation/curve/editor/KeyframeStateManager.d.ts +3 -2
  325. package/src/engine/animation/curve/editor/KeyframeStateManager.d.ts.map +1 -1
  326. package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.d.ts +21 -10
  327. package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.d.ts.map +1 -1
  328. package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.js +10 -9
  329. package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.d.ts +20 -9
  330. package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.d.ts.map +1 -1
  331. package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.js +9 -8
  332. package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.d.ts +15 -7
  333. package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.d.ts.map +1 -1
  334. package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.js +7 -6
  335. package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.d.ts +39 -18
  336. package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.d.ts.map +1 -1
  337. package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.js +18 -17
  338. package/src/engine/animation/curve/editor/createPanTool.d.ts +13 -5
  339. package/src/engine/animation/curve/editor/createPanTool.d.ts.map +1 -1
  340. package/src/engine/animation/curve/editor/createPanTool.js +5 -4
  341. package/src/engine/animation/curve/editor/createSelectionBoxTool.d.ts +19 -8
  342. package/src/engine/animation/curve/editor/createSelectionBoxTool.d.ts.map +1 -1
  343. package/src/engine/animation/curve/editor/createSelectionBoxTool.js +8 -7
  344. package/src/engine/animation/curve/editor/uploadViaElement.d.ts.map +1 -1
  345. package/src/engine/animation/curve/view/AnimationCurveView.d.ts +1 -1
  346. package/src/engine/animation/curve/view/AnimationCurveView.d.ts.map +1 -1
  347. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +6 -2
  348. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
  349. package/src/engine/animation/keyed2/AnimationTrackPlayback.js +4 -0
  350. package/src/engine/animation/removeEntityGenericEffect.d.ts +13 -6
  351. package/src/engine/animation/removeEntityGenericEffect.d.ts.map +1 -1
  352. package/src/engine/animation/removeEntityGenericEffect.js +6 -5
  353. package/src/engine/animation/removeEntityWithMeshParticlesEffect.d.ts +11 -5
  354. package/src/engine/animation/removeEntityWithMeshParticlesEffect.d.ts.map +1 -1
  355. package/src/engine/animation/removeEntityWithMeshParticlesEffect.js +5 -4
  356. package/src/engine/asset/Asset.d.ts +6 -3
  357. package/src/engine/asset/Asset.d.ts.map +1 -1
  358. package/src/engine/asset/Asset.js +4 -1
  359. package/src/engine/asset/AssetManager.d.ts +42 -21
  360. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  361. package/src/engine/asset/AssetManager.js +20 -12
  362. package/src/engine/asset/AssetRequest.d.ts +4 -2
  363. package/src/engine/asset/AssetRequest.d.ts.map +1 -1
  364. package/src/engine/asset/AssetRequest.js +5 -0
  365. package/src/engine/asset/AssetRequestScope.d.ts +1 -0
  366. package/src/engine/asset/AssetRequestScope.d.ts.map +1 -1
  367. package/src/engine/asset/AssetRequestScope.js +4 -0
  368. package/src/engine/asset/AssetTransformer.d.ts +7 -1
  369. package/src/engine/asset/AssetTransformer.d.ts.map +1 -1
  370. package/src/engine/asset/AssetTransformer.js +5 -0
  371. package/src/engine/asset/PendingAsset.d.ts +8 -0
  372. package/src/engine/asset/PendingAsset.d.ts.map +1 -1
  373. package/src/engine/asset/PendingAsset.js +6 -0
  374. package/src/engine/asset/loaders/ArrayBufferLoader.d.ts +6 -3
  375. package/src/engine/asset/loaders/ArrayBufferLoader.d.ts.map +1 -1
  376. package/src/engine/asset/loaders/ArrayBufferLoader.js +2 -1
  377. package/src/engine/asset/loaders/AssetLoader.d.ts +8 -2
  378. package/src/engine/asset/loaders/AssetLoader.d.ts.map +1 -1
  379. package/src/engine/asset/loaders/AssetLoader.js +5 -0
  380. package/src/engine/asset/loaders/USDSceneBundleAssetLoader.d.ts +10 -0
  381. package/src/engine/asset/loaders/USDSceneBundleAssetLoader.d.ts.map +1 -1
  382. package/src/engine/asset/loaders/image/ImageRGBADataLoader.d.ts +5 -2
  383. package/src/engine/asset/loaders/image/ImageRGBADataLoader.d.ts.map +1 -1
  384. package/src/engine/asset/loaders/image/ImageRGBADataLoader.js +2 -1
  385. package/src/engine/asset/loaders/image/avif/encode_image_source.d.ts.map +1 -1
  386. package/src/engine/asset/loaders/image/avif/threaded_image_encoder.d.ts.map +1 -1
  387. package/src/engine/asset/preloader/AssetPreloader.d.ts +2 -1
  388. package/src/engine/asset/preloader/AssetPreloader.d.ts.map +1 -1
  389. package/src/engine/asset/preloader/AssetPreloader.js +4 -0
  390. package/src/engine/browserInfo.d.ts.map +1 -1
  391. package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts +1 -1
  392. package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts.map +1 -1
  393. package/src/engine/control/first-person/abilities/LedgeGrab.js +9 -9
  394. package/src/engine/control/first-person/abilities/Mantle.js +8 -8
  395. package/src/engine/control/first-person/abilities/ScrambleUp.js +2 -2
  396. package/src/engine/control/first-person/abilities/WallJump.js +2 -2
  397. package/src/engine/control/first-person/abilities/WallRun.js +3 -3
  398. package/src/engine/control/first-person/collision/KinematicMover.d.ts +1 -1
  399. package/src/engine/control/first-person/collision/KinematicMover.d.ts.map +1 -1
  400. package/src/engine/control/first-person/collision/KinematicMover.js +19 -46
  401. package/src/engine/control/first-person/sensors/FirstPersonSensors.d.ts +17 -5
  402. package/src/engine/control/first-person/sensors/FirstPersonSensors.d.ts.map +1 -1
  403. package/src/engine/control/first-person/sensors/FirstPersonSensors.js +20 -7
  404. package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.d.ts.map +1 -1
  405. package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.js +9 -8
  406. package/src/engine/control/first-person/test/buildTestPlayer.d.ts.map +1 -1
  407. package/src/engine/development/performance/MetricCollection.d.ts +11 -3
  408. package/src/engine/development/performance/MetricCollection.d.ts.map +1 -1
  409. package/src/engine/development/performance/MetricCollection.js +7 -2
  410. package/src/engine/ecs/Entity.d.ts +3 -2
  411. package/src/engine/ecs/Entity.d.ts.map +1 -1
  412. package/src/engine/ecs/Entity.js +9 -1
  413. package/src/engine/ecs/EntityComponentDataset.d.ts +8 -6
  414. package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
  415. package/src/engine/ecs/EntityComponentDataset.js +9 -0
  416. package/src/engine/ecs/EntityManager.d.ts +2 -1
  417. package/src/engine/ecs/EntityManager.d.ts.map +1 -1
  418. package/src/engine/ecs/EntityManager.js +5 -0
  419. package/src/engine/ecs/EntityObserver.d.ts +4 -0
  420. package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
  421. package/src/engine/ecs/EntityObserver.js +4 -0
  422. package/src/engine/ecs/EntityReference.d.ts +4 -0
  423. package/src/engine/ecs/EntityReference.d.ts.map +1 -1
  424. package/src/engine/ecs/EntityReference.js +4 -0
  425. package/src/engine/ecs/System.d.ts +11 -2
  426. package/src/engine/ecs/System.d.ts.map +1 -1
  427. package/src/engine/ecs/System.js +6 -0
  428. package/src/engine/ecs/animation/Animation.d.ts +1 -1
  429. package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
  430. package/src/engine/ecs/async/SystemWorkerLoopback.d.ts +3 -3
  431. package/src/engine/ecs/async/SystemWorkerLoopback.d.ts.map +1 -1
  432. package/src/engine/ecs/async/WorkerSystem.d.ts +10 -0
  433. package/src/engine/ecs/async/WorkerSystem.d.ts.map +1 -1
  434. package/src/engine/ecs/dynamic_actions/DynamicActorSystem.d.ts.map +1 -1
  435. package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.d.ts +7 -3
  436. package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.d.ts.map +1 -1
  437. package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.js +3 -2
  438. package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.d.ts +7 -3
  439. package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.d.ts.map +1 -1
  440. package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.js +3 -2
  441. package/src/engine/ecs/grid/pick.d.ts.map +1 -1
  442. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts +36 -17
  443. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts.map +1 -1
  444. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.js +17 -16
  445. package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.d.ts +7 -3
  446. package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.d.ts.map +1 -1
  447. package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.js +3 -2
  448. package/src/engine/ecs/guid/UUID.d.ts +1 -1
  449. package/src/engine/ecs/guid/UUID.d.ts.map +1 -1
  450. package/src/engine/ecs/ik/InverseKinematics.d.ts +17 -8
  451. package/src/engine/ecs/ik/InverseKinematics.d.ts.map +1 -1
  452. package/src/engine/ecs/ik/InverseKinematics.js +8 -7
  453. package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.d.ts.map +1 -1
  454. package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.js +26 -9
  455. package/src/engine/ecs/parent/EntityNode.d.ts +1 -1
  456. package/src/engine/ecs/parent/EntityNode.d.ts.map +1 -1
  457. package/src/engine/ecs/parent/FaceEditor.d.ts +7 -7
  458. package/src/engine/ecs/parent/FaceEditor.d.ts.map +1 -1
  459. package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts +9 -0
  460. package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts.map +1 -1
  461. package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.js +9 -0
  462. package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts +4 -0
  463. package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts.map +1 -1
  464. package/src/engine/ecs/storage/binary/BinaryClassUpgrader.js +4 -0
  465. package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts +10 -4
  466. package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts.map +1 -1
  467. package/src/engine/ecs/storage/binary/BinarySerializationRegistry.js +5 -0
  468. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts +5 -2
  469. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
  470. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.js +2 -1
  471. package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.d.ts +7 -3
  472. package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.d.ts.map +1 -1
  473. package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.js +3 -2
  474. package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter2.d.ts +2 -2
  475. package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter2.d.ts.map +1 -1
  476. package/src/engine/ecs/system/SystemExecutionPhase.d.ts +9 -0
  477. package/src/engine/ecs/system/SystemExecutionPhase.d.ts.map +1 -0
  478. package/src/engine/ecs/systems/ScriptSystem.d.ts +1 -0
  479. package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
  480. package/src/engine/ecs/terrain/TerrainClouds.d.ts +1 -1
  481. package/src/engine/ecs/terrain/ecs/Terrain.d.ts +8 -3
  482. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  483. package/src/engine/ecs/terrain/ecs/Terrain.js +8 -0
  484. package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts.map +1 -1
  485. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSerializationUpgrader_0_1.d.ts +6 -0
  486. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSerializationUpgrader_0_1.d.ts.map +1 -1
  487. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts +3 -1
  488. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts.map +1 -1
  489. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.js +5 -0
  490. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts +3 -1
  491. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts.map +1 -1
  492. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.js +5 -0
  493. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts +4 -0
  494. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts.map +1 -1
  495. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.js +4 -0
  496. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts +1 -1
  497. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts.map +1 -1
  498. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts +8 -3
  499. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
  500. package/src/engine/ecs/terrain/tiles/TerrainTile.js +1 -1
  501. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +7 -3
  502. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
  503. package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +6 -1
  504. package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts +9 -4
  505. package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts.map +1 -1
  506. package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.js +4 -3
  507. package/src/engine/ecs/terrain/util/obtainTerrain.d.ts.map +1 -1
  508. package/src/engine/ecs/transform/Transform64.d.ts +10 -6
  509. package/src/engine/ecs/transform/Transform64.d.ts.map +1 -1
  510. package/src/engine/ecs/transform/Transform64.js +4 -0
  511. package/src/engine/ecs/transform-attachment/TransformAttachment.d.ts +1 -1
  512. package/src/engine/ecs/transform-attachment/TransformAttachment.d.ts.map +1 -1
  513. package/src/engine/graphics/FrameRunner.d.ts.map +1 -1
  514. package/src/engine/graphics/camera/CameraShakeBehavior.d.ts +20 -10
  515. package/src/engine/graphics/camera/CameraShakeBehavior.d.ts.map +1 -1
  516. package/src/engine/graphics/camera/CameraShakeBehavior.js +9 -8
  517. package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts +8 -4
  518. package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts.map +1 -1
  519. package/src/engine/graphics/camera/CameraShakeTraumaBehavior.js +3 -2
  520. package/src/engine/graphics/camera/makeOrbitalCameraController.d.ts +11 -5
  521. package/src/engine/graphics/camera/makeOrbitalCameraController.d.ts.map +1 -1
  522. package/src/engine/graphics/camera/makeOrbitalCameraController.js +5 -4
  523. package/src/engine/graphics/canvas/canvas2d_draw_grid.d.ts +19 -9
  524. package/src/engine/graphics/canvas/canvas2d_draw_grid.d.ts.map +1 -1
  525. package/src/engine/graphics/canvas/canvas2d_draw_grid.js +9 -8
  526. package/src/engine/graphics/canvas/canvas2d_draw_label.d.ts +17 -8
  527. package/src/engine/graphics/canvas/canvas2d_draw_label.d.ts.map +1 -1
  528. package/src/engine/graphics/canvas/canvas2d_draw_label.js +8 -7
  529. package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.d.ts +21 -10
  530. package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.d.ts.map +1 -1
  531. package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.js +10 -9
  532. package/src/engine/graphics/canvas/canvas2d_plot_data_line.d.ts +18 -8
  533. package/src/engine/graphics/canvas/canvas2d_plot_data_line.d.ts.map +1 -1
  534. package/src/engine/graphics/canvas/canvas2d_plot_data_line.js +8 -7
  535. package/src/engine/graphics/ecs/camera/Camera.d.ts +4 -0
  536. package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
  537. package/src/engine/graphics/ecs/camera/Camera.js +4 -0
  538. package/src/engine/graphics/ecs/camera/camera_traverse_active.d.ts.map +1 -1
  539. package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts +11 -5
  540. package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts.map +1 -1
  541. package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.js +5 -4
  542. package/src/engine/graphics/ecs/camera/pp/PerfectPanner.d.ts +1 -1
  543. package/src/engine/graphics/ecs/camera/pp/PerfectPanner.d.ts.map +1 -1
  544. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts +1 -1
  545. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
  546. package/src/engine/graphics/ecs/highlight/HighlightDefinition.d.ts +1 -1
  547. package/src/engine/graphics/ecs/highlight/HighlightDefinition.d.ts.map +1 -1
  548. package/src/engine/graphics/ecs/make_bvh_depth_range_computer.d.ts.map +1 -1
  549. package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.d.ts +4 -4
  550. package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.d.ts.map +1 -1
  551. package/src/engine/graphics/ecs/particles/ParticleEffect.d.ts +5 -5
  552. package/src/engine/graphics/ecs/particles/ParticleEffect.js +5 -5
  553. package/src/engine/graphics/ecs/path/tube/TubePathStyle.d.ts +1 -1
  554. package/src/engine/graphics/ecs/path/tube/TubePathStyle.d.ts.map +1 -1
  555. package/src/engine/graphics/ecs/path/tube/build/computeFrenetFrames.d.ts.map +1 -1
  556. package/src/engine/graphics/ecs/trail3d/Trail3D.d.ts +3 -3
  557. package/src/engine/graphics/ecs/trail3d/Trail3D.d.ts.map +1 -1
  558. package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.d.ts +19 -9
  559. package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.d.ts.map +1 -1
  560. package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.js +9 -8
  561. package/src/engine/graphics/geometry/buffered/build_height_field_geometry.d.ts +1 -1
  562. package/src/engine/graphics/geometry/buffered/build_height_field_geometry.d.ts.map +1 -1
  563. package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.d.ts +1 -1
  564. package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.d.ts.map +1 -1
  565. package/src/engine/graphics/make_ray_from_viewport_position.d.ts.map +1 -1
  566. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts +3 -0
  567. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
  568. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +3 -0
  569. package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.d.ts.map +1 -1
  570. package/src/engine/graphics/particles/particular/engine/utils/distribute_points_on_indexed_triangles.d.ts.map +1 -1
  571. package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.d.ts.map +1 -1
  572. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts +12 -7
  573. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts.map +1 -1
  574. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.js +4 -3
  575. package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts +7 -1
  576. package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts.map +1 -1
  577. package/src/engine/graphics/render/frame_graph/FrameGraph.js +5 -0
  578. package/src/engine/graphics/render/frame_graph/FrameGraphNode.d.ts +4 -0
  579. package/src/engine/graphics/render/frame_graph/FrameGraphNode.d.ts.map +1 -1
  580. package/src/engine/graphics/render/frame_graph/FrameGraphNode.js +4 -0
  581. package/src/engine/graphics/render/frame_graph/FramePassBuilder.d.ts +9 -1
  582. package/src/engine/graphics/render/frame_graph/FramePassBuilder.d.ts.map +1 -1
  583. package/src/engine/graphics/render/frame_graph/FramePassBuilder.js +6 -0
  584. package/src/engine/graphics/render/frame_graph/FramePassNode.d.ts +6 -0
  585. package/src/engine/graphics/render/frame_graph/FramePassNode.d.ts.map +1 -1
  586. package/src/engine/graphics/render/frame_graph/FramePassNode.js +5 -0
  587. package/src/engine/graphics/render/frame_graph/FramePassResources.d.ts +7 -1
  588. package/src/engine/graphics/render/frame_graph/FramePassResources.d.ts.map +1 -1
  589. package/src/engine/graphics/render/frame_graph/FramePassResources.js +5 -0
  590. package/src/engine/graphics/render/frame_graph/IFrameGraphContext.d.ts +6 -2
  591. package/src/engine/graphics/render/frame_graph/IFrameGraphContext.d.ts.map +1 -1
  592. package/src/engine/graphics/render/frame_graph/IFrameGraphContext.js +4 -0
  593. package/src/engine/graphics/render/frame_graph/ResourceEntry.d.ts +13 -5
  594. package/src/engine/graphics/render/frame_graph/ResourceEntry.d.ts.map +1 -1
  595. package/src/engine/graphics/render/frame_graph/ResourceEntry.js +7 -1
  596. package/src/engine/graphics/render/frame_graph/ResourceNode.d.ts +9 -3
  597. package/src/engine/graphics/render/frame_graph/ResourceNode.d.ts.map +1 -1
  598. package/src/engine/graphics/render/frame_graph/ResourceNode.js +6 -1
  599. package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.d.ts +5 -1
  600. package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.d.ts.map +1 -1
  601. package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.js +4 -0
  602. package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.d.ts +7 -3
  603. package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.d.ts.map +1 -1
  604. package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.js +6 -2
  605. package/src/engine/graphics/render/gizmo/GizmoShapeRenderingInterface.d.ts +1 -1
  606. package/src/engine/graphics/render/gizmo/GizmoShapeRenderingInterface.d.ts.map +1 -1
  607. package/src/engine/graphics/render/layers/RenderLayer.d.ts +3 -3
  608. package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
  609. package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts +1 -1
  610. package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts.map +1 -1
  611. package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts +2 -2
  612. package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts.map +1 -1
  613. package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts +1 -1
  614. package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts.map +1 -1
  615. package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.d.ts.map +1 -1
  616. package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.js +5 -1
  617. package/src/engine/graphics/texture/3d/SingleChannelSampler3D.d.ts +1 -1
  618. package/src/engine/graphics/texture/3d/SingleChannelSampler3D.d.ts.map +1 -1
  619. package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts +5 -2
  620. package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts.map +1 -1
  621. package/src/engine/graphics/texture/atlas/CachingTextureAtlas.js +2 -1
  622. package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.d.ts +9 -4
  623. package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.d.ts.map +1 -1
  624. package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.js +4 -3
  625. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +4 -0
  626. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
  627. package/src/engine/graphics/texture/sampler/Sampler2D.js +4 -0
  628. package/src/engine/graphics/texture/sampler/debug/prototypeSamplerFiltering.js +3 -2
  629. package/src/engine/graphics/texture/sampler/filter/sampler2d_scale_down_generic.d.ts +1 -1
  630. package/src/engine/graphics/texture/sampler/filter/sampler2d_scale_down_generic.d.ts.map +1 -1
  631. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_max.d.ts +1 -1
  632. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_max.d.ts.map +1 -1
  633. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_min.d.ts +1 -1
  634. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_min.d.ts.map +1 -1
  635. package/src/engine/graphics/texture/sampler/sampler2d_combine.d.ts.map +1 -1
  636. package/src/engine/graphics/texture/sampler/sampler2d_compute_texel_value_conversion_scale_to_uint8.d.ts.map +1 -1
  637. package/src/engine/graphics/texture/sampler/search/make_edge_condition_channel_threshold.d.ts.map +1 -1
  638. package/src/engine/graphics/texture/sampler/search/sampler2d_find_pixels.d.ts.map +1 -1
  639. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts +3 -3
  640. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts.map +1 -1
  641. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts +1 -1
  642. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts.map +1 -1
  643. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.d.ts +2 -2
  644. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.d.ts.map +1 -1
  645. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.d.ts +1 -1
  646. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.d.ts.map +1 -1
  647. package/src/engine/graphics/texture/virtual/tile/decompose_finger_print.d.ts.map +1 -1
  648. package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts +0 -5
  649. package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts.map +1 -1
  650. package/src/engine/graphics3/GraphicsEngine.d.ts +6 -0
  651. package/src/engine/graphics3/GraphicsEngine.d.ts.map +1 -1
  652. package/src/engine/graphics3/GraphicsEngine.js +9 -0
  653. package/src/engine/graphics3/HighlightOutlineSystem.d.ts.map +1 -1
  654. package/src/engine/graphics3/ParticipatingMedia.d.ts +10 -5
  655. package/src/engine/graphics3/ParticipatingMedia.d.ts.map +1 -1
  656. package/src/engine/graphics3/ParticipatingMedia.js +4 -3
  657. package/src/engine/graphics3/ShadeCameraAdapter.d.ts +5 -1
  658. package/src/engine/graphics3/ShadeCameraAdapter.d.ts.map +1 -1
  659. package/src/engine/graphics3/ShadeCameraAdapter.js +4 -0
  660. package/src/engine/graphics3/TooltipComponentSystem.d.ts +13 -6
  661. package/src/engine/graphics3/TooltipComponentSystem.d.ts.map +1 -1
  662. package/src/engine/graphics3/TooltipComponentSystem.js +6 -5
  663. package/src/engine/graphics3/VolumetricLightMap.d.ts +6 -3
  664. package/src/engine/graphics3/VolumetricLightMap.d.ts.map +1 -1
  665. package/src/engine/graphics3/VolumetricLightMap.js +2 -1
  666. package/src/engine/graphics3/decal/graph_build_decal_clusters.d.ts.map +1 -1
  667. package/src/engine/graphics3/highlight/pack_highlight_table.d.ts.map +1 -1
  668. package/src/engine/graphics3/preview/make_model_preview_scene.d.ts.map +1 -1
  669. package/src/engine/graphics3/terrain/GPUTerrainSplatRenderer.d.ts.map +1 -1
  670. package/src/engine/graphics3/terrain/pack_terrain_row_table.d.ts.map +1 -1
  671. package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
  672. package/src/engine/input/devices/GamepadDevice.d.ts +1 -1
  673. package/src/engine/input/devices/GamepadDevice.d.ts.map +1 -1
  674. package/src/engine/input/devices/PointerDevice.d.ts +1 -1
  675. package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
  676. package/src/engine/input/devices/PointerDevice.js +7 -6
  677. package/src/engine/input/devices/gamepad/GamepadHandle.d.ts +4 -0
  678. package/src/engine/input/devices/gamepad/GamepadHandle.d.ts.map +1 -1
  679. package/src/engine/input/devices/gamepad/GamepadHandle.js +4 -0
  680. package/src/engine/input/devices/touch/observePinch.d.ts +17 -8
  681. package/src/engine/input/devices/touch/observePinch.d.ts.map +1 -1
  682. package/src/engine/input/devices/touch/observePinch.js +8 -7
  683. package/src/engine/input/ecs/components/InputBinding.d.ts +11 -5
  684. package/src/engine/input/ecs/components/InputBinding.d.ts.map +1 -1
  685. package/src/engine/input/ecs/components/InputBinding.js +5 -4
  686. package/src/engine/input/ecs/controllers/KeyboardCameraController.d.ts.map +1 -1
  687. package/src/engine/input/ecs/controllers/KeyboardCameraController.js +11 -2
  688. package/src/engine/input/ecs/ism/InputMapSystem.d.ts +4 -0
  689. package/src/engine/input/ecs/ism/InputMapSystem.d.ts.map +1 -1
  690. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts +1 -1
  691. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
  692. package/src/engine/input/ecs/util/TerrainCameraTargetSampler.d.ts +5 -2
  693. package/src/engine/input/ecs/util/TerrainCameraTargetSampler.d.ts.map +1 -1
  694. package/src/engine/input/ecs/util/TerrainCameraTargetSampler.js +2 -1
  695. package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts +1 -1
  696. package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts.map +1 -1
  697. package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.d.ts +9 -4
  698. package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.d.ts.map +1 -1
  699. package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.js +4 -3
  700. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts +9 -4
  701. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts.map +1 -1
  702. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.js +4 -3
  703. package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts.map +1 -1
  704. package/src/engine/intelligence/behavior/util/RotationBehavior.d.ts.map +1 -1
  705. package/src/engine/intelligence/behavior/util/RotationBehavior.js +14 -2
  706. package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.d.ts +9 -4
  707. package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.d.ts.map +1 -1
  708. package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.js +4 -3
  709. package/src/engine/intelligence/blackboard/Blackboard.d.ts.map +1 -1
  710. package/src/engine/intelligence/mcts/MonteCarlo.d.ts +20 -10
  711. package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
  712. package/src/engine/intelligence/mcts/MonteCarlo.js +9 -8
  713. package/src/engine/intelligence/mcts/StateNode.d.ts.map +1 -1
  714. package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +14 -7
  715. package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
  716. package/src/engine/intelligence/optimization/RandomOptimizer.js +6 -5
  717. package/src/engine/interpolation/InterpolationSystem.d.ts +4 -0
  718. package/src/engine/interpolation/InterpolationSystem.d.ts.map +1 -1
  719. package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts +5 -2
  720. package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts.map +1 -1
  721. package/src/engine/knowledge/database/StaticKnowledgeDataTable.js +6 -0
  722. package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts +6 -2
  723. package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts.map +1 -1
  724. package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.js +4 -0
  725. package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts +8 -5
  726. package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts.map +1 -1
  727. package/src/engine/knowledge/database/StaticKnowledgeDatabase.js +6 -0
  728. package/src/engine/makeSimpleTaskProgressView.d.ts +10 -4
  729. package/src/engine/makeSimpleTaskProgressView.d.ts.map +1 -1
  730. package/src/engine/makeSimpleTaskProgressView.js +4 -3
  731. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts +2 -2
  732. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts.map +1 -1
  733. package/src/engine/navigation/mesh/build/navmesh_build_topology.d.ts +20 -9
  734. package/src/engine/navigation/mesh/build/navmesh_build_topology.d.ts.map +1 -1
  735. package/src/engine/navigation/mesh/build/navmesh_build_topology.js +9 -8
  736. package/src/engine/network/NetworkSession.d.ts.map +1 -1
  737. package/src/engine/network/PriorityFetch.d.ts +2 -2
  738. package/src/engine/network/PriorityFetch.d.ts.map +1 -1
  739. package/src/engine/network/diagnostics/BandwidthMeter.d.ts.map +1 -1
  740. package/src/engine/network/ecs/owner_authorization.d.ts.map +1 -1
  741. package/src/engine/network/orchestrator/NetworkPeer.d.ts.map +1 -1
  742. package/src/engine/network/orchestrator/ServerAuthoritativeServer.d.ts.map +1 -1
  743. package/src/engine/network/replication/Replicator.d.ts +1 -1
  744. package/src/engine/network/replication/Replicator.d.ts.map +1 -1
  745. package/src/engine/network/sim/ActionLog.d.ts +1 -2
  746. package/src/engine/network/sim/ActionLog.d.ts.map +1 -1
  747. package/src/engine/network/sim/ActionLog.js +0 -1
  748. package/src/engine/network/sim/SimActionExecutor.d.ts +1 -1
  749. package/src/engine/network/sim/SimActionExecutor.d.ts.map +1 -1
  750. package/src/engine/network/state/InputRing.d.ts +1 -2
  751. package/src/engine/network/state/InputRing.d.ts.map +1 -1
  752. package/src/engine/network/state/InputRing.js +0 -1
  753. package/src/engine/network/time/RenderPlayout.d.ts.map +1 -1
  754. package/src/engine/network/transport/Channel.d.ts.map +1 -1
  755. package/src/engine/network/transport/fragments/FragmentRetention.d.ts.map +1 -1
  756. package/src/engine/notify/Notification.d.ts +15 -9
  757. package/src/engine/notify/Notification.d.ts.map +1 -1
  758. package/src/engine/notify/Notification.js +5 -4
  759. package/src/engine/options/OptionAbstract.d.ts +4 -0
  760. package/src/engine/options/OptionAbstract.d.ts.map +1 -1
  761. package/src/engine/options/OptionAbstract.js +4 -0
  762. package/src/engine/options/OptionsView.d.ts +10 -4
  763. package/src/engine/options/OptionsView.d.ts.map +1 -1
  764. package/src/engine/options/OptionsView.js +4 -3
  765. package/src/engine/physics/body/SolverBodyState.d.ts +11 -11
  766. package/src/engine/physics/body/SolverBodyState.d.ts.map +1 -1
  767. package/src/engine/physics/body/SolverBodyState.js +13 -13
  768. package/src/engine/physics/broadphase/compute_fat_world_aabb.d.ts +4 -4
  769. package/src/engine/physics/broadphase/compute_fat_world_aabb.d.ts.map +1 -1
  770. package/src/engine/physics/broadphase/compute_fat_world_aabb.js +2 -2
  771. package/src/engine/physics/broadphase/generate_pairs.d.ts +3 -3
  772. package/src/engine/physics/broadphase/generate_pairs.d.ts.map +1 -1
  773. package/src/engine/physics/broadphase/generate_pairs.js +1 -1
  774. package/src/engine/physics/ccd/linear_sweep.d.ts +6 -10
  775. package/src/engine/physics/ccd/linear_sweep.d.ts.map +1 -1
  776. package/src/engine/physics/ccd/linear_sweep.js +7 -6
  777. package/src/engine/physics/cloth/MEASUREMENTS.md +956 -0
  778. package/src/engine/physics/cloth/PLAN.md +1581 -0
  779. package/src/engine/physics/cloth/ecs/Cloth.d.ts +145 -0
  780. package/src/engine/physics/cloth/ecs/Cloth.d.ts.map +1 -0
  781. package/src/engine/physics/cloth/ecs/Cloth.js +212 -0
  782. package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts +208 -0
  783. package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts.map +1 -0
  784. package/src/engine/physics/cloth/ecs/ClothDynamics.js +331 -0
  785. package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.d.ts +10 -0
  786. package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.d.ts.map +1 -0
  787. package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.js +57 -0
  788. package/src/engine/physics/cloth/ecs/ClothExclude.d.ts +45 -0
  789. package/src/engine/physics/cloth/ecs/ClothExclude.d.ts.map +1 -0
  790. package/src/engine/physics/cloth/ecs/ClothExclude.js +59 -0
  791. package/src/engine/physics/cloth/ecs/ClothFlags.d.ts +10 -0
  792. package/src/engine/physics/cloth/ecs/ClothFlags.d.ts.map +1 -0
  793. package/src/engine/physics/cloth/ecs/ClothFlags.js +47 -0
  794. package/src/engine/physics/cloth/ecs/ClothInstance.d.ts +321 -0
  795. package/src/engine/physics/cloth/ecs/ClothInstance.d.ts.map +1 -0
  796. package/src/engine/physics/cloth/ecs/ClothInstance.js +363 -0
  797. package/src/engine/physics/cloth/ecs/ClothSystem.d.ts +149 -0
  798. package/src/engine/physics/cloth/ecs/ClothSystem.d.ts.map +1 -0
  799. package/src/engine/physics/cloth/ecs/ClothSystem.js +773 -0
  800. package/src/engine/physics/cloth/ecs/cloth_dynamics_library.d.ts +157 -0
  801. package/src/engine/physics/cloth/ecs/cloth_dynamics_library.d.ts.map +1 -0
  802. package/src/engine/physics/cloth/ecs/cloth_dynamics_library.js +254 -0
  803. package/src/engine/physics/cloth/ecs/cloth_dynamics_map.d.ts +235 -0
  804. package/src/engine/physics/cloth/ecs/cloth_dynamics_map.d.ts.map +1 -0
  805. package/src/engine/physics/cloth/ecs/cloth_dynamics_map.js +271 -0
  806. package/src/engine/physics/cloth/ecs/cloth_seed_subtree.d.ts +114 -0
  807. package/src/engine/physics/cloth/ecs/cloth_seed_subtree.d.ts.map +1 -0
  808. package/src/engine/physics/cloth/ecs/cloth_seed_subtree.js +645 -0
  809. package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts +9 -0
  810. package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts.map +1 -0
  811. package/src/engine/physics/cloth/ecs/cloth_write_back.js +449 -0
  812. package/src/engine/physics/cloth/playground/README.md +185 -0
  813. package/src/engine/physics/cloth/playground/cloth_playground_build.d.ts +58 -0
  814. package/src/engine/physics/cloth/playground/cloth_playground_build.d.ts.map +1 -0
  815. package/src/engine/physics/cloth/playground/cloth_playground_build.js +333 -0
  816. package/src/engine/physics/cloth/playground/cloth_playground_draw.d.ts +79 -0
  817. package/src/engine/physics/cloth/playground/cloth_playground_draw.d.ts.map +1 -0
  818. package/src/engine/physics/cloth/playground/cloth_playground_draw.js +519 -0
  819. package/src/engine/physics/cloth/playground/index.html +200 -0
  820. package/src/engine/physics/cloth/playground/main.d.ts +2 -0
  821. package/src/engine/physics/cloth/playground/main.d.ts.map +1 -0
  822. package/src/engine/physics/cloth/playground/main.js +876 -0
  823. package/src/engine/physics/cloth/playground/rig.html +187 -0
  824. package/src/engine/physics/cloth/playground/rig_build.d.ts +81 -0
  825. package/src/engine/physics/cloth/playground/rig_build.d.ts.map +1 -0
  826. package/src/engine/physics/cloth/playground/rig_build.js +296 -0
  827. package/src/engine/physics/cloth/playground/rig_main.d.ts +2 -0
  828. package/src/engine/physics/cloth/playground/rig_main.d.ts.map +1 -0
  829. package/src/engine/physics/cloth/playground/rig_main.js +955 -0
  830. package/src/engine/physics/cloth/solver/ClothState.d.ts +323 -0
  831. package/src/engine/physics/cloth/solver/ClothState.d.ts.map +1 -0
  832. package/src/engine/physics/cloth/solver/ClothState.js +673 -0
  833. package/src/engine/physics/cloth/solver/cloth_color_particles.d.ts +67 -0
  834. package/src/engine/physics/cloth/solver/cloth_color_particles.d.ts.map +1 -0
  835. package/src/engine/physics/cloth/solver/cloth_color_particles.js +220 -0
  836. package/src/engine/physics/cloth/solver/cloth_solve_vertex.d.ts +13 -0
  837. package/src/engine/physics/cloth/solver/cloth_solve_vertex.d.ts.map +1 -0
  838. package/src/engine/physics/cloth/solver/cloth_solve_vertex.js +201 -0
  839. package/src/engine/physics/cloth/solver/cloth_solver_constants.d.ts +97 -0
  840. package/src/engine/physics/cloth/solver/cloth_solver_constants.d.ts.map +1 -0
  841. package/src/engine/physics/cloth/solver/cloth_solver_constants.js +102 -0
  842. package/src/engine/physics/cloth/solver/cloth_step.d.ts +91 -0
  843. package/src/engine/physics/cloth/solver/cloth_step.d.ts.map +1 -0
  844. package/src/engine/physics/cloth/solver/cloth_step.js +289 -0
  845. package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.d.ts +54 -0
  846. package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.d.ts.map +1 -0
  847. package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.js +56 -0
  848. package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.d.ts +125 -0
  849. package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.d.ts.map +1 -0
  850. package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.js +383 -0
  851. package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.d.ts +112 -0
  852. package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.d.ts.map +1 -0
  853. package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.js +346 -0
  854. package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.d.ts +94 -0
  855. package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.d.ts.map +1 -0
  856. package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.js +383 -0
  857. package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.d.ts +27 -0
  858. package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.d.ts.map +1 -0
  859. package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.js +104 -0
  860. package/src/engine/physics/constraint/solve_constraints.js +3 -3
  861. package/src/engine/physics/ecs/BodyKind.d.ts +1 -1
  862. package/src/engine/physics/ecs/BodyKind.js +1 -1
  863. package/src/engine/physics/ecs/Collider.d.ts +1 -1
  864. package/src/engine/physics/ecs/Collider.js +1 -1
  865. package/src/engine/physics/ecs/Joint.d.ts +15 -10
  866. package/src/engine/physics/ecs/Joint.d.ts.map +1 -1
  867. package/src/engine/physics/ecs/Joint.js +27 -18
  868. package/src/engine/physics/ecs/JointSerializationAdapter.d.ts.map +1 -1
  869. package/src/engine/physics/ecs/JointSerializationAdapter.js +8 -6
  870. package/src/engine/physics/ecs/PhysicsSystem.d.ts +46 -85
  871. package/src/engine/physics/ecs/PhysicsSystem.d.ts.map +1 -1
  872. package/src/engine/physics/ecs/PhysicsSystem.js +117 -76
  873. package/src/engine/physics/ecs/RigidBody.d.ts +17 -12
  874. package/src/engine/physics/ecs/RigidBody.d.ts.map +1 -1
  875. package/src/engine/physics/ecs/RigidBody.js +58 -24
  876. package/src/engine/physics/ecs/RigidBodySerializationAdapter.d.ts.map +1 -1
  877. package/src/engine/physics/ecs/RigidBodySerializationAdapter.js +13 -12
  878. package/src/engine/physics/ecs/RigidBodySerializationUpgrader_0_1.d.ts +6 -0
  879. package/src/engine/physics/ecs/RigidBodySerializationUpgrader_0_1.d.ts.map +1 -1
  880. package/src/engine/physics/ecs/find_non_finite_physics_state.d.ts +1 -1
  881. package/src/engine/physics/ecs/find_non_finite_physics_state.js +1 -1
  882. package/src/engine/physics/fluid/FluidField.d.ts.map +1 -1
  883. package/src/engine/physics/fluid/REVIEW_02_PLAN.md +4 -4
  884. package/src/engine/physics/fluid/SliceVisualiser.d.ts.map +1 -1
  885. package/src/engine/physics/fluid/ecs/FluidComponent.d.ts +10 -10
  886. package/src/engine/physics/fluid/ecs/FluidComponent.js +10 -10
  887. package/src/engine/physics/fluid/ecs/FluidEffectorsComponent.d.ts +2 -2
  888. package/src/engine/physics/fluid/ecs/FluidEffectorsComponent.js +2 -2
  889. package/src/engine/physics/fluid/ecs/FluidObstacle.d.ts +3 -3
  890. package/src/engine/physics/fluid/ecs/FluidObstacle.js +3 -3
  891. package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +5 -5
  892. package/src/engine/physics/fluid/ecs/FluidObstacleSystem.js +4 -4
  893. package/src/engine/physics/fluid/ecs/FluidSystem.d.ts +2 -2
  894. package/src/engine/physics/fluid/ecs/FluidSystem.js +3 -3
  895. package/src/engine/physics/fluid/ecs/WorkerFluidSystem.d.ts +1 -1
  896. package/src/engine/physics/fluid/ecs/WorkerFluidSystem.js +2 -2
  897. package/src/engine/physics/fluid/ecs/fluid_reanchor_field.d.ts +3 -3
  898. package/src/engine/physics/fluid/ecs/fluid_reanchor_field.d.ts.map +1 -1
  899. package/src/engine/physics/fluid/ecs/fluid_reanchor_field.js +3 -3
  900. package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.d.ts +3 -3
  901. package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.d.ts.map +1 -1
  902. package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.js +2 -2
  903. package/src/engine/physics/fluid/effector/AbstractFluidEffector.d.ts +3 -3
  904. package/src/engine/physics/fluid/effector/AbstractFluidEffector.d.ts.map +1 -1
  905. package/src/engine/physics/fluid/effector/AbstractFluidEffector.js +2 -2
  906. package/src/engine/physics/fluid/effector/ImpulseFluidEffector.js +2 -2
  907. package/src/engine/physics/fluid/effector/WakeFluidEffector.d.ts +4 -4
  908. package/src/engine/physics/fluid/effector/WakeFluidEffector.js +8 -8
  909. package/src/engine/physics/inertia/world_inverse_inertia.d.ts +8 -17
  910. package/src/engine/physics/inertia/world_inverse_inertia.d.ts.map +1 -1
  911. package/src/engine/physics/inertia/world_inverse_inertia.js +11 -11
  912. package/src/engine/physics/integration/integrate_position.d.ts +6 -7
  913. package/src/engine/physics/integration/integrate_position.d.ts.map +1 -1
  914. package/src/engine/physics/integration/integrate_position.js +5 -6
  915. package/src/engine/physics/integration/integrate_velocity.d.ts +4 -4
  916. package/src/engine/physics/integration/integrate_velocity.d.ts.map +1 -1
  917. package/src/engine/physics/integration/integrate_velocity.js +7 -7
  918. package/src/engine/physics/inverse_kinematics/fabrik/fabrik_solve.d.ts +4 -4
  919. package/src/engine/physics/inverse_kinematics/fabrik/fabrik_solve.d.ts.map +1 -1
  920. package/src/engine/physics/inverse_kinematics/fabrik/fabrik_solve.js +3 -3
  921. package/src/engine/physics/narrowphase/compute_penetration.d.ts +26 -23
  922. package/src/engine/physics/narrowphase/compute_penetration.d.ts.map +1 -1
  923. package/src/engine/physics/narrowphase/compute_penetration.js +25 -4
  924. package/src/engine/physics/narrowphase/convex_decomposition.d.ts.map +1 -1
  925. package/src/engine/physics/narrowphase/decomposition/triangle_buffer_layout.d.ts +1 -2
  926. package/src/engine/physics/narrowphase/decomposition/triangle_buffer_layout.d.ts.map +1 -1
  927. package/src/engine/physics/narrowphase/decomposition/triangle_buffer_layout.js +1 -2
  928. package/src/engine/physics/narrowphase/narrowphase_step.d.ts +23 -29
  929. package/src/engine/physics/narrowphase/narrowphase_step.d.ts.map +1 -1
  930. package/src/engine/physics/narrowphase/narrowphase_step.js +23 -12
  931. package/src/engine/physics/narrowphase/refine_ray_concave.d.ts +4 -6
  932. package/src/engine/physics/narrowphase/refine_ray_concave.d.ts.map +1 -1
  933. package/src/engine/physics/narrowphase/refine_ray_concave.js +3 -1
  934. package/src/engine/physics/narrowphase/refine_ray_hit.d.ts +6 -6
  935. package/src/engine/physics/narrowphase/refine_ray_hit.d.ts.map +1 -1
  936. package/src/engine/physics/narrowphase/refine_ray_hit.js +5 -1
  937. package/src/engine/physics/queries/PhysicsSurfacePoint.d.ts +10 -5
  938. package/src/engine/physics/queries/PhysicsSurfacePoint.d.ts.map +1 -1
  939. package/src/engine/physics/queries/PhysicsSurfacePoint.js +10 -6
  940. package/src/engine/physics/queries/overlap_shape.d.ts +5 -14
  941. package/src/engine/physics/queries/overlap_shape.d.ts.map +1 -1
  942. package/src/engine/physics/queries/overlap_shape.js +4 -4
  943. package/src/engine/physics/queries/raycast.d.ts.map +1 -1
  944. package/src/engine/physics/queries/shape_cast.d.ts +17 -7
  945. package/src/engine/physics/queries/shape_cast.d.ts.map +1 -1
  946. package/src/engine/physics/queries/shape_cast.js +10 -3
  947. package/src/engine/physics/solver/solve_contacts.d.ts +2 -2
  948. package/src/engine/physics/solver/solve_contacts.d.ts.map +1 -1
  949. package/src/engine/physics/solver/solve_contacts.js +2 -2
  950. package/src/engine/physics/vehicle/RaycastVehicle.d.ts +4 -8
  951. package/src/engine/physics/vehicle/RaycastVehicle.d.ts.map +1 -1
  952. package/src/engine/physics/vehicle/RaycastVehicle.js +16 -12
  953. package/src/engine/platform/EnginePlatform.d.ts +4 -0
  954. package/src/engine/platform/EnginePlatform.d.ts.map +1 -1
  955. package/src/engine/platform/EnginePlatform.js +4 -0
  956. package/src/engine/plugin/EnginePlugin.d.ts +9 -0
  957. package/src/engine/plugin/EnginePlugin.d.ts.map +1 -1
  958. package/src/engine/plugin/EnginePlugin.js +9 -0
  959. package/src/engine/plugin/EnginePluginManager.d.ts +13 -2
  960. package/src/engine/plugin/EnginePluginManager.d.ts.map +1 -1
  961. package/src/engine/plugin/EnginePluginManager.js +10 -0
  962. package/src/engine/save/Storage.d.ts.map +1 -1
  963. package/src/engine/save/StorageBackedList.d.ts +8 -4
  964. package/src/engine/save/StorageBackedList.d.ts.map +1 -1
  965. package/src/engine/save/StorageBackedList.js +3 -2
  966. package/src/engine/scene/Scene.d.ts +10 -0
  967. package/src/engine/scene/Scene.d.ts.map +1 -1
  968. package/src/engine/scene/Scene.js +7 -0
  969. package/src/engine/scene/SceneManager.d.ts +4 -0
  970. package/src/engine/scene/SceneManager.d.ts.map +1 -1
  971. package/src/engine/scene/SceneManager.js +4 -0
  972. package/src/engine/scene/SerializedScene.d.ts +8 -4
  973. package/src/engine/scene/SerializedScene.d.ts.map +1 -1
  974. package/src/engine/scene/SerializedScene.js +3 -2
  975. package/src/engine/scene/transitionToScene.d.ts +11 -5
  976. package/src/engine/scene/transitionToScene.d.ts.map +1 -1
  977. package/src/engine/scene/transitionToScene.js +5 -4
  978. package/src/engine/simulation/Ticker.d.ts +5 -2
  979. package/src/engine/simulation/Ticker.d.ts.map +1 -1
  980. package/src/engine/simulation/Ticker.js +2 -1
  981. package/src/engine/sound/SoundEngine.d.ts +5 -1
  982. package/src/engine/sound/SoundEngine.d.ts.map +1 -1
  983. package/src/engine/sound/SoundEngine.js +4 -0
  984. package/src/engine/sound/ecs/audio/AudioEmitterSystem.d.ts.map +1 -1
  985. package/src/engine/sound/ecs/audio/AudioEmitterSystem.js +27 -2
  986. package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.d.ts +7 -3
  987. package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.d.ts.map +1 -1
  988. package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.js +3 -2
  989. package/src/engine/sound/simulation/AcousticSimulator.d.ts +2 -2
  990. package/src/engine/sound/simulation/AcousticSimulator.d.ts.map +1 -1
  991. package/src/engine/sound/simulation/core/VolumeField.d.ts +1 -1
  992. package/src/engine/sound/simulation/core/VolumeField.d.ts.map +1 -1
  993. package/src/engine/sound/simulation/ecs/AcousticSimulationSystem.d.ts +10 -0
  994. package/src/engine/sound/simulation/ecs/AcousticSimulationSystem.d.ts.map +1 -1
  995. package/src/engine/sound/simulation/probe/AcousticProbeField.d.ts.map +1 -1
  996. package/src/engine/sound/simulation/probe/probe_delaunay_edges.d.ts.map +1 -1
  997. package/src/engine/sound/simulation/probe/probe_densify_portals.d.ts.map +1 -1
  998. package/src/engine/sound/simulation/probe/probe_detect_portals.d.ts.map +1 -1
  999. package/src/engine/sound/simulation/probe/probe_place_sdf_cover.d.ts.map +1 -1
  1000. package/src/engine/sound/simulation/probe/probe_refine_connectivity.d.ts.map +1 -1
  1001. package/src/engine/sound/simulation/render/ProbeReverbRenderer.d.ts +1 -1
  1002. package/src/engine/sound/simulation/render/ProbeReverbRenderer.d.ts.map +1 -1
  1003. package/src/engine/sound/simulation/render/foaReverbImpulseResponse.d.ts.map +1 -1
  1004. package/src/engine/sound/sopra/SopraEngine.d.ts +5 -0
  1005. package/src/engine/sound/sopra/SopraEngine.d.ts.map +1 -1
  1006. package/src/engine/sound/sopra/SopraEngine.js +8 -0
  1007. package/src/engine/sound/sopra/definition/BusDefinition.d.ts +4 -0
  1008. package/src/engine/sound/sopra/definition/BusDefinition.d.ts.map +1 -1
  1009. package/src/engine/sound/sopra/definition/BusDefinition.js +4 -0
  1010. package/src/engine/sound/sopra/definition/EventDescription.d.ts +1 -0
  1011. package/src/engine/sound/sopra/definition/EventDescription.d.ts.map +1 -1
  1012. package/src/engine/sound/sopra/definition/EventDescription.js +4 -0
  1013. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.d.ts +6 -0
  1014. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.d.ts.map +1 -1
  1015. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.js +5 -0
  1016. package/src/engine/sound/sopra/definition/clip/BlendContainerAudioClip.d.ts +1 -1
  1017. package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.d.ts +1 -0
  1018. package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.d.ts.map +1 -1
  1019. package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.d.ts +1 -1
  1020. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts +10 -2
  1021. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts.map +1 -1
  1022. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.js +7 -0
  1023. package/src/engine/sound/sopra/definition/clip/SequenceContainerAudioClip.d.ts +1 -1
  1024. package/src/engine/sound/sopra/definition/clip/SwitchContainerAudioClip.d.ts +1 -1
  1025. package/src/engine/sound/sopra/legacy/SoundEmitter.d.ts +3 -3
  1026. package/src/engine/sound/sopra/legacy/SoundEmitter.d.ts.map +1 -1
  1027. package/src/engine/sound/sopra/legacy/SoundTrack.d.ts +3 -3
  1028. package/src/engine/sound/sopra/legacy/SoundTrack.d.ts.map +1 -1
  1029. package/src/engine/sound/sopra/runtime/BusGraph.d.ts +4 -0
  1030. package/src/engine/sound/sopra/runtime/BusGraph.d.ts.map +1 -1
  1031. package/src/engine/sound/sopra/runtime/BusGraph.js +4 -0
  1032. package/src/engine/sound/sopra/runtime/EventInstance.d.ts +9 -1
  1033. package/src/engine/sound/sopra/runtime/EventInstance.d.ts.map +1 -1
  1034. package/src/engine/sound/sopra/runtime/EventInstance.js +11 -0
  1035. package/src/engine/sound/sopra/runtime/VoiceManager.d.ts +2 -0
  1036. package/src/engine/sound/sopra/runtime/VoiceManager.d.ts.map +1 -1
  1037. package/src/engine/sound/sopra/runtime/VoiceManager.js +5 -0
  1038. package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts.map +1 -1
  1039. package/src/engine/ui/DraggableAspect.d.ts +14 -6
  1040. package/src/engine/ui/DraggableAspect.d.ts.map +1 -1
  1041. package/src/engine/ui/DraggableAspect.js +6 -5
  1042. package/src/engine/ui/GUIEngine.d.ts +73 -26
  1043. package/src/engine/ui/GUIEngine.d.ts.map +1 -1
  1044. package/src/engine/ui/GUIEngine.js +37 -19
  1045. package/src/engine/ui/bindings/DomElementBindingDescription.d.ts +7 -3
  1046. package/src/engine/ui/bindings/DomElementBindingDescription.d.ts.map +1 -1
  1047. package/src/engine/ui/bindings/DomElementBindingDescription.js +3 -2
  1048. package/src/engine/ui/modal/ModalStack.d.ts +4 -0
  1049. package/src/engine/ui/modal/ModalStack.d.ts.map +1 -1
  1050. package/src/engine/ui/modal/ModalStack.js +4 -0
  1051. package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts +4 -0
  1052. package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts.map +1 -1
  1053. package/src/engine/ui/notification/AnimatedObjectEmitter.js +4 -0
  1054. package/src/engine/ui/notification/NotificationManager.d.ts +21 -8
  1055. package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
  1056. package/src/engine/ui/notification/NotificationManager.js +10 -3
  1057. package/src/engine/ui/notification/ViewEmitter.d.ts +8 -2
  1058. package/src/engine/ui/notification/ViewEmitter.d.ts.map +1 -1
  1059. package/src/engine/ui/notification/ViewEmitter.js +6 -1
  1060. package/src/engine/ui/scene/SceneGUIContext.d.ts +4 -0
  1061. package/src/engine/ui/scene/SceneGUIContext.d.ts.map +1 -1
  1062. package/src/engine/ui/scene/SceneGUIContext.js +4 -0
  1063. package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
  1064. package/src/extractName.d.ts.map +1 -1
  1065. package/src/format/image/avif/api/convert_to_rgba.d.ts.map +1 -1
  1066. package/src/format/image/avif/av1/encode/encode_av1_still.d.ts.map +1 -1
  1067. package/src/format/image/avif/heif/write_avif_file.d.ts +2 -2
  1068. package/src/format/image/avif/heif/write_avif_file.d.ts.map +1 -1
  1069. package/src/format/image/jpeg/JpegImage.d.ts.map +1 -1
  1070. package/src/format/image/png/PNG.d.ts.map +1 -1
  1071. package/src/format/image/png/chunk/png_chunk_decode_iTXt.d.ts.map +1 -1
  1072. package/src/format/image/png/chunk/png_chunk_decode_zTXt.d.ts.map +1 -1
  1073. package/src/format/scene/gltf/ext/GltfBufferViewExtensionSet.d.ts.map +1 -1
  1074. package/src/format/scene/gltf/gltf_node_world_matrices.d.ts.map +1 -1
  1075. package/src/format/scene/usd/unpack_usdz.d.ts.map +1 -1
  1076. package/src/format/scene/usd/usd_triangulate.d.ts.map +1 -1
  1077. package/src/format/texture/basis/astc_integer_sequence.d.ts.map +1 -1
  1078. package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.d.ts +9 -4
  1079. package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.d.ts.map +1 -1
  1080. package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.js +4 -3
  1081. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts +9 -4
  1082. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts.map +1 -1
  1083. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.js +4 -3
  1084. package/src/generation/grid/generation/GridTaskApplyActionToCells.d.ts +9 -4
  1085. package/src/generation/grid/generation/GridTaskApplyActionToCells.d.ts.map +1 -1
  1086. package/src/generation/grid/generation/GridTaskApplyActionToCells.js +4 -3
  1087. package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.d.ts +9 -4
  1088. package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.d.ts.map +1 -1
  1089. package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.js +4 -3
  1090. package/src/generation/grid/generation/grid/select/CellSupplierBestN.d.ts +11 -5
  1091. package/src/generation/grid/generation/grid/select/CellSupplierBestN.d.ts.map +1 -1
  1092. package/src/generation/grid/generation/grid/select/CellSupplierBestN.js +5 -4
  1093. package/src/generation/grid/generation/road/GridTaskGenerateRoads.d.ts +9 -4
  1094. package/src/generation/grid/generation/road/GridTaskGenerateRoads.d.ts.map +1 -1
  1095. package/src/generation/grid/generation/road/GridTaskGenerateRoads.js +12 -10
  1096. package/src/generation/grid/generation/util/buildDistanceMapToObjective.d.ts +19 -9
  1097. package/src/generation/grid/generation/util/buildDistanceMapToObjective.d.ts.map +1 -1
  1098. package/src/generation/grid/generation/util/buildDistanceMapToObjective.js +9 -8
  1099. package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts +17 -8
  1100. package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts.map +1 -1
  1101. package/src/generation/grid/generation/util/buildPathFromDistanceMap.js +8 -7
  1102. package/src/generation/markers/GridActionRuleSet.d.ts +11 -5
  1103. package/src/generation/markers/GridActionRuleSet.d.ts.map +1 -1
  1104. package/src/generation/markers/GridActionRuleSet.js +5 -4
  1105. package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.d.ts +9 -4
  1106. package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.d.ts.map +1 -1
  1107. package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.js +4 -3
  1108. package/src/generation/markers/actions/MarkerNodeActionImaginary.d.ts +9 -4
  1109. package/src/generation/markers/actions/MarkerNodeActionImaginary.d.ts.map +1 -1
  1110. package/src/generation/markers/actions/MarkerNodeActionImaginary.js +4 -3
  1111. package/src/generation/markers/actions/MarkerProcessingRule.d.ts +11 -5
  1112. package/src/generation/markers/actions/MarkerProcessingRule.d.ts.map +1 -1
  1113. package/src/generation/markers/actions/MarkerProcessingRule.js +5 -4
  1114. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts +5 -2
  1115. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts.map +1 -1
  1116. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.js +24 -4
  1117. package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.d.ts +13 -6
  1118. package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.d.ts.map +1 -1
  1119. package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.js +6 -5
  1120. package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.d.ts +7 -3
  1121. package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.d.ts.map +1 -1
  1122. package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.js +3 -2
  1123. package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.d.ts.map +1 -1
  1124. package/src/generation/placement/GridCellPlacementRule.d.ts +15 -7
  1125. package/src/generation/placement/GridCellPlacementRule.d.ts.map +1 -1
  1126. package/src/generation/placement/GridCellPlacementRule.js +7 -6
  1127. package/src/generation/theme/ThemeEngine.d.ts +2 -2
  1128. package/src/generation/theme/ThemeEngine.d.ts.map +1 -1
  1129. package/src/shade/descriptor/ObjectDescriptorBase.d.ts +9 -4
  1130. package/src/shade/descriptor/ObjectDescriptorBase.d.ts.map +1 -1
  1131. package/src/shade/descriptor/ObjectDescriptorBase.js +7 -2
  1132. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.d.ts +12 -0
  1133. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.d.ts.map +1 -1
  1134. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.js +8 -0
  1135. package/src/shade/descriptor/binding/BufferBindingLayout.d.ts +11 -6
  1136. package/src/shade/descriptor/binding/BufferBindingLayout.d.ts.map +1 -1
  1137. package/src/shade/descriptor/binding/BufferBindingLayout.js +5 -4
  1138. package/src/shade/descriptor/binding/SamplerBindingLayout.d.ts +2 -2
  1139. package/src/shade/descriptor/binding/SamplerBindingLayout.d.ts.map +1 -1
  1140. package/src/shade/descriptor/binding/SamplerBindingLayout.js +1 -1
  1141. package/src/shade/descriptor/binding/StorageTextureBindingLayout.d.ts +2 -2
  1142. package/src/shade/descriptor/binding/StorageTextureBindingLayout.d.ts.map +1 -1
  1143. package/src/shade/descriptor/binding/StorageTextureBindingLayout.js +1 -1
  1144. package/src/shade/descriptor/binding/TextureBindingLayout.d.ts +4 -4
  1145. package/src/shade/descriptor/binding/TextureBindingLayout.d.ts.map +1 -1
  1146. package/src/shade/descriptor/binding/TextureBindingLayout.js +2 -2
  1147. package/src/shade/descriptor/blend/BlendComponent.d.ts +6 -6
  1148. package/src/shade/descriptor/blend/BlendComponent.d.ts.map +1 -1
  1149. package/src/shade/descriptor/blend/BlendComponent.js +3 -3
  1150. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.d.ts +12 -0
  1151. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.d.ts.map +1 -1
  1152. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.js +8 -0
  1153. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.d.ts +18 -5
  1154. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.d.ts.map +1 -1
  1155. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.js +14 -4
  1156. package/src/shade/descriptor/pipeline/render/DepthStencilState.d.ts +4 -1
  1157. package/src/shade/descriptor/pipeline/render/DepthStencilState.d.ts.map +1 -1
  1158. package/src/shade/descriptor/pipeline/render/DepthStencilState.js +3 -0
  1159. package/src/shade/descriptor/pipeline/render/FragmentState.d.ts +5 -2
  1160. package/src/shade/descriptor/pipeline/render/FragmentState.d.ts.map +1 -1
  1161. package/src/shade/descriptor/pipeline/render/FragmentState.js +4 -1
  1162. package/src/shade/descriptor/pipeline/render/PrimitiveState.d.ts +8 -8
  1163. package/src/shade/descriptor/pipeline/render/PrimitiveState.d.ts.map +1 -1
  1164. package/src/shade/descriptor/pipeline/render/PrimitiveState.js +4 -4
  1165. package/src/shade/descriptor/pipeline/render/StencilFaceState.d.ts +16 -4
  1166. package/src/shade/descriptor/pipeline/render/StencilFaceState.d.ts.map +1 -1
  1167. package/src/shade/descriptor/pipeline/render/StencilFaceState.js +12 -0
  1168. package/src/shade/descriptor/pipeline/render/VertexState.d.ts +5 -2
  1169. package/src/shade/descriptor/pipeline/render/VertexState.d.ts.map +1 -1
  1170. package/src/shade/descriptor/pipeline/render/VertexState.js +4 -1
  1171. package/src/shade/descriptor/texture/SamplerDescriptor.d.ts +24 -6
  1172. package/src/shade/descriptor/texture/SamplerDescriptor.d.ts.map +1 -1
  1173. package/src/shade/descriptor/texture/SamplerDescriptor.js +18 -0
  1174. package/src/shade/descriptor/texture/TextureDescriptor.d.ts +3 -3
  1175. package/src/shade/descriptor/texture/TextureDescriptor.d.ts.map +1 -1
  1176. package/src/shade/descriptor/texture/TextureDescriptor.js +1 -1
  1177. package/src/shade/device/ShadeGPUCommandContext.d.ts +47 -13
  1178. package/src/shade/device/ShadeGPUCommandContext.d.ts.map +1 -1
  1179. package/src/shade/device/ShadeGPUCommandContext.js +28 -8
  1180. package/src/shade/device/graph/GraphicsExecutionContext.d.ts +6 -0
  1181. package/src/shade/device/graph/GraphicsExecutionContext.d.ts.map +1 -1
  1182. package/src/shade/device/graph/GraphicsExecutionContext.js +5 -0
  1183. package/src/shade/device/graph/TextureResourceDescriptor.d.ts +13 -6
  1184. package/src/shade/device/graph/TextureResourceDescriptor.d.ts.map +1 -1
  1185. package/src/shade/device/graph/TextureResourceDescriptor.js +6 -5
  1186. package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts +7 -1
  1187. package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts.map +1 -1
  1188. package/src/shade/device/pass/ShadeGPUComputePassEncoder.js +5 -0
  1189. package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts +7 -1
  1190. package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts.map +1 -1
  1191. package/src/shade/device/pass/ShadeGPURenderPassEncoder.js +5 -0
  1192. package/src/shade/device/pipeline/ComputePipelineManager.d.ts +9 -1
  1193. package/src/shade/device/pipeline/ComputePipelineManager.d.ts.map +1 -1
  1194. package/src/shade/device/pipeline/ComputePipelineManager.js +6 -0
  1195. package/src/shade/device/pipeline/PipelineLayoutManager.d.ts +6 -0
  1196. package/src/shade/device/pipeline/PipelineLayoutManager.d.ts.map +1 -1
  1197. package/src/shade/device/pipeline/PipelineLayoutManager.js +5 -0
  1198. package/src/shade/device/pipeline/RenderPipelineManager.d.ts +7 -1
  1199. package/src/shade/device/pipeline/RenderPipelineManager.d.ts.map +1 -1
  1200. package/src/shade/device/pipeline/RenderPipelineManager.js +5 -0
  1201. package/src/shade/device/shader/ShaderModuleCompiler.d.ts +4 -0
  1202. package/src/shade/device/shader/ShaderModuleCompiler.d.ts.map +1 -1
  1203. package/src/shade/device/shader/ShaderModuleCompiler.js +4 -0
  1204. package/src/shade/device/timing/GPUTimerArray.d.ts.map +1 -1
  1205. package/src/shade/device/timing/GPUTimerStats.d.ts +1 -1
  1206. package/src/shade/device/timing/GPUTimerStats.d.ts.map +1 -1
  1207. package/src/shade/device/timing/GPU_PROFILER_PROPOSAL_2026_08_28.md +894 -894
  1208. package/src/shade/device/timing/profile/GPUFrameRecorder.d.ts +6 -0
  1209. package/src/shade/device/timing/profile/GPUFrameRecorder.d.ts.map +1 -1
  1210. package/src/shade/device/timing/profile/GPUFrameRecorder.js +5 -0
  1211. package/src/shade/device/timing/profile/GPUProfileFrame.d.ts +6 -0
  1212. package/src/shade/device/timing/profile/GPUProfileFrame.d.ts.map +1 -1
  1213. package/src/shade/device/timing/profile/GPUProfileFrame.js +5 -0
  1214. package/src/shade/device/timing/profile/GPUProfileSession.d.ts +1 -0
  1215. package/src/shade/device/timing/profile/GPUProfileSession.d.ts.map +1 -1
  1216. package/src/shade/device/timing/profile/GPUProfileSession.js +4 -0
  1217. package/src/shade/device/timing/profile/GPUProfileSpan.d.ts +4 -0
  1218. package/src/shade/device/timing/profile/GPUProfileSpan.d.ts.map +1 -1
  1219. package/src/shade/device/timing/profile/GPUProfileSpan.js +4 -0
  1220. package/src/shade/playground/add_random_meshes.d.ts +19 -8
  1221. package/src/shade/playground/add_random_meshes.d.ts.map +1 -1
  1222. package/src/shade/playground/add_random_meshes.js +8 -7
  1223. package/src/shade/playground/basis_textures/texture_inventory.d.ts.map +1 -1
  1224. package/src/shade/playground/bvh_repro/bvh_repro_device.d.ts.map +1 -1
  1225. package/src/shade/playground/ground_seam/capture_scene_color.d.ts +4 -0
  1226. package/src/shade/playground/ground_seam/capture_scene_color.d.ts.map +1 -1
  1227. package/src/shade/playground/ground_seam/measure_flicker.d.ts.map +1 -1
  1228. package/src/shade/playground/particle_ecs/index.html +0 -2
  1229. package/src/shade/playground/particle_ecs/main.js +8 -29
  1230. package/src/shade/playground/particle_system/index.html +0 -1
  1231. package/src/shade/playground/particle_system/main.js +8 -22
  1232. package/src/shade/playground/particle_system/particle_prototype.d.ts.map +1 -1
  1233. package/src/shade/playground/particle_system/particle_prototype.js +8 -8
  1234. package/src/shade/playground/particle_system/particle_scene.d.ts +0 -62
  1235. package/src/shade/playground/particle_system/particle_scene.d.ts.map +1 -1
  1236. package/src/shade/playground/particle_system/particle_scene.js +0 -58
  1237. package/src/shade/playground/skinned_blas_refit/sweep_views.js +2 -2
  1238. package/src/shade/playground/skinned_blas_refit/verify_traversal_reachability.js +1 -1
  1239. package/src/shade/playground/ssr_variance/reference.d.ts +1 -1
  1240. package/src/shade/playground/ssr_variance/reference.d.ts.map +1 -1
  1241. package/src/shade/playground/vgeo_viewer/README.md +132 -0
  1242. package/src/shade/playground/vgeo_viewer/cut_geometry.d.ts +61 -0
  1243. package/src/shade/playground/vgeo_viewer/cut_geometry.d.ts.map +1 -0
  1244. package/src/shade/playground/vgeo_viewer/cut_geometry.js +460 -0
  1245. package/src/shade/playground/vgeo_viewer/index.html +77 -0
  1246. package/src/shade/playground/vgeo_viewer/main.d.ts +2 -0
  1247. package/src/shade/playground/vgeo_viewer/main.d.ts.map +1 -0
  1248. package/src/shade/playground/vgeo_viewer/main.js +1302 -0
  1249. package/src/shade/playground/vgeo_viewer/sample_asset.d.ts +18 -0
  1250. package/src/shade/playground/vgeo_viewer/sample_asset.d.ts.map +1 -0
  1251. package/src/shade/playground/vgeo_viewer/sample_asset.js +117 -0
  1252. package/src/shade/playground/vgeo_viewer/select_cut.d.ts +173 -0
  1253. package/src/shade/playground/vgeo_viewer/select_cut.d.ts.map +1 -0
  1254. package/src/shade/playground/vgeo_viewer/select_cut.js +481 -0
  1255. package/src/shade/renderer/DynamicResolutionScaling.d.ts +1 -1
  1256. package/src/shade/renderer/DynamicResolutionScaling.d.ts.map +1 -1
  1257. package/src/shade/renderer/GPUSamplerManager.d.ts +4 -0
  1258. package/src/shade/renderer/GPUSamplerManager.d.ts.map +1 -1
  1259. package/src/shade/renderer/GPUSamplerManager.js +4 -0
  1260. package/src/shade/renderer/GraphicsContext.d.ts +2 -0
  1261. package/src/shade/renderer/GraphicsContext.d.ts.map +1 -1
  1262. package/src/shade/renderer/GraphicsContext.js +5 -0
  1263. package/src/shade/renderer/Renderer.d.ts +19 -9
  1264. package/src/shade/renderer/Renderer.d.ts.map +1 -1
  1265. package/src/shade/renderer/Renderer.js +70 -67
  1266. package/src/shade/renderer/ResourceManager.d.ts +10 -0
  1267. package/src/shade/renderer/ResourceManager.d.ts.map +1 -1
  1268. package/src/shade/renderer/ResourceManager.js +7 -0
  1269. package/src/shade/renderer/animation/GPUAnimationManager.d.ts +18 -11
  1270. package/src/shade/renderer/animation/GPUAnimationManager.d.ts.map +1 -1
  1271. package/src/shade/renderer/animation/GPUAnimationManager.js +2063 -1958
  1272. package/src/shade/renderer/animation/ShadeAnimationChannel.d.ts +2 -0
  1273. package/src/shade/renderer/animation/ShadeAnimationChannel.d.ts.map +1 -1
  1274. package/src/shade/renderer/animation/ShadeAnimationChannel.js +5 -0
  1275. package/src/shade/renderer/animation/ShadeAnimationClip.d.ts +4 -0
  1276. package/src/shade/renderer/animation/ShadeAnimationClip.d.ts.map +1 -1
  1277. package/src/shade/renderer/animation/ShadeAnimationClip.js +4 -0
  1278. package/src/shade/renderer/animation/Skin.d.ts +6 -0
  1279. package/src/shade/renderer/animation/Skin.d.ts.map +1 -1
  1280. package/src/shade/renderer/animation/Skin.js +5 -0
  1281. package/src/shade/renderer/animation/skin_normalize_mesh_frame.d.ts.map +1 -1
  1282. package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts +48 -0
  1283. package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts.map +1 -1
  1284. package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.js +201 -14
  1285. package/src/shade/renderer/binding/BindGroupDescriptor.d.ts +2 -1
  1286. package/src/shade/renderer/binding/BindGroupDescriptor.d.ts.map +1 -1
  1287. package/src/shade/renderer/binding/BindGroupDescriptor.js +4 -0
  1288. package/src/shade/renderer/binding/BindGroupManager.d.ts +1 -0
  1289. package/src/shade/renderer/binding/BindGroupManager.d.ts.map +1 -1
  1290. package/src/shade/renderer/binding/BindGroupManager.js +4 -0
  1291. package/src/shade/renderer/buffer/GPUBufferAllocatorNative.d.ts +4 -0
  1292. package/src/shade/renderer/buffer/GPUBufferAllocatorNative.d.ts.map +1 -1
  1293. package/src/shade/renderer/buffer/GPUBufferAllocatorNative.js +4 -0
  1294. package/src/shade/renderer/buffer/GPUTypedBuffer.d.ts +20 -8
  1295. package/src/shade/renderer/buffer/GPUTypedBuffer.d.ts.map +1 -1
  1296. package/src/shade/renderer/buffer/GPUTypedBuffer.js +11 -6
  1297. package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.d.ts +15 -7
  1298. package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.d.ts.map +1 -1
  1299. package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.js +7 -6
  1300. package/src/shade/renderer/buffer/inspect_gpu_buffer.d.ts +26 -12
  1301. package/src/shade/renderer/buffer/inspect_gpu_buffer.d.ts.map +1 -1
  1302. package/src/shade/renderer/buffer/inspect_gpu_buffer.js +12 -10
  1303. package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.d.ts +13 -6
  1304. package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.d.ts.map +1 -1
  1305. package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.js +6 -5
  1306. package/src/shade/renderer/buffer/table/GPUDatabase.d.ts +13 -5
  1307. package/src/shade/renderer/buffer/table/GPUDatabase.d.ts.map +1 -1
  1308. package/src/shade/renderer/buffer/table/GPUDatabase.js +10 -4
  1309. package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts +3 -1
  1310. package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts.map +1 -1
  1311. package/src/shade/renderer/buffer/table/GPUTypedTable.js +5 -0
  1312. package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts +4 -0
  1313. package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts.map +1 -1
  1314. package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.js +4 -0
  1315. package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.d.ts +11 -4
  1316. package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.d.ts.map +1 -1
  1317. package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.js +9 -3
  1318. package/src/shade/renderer/camera/Camera.d.ts +3 -3
  1319. package/src/shade/renderer/camera/Camera.d.ts.map +1 -1
  1320. package/src/shade/renderer/camera/CameraManager.d.ts +4 -0
  1321. package/src/shade/renderer/camera/CameraManager.d.ts.map +1 -1
  1322. package/src/shade/renderer/camera/CameraManager.js +4 -0
  1323. package/src/shade/renderer/camera/GPUCameraContext.d.ts +4 -2
  1324. package/src/shade/renderer/camera/GPUCameraContext.d.ts.map +1 -1
  1325. package/src/shade/renderer/camera/GPUCameraContext.js +5 -0
  1326. package/src/shade/renderer/camera/OrthographicCamera.d.ts +4 -4
  1327. package/src/shade/renderer/camera/OrthographicCamera.d.ts.map +1 -1
  1328. package/src/shade/renderer/camera/PerspectiveCamera.d.ts +2 -2
  1329. package/src/shade/renderer/camera/PerspectiveCamera.d.ts.map +1 -1
  1330. package/src/shade/renderer/camera/orbital/OrbitalCameraController.d.ts +11 -3
  1331. package/src/shade/renderer/camera/orbital/OrbitalCameraController.d.ts.map +1 -1
  1332. package/src/shade/renderer/camera/orbital/OrbitalCameraController.js +25 -5
  1333. package/src/shade/renderer/extension/FrameContext.d.ts +16 -6
  1334. package/src/shade/renderer/extension/FrameContext.d.ts.map +1 -1
  1335. package/src/shade/renderer/extension/FrameContext.js +7 -0
  1336. package/src/shade/renderer/extension/FrameRecord.d.ts +7 -1
  1337. package/src/shade/renderer/extension/FrameRecord.d.ts.map +1 -1
  1338. package/src/shade/renderer/extension/FrameRecord.js +5 -0
  1339. package/src/shade/renderer/extension/GBufferTextures.d.ts +4 -4
  1340. package/src/shade/renderer/extension/GBufferTextures.d.ts.map +1 -1
  1341. package/src/shade/renderer/extension/PresentTarget.d.ts +1 -1
  1342. package/src/shade/renderer/extension/PresentTarget.d.ts.map +1 -1
  1343. package/src/shade/renderer/extension/RENDER_EXTENSION_DESIGN.md +918 -918
  1344. package/src/shade/renderer/extension/RenderExtension.d.ts +4 -0
  1345. package/src/shade/renderer/extension/RenderExtension.d.ts.map +1 -1
  1346. package/src/shade/renderer/extension/RenderExtension.js +4 -0
  1347. package/src/shade/renderer/extension/SceneColor.d.ts +1 -1
  1348. package/src/shade/renderer/extension/SceneColor.d.ts.map +1 -1
  1349. package/src/shade/renderer/extension/ViewTextures.d.ts +4 -4
  1350. package/src/shade/renderer/extension/ViewTextures.d.ts.map +1 -1
  1351. package/src/shade/renderer/geometry/Attribute.d.ts +3 -3
  1352. package/src/shade/renderer/geometry/Attribute.d.ts.map +1 -1
  1353. package/src/shade/renderer/geometry/Attribute.js +1 -1
  1354. package/src/shade/renderer/geometry/GPUGeometryManager.d.ts +30 -2
  1355. package/src/shade/renderer/geometry/GPUGeometryManager.d.ts.map +1 -1
  1356. package/src/shade/renderer/geometry/GPUGeometryManager.js +642 -591
  1357. package/src/shade/renderer/geometry/GPUGeometryMetadata.d.ts +4 -0
  1358. package/src/shade/renderer/geometry/GPUGeometryMetadata.d.ts.map +1 -1
  1359. package/src/shade/renderer/geometry/GPUGeometryMetadata.js +4 -0
  1360. package/src/shade/renderer/geometry/Geometry.d.ts +1 -1
  1361. package/src/shade/renderer/geometry/Geometry.d.ts.map +1 -1
  1362. package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.d.ts +7 -3
  1363. package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.d.ts.map +1 -1
  1364. package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.js +3 -2
  1365. package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.d.ts +4 -0
  1366. package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.d.ts.map +1 -1
  1367. package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.js +4 -0
  1368. package/src/shade/renderer/geometry/bvh/bvh2_check_bounds.d.ts.map +1 -1
  1369. package/src/shade/renderer/geometry/bvh/bvh2_derive_topology.d.ts.map +1 -1
  1370. package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.d.ts +11 -5
  1371. package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.d.ts.map +1 -1
  1372. package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.js +5 -4
  1373. package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.d.ts +12 -4
  1374. package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.d.ts.map +1 -1
  1375. package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.js +10 -3
  1376. package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts +4 -3
  1377. package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts.map +1 -1
  1378. package/src/shade/renderer/geometry/meshlet/MeshletBatch.js +4 -0
  1379. package/src/shade/renderer/geometry/meshlet_batch_to_bvh.d.ts +13 -6
  1380. package/src/shade/renderer/geometry/meshlet_batch_to_bvh.d.ts.map +1 -1
  1381. package/src/shade/renderer/geometry/meshlet_batch_to_bvh.js +6 -5
  1382. package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.d.ts +2 -0
  1383. package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.d.ts.map +1 -1
  1384. package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.js +5 -0
  1385. package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.d.ts +13 -6
  1386. package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.d.ts.map +1 -1
  1387. package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.js +6 -5
  1388. package/src/shade/renderer/geometry/virtual/build/gltf/gltf_collect_geometries.d.ts.map +1 -1
  1389. package/src/shade/renderer/geometry/virtual/format/attribute/VGEO_ATTRIBUTES.d.ts.map +1 -1
  1390. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.d.ts +29 -0
  1391. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.d.ts.map +1 -0
  1392. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.js +59 -0
  1393. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.d.ts +0 -1
  1394. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.d.ts.map +1 -1
  1395. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.js +2 -23
  1396. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.d.ts +94 -0
  1397. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.d.ts.map +1 -0
  1398. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.js +170 -0
  1399. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerHeader.d.ts +122 -0
  1400. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerHeader.d.ts.map +1 -0
  1401. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerHeader.js +143 -0
  1402. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts +216 -0
  1403. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts.map +1 -0
  1404. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.js +917 -0
  1405. package/src/shade/renderer/geometry/virtual/format/read/VGeoDirectory.d.ts +64 -0
  1406. package/src/shade/renderer/geometry/virtual/format/read/VGeoDirectory.d.ts.map +1 -0
  1407. package/src/shade/renderer/geometry/virtual/format/read/VGeoDirectory.js +80 -0
  1408. package/src/shade/renderer/geometry/virtual/format/read/VGeoPage.d.ts +198 -0
  1409. package/src/shade/renderer/geometry/virtual/format/read/VGeoPage.d.ts.map +1 -0
  1410. package/src/shade/renderer/geometry/virtual/format/read/VGeoPage.js +232 -0
  1411. package/src/shade/renderer/geometry/virtual/format/read/VGeoPageWant.d.ts +51 -0
  1412. package/src/shade/renderer/geometry/virtual/format/read/VGeoPageWant.d.ts.map +1 -0
  1413. package/src/shade/renderer/geometry/virtual/format/read/VGeoPageWant.js +55 -0
  1414. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.d.ts +68 -0
  1415. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.d.ts.map +1 -0
  1416. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.js +72 -0
  1417. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.d.ts +28 -0
  1418. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.d.ts.map +1 -0
  1419. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.js +108 -0
  1420. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_directory.d.ts +23 -0
  1421. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_directory.d.ts.map +1 -0
  1422. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_directory.js +83 -0
  1423. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_header.d.ts +53 -0
  1424. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_header.d.ts.map +1 -0
  1425. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_header.js +211 -0
  1426. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_page.d.ts +26 -0
  1427. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_page.d.ts.map +1 -0
  1428. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_page.js +271 -0
  1429. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts +11 -5
  1430. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts.map +1 -1
  1431. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.js +5 -4
  1432. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.d.ts +12 -5
  1433. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.d.ts.map +1 -1
  1434. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.js +5 -4
  1435. package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.d.ts +11 -5
  1436. package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.d.ts.map +1 -1
  1437. package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.js +5 -4
  1438. package/src/shade/renderer/global_illumination/clipmap/GPUClipMap3D.d.ts +2 -2
  1439. package/src/shade/renderer/global_illumination/clipmap/GPUClipMap3D.d.ts.map +1 -1
  1440. package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.d.ts +5 -1
  1441. package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.d.ts.map +1 -1
  1442. package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.js +4 -0
  1443. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts +5 -1
  1444. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts.map +1 -1
  1445. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.js +4 -0
  1446. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts +8 -2
  1447. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts.map +1 -1
  1448. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.js +5 -0
  1449. package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.d.ts +11 -5
  1450. package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.d.ts.map +1 -1
  1451. package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.js +5 -4
  1452. package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.d.ts +9 -4
  1453. package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.d.ts.map +1 -1
  1454. package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.js +4 -3
  1455. package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.d.ts +9 -4
  1456. package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.d.ts.map +1 -1
  1457. package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.js +4 -3
  1458. package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.d.ts +7 -3
  1459. package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.d.ts.map +1 -1
  1460. package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.js +3 -2
  1461. package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.d.ts +28 -8
  1462. package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.d.ts.map +1 -1
  1463. package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.js +17 -6
  1464. package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.d.ts +13 -6
  1465. package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.d.ts.map +1 -1
  1466. package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.js +6 -5
  1467. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.d.ts +15 -7
  1468. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.d.ts.map +1 -1
  1469. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.js +7 -6
  1470. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.d.ts +17 -8
  1471. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.d.ts.map +1 -1
  1472. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.js +8 -7
  1473. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.d.ts +17 -8
  1474. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.d.ts.map +1 -1
  1475. package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.js +8 -7
  1476. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts +16 -8
  1477. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts.map +1 -1
  1478. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.js +7 -6
  1479. package/src/shade/renderer/gpu_primitive/bvh/check_bvh_structure.d.ts.map +1 -1
  1480. package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.d.ts +19 -9
  1481. package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.d.ts.map +1 -1
  1482. package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.js +9 -8
  1483. package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.d.ts +9 -4
  1484. package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.d.ts.map +1 -1
  1485. package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.js +4 -3
  1486. package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.d.ts +11 -5
  1487. package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.d.ts.map +1 -1
  1488. package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.js +5 -4
  1489. package/src/shade/renderer/hiz/HierarchicalZBuffer.d.ts +9 -1
  1490. package/src/shade/renderer/hiz/HierarchicalZBuffer.d.ts.map +1 -1
  1491. package/src/shade/renderer/hiz/HierarchicalZBuffer.js +6 -0
  1492. package/src/shade/renderer/hiz/generate_downsampler_code.d.ts +11 -5
  1493. package/src/shade/renderer/hiz/generate_downsampler_code.d.ts.map +1 -1
  1494. package/src/shade/renderer/hiz/generate_downsampler_code.js +5 -4
  1495. package/src/shade/renderer/hiz/graph_build_hzb.d.ts +13 -6
  1496. package/src/shade/renderer/hiz/graph_build_hzb.d.ts.map +1 -1
  1497. package/src/shade/renderer/hiz/graph_build_hzb.js +6 -5
  1498. package/src/shade/renderer/light/GPULightCollection.d.ts +4 -1
  1499. package/src/shade/renderer/light/GPULightCollection.d.ts.map +1 -1
  1500. package/src/shade/renderer/light/GPULightCollection.js +6 -0
  1501. package/src/shade/renderer/light/LightCollection.d.ts +10 -4
  1502. package/src/shade/renderer/light/LightCollection.d.ts.map +1 -1
  1503. package/src/shade/renderer/light/LightCollection.js +5 -0
  1504. package/src/shade/renderer/light/cluster/cull/graph_cull_lights.d.ts +11 -5
  1505. package/src/shade/renderer/light/cluster/cull/graph_cull_lights.d.ts.map +1 -1
  1506. package/src/shade/renderer/light/cluster/cull/graph_cull_lights.js +17 -14
  1507. package/src/shade/renderer/light/cluster/graph_assign_clsuters.d.ts +13 -6
  1508. package/src/shade/renderer/light/cluster/graph_assign_clsuters.d.ts.map +1 -1
  1509. package/src/shade/renderer/light/cluster/graph_assign_clsuters.js +6 -5
  1510. package/src/shade/renderer/light/cluster/graph_build_light_clusters.d.ts +13 -6
  1511. package/src/shade/renderer/light/cluster/graph_build_light_clusters.d.ts.map +1 -1
  1512. package/src/shade/renderer/light/cluster/graph_build_light_clusters.js +6 -5
  1513. package/src/shade/renderer/light/environment/graph_filter_environment_map.d.ts +7 -3
  1514. package/src/shade/renderer/light/environment/graph_filter_environment_map.d.ts.map +1 -1
  1515. package/src/shade/renderer/light/environment/graph_filter_environment_map.js +3 -2
  1516. package/src/shade/renderer/light/model/PointLight.d.ts +1 -1
  1517. package/src/shade/renderer/light/model/PointLight.d.ts.map +1 -1
  1518. package/src/shade/renderer/light/model/SpotLight.d.ts +1 -1
  1519. package/src/shade/renderer/light/model/SpotLight.d.ts.map +1 -1
  1520. package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.d.ts +11 -5
  1521. package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.d.ts.map +1 -1
  1522. package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.js +5 -4
  1523. package/src/shade/renderer/loader/gltf/fix_up_material_sides.d.ts.map +1 -1
  1524. package/src/shade/renderer/loader/gltf/gltf_create_material.d.ts +1 -1
  1525. package/src/shade/renderer/loader/gltf/gltf_create_material.d.ts.map +1 -1
  1526. package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts +3 -3
  1527. package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts.map +1 -1
  1528. package/src/shade/renderer/loader/usd/usd_decode_image.d.ts +1 -1
  1529. package/src/shade/renderer/loader/usd/usd_decode_image.d.ts.map +1 -1
  1530. package/src/shade/renderer/material/GPUMaterialContext.d.ts +17 -1
  1531. package/src/shade/renderer/material/GPUMaterialContext.d.ts.map +1 -1
  1532. package/src/shade/renderer/material/GPUMaterialContext.js +10 -0
  1533. package/src/shade/renderer/material/GPUMaterialManager.d.ts +19 -5
  1534. package/src/shade/renderer/material/GPUMaterialManager.d.ts.map +1 -1
  1535. package/src/shade/renderer/material/GPUMaterialManager.js +19 -4
  1536. package/src/shade/renderer/material/ShadeMaterial.d.ts +2 -1
  1537. package/src/shade/renderer/material/ShadeMaterial.d.ts.map +1 -1
  1538. package/src/shade/renderer/material/ShadeMaterial.js +4 -0
  1539. package/src/shade/renderer/material/StandardShadeMaterial.d.ts +6 -0
  1540. package/src/shade/renderer/material/StandardShadeMaterial.d.ts.map +1 -1
  1541. package/src/shade/renderer/material/StandardShadeMaterial.js +5 -0
  1542. package/src/shade/renderer/material/resident/GPUResidentMaterialContext.d.ts +12 -0
  1543. package/src/shade/renderer/material/resident/GPUResidentMaterialContext.d.ts.map +1 -1
  1544. package/src/shade/renderer/material/resident/GPUResidentMaterialContext.js +8 -0
  1545. package/src/shade/renderer/material/util/material_convert_metallic_roughness_to_specular_glossiness.d.ts.map +1 -1
  1546. package/src/shade/renderer/material/util/material_convert_specular_glossiness_to_metallic_roughness.d.ts.map +1 -1
  1547. package/src/shade/renderer/particles/DESIGN.md +96 -72
  1548. package/src/shade/renderer/particles/GPUParticleSystem.d.ts +109 -50
  1549. package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
  1550. package/src/shade/renderer/particles/GPUParticleSystem.js +180 -234
  1551. package/src/shade/renderer/particles/ParticleConstants.d.ts +6 -12
  1552. package/src/shade/renderer/particles/ParticleConstants.d.ts.map +1 -1
  1553. package/src/shade/renderer/particles/ParticleConstants.js +6 -13
  1554. package/src/shade/renderer/particles/coherence/graph_particle_bucket.d.ts +21 -20
  1555. package/src/shade/renderer/particles/coherence/graph_particle_bucket.d.ts.map +1 -1
  1556. package/src/shade/renderer/particles/coherence/graph_particle_bucket.js +40 -27
  1557. package/src/shade/renderer/particles/coherence/particle_program_buckets.d.ts +2 -1
  1558. package/src/shade/renderer/particles/coherence/particle_program_buckets.d.ts.map +1 -1
  1559. package/src/shade/renderer/particles/coherence/particle_program_buckets.js +6 -8
  1560. package/src/shade/renderer/particles/coherence/shader_particle_bucket.d.ts.map +1 -1
  1561. package/src/shade/renderer/particles/coherence/shader_particle_bucket.js +4 -3
  1562. package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.d.ts +10 -14
  1563. package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.d.ts.map +1 -1
  1564. package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.js +10 -14
  1565. package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.d.ts +6 -5
  1566. package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.d.ts.map +1 -1
  1567. package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.js +6 -5
  1568. package/src/shade/renderer/particles/graph/ParticleGroupBuilder.d.ts +6 -6
  1569. package/src/shade/renderer/particles/graph/ParticleGroupBuilder.d.ts.map +1 -1
  1570. package/src/shade/renderer/particles/graph/ParticleNodeGroup.d.ts.map +1 -1
  1571. package/src/shade/renderer/particles/graph/ParticleValueType.d.ts +1 -1
  1572. package/src/shade/renderer/particles/graph/ParticleValueType.d.ts.map +1 -1
  1573. package/src/shade/renderer/particles/graph/make_particle_group.d.ts.map +1 -1
  1574. package/src/shade/renderer/particles/graph/particle_graph_authoring.d.ts.map +1 -1
  1575. package/src/shade/renderer/particles/graph/particle_group_json.d.ts.map +1 -1
  1576. package/src/shade/renderer/particles/graph_particles.d.ts +28 -30
  1577. package/src/shade/renderer/particles/graph_particles.d.ts.map +1 -1
  1578. package/src/shade/renderer/particles/graph_particles.js +71 -60
  1579. package/src/shade/renderer/particles/graph_particles_avboit.js +16 -16
  1580. package/src/shade/renderer/particles/isa/ParticleVMISA.d.ts.map +1 -1
  1581. package/src/shade/renderer/particles/isa/particle_assembly.d.ts.map +1 -1
  1582. package/src/shade/renderer/particles/layout/ParticleLayout.d.ts.map +1 -1
  1583. package/src/shade/renderer/particles/optimizer/dag/particle_vector_lift.d.ts.map +1 -1
  1584. package/src/shade/renderer/particles/optimizer/dag/particle_vector_pack.d.ts.map +1 -1
  1585. package/src/shade/renderer/particles/optimizer/optimize_particle_program.d.ts +1 -1
  1586. package/src/shade/renderer/particles/optimizer/optimize_particle_program.d.ts.map +1 -1
  1587. package/src/shade/renderer/particles/optimizer/particle_program_equivalence.d.ts.map +1 -1
  1588. package/src/shade/renderer/particles/runtime/EmitterRegistry.d.ts +3 -2
  1589. package/src/shade/renderer/particles/runtime/EmitterRegistry.d.ts.map +1 -1
  1590. package/src/shade/renderer/particles/runtime/EmitterRegistry.js +31 -27
  1591. package/src/shade/renderer/particles/runtime/ParticleEmitter.d.ts +4 -4
  1592. package/src/shade/renderer/particles/runtime/ParticleEmitter.js +4 -4
  1593. package/src/shade/renderer/particles/runtime/create_particle_effect.d.ts.map +1 -1
  1594. package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.js +4 -4
  1595. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts +7 -6
  1596. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts.map +1 -1
  1597. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.js +7 -6
  1598. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts +4 -3
  1599. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts.map +1 -1
  1600. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.js +4 -3
  1601. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.d.ts +2 -2
  1602. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.js +10 -10
  1603. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +3 -3
  1604. package/src/shade/renderer/particles/shaders/shader_particle_avboit_splat.d.ts.map +1 -1
  1605. package/src/shade/renderer/particles/shaders/shader_particle_avboit_splat.js +2 -1
  1606. package/src/shade/renderer/particles/shaders/shader_particle_finalize.d.ts.map +1 -1
  1607. package/src/shade/renderer/particles/shaders/shader_particle_finalize.js +13 -16
  1608. package/src/shade/renderer/particles/shaders/shader_particle_render.d.ts.map +1 -1
  1609. package/src/shade/renderer/particles/shaders/shader_particle_render.js +22 -19
  1610. package/src/shade/renderer/particles/vm/ParticleVMReference.d.ts.map +1 -1
  1611. package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.d.ts +10 -3
  1612. package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.d.ts.map +1 -1
  1613. package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.js +12 -2
  1614. package/src/shade/renderer/path_tracer/graph_path_trace_scene.d.ts +7 -3
  1615. package/src/shade/renderer/path_tracer/graph_path_trace_scene.d.ts.map +1 -1
  1616. package/src/shade/renderer/path_tracer/graph_path_trace_scene.js +3 -2
  1617. package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.d.ts +11 -5
  1618. package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.d.ts.map +1 -1
  1619. package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.js +5 -4
  1620. package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.d.ts +13 -6
  1621. package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.d.ts.map +1 -1
  1622. package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.js +11 -9
  1623. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts +32 -16
  1624. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts.map +1 -1
  1625. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.js +15 -14
  1626. package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.d.ts +21 -10
  1627. package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.d.ts.map +1 -1
  1628. package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.js +10 -9
  1629. package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.d.ts +17 -8
  1630. package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.d.ts.map +1 -1
  1631. package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.js +8 -7
  1632. package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.d.ts +6 -0
  1633. package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.d.ts.map +1 -1
  1634. package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.js +5 -0
  1635. package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.d.ts +6 -0
  1636. package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.d.ts.map +1 -1
  1637. package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.js +5 -0
  1638. package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.d.ts +14 -6
  1639. package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.d.ts.map +1 -1
  1640. package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.js +6 -4
  1641. package/src/shade/renderer/postprocess/graph_pass_composit_red_as_rgba.d.ts.map +1 -1
  1642. package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.d.ts +13 -6
  1643. package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.d.ts.map +1 -1
  1644. package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.js +6 -5
  1645. package/src/shade/renderer/postprocess/gtao/render_copy_texture.d.ts +28 -13
  1646. package/src/shade/renderer/postprocess/gtao/render_copy_texture.d.ts.map +1 -1
  1647. package/src/shade/renderer/postprocess/gtao/render_copy_texture.js +13 -11
  1648. package/src/shade/renderer/postprocess/motion_blur/MotionBlur.d.ts +4 -0
  1649. package/src/shade/renderer/postprocess/motion_blur/MotionBlur.d.ts.map +1 -1
  1650. package/src/shade/renderer/postprocess/motion_blur/MotionBlur.js +4 -0
  1651. package/src/shade/renderer/postprocess/nss/NSS.d.ts +11 -5
  1652. package/src/shade/renderer/postprocess/nss/NSS.d.ts.map +1 -1
  1653. package/src/shade/renderer/postprocess/nss/NSS.js +5 -0
  1654. package/src/shade/renderer/postprocess/ssr/SSR.d.ts +3 -3
  1655. package/src/shade/renderer/postprocess/ssr/SSR.d.ts.map +1 -1
  1656. package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.d.ts +9 -4
  1657. package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.d.ts.map +1 -1
  1658. package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.js +4 -3
  1659. package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.d.ts +13 -6
  1660. package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.d.ts.map +1 -1
  1661. package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.js +6 -5
  1662. package/src/shade/renderer/postprocess/taa/TAA.d.ts +17 -9
  1663. package/src/shade/renderer/postprocess/taa/TAA.d.ts.map +1 -1
  1664. package/src/shade/renderer/postprocess/taa/TAA.js +7 -6
  1665. package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.d.ts +13 -6
  1666. package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.d.ts.map +1 -1
  1667. package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.js +6 -5
  1668. package/src/shade/renderer/rasterize/bucket/prepare_meshlet_draw_commands_by_material.d.ts.map +1 -1
  1669. package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.d.ts +11 -5
  1670. package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.d.ts.map +1 -1
  1671. package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.js +5 -4
  1672. package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.d.ts +11 -5
  1673. package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.d.ts.map +1 -1
  1674. package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.js +5 -4
  1675. package/src/shade/renderer/rasterize/execute_rasterization_jobs.d.ts +12 -5
  1676. package/src/shade/renderer/rasterize/execute_rasterization_jobs.d.ts.map +1 -1
  1677. package/src/shade/renderer/rasterize/execute_rasterization_jobs.js +5 -4
  1678. package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.d.ts +2 -0
  1679. package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.d.ts.map +1 -1
  1680. package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.js +5 -0
  1681. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.d.ts +11 -5
  1682. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.d.ts.map +1 -1
  1683. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.js +5 -4
  1684. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.d.ts +9 -4
  1685. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.d.ts.map +1 -1
  1686. package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.js +4 -3
  1687. package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.d.ts +11 -5
  1688. package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.d.ts.map +1 -1
  1689. package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.js +5 -4
  1690. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.d.ts +15 -7
  1691. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.d.ts.map +1 -1
  1692. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.js +7 -6
  1693. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.d.ts +15 -7
  1694. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.d.ts.map +1 -1
  1695. package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.js +7 -6
  1696. package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.d.ts +13 -6
  1697. package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.d.ts.map +1 -1
  1698. package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.js +6 -5
  1699. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.d.ts +17 -8
  1700. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.d.ts.map +1 -1
  1701. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.js +8 -7
  1702. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.d.ts +13 -6
  1703. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.d.ts.map +1 -1
  1704. package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.js +6 -5
  1705. package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.d.ts +21 -10
  1706. package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.d.ts.map +1 -1
  1707. package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.js +10 -9
  1708. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.d.ts +13 -6
  1709. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.d.ts.map +1 -1
  1710. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.js +6 -5
  1711. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.d.ts +17 -8
  1712. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.d.ts.map +1 -1
  1713. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.js +8 -7
  1714. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.d.ts +13 -6
  1715. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.d.ts.map +1 -1
  1716. package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.js +6 -5
  1717. package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.d.ts +15 -7
  1718. package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.d.ts.map +1 -1
  1719. package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.js +7 -6
  1720. package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.d.ts +11 -5
  1721. package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.d.ts.map +1 -1
  1722. package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.js +5 -4
  1723. package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.d.ts +9 -4
  1724. package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.d.ts.map +1 -1
  1725. package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.js +4 -3
  1726. package/src/shade/renderer/rasterize/native/avboit/AVBOITSideChannel.d.ts.map +1 -1
  1727. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts +80 -37
  1728. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts.map +1 -1
  1729. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.js +37 -33
  1730. package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.d.ts +28 -13
  1731. package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.d.ts.map +1 -1
  1732. package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.js +13 -12
  1733. package/src/shade/renderer/rasterize/native/oit/graph_rasterize_meshes_transparent_oit.d.ts.map +1 -1
  1734. package/src/shade/renderer/rasterize/native/oit/graph_rasterize_meshes_transparent_oit.js +12 -11
  1735. package/src/shade/renderer/rasterize/standard/graph_rasterize_remaining_opaque.d.ts.map +1 -1
  1736. package/src/shade/renderer/rasterize/standard/graph_rasterize_remaining_opaque.js +5 -4
  1737. package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.d.ts +9 -4
  1738. package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.d.ts.map +1 -1
  1739. package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.js +4 -3
  1740. package/src/shade/renderer/restir/di/ReSTIRDI.d.ts +10 -0
  1741. package/src/shade/renderer/restir/di/ReSTIRDI.d.ts.map +1 -1
  1742. package/src/shade/renderer/restir/di/ReSTIRDI.js +7 -0
  1743. package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.d.ts +2 -0
  1744. package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.d.ts.map +1 -1
  1745. package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.js +5 -0
  1746. package/src/shade/renderer/scene/GPUSceneContext.d.ts +4 -0
  1747. package/src/shade/renderer/scene/GPUSceneContext.d.ts.map +1 -1
  1748. package/src/shade/renderer/scene/GPUSceneContext.js +15 -0
  1749. package/src/shade/renderer/scene/InstanceBatch.d.ts +12 -4
  1750. package/src/shade/renderer/scene/InstanceBatch.d.ts.map +1 -1
  1751. package/src/shade/renderer/scene/InstanceBatch.js +6 -0
  1752. package/src/shade/renderer/scene/Mesh.d.ts +8 -2
  1753. package/src/shade/renderer/scene/Mesh.d.ts.map +1 -1
  1754. package/src/shade/renderer/scene/Mesh.js +6 -1
  1755. package/src/shade/renderer/scene/Node3D.d.ts +3 -3
  1756. package/src/shade/renderer/scene/Node3D.d.ts.map +1 -1
  1757. package/src/shade/renderer/scene/SceneManager.d.ts +6 -0
  1758. package/src/shade/renderer/scene/SceneManager.d.ts.map +1 -1
  1759. package/src/shade/renderer/scene/SceneManager.js +5 -0
  1760. package/src/shade/renderer/scene/SkinnedMesh.d.ts +4 -0
  1761. package/src/shade/renderer/scene/SkinnedMesh.d.ts.map +1 -1
  1762. package/src/shade/renderer/scene/SkinnedMesh.js +4 -0
  1763. package/src/shade/renderer/scene/bvh/StaticSceneBVH.d.ts.map +1 -1
  1764. package/src/shade/renderer/scene/serialization/serialize_scene.d.ts +7 -3
  1765. package/src/shade/renderer/scene/serialization/serialize_scene.d.ts.map +1 -1
  1766. package/src/shade/renderer/scene/serialization/serialize_scene.js +3 -2
  1767. package/src/shade/renderer/shader/ComputeShader.d.ts +64 -29
  1768. package/src/shade/renderer/shader/ComputeShader.d.ts.map +1 -1
  1769. package/src/shade/renderer/shader/ComputeShader.js +29 -23
  1770. package/src/shade/renderer/shader/ImageShader.d.ts +9 -4
  1771. package/src/shade/renderer/shader/ImageShader.d.ts.map +1 -1
  1772. package/src/shade/renderer/shader/ImageShader.js +4 -3
  1773. package/src/shade/renderer/shader/ShaderDescriptor.d.ts +10 -4
  1774. package/src/shade/renderer/shader/ShaderDescriptor.d.ts.map +1 -1
  1775. package/src/shade/renderer/shader/ShaderDescriptor.js +4 -3
  1776. package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.d.ts +7 -3
  1777. package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.d.ts.map +1 -1
  1778. package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.js +6 -4
  1779. package/src/shade/renderer/shader/compiler/CodeChunk.d.ts.map +1 -1
  1780. package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.d.ts +13 -6
  1781. package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.d.ts.map +1 -1
  1782. package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.js +6 -5
  1783. package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.d.ts +13 -6
  1784. package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.d.ts.map +1 -1
  1785. package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.js +6 -5
  1786. package/src/shade/renderer/shader/graph/compute/graph_compute_pass.d.ts +13 -6
  1787. package/src/shade/renderer/shader/graph/compute/graph_compute_pass.d.ts.map +1 -1
  1788. package/src/shade/renderer/shader/graph/compute/graph_compute_pass.js +6 -5
  1789. package/src/shade/renderer/shader/graph/graph_image_pass.d.ts +27 -13
  1790. package/src/shade/renderer/shader/graph/graph_image_pass.d.ts.map +1 -1
  1791. package/src/shade/renderer/shader/graph/graph_image_pass.js +13 -12
  1792. package/src/shade/renderer/shader/graph/graph_import_raw_buffer.d.ts +15 -7
  1793. package/src/shade/renderer/shader/graph/graph_import_raw_buffer.d.ts.map +1 -1
  1794. package/src/shade/renderer/shader/graph/graph_import_raw_buffer.js +7 -6
  1795. package/src/shade/renderer/shader/graph/graph_import_typed_buffer.d.ts +13 -6
  1796. package/src/shade/renderer/shader/graph/graph_import_typed_buffer.d.ts.map +1 -1
  1797. package/src/shade/renderer/shader/graph/graph_import_typed_buffer.js +6 -5
  1798. package/src/shade/renderer/shader/graph/graph_prepare_pass_input_data.d.ts.map +1 -1
  1799. package/src/shade/renderer/shader/graph/graph_prepare_pass_input_data.js +11 -0
  1800. package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.d.ts +7 -3
  1801. package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.d.ts.map +1 -1
  1802. package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.js +3 -2
  1803. package/src/shade/renderer/shader/pass/RenderPassDescriptor.d.ts +49 -23
  1804. package/src/shade/renderer/shader/pass/RenderPassDescriptor.d.ts.map +1 -1
  1805. package/src/shade/renderer/shader/pass/RenderPassDescriptor.js +23 -20
  1806. package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.d.ts +6 -0
  1807. package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.d.ts.map +1 -1
  1808. package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.js +9 -0
  1809. package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.d.ts +11 -2
  1810. package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.d.ts.map +1 -1
  1811. package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.js +7 -1
  1812. package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts +10 -3
  1813. package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts.map +1 -1
  1814. package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.js +9 -2
  1815. package/src/shade/renderer/shader/type/WGSLAttribute.d.ts +2 -2
  1816. package/src/shade/renderer/shader/type/WGSLAttribute.d.ts.map +1 -1
  1817. package/src/shade/renderer/shader/type/WGSLAttribute.js +1 -1
  1818. package/src/shade/renderer/shader/type/WGSLStructField.d.ts +6 -2
  1819. package/src/shade/renderer/shader/type/WGSLStructField.d.ts.map +1 -1
  1820. package/src/shade/renderer/shader/type/WGSLStructField.js +5 -1
  1821. package/src/shade/renderer/shader/type/WebGPUArray.d.ts +0 -2
  1822. package/src/shade/renderer/shader/type/WebGPUArray.d.ts.map +1 -1
  1823. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts +3 -5
  1824. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts.map +1 -1
  1825. package/src/shade/renderer/shader/type/WebGPUStruct.js +1 -1
  1826. package/src/shade/renderer/shader/type/WebGPUType.d.ts +5 -1
  1827. package/src/shade/renderer/shader/type/WebGPUType.d.ts.map +1 -1
  1828. package/src/shade/renderer/shader/type/WebGPUType.js +4 -0
  1829. package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.d.ts +7 -3
  1830. package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.d.ts.map +1 -1
  1831. package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.js +3 -2
  1832. package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.d.ts +7 -0
  1833. package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.d.ts.map +1 -1
  1834. package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.js +10 -0
  1835. package/src/shade/renderer/shadow/map/Shadowmap.d.ts +12 -0
  1836. package/src/shade/renderer/shadow/map/Shadowmap.d.ts.map +1 -1
  1837. package/src/shade/renderer/shadow/map/Shadowmap.js +8 -0
  1838. package/src/shade/renderer/shadow/map/SpotLightShadowmap.d.ts +2 -2
  1839. package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.d.ts +7 -3
  1840. package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.d.ts.map +1 -1
  1841. package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.js +3 -2
  1842. package/src/shade/renderer/shadow/map/csm_debug_draw_preview.d.ts +11 -5
  1843. package/src/shade/renderer/shadow/map/csm_debug_draw_preview.d.ts.map +1 -1
  1844. package/src/shade/renderer/shadow/map/csm_debug_draw_preview.js +5 -4
  1845. package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.d.ts +13 -6
  1846. package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.d.ts.map +1 -1
  1847. package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.js +6 -5
  1848. package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.d.ts +9 -4
  1849. package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.d.ts.map +1 -1
  1850. package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.js +4 -3
  1851. package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.d.ts +11 -5
  1852. package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.d.ts.map +1 -1
  1853. package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.js +5 -4
  1854. package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.d.ts +1 -0
  1855. package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.d.ts.map +1 -1
  1856. package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.js +4 -0
  1857. package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.d.ts +13 -6
  1858. package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.d.ts.map +1 -1
  1859. package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.js +6 -5
  1860. package/src/shade/renderer/texture/GPUTextureAllocator.d.ts +4 -0
  1861. package/src/shade/renderer/texture/GPUTextureAllocator.d.ts.map +1 -1
  1862. package/src/shade/renderer/texture/GPUTextureAllocator.js +4 -0
  1863. package/src/shade/renderer/texture/GPUTextureContext.d.ts +2 -1
  1864. package/src/shade/renderer/texture/GPUTextureContext.d.ts.map +1 -1
  1865. package/src/shade/renderer/texture/GPUTextureContext.js +4 -0
  1866. package/src/shade/renderer/texture/RenderTarget.d.ts +7 -3
  1867. package/src/shade/renderer/texture/RenderTarget.d.ts.map +1 -1
  1868. package/src/shade/renderer/texture/RenderTarget.js +3 -2
  1869. package/src/shade/renderer/texture/ShadeTexture.d.ts +2 -1
  1870. package/src/shade/renderer/texture/ShadeTexture.d.ts.map +1 -1
  1871. package/src/shade/renderer/texture/ShadeTexture.js +4 -0
  1872. package/src/shade/renderer/texture/TextureManager.d.ts +1 -0
  1873. package/src/shade/renderer/texture/TextureManager.d.ts.map +1 -1
  1874. package/src/shade/renderer/texture/TextureManager.js +4 -0
  1875. package/src/shade/renderer/texture/debug_draw_texture.d.ts +9 -4
  1876. package/src/shade/renderer/texture/debug_draw_texture.d.ts.map +1 -1
  1877. package/src/shade/renderer/texture/debug_draw_texture.js +4 -3
  1878. package/src/shade/renderer/texture/download_texture_data.d.ts +17 -6
  1879. package/src/shade/renderer/texture/download_texture_data.d.ts.map +1 -1
  1880. package/src/shade/renderer/texture/download_texture_data.js +10 -5
  1881. package/src/shade/renderer/texture/draw_texture_as_rgba.d.ts +26 -12
  1882. package/src/shade/renderer/texture/draw_texture_as_rgba.d.ts.map +1 -1
  1883. package/src/shade/renderer/texture/draw_texture_as_rgba.js +12 -10
  1884. package/src/shade/renderer/texture/format/sampler_descriptor_unpack.d.ts.map +1 -1
  1885. package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.d.ts.map +1 -1
  1886. package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.js +5 -4
  1887. package/src/shade/renderer/texture/source/ShadeImage.d.ts +10 -8
  1888. package/src/shade/renderer/texture/source/ShadeImage.d.ts.map +1 -1
  1889. package/src/shade/renderer/texture/source/ShadeImage.js +5 -0
  1890. package/src/shade/renderer/texture/source/ShadeImageSerializationAdapter.d.ts +12 -0
  1891. package/src/shade/renderer/texture/source/ShadeImageSerializationAdapter.d.ts.map +1 -1
  1892. package/src/shade/renderer/texture/util/make_checkers_texture.d.ts +12 -5
  1893. package/src/shade/renderer/texture/util/make_checkers_texture.d.ts.map +1 -1
  1894. package/src/shade/renderer/texture/util/make_checkers_texture.js +5 -4
  1895. package/src/shade/renderer/texture/virtual/VTPageTable.d.ts.map +1 -1
  1896. package/src/shade/renderer/texture/virtual/VirtualTextureManager.d.ts +7 -2
  1897. package/src/shade/renderer/texture/virtual/VirtualTextureManager.d.ts.map +1 -1
  1898. package/src/shade/renderer/texture/virtual/VirtualTextureManager.js +8 -0
  1899. package/src/shade/renderer/util/Uint32BufferSamplingStats.d.ts +2 -0
  1900. package/src/shade/renderer/util/Uint32BufferSamplingStats.d.ts.map +1 -1
  1901. package/src/shade/renderer/util/Uint32BufferSamplingStats.js +5 -0
  1902. package/src/shade/renderer/view/GPUViewContext.d.ts +6 -3
  1903. package/src/shade/renderer/view/GPUViewContext.d.ts.map +1 -1
  1904. package/src/shade/renderer/view/GPUViewContext.js +11 -5
  1905. package/src/shade/renderer/view/GPUViewSkyContext.d.ts +1 -1
  1906. package/src/shade/renderer/view/GPUViewSkyContext.d.ts.map +1 -1
  1907. package/src/shade/renderer/view/View.d.ts +6 -0
  1908. package/src/shade/renderer/view/View.d.ts.map +1 -1
  1909. package/src/shade/renderer/view/View.js +5 -0
  1910. package/src/shade/renderer/view/ViewManager.d.ts +11 -1
  1911. package/src/shade/renderer/view/ViewManager.d.ts.map +1 -1
  1912. package/src/shade/renderer/view/ViewManager.js +7 -0
  1913. package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.d.ts +6 -0
  1914. package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.d.ts.map +1 -1
  1915. package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.js +5 -0
  1916. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts +17 -8
  1917. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts.map +1 -1
  1918. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.js +11 -5
  1919. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts +6 -6
  1920. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts.map +1 -1
  1921. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.js +1 -1
  1922. package/src/shade/renderer/volumetrics/SceneVolumetrics.d.ts +4 -0
  1923. package/src/shade/renderer/volumetrics/SceneVolumetrics.d.ts.map +1 -1
  1924. package/src/shade/renderer/volumetrics/SceneVolumetrics.js +4 -0
  1925. package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.d.ts +23 -11
  1926. package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.d.ts.map +1 -1
  1927. package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.js +11 -10
  1928. package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts +37 -18
  1929. package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts.map +1 -1
  1930. package/src/shade/renderer/volumetrics/graph_build_volumetrics.js +30 -26
  1931. package/src/shade/wgsl/emulator/CPUBitmapData.d.ts.map +1 -1
  1932. package/src/view/View.d.ts +9 -4
  1933. package/src/view/View.d.ts.map +1 -1
  1934. package/src/view/View.js +7 -2
  1935. package/src/view/asset/AssetLoaderStatusView.d.ts +7 -3
  1936. package/src/view/asset/AssetLoaderStatusView.d.ts.map +1 -1
  1937. package/src/view/asset/AssetLoaderStatusView.js +3 -2
  1938. package/src/view/common/ListView.d.ts +21 -15
  1939. package/src/view/common/ListView.d.ts.map +1 -1
  1940. package/src/view/common/ListView.js +8 -7
  1941. package/src/view/common/LocalizedLabelView.d.ts +15 -7
  1942. package/src/view/common/LocalizedLabelView.d.ts.map +1 -1
  1943. package/src/view/common/LocalizedLabelView.js +7 -6
  1944. package/src/view/common/TabbedView.d.ts +14 -6
  1945. package/src/view/common/TabbedView.d.ts.map +1 -1
  1946. package/src/view/common/TabbedView.js +6 -4
  1947. package/src/view/controller/controls/BooleanVector3Control.d.ts +1 -1
  1948. package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
  1949. package/src/view/controller/controls/GuiControl.d.ts +1 -1
  1950. package/src/view/controller/controls/GuiControl.d.ts.map +1 -1
  1951. package/src/view/controller/controls/NativeListController.d.ts +15 -7
  1952. package/src/view/controller/controls/NativeListController.d.ts.map +1 -1
  1953. package/src/view/controller/controls/NativeListController.js +7 -6
  1954. package/src/view/controller/controls/Vector1Control.d.ts +1 -1
  1955. package/src/view/controller/controls/Vector1Control.d.ts.map +1 -1
  1956. package/src/view/currency/CompositeCurrencyLabelView.d.ts +10 -5
  1957. package/src/view/currency/CompositeCurrencyLabelView.d.ts.map +1 -1
  1958. package/src/view/currency/CompositeCurrencyLabelView.js +4 -3
  1959. package/src/view/currency/CurrencyDenominationLabelView.d.ts +7 -3
  1960. package/src/view/currency/CurrencyDenominationLabelView.d.ts.map +1 -1
  1961. package/src/view/currency/CurrencyDenominationLabelView.js +3 -2
  1962. package/src/view/elements/CheckboxView.d.ts +7 -3
  1963. package/src/view/elements/CheckboxView.d.ts.map +1 -1
  1964. package/src/view/elements/CheckboxView.js +3 -2
  1965. package/src/view/elements/DropDownSelectionView.d.ts +9 -4
  1966. package/src/view/elements/DropDownSelectionView.d.ts.map +1 -1
  1967. package/src/view/elements/DropDownSelectionView.js +3 -2
  1968. package/src/view/elements/EmptyView.d.ts +29 -13
  1969. package/src/view/elements/EmptyView.d.ts.map +1 -1
  1970. package/src/view/elements/EmptyView.js +13 -11
  1971. package/src/view/elements/SimpleWindow.d.ts +1 -1
  1972. package/src/view/elements/SimpleWindow.d.ts.map +1 -1
  1973. package/src/view/elements/button/ButtonView.d.ts +16 -8
  1974. package/src/view/elements/button/ButtonView.d.ts.map +1 -1
  1975. package/src/view/elements/button/ButtonView.js +7 -6
  1976. package/src/view/elements/image/ImageView.d.ts +7 -3
  1977. package/src/view/elements/image/ImageView.d.ts.map +1 -1
  1978. package/src/view/elements/image/ImageView.js +3 -2
  1979. package/src/view/elements/image/SvgImageView.d.ts +5 -2
  1980. package/src/view/elements/image/SvgImageView.d.ts.map +1 -1
  1981. package/src/view/elements/image/SvgImageView.js +2 -1
  1982. package/src/view/elements/label/LabeledValueView.d.ts +14 -7
  1983. package/src/view/elements/label/LabeledValueView.d.ts.map +1 -1
  1984. package/src/view/elements/label/LabeledValueView.js +6 -5
  1985. package/src/view/elements/progress/SmoothProgressBar.d.ts +16 -9
  1986. package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -1
  1987. package/src/view/elements/progress/SmoothProgressBar.js +6 -5
  1988. package/src/view/elements/progress/segmented/SegmentedResourceBarView.d.ts +9 -4
  1989. package/src/view/elements/progress/segmented/SegmentedResourceBarView.d.ts.map +1 -1
  1990. package/src/view/elements/progress/segmented/SegmentedResourceBarView.js +4 -3
  1991. package/src/view/elements/radial/RadialMenu.d.ts +19 -9
  1992. package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
  1993. package/src/view/elements/radial/RadialMenu.js +9 -8
  1994. package/src/view/elements/radial/RadialMenuElement.d.ts +3 -3
  1995. package/src/view/elements/radial/RadialMenuElement.d.ts.map +1 -1
  1996. package/src/view/elements/radial/RadialMenuElementDefinition.d.ts +63 -31
  1997. package/src/view/elements/radial/RadialMenuElementDefinition.d.ts.map +1 -1
  1998. package/src/view/elements/radial/RadialMenuElementDefinition.js +30 -28
  1999. package/src/view/elements/radial/RadialProgressView.d.ts +1 -1
  2000. package/src/view/elements/radial/RadialProgressView.d.ts.map +1 -1
  2001. package/src/view/elements/radial/RadialText.d.ts +18 -10
  2002. package/src/view/elements/radial/RadialText.d.ts.map +1 -1
  2003. package/src/view/elements/radial/RadialText.js +7 -6
  2004. package/src/view/elements/tiles2d/Tile.d.ts +12 -6
  2005. package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
  2006. package/src/view/elements/tiles2d/Tile.js +4 -3
  2007. package/src/view/elements/tiles2d/TileGrid.d.ts +23 -10
  2008. package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
  2009. package/src/view/elements/tiles2d/TileGrid.js +10 -9
  2010. package/src/view/elements/video/VideoView.d.ts +7 -3
  2011. package/src/view/elements/video/VideoView.d.ts.map +1 -1
  2012. package/src/view/elements/video/VideoView.js +3 -2
  2013. package/src/view/elements/windrose/WindRoseDiagram.d.ts.map +1 -1
  2014. package/src/view/game/achievements/AchievementNotificationView.d.ts +7 -3
  2015. package/src/view/game/achievements/AchievementNotificationView.d.ts.map +1 -1
  2016. package/src/view/game/achievements/AchievementNotificationView.js +3 -2
  2017. package/src/view/graphics/GraphicsContextFailureView.d.ts +11 -5
  2018. package/src/view/graphics/GraphicsContextFailureView.d.ts.map +1 -1
  2019. package/src/view/graphics/GraphicsContextFailureView.js +5 -4
  2020. package/src/view/interaction/InteractionCommand.d.ts +11 -5
  2021. package/src/view/interaction/InteractionCommand.d.ts.map +1 -1
  2022. package/src/view/interaction/InteractionCommand.js +5 -4
  2023. package/src/view/interaction/InterfaceCommand.d.ts +32 -15
  2024. package/src/view/interaction/InterfaceCommand.d.ts.map +1 -1
  2025. package/src/view/interaction/InterfaceCommand.js +15 -13
  2026. package/src/view/interaction/createInterfaceCommandButton.d.ts +9 -4
  2027. package/src/view/interaction/createInterfaceCommandButton.d.ts.map +1 -1
  2028. package/src/view/interaction/createInterfaceCommandButton.js +4 -3
  2029. package/src/view/layout/DockLayoutView.d.ts.map +1 -1
  2030. package/src/view/layout/DockPanel.d.ts +11 -5
  2031. package/src/view/layout/DockPanel.d.ts.map +1 -1
  2032. package/src/view/layout/DockPanel.js +5 -4
  2033. package/src/view/layout/DrawerView.d.ts +9 -5
  2034. package/src/view/layout/DrawerView.d.ts.map +1 -1
  2035. package/src/view/layout/DrawerView.js +3 -2
  2036. package/src/view/layout/FloatingPanelView.d.ts +7 -3
  2037. package/src/view/layout/FloatingPanelView.d.ts.map +1 -1
  2038. package/src/view/layout/FloatingPanelView.js +3 -2
  2039. package/src/view/layout/SplitView.d.ts +20 -14
  2040. package/src/view/layout/SplitView.d.ts.map +1 -1
  2041. package/src/view/layout/SplitView.js +5 -4
  2042. package/src/view/math/FunctionGraphView.d.ts +8 -4
  2043. package/src/view/math/FunctionGraphView.d.ts.map +1 -1
  2044. package/src/view/math/FunctionGraphView.js +3 -2
  2045. package/src/view/minimap/MinimapCanvasView.d.ts +10 -4
  2046. package/src/view/minimap/MinimapCanvasView.d.ts.map +1 -1
  2047. package/src/view/minimap/MinimapCanvasView.js +4 -3
  2048. package/src/view/minimap/MinimapMarkerCollection.d.ts +3 -2
  2049. package/src/view/minimap/MinimapMarkerCollection.d.ts.map +1 -1
  2050. package/src/view/minimap/MinimapMarkerCollection.js +28 -5
  2051. package/src/view/minimap/dom/MinimapCameraView.d.ts +2 -1
  2052. package/src/view/minimap/dom/MinimapCameraView.d.ts.map +1 -1
  2053. package/src/view/minimap/dom/MinimapMarkerView.d.ts +31 -9
  2054. package/src/view/minimap/dom/MinimapMarkerView.d.ts.map +1 -1
  2055. package/src/view/minimap/dom/MinimapMarkerView.js +65 -34
  2056. package/src/view/minimap/dom/MinimapTerrainView.d.ts +9 -4
  2057. package/src/view/minimap/dom/MinimapTerrainView.d.ts.map +1 -1
  2058. package/src/view/minimap/dom/MinimapTerrainView.js +3 -2
  2059. package/src/view/minimap/gl/MarkerGL.d.ts +15 -3
  2060. package/src/view/minimap/gl/MarkerGL.d.ts.map +1 -1
  2061. package/src/view/minimap/gl/MarkerGL.js +31 -4
  2062. package/src/view/task/TaskProgressView.d.ts +7 -3
  2063. package/src/view/task/TaskProgressView.d.ts.map +1 -1
  2064. package/src/view/task/TaskProgressView.js +3 -2
  2065. package/src/view/tooltip/DomTooltipManager.d.ts +6 -0
  2066. package/src/view/tooltip/DomTooltipManager.d.ts.map +1 -1
  2067. package/src/view/tooltip/DomTooltipManager.js +5 -0
  2068. package/src/view/tooltip/DomTooltipObserver.d.ts +4 -0
  2069. package/src/view/tooltip/DomTooltipObserver.d.ts.map +1 -1
  2070. package/src/view/tooltip/DomTooltipObserver.js +4 -0
  2071. package/src/view/tooltip/TooltipManager.d.ts +6 -0
  2072. package/src/view/tooltip/TooltipManager.d.ts.map +1 -1
  2073. package/src/view/tooltip/TooltipManager.js +5 -0
  2074. package/src/view/tooltip/TooltipView.d.ts +7 -3
  2075. package/src/view/tooltip/TooltipView.d.ts.map +1 -1
  2076. package/src/view/tooltip/TooltipView.js +5 -1
  2077. package/src/view/tooltip/VisualTip.d.ts +6 -0
  2078. package/src/view/tooltip/VisualTip.d.ts.map +1 -1
  2079. package/src/view/tooltip/VisualTip.js +5 -0
  2080. package/src/view/tooltip/gml/GMLEngine.d.ts +14 -2
  2081. package/src/view/tooltip/gml/GMLEngine.d.ts.map +1 -1
  2082. package/src/view/tooltip/gml/GMLEngine.js +8 -0
  2083. package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts +10 -0
  2084. package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts.map +1 -1
  2085. package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.js +7 -0
  2086. package/src/view/util/DomSizeObserver.d.ts +9 -2
  2087. package/src/view/util/DomSizeObserver.d.ts.map +1 -1
  2088. package/src/view/util/DomSizeObserver.js +6 -1
  2089. package/src/engine/physics/BULLET_REVIEW.md +0 -945
  2090. package/src/engine/physics/CANNON_REVIEW.md +0 -1300
  2091. package/src/engine/physics/CONSTRAINT_SOLVER_BENCH_LOG.md +0 -208
  2092. package/src/engine/physics/CONSTRAINT_SOLVER_IMPROVEMENTS_PLAN.md +0 -364
  2093. package/src/engine/physics/INTEPOLATION_SYSTEM_PLAN.md +0 -287
  2094. package/src/engine/physics/JOLT_REVIEW.md +0 -913
  2095. package/src/engine/physics/PLAN.md +0 -1120
  2096. package/src/engine/physics/RAPIER_REVIEW.md +0 -934
  2097. package/src/engine/physics/REVIEW_001_ACTION_PLAN.md +0 -642
  2098. package/src/engine/physics/REVIEW_002.md +0 -151
  2099. package/src/engine/physics/REVIEW_003.md +0 -166
  2100. package/src/shade/descriptor/util/optional_clone.d.ts +0 -7
  2101. package/src/shade/descriptor/util/optional_clone.d.ts.map +0 -1
  2102. package/src/shade/descriptor/util/optional_equality.d.ts +0 -10
  2103. package/src/shade/descriptor/util/optional_equality.d.ts.map +0 -1
  2104. package/src/shade/descriptor/util/optional_hash.d.ts +0 -9
  2105. package/src/shade/descriptor/util/optional_hash.d.ts.map +0 -1
  2106. package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.d.ts +0 -395
  2107. package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.d.ts.map +0 -1
  2108. package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.js +0 -2063
  2109. package/src/shade/renderer/particles/ParticleRenderMode.d.ts +0 -19
  2110. package/src/shade/renderer/particles/ParticleRenderMode.d.ts.map +0 -1
  2111. package/src/shade/renderer/particles/ParticleRenderMode.js +0 -33
  2112. package/src/shade/renderer/particles/graph_particles_billboard.d.ts +0 -37
  2113. package/src/shade/renderer/particles/graph_particles_billboard.d.ts.map +0 -1
  2114. package/src/shade/renderer/particles/graph_particles_billboard.js +0 -93
  2115. package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts +0 -51
  2116. package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts.map +0 -1
  2117. package/src/shade/renderer/particles/sort/graph_particle_sort.js +0 -120
  2118. package/src/shade/renderer/particles/sort/particle_counting_sort.d.ts +0 -26
  2119. package/src/shade/renderer/particles/sort/particle_counting_sort.d.ts.map +0 -1
  2120. package/src/shade/renderer/particles/sort/particle_counting_sort.js +0 -51
  2121. package/src/shade/renderer/particles/sort/shader_particle_sort.d.ts +0 -14
  2122. package/src/shade/renderer/particles/sort/shader_particle_sort.d.ts.map +0 -1
  2123. package/src/shade/renderer/particles/sort/shader_particle_sort.js +0 -223
@@ -10,7 +10,8 @@ the decision to spawn is the GPU's.
10
10
 
11
11
  - Single simulation execution shader (data-driven VM, not one-pipeline-per-effect).
12
12
  - Projection modes: camera-facing billboard (+ velocity-stretched, axis-locked, world-oriented).
13
- - Depth sorting for correct transparency, built on the `csdldf` prefix scan.
13
+ - Order-independent transparency: the particles are a side channel of the AVBOIT pipeline, so they
14
+ composite against the transparent meshes with no depth ordering of any kind.
14
15
  - Node-based composition → shader VM (compile graph → bytecode).
15
16
  - Frustum culling of spawning (optional, flagged, sleep-when-culled + bounded catch-up).
16
17
  - Flipbooks (atlas sub-rect + frame grid).
@@ -20,9 +21,9 @@ the decision to spawn is the GPU's.
20
21
  - Scene-node / bone attachment: an emitter **is** a `Node3D`; its world matrix is its row of the
21
22
  scene's `transforms` table, composed by the GPU hierarchy pass.
22
23
  - Distinct per-particle lifecycle: **no** built-in age/position — the schema + program define state.
23
- - Billboard renderer reuses engine shader chunks incl. lighting (forward-shaded, optional per emitter).
24
+ - Billboard drawing reuses engine shader chunks incl. lighting (forward-shaded, optional per emitter).
24
25
  - Blend modes (alpha + additive) via a **single** premultiplied blend setup.
25
- - Authored curves and RGB/RGBA gradients compiled into arithmetic for simulation.
26
+ - Authored curves and RGB/RGBA gradients compiled into arithmetic for simulation.
26
27
  - Spawning decided on the GPU, per emitter, with the CPU able to ask for bursts through the same path.
27
28
  - No per-frame allocation on the CPU beyond the frame graph's own records.
28
29
 
@@ -45,9 +46,12 @@ runtime GPU: particle pool (array<u32>, uniform stride) + alive/dead lists + cou
45
46
  ├─ simulate (VM UPDATE program) ── update → (kill|orphan→dead | keep→alive_new)
46
47
  ├─ bucket (histogram → csdldf scan → scatter) ── alive → program-coherent sim list
47
48
  ├─ bounds (per particle → per emitter box, published to the state row)
48
- ├─ build indirect (dispatch + draw args)
49
- ├─ sort (histogram → csdldf scan → scatter) [render order]
50
- └─ render (instanced billboard quads, forward + optional lighting + soft depth)
49
+ └─ build indirect (dispatch + draw args)
50
+
51
+ the AVBOIT transparency pipeline then draws the alive list through the side channel:
52
+ ├─ occupancy (per emitter box → depth slices)
53
+ ├─ splat (extinction into the voxel volume)
54
+ └─ draw (instanced billboard quads → the four accumulators)
51
55
  ```
52
56
 
53
57
  ### Particle storage — single shared pool, uniform stride
@@ -69,11 +73,11 @@ bucketing pass built from `alive_current` → run UPDATE → kill pushes to `dea
69
73
 
70
74
  **The loop is strictly GPU-driven.** The build-indirect pass snapshots the padded length of the
71
75
  coherence list into `counters[ALIVE_IN]` and writes the indirect dispatch args next frame's simulate
72
- consumes (`dispatchWorkgroupsIndirect`) plus the indirect draw args this frame's render consumes
76
+ consumes (`dispatchWorkgroupsIndirect`) plus the indirect draw args this frame's draws consume
73
77
  (`drawIndirect`, sized by the *unpadded* alive count); simulate bound-checks against the ALIVE_IN
74
- snapshot. The sort's per-particle passes take the dispatch the bucket reset writes from the alive
75
- count. Sizing any of this from a CPU readback is a correctness bug, not a shortcut: the readback is
76
- inevitably stale, so a growing population orphans the tail of the alive list (slots leak into limbo)
78
+ snapshot. The bounds pass takes the dispatch the bucket reset writes from the alive count. Sizing
79
+ any of this from a CPU readback is a correctness bug, not a shortcut: the readback is inevitably
80
+ stale, so a growing population orphans the tail of the alive list (slots leak into limbo)
77
81
  and a shrinking one re-simulates stale entries — double-freeing slots so two live particles later
78
82
  share one record. The emit pass's dead-list pop guards against wrapped counters
79
83
  (`old == 0 || old > capacity`), so racing an exhausted pool drops spawns cleanly instead of handing
@@ -159,7 +163,7 @@ recursion, no data-dependent jumps — conditionals are predicated via CMP/SELEC
159
163
  Word 0 packs the opcode (bits 0..7), the lane count (8..10), each source's `VM_KIND` (two bits per
160
164
  slot at 16..21) and the destination slot (24..31). A source word means what its kind says: `REG`
161
165
  is a base slot plus a swizzle, `IMM` is an `f32` bit pattern read in every lane, and `NONE` is a
162
- raw field the opcode reads for itself (attribute word-offset+comp / builtin id /
166
+ raw field the opcode reads for itself (attribute word-offset+comp / builtin id /
163
167
  pool index).
164
168
  - Constant pool: `array<vec4f>` per program, referenced by `LOAD_CONST`.
165
169
  - Two entry sections per program: **INIT** and **UPDATE** (offsets in the emitter record). INIT
@@ -210,13 +214,13 @@ A core `NodeGraph` holds particle nodes (ports + parameters) for INIT and UPDATE
210
214
  2. lowers each node to VM ops (nodes emit via a small builder that allocates result registers),
211
215
  3. linear-scan register allocation with liveness,
212
216
  4. interns constants into the pool,
213
- 5. resolves attribute references,
214
- 6. emits `Program { init, update, constants, reg_count, attributes }`.
217
+ 5. resolves attribute references,
218
+ 6. emits `Program { init, update, constants, reg_count, attributes }`.
215
219
 
216
220
  Standard node library: constants, attribute get/set, arithmetic/vector/math, random (uniform/sphere/
217
- disk/cone), authored curves and RGB/RGBA gradients, noise (curl), integrate, gravity, emit-shapes,
218
- compare/select, kill-if. Curves and gradients expand into graph nodes that emit ordinary VM
219
- arithmetic; no animation-table binding or sampling opcode is needed.
221
+ disk/cone), authored curves and RGB/RGBA gradients, noise (curl), integrate, gravity, emit-shapes,
222
+ compare/select, kill-if. Curves and gradients expand into graph nodes that emit ordinary VM
223
+ arithmetic; no animation-table binding or sampling opcode is needed.
220
224
 
221
225
  ### Emitters are scene nodes
222
226
 
@@ -251,7 +255,7 @@ was staged from. An author who edits an emitter says so the way they say it for
251
255
 
252
256
  One `emitters` table (CPU-managed, low churn). Row = `PARTICLE_EMITTER_STRUCT`: program
253
257
  offsets+lengths, constant-pool offset, seed, spawn rate, **node** (transforms row), **generation**,
254
- flags (lighting/soft/sort/cull/blend/projection), render binding (attr offsets for
258
+ flags (lighting/soft/cull/blend/projection), render binding (attr offsets for
255
259
  position/size/color/rotation/frame/velocity), atlas region + flipbook grid, and the program id
256
260
  the coherence pass buckets on. The atlas region is resolved, not authored: the emitter names an
257
261
  image and the system packs it, the way `ShaderManager` packs the old engine's sprites, so a repack
@@ -311,11 +315,15 @@ or simulation, the previous compact alive list is bucketed again and its padded
311
315
  are rebuilt. This prevents a previously shared wave from executing one emitter's newly edited program
312
316
  over another emitter's particles. Ordinary frames keep the existing end-of-frame bucketing only;
313
317
  content-identical replacements need no repair. Both bucket runs on an edit frame reuse the latest
314
- graph handles for their scratch buffers, so each persistent buffer is imported once.
318
+ graph handles for their scratch, so it is created once and both runs share one dependency chain.
315
319
 
316
- The coherence list is persistent GPU state, including its padding. Growing the bucket capacity copies
317
- it to the replacement buffer before destroying the old one. The old count and indirect dispatch
318
- remain valid across growth; only the per-frame histogram/cursor/key scratch may be discarded.
320
+ The coherence list is persistent GPU state, including its padding — the one thing the bucketing
321
+ leaves behind. Growing the bucket capacity copies it to the replacement buffer before destroying the
322
+ old one; the old count and indirect dispatch remain valid across growth. The histogram, cursors, keys
323
+ and dispatch args beside it live and die inside one frame graph, so the passes that write them
324
+ declare them (a `BufferResourceDescriptor` in place of a handle) and the graph allocates and releases
325
+ them around their users. None asks for a clear: the reset pass already covers every word it will
326
+ read, and `keys` is written by the same indirect dispatch that reads it.
319
327
 
320
328
  Every row of a frame is staged through one module-static record (`EmitterRegistry`), so a flush
321
329
  allocates nothing however many rows it restages.
@@ -480,42 +488,47 @@ programs again. Padding entries carry `PARTICLE_SIM_PAD_SLOT` and the simulate s
480
488
  It is an **indirection** list. Particle records never move: slots are referenced by the dead list and
481
489
  across frames, so relocating a record would leave both pointing at the wrong particle.
482
490
 
483
- The three-phase shape is the depth sort's, with the padding added: histogram (atomic per bucket) →
491
+ It is a counting sort in three phases, with the padding added: histogram (atomic per bucket) →
484
492
  round each bin up to a whole workgroup → `graph_prefix_scan_csdldf` (reused as-is — the one scan here
485
493
  whose only cross-workgroup wait is CSDLDF's bounded spin-then-fallback) → scatter → fill the tails
486
494
  with the sentinel. Nothing reads back to the CPU; the only host-supplied number is the bucket count,
487
495
  which is static topology.
488
496
 
489
- **Render order** (`sort/`) — per-frame, particles sorted back-to-front by view depth so
490
- premultiplied transparency composites correctly. Counting sort on a quantised view depth
491
- (`PARTICLE_SORT_BUCKET_COUNT` bins over `GPUParticleSystem#sort_depth_range`): histogram from the
492
- camera uniform's view matrix, `graph_prefix_scan_csdldf` the bin counts to offsets, scatter (index
493
- payload). The sorted index list feeds the instanced draw. Both per-particle passes are bounded by
494
- the alive counter and dispatched by the args the bucket reset wrote from it.
497
+ **There is no render order.** The draws walk the alive list exactly as compaction left it, because
498
+ everything downstream of them is a sum: the AVBOIT volume accumulates extinction and the four
499
+ accumulators accumulate colour, coverage and emission, and no arrangement of the instances changes
500
+ any of those. So the system spends nothing on ordering: no key pass, no scan, no scatter, and no
501
+ per-particle key and index lists to hold them in.
495
502
 
496
- Reordering the render list for program coherence would break transparency; depth-sorting the
497
- simulation list would destroy the coherence. They share no buffer and no counter slot —
498
- `PARTICLE_COUNTER.SORTED` belongs to the render order, `SIM_PADDED` to the simulation order.
503
+ The two lists are still distinct and must stay so: the simulation list is permuted and padded with
504
+ sentinels, so drawing it would draw them, and depth-ordering it would destroy the coherence. They
505
+ share no buffer and no counter slot — `SIM_PADDED` is the simulation list's length, `ALIVE` the
506
+ draw's.
499
507
 
500
508
  ### Rendering
501
509
 
502
- One render pipeline, one blend state = premultiplied: `color: (one, one-minus-src-alpha)`,
503
- `alpha: (one, one-minus-src-alpha)`. Additive vs. alpha is chosen by the shader emitting premultiplied
504
- RGB with alpha 0 (additive) vs. alpha a (normal) — GPU-driven, no pipeline switch. A 6-vertex quad is
505
- expanded per instance (billboard/velocity-stretch/axis-lock/world modes). Fragment: sample atlas
506
- (region + flipbook frame), optional forward lighting via `chunk_shade_standard_material_direct` +
507
- IBL, optional soft-depth fade. Depth-tested, no depth write. Draws into the HDR color target.
508
- Soft-depth fading scales both RGB and alpha for premultiplied inputs; straight-alpha and additive
509
- inputs have alpha scaled before premultiplication. Both draw paths share `particle_fade_color`.
510
-
511
- ### Drawing under the renderer: an AVBOIT side channel
512
-
513
- Under `Renderer` the particles are not drawn by the billboard pass above. They go through the AVBOIT
514
- transparency pipeline (`rasterize/native/avboit/`) as a **side channel** — the contract in
515
- `AVBOITSideChannel.js` — so they composite order-independently with the transparent meshes and
516
- against the opaque scene, through the same volume and the same accumulators. Quads are not packed
517
- into meshlets; the orchestrator asks the channel for its contribution at the three points where the
518
- meshlet buckets have just made theirs:
510
+ A 6-vertex quad is expanded per instance (billboard/velocity-stretch/axis-lock/world modes) by
511
+ `chunk_particle_billboard_vertex`. Fragment: sample atlas (region + flipbook frame), optional forward
512
+ lighting via `chunk_shade_standard_material_direct` + IBL, optional soft-depth fade. Soft-depth
513
+ fading scales both RGB and alpha for premultiplied inputs; straight-alpha and additive inputs have
514
+ alpha scaled before premultiplication.
515
+
516
+ Additive vs. alpha is never a pipeline switch: the shader emits premultiplied RGB with alpha 0
517
+ (additive) or alpha a (normal), so one setup covers both and the choice stays per particle and
518
+ GPU-driven. Under AVBOIT that choice picks which accumulators the fragment writes; in the blended
519
+ pipeline `shaders/shader_particle_render.js` builds it is one blend state,
520
+ `(one, one-minus-src-alpha)` on both channels. That pipeline is not this system's — it is what
521
+ `GPUParticularRenderer` draws `particular`'s CPU-simulated particles with, over a draw list it sorts
522
+ back to front on the CPU — but it shares this vertex stage, this atlas and flipbook math, and
523
+ `particle_fade_color`, so a sprite looks the same whichever draws it.
524
+
525
+ ### Drawing: an AVBOIT side channel
526
+
527
+ The particles are drawn by the AVBOIT transparency pipeline (`rasterize/native/avboit/`) as a
528
+ **side channel** — the contract in `AVBOITSideChannel.js` — so they composite order-independently
529
+ with the transparent meshes and against the opaque scene, through the same volume and the same
530
+ accumulators. Quads are not packed into meshlets; the orchestrator asks the channel for its
531
+ contribution at the three points where the meshlet buckets have just made theirs:
519
532
 
520
533
  1. **occupancy** (`shader_particle_avboit_occupancy`): one thread per emitter row, the emitter's
521
534
  measured box (the culling box, off the state row) as a view-depth interval, dilated and OR-ed
@@ -542,12 +555,11 @@ meshlet buckets have just made theirs:
542
555
  scene behind already has it. That accumulator is the one addition to AVBOIT's resolve for this.
543
556
  The whole decision is `chunk_particle_avboit_contribution`, and it is spec'd on the emulator.
544
557
 
545
- No sort: the volume makes order irrelevant, so this path reads the alive list and the draw args
546
- straight from `simulate`. The billboard vertex stage is one chunk
547
- (`chunk_particle_billboard_vertex`) shared by the standalone renderer and both AVBOIT passes.
548
- `GPUParticleSystem` implements the three methods; `Renderer.feature_particles_enabled` runs
549
- `simulate` before the transparency pass and hands the system to the orchestrator. MBOIT is legacy
550
- and gets no particle path.
558
+ All three read the alive list and the draw args straight from `simulate`; the vertex stage is one
559
+ chunk (`chunk_particle_billboard_vertex`), shared by the splat, the draw and the blended pipeline
560
+ `particular` uses. `GPUParticleSystem` implements the three methods; `Renderer.feature_particles_enabled`
561
+ runs `execute` before the transparency pass and hands the system to the orchestrator. MBOIT is legacy
562
+ and gets no particle path, so under it the particles simulate and are not drawn.
551
563
 
552
564
  ### The ECS: `ParticleEffect` + `Transform64`
553
565
 
@@ -627,13 +639,26 @@ through `GPUTextureContext`.
627
639
 
628
640
  ### Ownership: `GPUParticleSystem`
629
641
 
630
- Constructed once against a `GPUSceneContext`, in the mould of `ReSTIRDI`. It owns every persistent
631
- buffer — pool, alive lists, dead list, counters, both indirect-args buffers, the coherence and sort
632
- scratch, the emitter database (both tables), the packed program buffer, the spawn-command ring — and grows the ones that depend on the emitter set inside `execute`. The
633
- default atlas is a 1x1 white texel. `execute({graph, camera, scene_database, color, depth, dt})`
634
- sweeps the scene, pushes what changed (on a command context opened only when something needs
635
- one), and records the whole frame through `graph_particles`, returning the colour handle after
636
- the draw. An integrator does not encode a particle pass by hand.
642
+ Constructed once against a `GPUSceneContext`, in the mould of `ReSTIRDI`. It owns persistent buffers
643
+ and only those — a buffer is reserved here if and only if its contents cross the frame boundary:
644
+ pool, alive lists, dead list, counters, the coherence list, simulate's indirect dispatch args, the
645
+ emitter database (both tables), the packed program buffer, the spawn-command ring and the warm-up
646
+ queue — and grows the ones that depend on the emitter set inside `execute`. Everything else a frame
647
+ touches is the frame graph's, declared by the pass that first writes it: the bucketing scratch, the
648
+ draw args, the spawn counts and the wide register file. The default atlas is a 1x1 white texel.
649
+ `execute({graph, camera, scene_database, dt})` sweeps the scene, pushes what changed (on a command
650
+ context opened only when something needs one), and records the simulation through `graph_particles`,
651
+ returning the handles the side channels draw from. It touches no colour target — the drawing is the
652
+ transparency pipeline's — and an integrator does not encode a particle pass by hand.
653
+
654
+ The frame reads nothing back, but a HUD or an inspector wants to: `read_stats()` copies the counters
655
+ and the dispatch args out and returns them named — alive, free, the spawn budget, both list lengths
656
+ and the workgroups the next simulate will launch. That is the whole of the readback, and the only
657
+ reason the dispatch args carry `COPY_SRC` (the counters and the coherence list carry it to be copied
658
+ forward when they grow). Nothing it returns may size a pass: the numbers describe a frame already
659
+ submitted, and what sizing from a stale count costs is set out under the finalize pass above. The
660
+ draw args are not among them and cannot be — they are the graph's, released after the last draw that
661
+ reads them — and their instance count is the alive count regardless.
637
662
 
638
663
  ## File layout
639
664
 
@@ -675,7 +700,7 @@ src/shade/renderer/particles/
675
700
  shaders/shader_particle_emit.js per-newborn INIT, sized by the scan
676
701
  shaders/shader_particle_simulate.js per-particle UPDATE + compaction + orphan kill
677
702
  shaders/shader_particle_finalize.js reset counters (+ budget) / build indirect args
678
- shaders/shader_particle_render.js billboard pipeline
703
+ shaders/shader_particle_render.js blended billboard pipeline (GPUParticularRenderer's)
679
704
  shaders/chunk_particle_setup_context.js VM builtins from the emitter's node, + the RNG seed
680
705
  shaders/chunk_particle_emitter_age.js the tick pass's running age, off the emitter_state table
681
706
  shaders/chunk_particle_spawn_budget.js take from the frame's spawn budget; both ticks spend it
@@ -687,8 +712,7 @@ src/shade/renderer/particles/
687
712
  shaders/chunk_particle_billboard_vertex.js the billboard vertex stage, shared by every draw
688
713
  shaders/shader_particle_avboit_*.js occupancy / splat / draw through AVBOIT
689
714
  bounds/* the measured emitter box: accumulate, publish
690
- sort/* render-order depth sort
691
- graph_particles.js simulate (to the draw args) + the standalone sort and draw
715
+ graph_particles.js the simulation, to the draw args
692
716
  graph_particles_avboit.js the AVBOIT side channel: occupancy, splat, draw
693
717
  GPUParticleSystem.js the feature: owns the buffers, sweeps the scene, execute()
694
718
  *.spec.js co-located tests (JS + emulator + software device)
@@ -698,19 +722,19 @@ src/shade/renderer/particles/
698
722
 
699
723
  - Pure JS: layout packing, assembler, register allocator, node compiler, heap/emitter/registry
700
724
  bookkeeping (via `SoftwareGPUDevice`), the header encoding.
701
- - WGSL via emulator: VM opcode parity (JS vs WGSL), curve sampling, sort key/depth, atlas+flipbook
702
- UV math, billboard expansion, soft-depth fade, and every compute pass on small fixtures — the tick
725
+ - WGSL via emulator: VM opcode parity (JS vs WGSL), curve sampling, atlas+flipbook UV math,
726
+ billboard expansion, soft-depth fade, and every compute pass on small fixtures — the tick
703
727
  (rate integration, generations, pending, budget, culling, page-group walk), emit (expansion over
704
- the scan, node position, orphans), simulate, spawn commands, finalize, bucket, sort. Each such spec
728
+ the scan, node position, orphans), simulate, spawn commands, finalize, bucket. Each such spec
705
729
  carries its own copy of the scaffolding: a real scene with a `GPUSceneContext` and a real registry,
706
730
  laid out by `gpu_database_words` the way the GPU holds both databases, so the shaders read rows the
707
731
  real writers wrote.
708
732
  - Multi-frame capstone (`particle_lifecycle.spec`): reset → commands → tick → (JS scan) → emit →
709
733
  simulate across frames, with the GPU deciding to spawn, a CPU burst, the budget, and death.
710
734
  - Orchestration on `SoftwareGPUDevice`: `GPUParticleSystem.spec` (scene sweep, growth, uploads only
711
- when needed, the ring), `graph_particles.spec` (pass sequence, indirect sizing, the two orderings,
712
- every persistent buffer imported exactly once), and the playground's `particle_scene.spec` (the
713
- integration: geometry → hierarchy → particles → draw).
735
+ when needed, the ring, the `read_stats` decode), `graph_particles.spec` (pass sequence, indirect
736
+ sizing, the two lists, every persistent buffer imported exactly once), and the playground's
737
+ `particle_scene.spec` (the integration: geometry → hierarchy → particles → draw).
714
738
  - Cross-parity meta-tests: every ISA opcode implemented by both executors.
715
739
 
716
740
  Regression checks use the existing tools: seeded software-device buffer copies for list growth,
@@ -742,5 +766,5 @@ was seeded.
742
766
  Done: `Renderer.feature_particles_enabled` (off by default), `Renderer.particles(scene_ctx)` creating
743
767
  one system per scene context on first use, `simulate` recorded before the transparency pass and the
744
768
  system passed to the AVBOIT orchestrator as its side channel. Remaining:
745
- 1. For lit emitters, compile a render variant that swaps the disabled lighting hook for a
746
- shading-chunk-backed lighting hook (+ the `SHADING_LIGHT_RESOURCE_GROUP`).
769
+ 1. For lit emitters, compile a render variant that swaps the disabled lighting hook for a
770
+ shading-chunk-backed lighting hook (+ the `SHADING_LIGHT_RESOURCE_GROUP`).
@@ -1,3 +1,17 @@
1
+ /**
2
+ * What {@link GPUParticleSystem#read_stats} decodes: the counts the GPU keeps between frames, named.
3
+ *
4
+ * @typedef {object} ParticleSystemStats
5
+ * @property {number} alive live particles the frame ended with
6
+ * @property {number} dead length of the free list
7
+ * @property {number} spawn_budget free slots the frame never promised to a spawn — its headroom
8
+ * @property {number} alive_in entries the frame's simulate consumed — the padded, program-coherent
9
+ * list the frame before it built, so never fewer than that frame's `alive`
10
+ * @property {number} sim_padded length of the padded, program-coherent simulate list built this
11
+ * frame; the gap to `alive` is what keeping each wave on one VM program costs in lanes
12
+ * @property {number} sim_workgroups workgroups the NEXT simulate will dispatch — read out of the
13
+ * indirect args rather than derived, so it is what the GPU will actually launch
14
+ */
1
15
  /**
2
16
  * The GPU particle system: a feature of a scene, in the mould of `ReSTIRDI` — construct once
3
17
  * against a {@link GPUSceneContext}, and contribute the frame's passes through
@@ -5,15 +19,23 @@
5
19
  *
6
20
  * ## What it owns
7
21
  *
8
- * Every piece of persistent GPU state: the particle pool, the ping-pong alive lists, the dead
9
- * free-list, the counters, both indirect-args buffers, the simulation-order (coherence) scratch,
10
- * the emitter database (the emitter table and the GPU-owned state table, one buffer), the packed
11
- * program buffer, and the spawn-command ring. Buffers that depend on the emitter set — the
12
- * coherence scratch on the number of distinct programs, the program buffer on the heap, the
22
+ * Persistent GPU state, and only that: a buffer is reserved here if and only if its contents have
23
+ * to survive to the next frame. That is the particle pool, the ping-pong alive lists, the dead
24
+ * free-list, the counters, the simulation-order (coherence) list, simulate's indirect dispatch args
25
+ * (written at the end of one frame, read by the next), the emitter database (the emitter table and
26
+ * the GPU-owned state table, one buffer), the packed program buffer, and the two CPU-uploaded
27
+ * queues — the spawn-command ring and the warm-up queue. Buffers that depend on the emitter set —
28
+ * the coherence list on the number of distinct programs, the program buffer on the heap, the
13
29
  * database on its own pages, the counters on the emitter table's element capacity (they carry the
14
- * per-emitter bounds accumulator, see `bounds/`) — are grown inside
15
- * {@link execute}, the way ReSTIR's reservoirs follow the resolution. The render-order (sort)
16
- * scratch is not in that list because it is not unconditional: see below.
30
+ * per-emitter bounds accumulator, see `bounds/`) — are grown inside {@link execute}, the way
31
+ * ReSTIR's reservoirs follow the resolution.
32
+ *
33
+ * Everything else a frame touches is the frame graph's. The bucketing's bins, cursors and keys, the
34
+ * draw args, the spawn counts and the VM's wide register file are produced and consumed inside one
35
+ * graph, so the pass that first writes each one declares it and the graph allocates it just in time
36
+ * and releases it after its last reader — into the pool the rest of the renderer allocates from.
37
+ * Reserving them here instead would be megabytes at the default capacity that no other feature
38
+ * could ever borrow, and most of them are cleared by a reset pass every frame regardless.
17
39
  *
18
40
  * Every pass stays within the eight storage buffers a stage gets by default: the emitter record
19
41
  * and the GPU-owned state are two tables of one database buffer, and the VM's constants and code
@@ -48,20 +70,18 @@
48
70
  * command list that a pass adds to the emitter's pending spawns, on the same path as everything
49
71
  * else. See `graph_particles.js` for the frame.
50
72
  *
51
- * ## Drawing, and the one thing the mode changes
73
+ * ## Drawing
52
74
  *
53
- * {@link execute} is the whole per-frame call, once per frame. It always records everything that
54
- * moves particles and leaves the alive list and the indirect draw args as graph handles; what it
55
- * records after that is the {@link ParticleRenderMode} it was given.
75
+ * {@link execute} is the whole per-frame call, once per frame, and it records only the simulation:
76
+ * everything that moves particles, leaving the alive list and the indirect draw args as graph
77
+ * handles. It draws nothing.
56
78
  *
57
- * `BILLBOARD` sorts the alive list back-to-front and draws it over a colour target, because
58
- * premultiplied over-blending is order-dependent. `AVBOIT` records neither: under the renderer the
59
- * system is an `AVBOITSideChannel`, and the transparency orchestrator asks it for its occupancy, its
60
- * extinction and its draw at the three points where the transparent meshes have contributed theirs
61
- * ({@link avboit_occupancy}, {@link avboit_splat}, {@link avboit_draw}). Those read the same handles
62
- * and composite into a volume and a set of accumulators that are sums, so an ordering would buy
63
- * nothing — and the sort is four passes and a scan over every live particle, plus two lists a word
64
- * per particle each, which is why the mode also decides whether those buffers exist at all.
79
+ * The drawing is the transparency pipeline's. The system is an `AVBOITSideChannel`, and the AVBOIT
80
+ * orchestrator asks it for its occupancy, its extinction and its draw at the three points where the
81
+ * transparent meshes have contributed theirs ({@link avboit_occupancy}, {@link avboit_splat},
82
+ * {@link avboit_draw}). Those read the handles `execute` produced and composite into a voxel volume
83
+ * and a set of accumulators that are sums — so the particles need no depth ordering at all, and
84
+ * none is ever built.
65
85
  *
66
86
  * ## Allocation
67
87
  *
@@ -116,12 +136,6 @@ export class GPUParticleSystem {
116
136
  * @type {number}
117
137
  */
118
138
  max_catchup_seconds: number;
119
- /**
120
- * View-depth range the render sort quantises: particles nearer than `[0]` share the front bin,
121
- * farther than `[1]` the back one. Read only by {@link ParticleRenderMode.BILLBOARD}.
122
- * @type {Float32Array}
123
- */
124
- sort_depth_range: Float32Array;
125
139
  /**
126
140
  * Sprite atlas the billboards sample, and the sampler they sample it with. A 1x1 white texel by
127
141
  * default, so an emitter with no art draws as a plain quad rather than nothing.
@@ -132,8 +146,9 @@ export class GPUParticleSystem {
132
146
  atlas_sampler: GPUSampler;
133
147
  /**
134
148
  * The persistent GPU buffers, by the names the graph functions bind them under. Exposed for
135
- * inspection — a harness copying the counters out to display them — never for the frame loop,
136
- * which reads nothing back. Entries that grow with the emitter set are replaced in place.
149
+ * inspection — {@link bufferSizes} measures them, {@link read_stats} reads the counts out of
150
+ * them — never for the frame loop, which reads nothing back. Entries that grow with the
151
+ * emitter set are replaced in place.
137
152
  *
138
153
  * @type {object}
139
154
  */
@@ -177,16 +192,14 @@ export class GPUParticleSystem {
177
192
  */
178
193
  spawn(emitter: import("./runtime/ParticleEmitter.js").ParticleEmitter, count: number): void;
179
194
  /**
180
- * The system's whole contribution to the frame: the simulation, then whatever `mode` says draws
181
- * it.
195
+ * The system's whole contribution to the frame, once per frame: reconcile the emitter set with
196
+ * the scene, push what changed to the GPU, and record every pass that moves particles — through
197
+ * to the indirect draw args.
182
198
  *
183
- * {@link ParticleRenderMode.BILLBOARD} adds the depth sort and one billboard draw over `color`
184
- * with fixed-function blending, for a page with no transparency pipeline of its own.
185
- * {@link ParticleRenderMode.AVBOIT} adds nothing: the orchestrator draws the particles later in
186
- * the frame through {@link avboit_occupancy}, {@link avboit_splat} and {@link avboit_draw}, off
187
- * the handles this just produced, and its accumulators are order-independent — so the sort is
188
- * skipped and its buffers are never allocated. `color` comes straight back either way, so a
189
- * caller can assign the result unconditionally and let the mode be the only difference.
199
+ * It draws nothing and touches no colour target. The handles it returns are what the AVBOIT
200
+ * side channels ({@link avboit_occupancy}, {@link avboit_splat}, {@link avboit_draw}) consume
201
+ * later in the same frame, off this same graph, once the transparent meshes have contributed
202
+ * theirs.
190
203
  *
191
204
  * Call after the scene context has built for the frame (`GPUSceneContext#update`), so every
192
205
  * emitter node has its `transforms` row, and after the hierarchy pass has run, so the rows'
@@ -204,22 +217,14 @@ export class GPUParticleSystem {
204
217
  * @param {number} params.scene_database graph handle of the scene database — the one the
205
218
  * hierarchy pass returned, so this reads the matrices it composed
206
219
  * @param {number} params.dt seconds since the previous frame
207
- * @param {ParticleRenderMode} [params.mode] who draws, and so whether there is a sort
208
- * @param {number} [params.color] graph handle of the colour target to draw over. Required by
209
- * `BILLBOARD`; returned untouched by `AVBOIT`
210
- * @param {number} [params.depth] graph handle of the scene depth (tested, never written).
211
- * Required by `BILLBOARD`
212
- * @returns {number|undefined} the colour handle after the particle draw, or `color` unchanged
220
+ * @returns {import("./graph_particles.js").ParticleSimulationHandles}
213
221
  */
214
- execute({ graph, camera, scene_database, color, depth, dt, mode }: {
222
+ execute({ graph, camera, scene_database, dt }: {
215
223
  graph: import("../../../engine/graphics/render/frame_graph/FrameGraph.js").FrameGraph;
216
224
  camera: number;
217
225
  scene_database: number;
218
226
  dt: number;
219
- mode?: ParticleRenderMode;
220
- color?: number;
221
- depth?: number;
222
- }): number | undefined;
227
+ }): import("./graph_particles.js").ParticleSimulationHandles;
223
228
  /**
224
229
  * `AVBOITSideChannel#avboit_occupancy`: the emitters' measured bounding boxes, as depth slices.
225
230
  *
@@ -310,15 +315,69 @@ export class GPUParticleSystem {
310
315
  */
311
316
  sync_membership(): void;
312
317
  /**
313
- * Sizes of the persistent buffers, in bytes, as they stand. Exposed for tests.
318
+ * Sizes of the persistent buffers, in bytes, as they stand — one entry per distinct buffer, so
319
+ * this is the feature's reserved footprint and not a list of the names it binds them under.
320
+ * `alive_read` and `alive_write` are the two `alive` entries under the frame's names for them,
321
+ * and would otherwise be counted a second time each. Exposed for tests.
322
+ *
314
323
  * @returns {Object<string, number>}
315
324
  */
316
325
  bufferSizes(): {
317
326
  [x: string]: number;
318
327
  };
328
+ /**
329
+ * Copy the counts the GPU keeps back to the host and decode them, for display and diagnostics.
330
+ *
331
+ * Read back to *look at*: nothing here may size a pass. Every number describes a frame that has
332
+ * already been submitted, so by the time one arrives it is at best one frame stale — and sizing
333
+ * a dispatch or a draw from a stale count is a correctness bug, not an inaccuracy, for the
334
+ * reasons `shader_particle_build_indirect` sets out. This is the whole of what the feature ever
335
+ * reads back, and the only reason {@link INDIRECT} carries `COPY_SRC` at all.
336
+ *
337
+ * The draw args are not here and cannot be: they never leave the frame graph, which allocates
338
+ * them at the build-indirect pass and releases them after the last draw that reads them. Their
339
+ * instance count is {@link ParticleSystemStats#alive}, which the counters carry anyway.
340
+ *
341
+ * Two copies, two submissions and a map round trip, so a caller polling this for an overlay
342
+ * wants to rate-limit itself and to hold off while a previous read is still outstanding.
343
+ *
344
+ * @returns {Promise<ParticleSystemStats>}
345
+ */
346
+ read_stats(): Promise<ParticleSystemStats>;
319
347
  destroy(): void;
320
348
  #private;
321
349
  }
350
+ /**
351
+ * What {@link GPUParticleSystemread_stats } decodes: the counts the GPU keeps between frames, named.
352
+ */
353
+ export type ParticleSystemStats = {
354
+ /**
355
+ * live particles the frame ended with
356
+ */
357
+ alive: number;
358
+ /**
359
+ * length of the free list
360
+ */
361
+ dead: number;
362
+ /**
363
+ * free slots the frame never promised to a spawn — its headroom
364
+ */
365
+ spawn_budget: number;
366
+ /**
367
+ * entries the frame's simulate consumed — the padded, program-coherent
368
+ * list the frame before it built, so never fewer than that frame's `alive`
369
+ */
370
+ alive_in: number;
371
+ /**
372
+ * length of the padded, program-coherent simulate list built this
373
+ * frame; the gap to `alive` is what keeping each wave on one VM program costs in lanes
374
+ */
375
+ sim_padded: number;
376
+ /**
377
+ * workgroups the NEXT simulate will dispatch — read out of the
378
+ * indirect args rather than derived, so it is what the GPU will actually launch
379
+ */
380
+ sim_workgroups: number;
381
+ };
322
382
  import { EmitterRegistry } from "./runtime/EmitterRegistry.js";
323
- import { ParticleRenderMode } from "./ParticleRenderMode.js";
324
383
  //# sourceMappingURL=GPUParticleSystem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GPUParticleSystem.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/particles/GPUParticleSystem.js"],"names":[],"mappings":"AA6CA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuEG;AACH;IAmLI;;;;;;OAMG;IACH,sBANW,MAAM,iBACN,OAAO,6BAA6B,EAAE,eAAe;QAEpC,QAAQ,GAAzB,MAAM;QACW,sBAAsB,GAAvC,MAAM;OAoBhB;IA1MD;;;OAGG;IACH,UAFU,MAAM,CAEP;IAET;;;OAGG;IACH,eAFU,OAAO,6BAA6B,EAAE,eAAe,CAEjD;IAEd;;;OAGG;IACH,UAFU,MAAM,CAEP;IAET;;OAEG;IACH,UAFU,eAAe,CAEhB;IAET;;;OAGG;IACH,OAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,MAFU,MAAM,CAEP;IAET;;;OAGG;IACH,qBAFU,MAAM,CAEQ;IAExB;;;;OAIG;IACH,kBAFU,YAAY,CAE0B;IAEhD;;;;OAIG;IACH,sBAAM;IAEN,yBAAyB;IACzB,0BAAc;IAEd;;;;;;OAMG;IACH,SAFU,MAAM,CAEH;IA2Ib;;;OAGG;IACH,kCAEC;IAED;;;OAGG;IACH,yEAEC;IAED;;;;;;;;;;;;OAYG;IACH,eAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,gCAEC;IAED;;;;;;;OAOG;IACH,eAHW,OAAO,8BAA8B,EAAE,eAAe,SACtD,MAAM,QAwBhB;IAwED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH;QAZkG,KAAK,EAA5F,OAAO,2DAA2D,EAAE,UAAU;QAC/D,MAAM,EAArB,MAAM;QACS,cAAc,EAA7B,MAAM;QAES,EAAE,EAAjB,MAAM;QACsB,IAAI,GAAhC,kBAAkB;QACF,KAAK,GAArB,MAAM;QAEU,KAAK,GAArB,MAAM;QAEJ,MAAM,GAAC,SAAS,CA8D5B;IAiBD;;;;;;;;;OASG;IACH;QANgG,KAAK,EAA1F,OAAO,2DAA2D,EAAE,UAAU;QACjE,MAAM,EAAnB,MAAM;QACkB,kBAAkB,EAA1C,UAAU,MAAM,CAAC;QACJ,SAAS,EAAtB,MAAM;QACJ,MAAM,CAalB;IAED;;;;;;;;;;OAUG;IACH;QAPgG,KAAK,EAA1F,OAAO,2DAA2D,EAAE,UAAU;QACjE,MAAM,EAAnB,MAAM;QACO,IAAI,EAAjB,MAAM;QACO,aAAa,EAA1B,MAAM;QACsD,MAAM,EAAlE;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAC;QACnD;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAkBjE;IAED;;;;;;;;;;;;;;OAcG;IACH;QAXgG,KAAK,EAA1F,OAAO,2DAA2D,EAAE,UAAU;QACrB,QAAQ,EAAjE,OAAO,2BAA2B,EAAE,cAAc;QACrC,MAAM,EAAnB,MAAM;QACO,aAAa,EAA1B,MAAM;QACO,IAAI,EAAjB,MAAM;QACO,QAAQ,EAArB,MAAM;QACO,eAAe,EAA5B,MAAM;QACO,oBAAoB,EAAjC,MAAM;QACoE,YAAY,EAAtF;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAC;QACjE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAsB/E;IAED;;;;;;;;;OASG;IACH,mBAFa,IAAI,CA2DhB;IAoYD;;;OAGG;IACH;YAFoB,MAAM,GAAE,MAAM;MAcjC;IAED,gBA4BC;;CACJ;gCAlnC+B,8BAA8B;mCAD3B,yBAAyB"}
1
+ {"version":3,"file":"GPUParticleSystem.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/particles/GPUParticleSystem.js"],"names":[],"mappings":"AAuDA;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6EG;AACH;IAiKI;;;;;;OAMG;IACH,sBANW,MAAM,iBACN,OAAO,6BAA6B,EAAE,eAAe;QAEpC,QAAQ,GAAzB,MAAM;QACW,sBAAsB,GAAvC,MAAM;OAoBhB;IAxLD;;;OAGG;IACH,UAFU,MAAM,CAEP;IAET;;;OAGG;IACH,eAFU,OAAO,6BAA6B,EAAE,eAAe,CAEjD;IAEd;;;OAGG;IACH,UAFU,MAAM,CAEP;IAET;;OAEG;IACH,UAFU,eAAe,CAEhB;IAET;;;OAGG;IACH,OAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,MAFU,MAAM,CAEP;IAET;;;OAGG;IACH,qBAFU,MAAM,CAEQ;IAExB;;;;OAIG;IACH,sBAAM;IAEN,yBAAyB;IACzB,0BAAc;IAEd;;;;;;;OAOG;IACH,SAFU,MAAM,CAEH;IA+Hb;;;OAGG;IACH,kCAEC;IAED;;;OAGG;IACH,yEAEC;IAED;;;;;;;;;;;;OAYG;IACH,eAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,gCAEC;IAED;;;;;;;OAOG;IACH,eAHW,OAAO,8BAA8B,EAAE,eAAe,SACtD,MAAM,QAwBhB;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH;QAPkG,KAAK,EAA5F,OAAO,2DAA2D,EAAE,UAAU;QAC/D,MAAM,EAArB,MAAM;QACS,cAAc,EAA7B,MAAM;QAES,EAAE,EAAjB,MAAM;QACJ,OAAO,sBAAsB,EAAE,yBAAyB,CA6DpE;IAiBD;;;;;;;;;OASG;IACH;QANgG,KAAK,EAA1F,OAAO,2DAA2D,EAAE,UAAU;QACjE,MAAM,EAAnB,MAAM;QACkB,kBAAkB,EAA1C,UAAU,MAAM,CAAC;QACJ,SAAS,EAAtB,MAAM;QACJ,MAAM,CAalB;IAED;;;;;;;;;;OAUG;IACH;QAPgG,KAAK,EAA1F,OAAO,2DAA2D,EAAE,UAAU;QACjE,MAAM,EAAnB,MAAM;QACO,IAAI,EAAjB,MAAM;QACO,aAAa,EAA1B,MAAM;QACsD,MAAM,EAAlE;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAC;QACnD;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAkBjE;IAED;;;;;;;;;;;;;;OAcG;IACH;QAXgG,KAAK,EAA1F,OAAO,2DAA2D,EAAE,UAAU;QACrB,QAAQ,EAAjE,OAAO,2BAA2B,EAAE,cAAc;QACrC,MAAM,EAAnB,MAAM;QACO,aAAa,EAA1B,MAAM;QACO,IAAI,EAAjB,MAAM;QACO,QAAQ,EAArB,MAAM;QACO,eAAe,EAA5B,MAAM;QACO,oBAAoB,EAAjC,MAAM;QACoE,YAAY,EAAtF;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAC;QACjE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAsB/E;IAED;;;;;;;;;OASG;IACH,mBAFa,IAAI,CA2DhB;IAuVD;;;;;;;OAOG;IACH;YAFoB,MAAM,GAAE,MAAM;MAkBjC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,cAFa,QAAQ,mBAAmB,CAAC,CA8BxC;IAED,gBA4BC;;CACJ;;;;;;;;WAhiCa,MAAM;;;;UACN,MAAM;;;;kBACN,MAAM;;;;;cACN,MAAM;;;;;gBAEN,MAAM;;;;;oBAEN,MAAM;;gCAxCY,8BAA8B"}