@woosh/meep-engine 3.19.0 → 3.21.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 (809) hide show
  1. package/build/bundle-worker-terrain.js +1 -1
  2. package/editor/Editor.d.ts.map +1 -1
  3. package/editor/enableEditor.d.ts.map +1 -1
  4. package/editor/particles/effect/ParticleEffectDocument.d.ts.map +1 -1
  5. package/editor/particles/effect/ParticleReferenceSimulation.d.ts.map +1 -1
  6. package/editor/templates/entity_templates.d.ts.map +1 -1
  7. package/editor/tools/v2/GizmoNode.d.ts +1 -1
  8. package/editor/tools/v2/GizmoNode.d.ts.map +1 -1
  9. package/editor/view/ecs/HierarchicalEntityListView.d.ts +3 -3
  10. package/editor/view/ecs/HierarchicalEntityListView.d.ts.map +1 -1
  11. package/editor/view/makeEntityDecorators.d.ts.map +1 -1
  12. package/editor/view/node-graph/NodeGraphClipboard.d.ts.map +1 -1
  13. package/editor/view/particles/effect/ParticleGraphEditorView.js +2 -2
  14. package/editor/view/particles/effect/ParticleNodeParametersView.d.ts.map +1 -1
  15. package/editor/view/particles/effect/ParticleNodeParametersView.js +7 -48
  16. package/editor/view/tools/ToolSettingsView.d.ts +1 -1
  17. package/editor/view/tools/ToolSettingsView.d.ts.map +1 -1
  18. package/package.json +12 -12
  19. package/src/core/IdPool.d.ts.map +1 -1
  20. package/src/core/binary/32BitEncoder.d.ts.map +1 -1
  21. package/src/core/binary/BinaryBuffer.d.ts +1 -1
  22. package/src/core/binary/BinaryBuffer.d.ts.map +1 -1
  23. package/src/core/bvh2/binary/2/BinaryUint32BVH.d.ts +1 -1
  24. package/src/core/bvh2/binary/2/BinaryUint32BVH.d.ts.map +1 -1
  25. package/src/core/bvh2/bvh3/BVH.d.ts +3 -3
  26. package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
  27. package/src/core/bvh2/bvh3/BVH.js +1 -2
  28. package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.d.ts.map +1 -1
  29. package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.d.ts.map +1 -1
  30. package/src/core/cache/Cache.d.ts +1 -1
  31. package/src/core/cache/Cache.d.ts.map +1 -1
  32. package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts.map +1 -1
  33. package/src/core/collection/array/array_group_by.d.ts.map +1 -1
  34. package/src/core/collection/array/array_group_by.js +2 -11
  35. package/src/core/collection/list/List.d.ts.map +1 -1
  36. package/src/core/collection/list/ListForwarder.d.ts +1 -1
  37. package/src/core/collection/list/ListForwarder.d.ts.map +1 -1
  38. package/src/core/collection/map/HashMap.d.ts.map +1 -1
  39. package/src/core/collection/set/ArraySet.d.ts.map +1 -1
  40. package/src/core/collection/table/RowFirstTable.d.ts +1 -1
  41. package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
  42. package/src/core/collection/table/bind/TableRecord.d.ts +1 -1
  43. package/src/core/collection/table/bind/TableRecord.d.ts.map +1 -1
  44. package/src/core/color/Color.d.ts +8 -8
  45. package/src/core/color/Color.d.ts.map +1 -1
  46. package/src/core/color/hsv/hsv_to_rgb_uint8.d.ts.map +1 -1
  47. package/src/core/color/hsv/rgb_to_hsv.d.ts.map +1 -1
  48. package/src/core/events/signal/Signal.d.ts +1 -1
  49. package/src/core/events/signal/Signal.d.ts.map +1 -1
  50. package/src/core/events/signal/signal_aggregate_by_time_window.d.ts.map +1 -1
  51. package/src/core/fsm/simple/SimpleStateMachineDescription.d.ts.map +1 -1
  52. package/src/core/geom/2d/aabb/AABB2.d.ts +4 -4
  53. package/src/core/geom/2d/aabb/AABB2.d.ts.map +1 -1
  54. package/src/core/geom/2d/bvh/BVH2D.d.ts +1 -1
  55. package/src/core/geom/2d/bvh/BVH2D.d.ts.map +1 -1
  56. package/src/core/geom/2d/triangle/tri2_rasterize_conservative.d.ts.map +1 -1
  57. package/src/core/geom/3d/aabb/AABB3.d.ts +6 -6
  58. package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
  59. package/src/core/geom/3d/atlas/atlas_bench_lib.d.ts.map +1 -1
  60. package/src/core/geom/3d/atlas/atlas_compute_charts.d.ts.map +1 -1
  61. package/src/core/geom/3d/atlas/atlas_generate.d.ts.map +1 -1
  62. package/src/core/geom/3d/atlas/pack/atlas_pack_charts.d.ts.map +1 -1
  63. package/src/core/geom/3d/atlas/param/atlas_chart_param_validity.d.ts.map +1 -1
  64. package/src/core/geom/3d/atlas/param/atlas_chart_parameterize_bff.d.ts.map +1 -1
  65. package/src/core/geom/3d/atlas/param/atlas_chart_parameterize_lscm.d.ts.map +1 -1
  66. package/src/core/geom/3d/atlas/segment/atlas_compute_planar_regions.d.ts.map +1 -1
  67. package/src/core/geom/3d/atlas/segment/atlas_segment_charts.d.ts.map +1 -1
  68. package/src/core/geom/3d/atlas/segment/atlas_segment_charts_atomic.d.ts.map +1 -1
  69. package/src/core/geom/3d/mat4/m4_decompose.d.ts +7 -1
  70. package/src/core/geom/3d/mat4/m4_decompose.d.ts.map +1 -1
  71. package/src/core/geom/3d/quadric/Quadric3.d.ts +11 -11
  72. package/src/core/geom/3d/quadric/Quadric3.d.ts.map +1 -1
  73. package/src/core/geom/3d/ray/Ray3.d.ts +3 -3
  74. package/src/core/geom/3d/ray/Ray3.d.ts.map +1 -1
  75. package/src/core/geom/3d/shape/HeightMapShape3D.d.ts.map +1 -1
  76. package/src/core/geom/3d/shape/HeightMapShape3D.js +4 -9
  77. package/src/core/geom/3d/shape/TransformedShape3D.d.ts +1 -1
  78. package/src/core/geom/3d/shape/TransformedShape3D.d.ts.map +1 -1
  79. package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts.map +1 -1
  80. package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.d.ts.map +1 -1
  81. package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.d.ts.map +1 -1
  82. package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_carve_outside_surface.d.ts.map +1 -1
  83. package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_improve_quality.d.ts.map +1 -1
  84. package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.d.ts.map +1 -1
  85. package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.d.ts.map +1 -1
  86. package/src/core/geom/3d/topology/struct/binary/io/bt_mesh_to_indexed_geometry.d.ts.map +1 -1
  87. package/src/core/geom/3d/util/aabb3_emit_point_grid.d.ts.map +1 -1
  88. package/src/core/geom/Quaternion.d.ts +4 -4
  89. package/src/core/geom/Quaternion.d.ts.map +1 -1
  90. package/src/core/geom/Vector1.d.ts +1 -1
  91. package/src/core/geom/Vector1.d.ts.map +1 -1
  92. package/src/core/geom/Vector2.d.ts +2 -2
  93. package/src/core/geom/Vector2.d.ts.map +1 -1
  94. package/src/core/geom/Vector3.d.ts +3 -3
  95. package/src/core/geom/Vector3.d.ts.map +1 -1
  96. package/src/core/geom/Vector4.d.ts +4 -4
  97. package/src/core/geom/Vector4.d.ts.map +1 -1
  98. package/src/core/geom/packing/max-rect/find_best_container.d.ts.map +1 -1
  99. package/src/core/geom/vec3/v3_hash.d.ts +12 -0
  100. package/src/core/geom/vec3/v3_hash.d.ts.map +1 -0
  101. package/src/core/geom/vec3/v3_hash.js +19 -0
  102. package/src/core/geom/vec3/v3_lerp.d.ts +3 -1
  103. package/src/core/geom/vec3/v3_lerp.d.ts.map +1 -1
  104. package/src/core/geom/vec3/v3_set.d.ts +14 -0
  105. package/src/core/geom/vec3/v3_set.d.ts.map +1 -0
  106. package/src/core/geom/vec3/v3_set.js +17 -0
  107. package/src/core/geom/vec3/v3_slerp.d.ts +3 -1
  108. package/src/core/geom/vec3/v3_slerp.d.ts.map +1 -1
  109. package/src/core/geom/vec4/v4_equals_array.d.ts +11 -0
  110. package/src/core/geom/vec4/v4_equals_array.d.ts.map +1 -0
  111. package/src/core/geom/vec4/v4_equals_array.js +16 -0
  112. package/src/core/geom/vec4/v4_hash.d.ts +12 -0
  113. package/src/core/geom/vec4/v4_hash.d.ts.map +1 -0
  114. package/src/core/geom/vec4/v4_hash.js +18 -0
  115. package/src/core/geom/vec4/v4_set.d.ts +15 -0
  116. package/src/core/geom/vec4/v4_set.d.ts.map +1 -0
  117. package/src/core/geom/vec4/v4_set.js +19 -0
  118. package/src/core/graph/convert_graph_to_dot_string.d.ts +1 -1
  119. package/src/core/graph/convert_graph_to_dot_string.d.ts.map +1 -1
  120. package/src/core/graph/metis/native/bisection/split_graph_two_way.d.ts.map +1 -1
  121. package/src/core/graph/metis/native/metis_partition_kway.d.ts.map +1 -1
  122. package/src/core/graph/metis/native/refine/fm_kway.d.ts.map +1 -1
  123. package/src/core/json/abstractJSONSerializer.d.ts.map +1 -1
  124. package/src/core/lang/reactive/AbstractCachingParser.d.ts.map +1 -1
  125. package/src/core/localization/Localization.d.ts.map +1 -1
  126. package/src/core/math/linalg/cg/cg_solve.d.ts.map +1 -1
  127. package/src/core/math/noise/create_simplex_noise_2d.d.ts.map +1 -1
  128. package/src/core/math/physics/mie/compute_bhmie_optical_properties.d.ts.map +1 -1
  129. package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.d.ts.map +1 -1
  130. package/src/core/math/random/seededRandom_Mulberry32.d.ts +1 -1
  131. package/src/core/math/random/seededRandom_Mulberry32.d.ts.map +1 -1
  132. package/src/core/model/ModuleRegistry.d.ts.map +1 -1
  133. package/src/core/model/node-graph/visual/layout/layout_assign_coordinates.d.ts.map +1 -1
  134. package/src/core/model/node-graph/visual/layout/layout_node_graph.d.ts.map +1 -1
  135. package/src/core/model/node-graph/visual/layout/layout_order_layers.d.ts.map +1 -1
  136. package/src/core/model/object/optional_clone.d.ts.map +1 -0
  137. package/src/{shade/descriptor/util → core/model/object}/optional_equality.d.ts +2 -2
  138. package/src/core/model/object/optional_equality.d.ts.map +1 -0
  139. package/src/{shade/descriptor/util → core/model/object}/optional_equality.js +2 -2
  140. package/src/{shade/descriptor/util → core/model/object}/optional_hash.d.ts +1 -1
  141. package/src/core/model/object/optional_hash.d.ts.map +1 -0
  142. package/src/{shade/descriptor/util → core/model/object}/optional_hash.js +3 -3
  143. package/src/core/model/reactive/model/ReactiveExpression.d.ts.map +1 -1
  144. package/src/core/model/validate_enum_schema.d.ts.map +1 -1
  145. package/src/core/process/Future.d.ts.map +1 -1
  146. package/src/core/process/task/Task.d.ts.map +1 -1
  147. package/src/core/process/task/util/countTask.d.ts.map +1 -1
  148. package/src/core/process/task/util/randomCountTask.d.ts.map +1 -1
  149. package/src/core/process/worker/WorkerBuilder.d.ts.map +1 -1
  150. package/src/engine/Clock.d.ts +1 -1
  151. package/src/engine/Clock.d.ts.map +1 -1
  152. package/src/engine/EngineHarness.d.ts.map +1 -1
  153. package/src/engine/animation/Animations.d.ts.map +1 -1
  154. package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
  155. package/src/engine/animation/TransitionFunctions.d.ts.map +1 -1
  156. package/src/engine/animation/Tween.d.ts.map +1 -1
  157. package/src/engine/animation/curve/editor/uploadViaElement.d.ts.map +1 -1
  158. package/src/engine/animation/curve/view/AnimationCurveView.d.ts +1 -1
  159. package/src/engine/animation/curve/view/AnimationCurveView.d.ts.map +1 -1
  160. package/src/engine/asset/Asset.d.ts +1 -1
  161. package/src/engine/asset/Asset.d.ts.map +1 -1
  162. package/src/engine/asset/Asset.js +3 -1
  163. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  164. package/src/engine/asset/AssetRequest.d.ts.map +1 -1
  165. package/src/engine/asset/loaders/AssetLoader.d.ts.map +1 -1
  166. package/src/engine/asset/loaders/image/avif/encode_image_source.d.ts.map +1 -1
  167. package/src/engine/asset/loaders/image/avif/threaded_image_encoder.d.ts.map +1 -1
  168. package/src/engine/browserInfo.d.ts.map +1 -1
  169. package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts +1 -1
  170. package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts.map +1 -1
  171. package/src/engine/control/first-person/abilities/LedgeGrab.js +9 -9
  172. package/src/engine/control/first-person/abilities/Mantle.js +8 -8
  173. package/src/engine/control/first-person/abilities/ScrambleUp.js +2 -2
  174. package/src/engine/control/first-person/abilities/WallJump.js +2 -2
  175. package/src/engine/control/first-person/abilities/WallRun.js +3 -3
  176. package/src/engine/control/first-person/collision/KinematicMover.d.ts +1 -1
  177. package/src/engine/control/first-person/collision/KinematicMover.d.ts.map +1 -1
  178. package/src/engine/control/first-person/collision/KinematicMover.js +19 -46
  179. package/src/engine/control/first-person/sensors/FirstPersonSensors.d.ts +17 -5
  180. package/src/engine/control/first-person/sensors/FirstPersonSensors.d.ts.map +1 -1
  181. package/src/engine/control/first-person/sensors/FirstPersonSensors.js +20 -7
  182. package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.d.ts.map +1 -1
  183. package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.js +9 -8
  184. package/src/engine/control/first-person/test/buildTestPlayer.d.ts.map +1 -1
  185. package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
  186. package/src/engine/ecs/EntityManager.d.ts.map +1 -1
  187. package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
  188. package/src/engine/ecs/System.d.ts.map +1 -1
  189. package/src/engine/ecs/animation/Animation.d.ts +1 -1
  190. package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
  191. package/src/engine/ecs/async/SystemWorkerLoopback.d.ts +3 -3
  192. package/src/engine/ecs/async/SystemWorkerLoopback.d.ts.map +1 -1
  193. package/src/engine/ecs/dynamic_actions/DynamicActorSystem.d.ts.map +1 -1
  194. package/src/engine/ecs/grid/pick.d.ts.map +1 -1
  195. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.d.ts.map +1 -1
  196. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.js +9 -10
  197. package/src/engine/ecs/guid/UUID.d.ts +1 -1
  198. package/src/engine/ecs/guid/UUID.d.ts.map +1 -1
  199. package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.d.ts.map +1 -1
  200. package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.js +26 -9
  201. package/src/engine/ecs/parent/EntityNode.d.ts +1 -1
  202. package/src/engine/ecs/parent/EntityNode.d.ts.map +1 -1
  203. package/src/engine/ecs/parent/FaceEditor.d.ts +7 -7
  204. package/src/engine/ecs/parent/FaceEditor.d.ts.map +1 -1
  205. package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
  206. package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter2.d.ts +2 -2
  207. package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter2.d.ts.map +1 -1
  208. package/src/engine/ecs/terrain/TerrainClouds.d.ts +1 -1
  209. package/src/engine/ecs/terrain/ecs/Terrain.d.ts +1 -1
  210. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  211. package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts.map +1 -1
  212. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts +1 -1
  213. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts.map +1 -1
  214. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts +1 -1
  215. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
  216. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +1 -1
  217. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
  218. package/src/engine/ecs/terrain/util/obtainTerrain.d.ts.map +1 -1
  219. package/src/engine/ecs/transform/Transform64.d.ts +6 -6
  220. package/src/engine/ecs/transform/Transform64.d.ts.map +1 -1
  221. package/src/engine/ecs/transform-attachment/TransformAttachment.d.ts +1 -1
  222. package/src/engine/ecs/transform-attachment/TransformAttachment.d.ts.map +1 -1
  223. package/src/engine/graphics/FrameRunner.d.ts.map +1 -1
  224. package/src/engine/graphics/ecs/camera/camera_traverse_active.d.ts.map +1 -1
  225. package/src/engine/graphics/ecs/camera/pp/PerfectPanner.d.ts +1 -1
  226. package/src/engine/graphics/ecs/camera/pp/PerfectPanner.d.ts.map +1 -1
  227. package/src/engine/graphics/ecs/highlight/HighlightDefinition.d.ts +1 -1
  228. package/src/engine/graphics/ecs/highlight/HighlightDefinition.d.ts.map +1 -1
  229. package/src/engine/graphics/ecs/make_bvh_depth_range_computer.d.ts.map +1 -1
  230. package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.d.ts +4 -4
  231. package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.d.ts.map +1 -1
  232. package/src/engine/graphics/ecs/particles/ParticleEffect.d.ts.map +1 -1
  233. package/src/engine/graphics/ecs/particles/ParticleEffect.js +6 -22
  234. package/src/engine/graphics/ecs/path/tube/TubePathStyle.d.ts +1 -1
  235. package/src/engine/graphics/ecs/path/tube/TubePathStyle.d.ts.map +1 -1
  236. package/src/engine/graphics/ecs/path/tube/build/computeFrenetFrames.d.ts.map +1 -1
  237. package/src/engine/graphics/ecs/trail3d/Trail3D.d.ts +3 -3
  238. package/src/engine/graphics/ecs/trail3d/Trail3D.d.ts.map +1 -1
  239. package/src/engine/graphics/geometry/buffered/build_height_field_geometry.d.ts +1 -1
  240. package/src/engine/graphics/geometry/buffered/build_height_field_geometry.d.ts.map +1 -1
  241. package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.d.ts +1 -1
  242. package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.d.ts.map +1 -1
  243. package/src/engine/graphics/make_ray_from_viewport_position.d.ts.map +1 -1
  244. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
  245. package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.d.ts.map +1 -1
  246. package/src/engine/graphics/particles/particular/engine/utils/distribute_points_on_indexed_triangles.d.ts.map +1 -1
  247. package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.d.ts.map +1 -1
  248. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts +3 -3
  249. package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts.map +1 -1
  250. package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts.map +1 -1
  251. package/src/engine/graphics/render/gizmo/GizmoShapeRenderingInterface.d.ts +1 -1
  252. package/src/engine/graphics/render/gizmo/GizmoShapeRenderingInterface.d.ts.map +1 -1
  253. package/src/engine/graphics/render/layers/RenderLayer.d.ts +3 -3
  254. package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
  255. package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts +1 -1
  256. package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts.map +1 -1
  257. package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts +2 -2
  258. package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts.map +1 -1
  259. package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts +1 -1
  260. package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts.map +1 -1
  261. package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.d.ts.map +1 -1
  262. package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.js +5 -1
  263. package/src/engine/graphics/texture/3d/SingleChannelSampler3D.d.ts +1 -1
  264. package/src/engine/graphics/texture/3d/SingleChannelSampler3D.d.ts.map +1 -1
  265. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
  266. package/src/engine/graphics/texture/sampler/filter/sampler2d_scale_down_generic.d.ts +1 -1
  267. package/src/engine/graphics/texture/sampler/filter/sampler2d_scale_down_generic.d.ts.map +1 -1
  268. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_max.d.ts +1 -1
  269. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_max.d.ts.map +1 -1
  270. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_min.d.ts +1 -1
  271. package/src/engine/graphics/texture/sampler/sampler2d_channel_compute_min.d.ts.map +1 -1
  272. package/src/engine/graphics/texture/sampler/sampler2d_combine.d.ts.map +1 -1
  273. package/src/engine/graphics/texture/sampler/sampler2d_compute_texel_value_conversion_scale_to_uint8.d.ts.map +1 -1
  274. package/src/engine/graphics/texture/sampler/search/make_edge_condition_channel_threshold.d.ts.map +1 -1
  275. package/src/engine/graphics/texture/sampler/search/sampler2d_find_pixels.d.ts.map +1 -1
  276. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts +3 -3
  277. package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts.map +1 -1
  278. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts +1 -1
  279. package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts.map +1 -1
  280. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.d.ts +2 -2
  281. package/src/engine/graphics/texture/virtual/debug/UsageDebugView.d.ts.map +1 -1
  282. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.d.ts +1 -1
  283. package/src/engine/graphics/texture/virtual/debug/UsagePyramidDebugView.d.ts.map +1 -1
  284. package/src/engine/graphics/texture/virtual/tile/decompose_finger_print.d.ts.map +1 -1
  285. package/src/engine/graphics3/HighlightOutlineSystem.d.ts.map +1 -1
  286. package/src/engine/graphics3/ParticipatingMedia.d.ts +1 -1
  287. package/src/engine/graphics3/ParticipatingMedia.d.ts.map +1 -1
  288. package/src/engine/graphics3/VolumetricLightMap.d.ts +1 -1
  289. package/src/engine/graphics3/VolumetricLightMap.d.ts.map +1 -1
  290. package/src/engine/graphics3/decal/graph_build_decal_clusters.d.ts.map +1 -1
  291. package/src/engine/graphics3/highlight/pack_highlight_table.d.ts.map +1 -1
  292. package/src/engine/graphics3/preview/make_model_preview_scene.d.ts.map +1 -1
  293. package/src/engine/graphics3/terrain/GPUTerrainSplatRenderer.d.ts.map +1 -1
  294. package/src/engine/graphics3/terrain/pack_terrain_row_table.d.ts.map +1 -1
  295. package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
  296. package/src/engine/input/devices/GamepadDevice.d.ts +1 -1
  297. package/src/engine/input/devices/GamepadDevice.d.ts.map +1 -1
  298. package/src/engine/input/devices/PointerDevice.d.ts +1 -1
  299. package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
  300. package/src/engine/input/ecs/controllers/KeyboardCameraController.d.ts.map +1 -1
  301. package/src/engine/input/ecs/controllers/KeyboardCameraController.js +11 -2
  302. package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts +1 -1
  303. package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts.map +1 -1
  304. package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts.map +1 -1
  305. package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts.map +1 -1
  306. package/src/engine/intelligence/behavior/util/RotationBehavior.d.ts.map +1 -1
  307. package/src/engine/intelligence/behavior/util/RotationBehavior.js +14 -2
  308. package/src/engine/intelligence/blackboard/Blackboard.d.ts.map +1 -1
  309. package/src/engine/intelligence/mcts/MonteCarlo.d.ts +1 -1
  310. package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
  311. package/src/engine/intelligence/mcts/StateNode.d.ts.map +1 -1
  312. package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +1 -1
  313. package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
  314. package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts.map +1 -1
  315. package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts +1 -1
  316. package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts.map +1 -1
  317. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts +2 -2
  318. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts.map +1 -1
  319. package/src/engine/network/NetworkSession.d.ts.map +1 -1
  320. package/src/engine/network/PriorityFetch.d.ts +2 -2
  321. package/src/engine/network/PriorityFetch.d.ts.map +1 -1
  322. package/src/engine/network/diagnostics/BandwidthMeter.d.ts.map +1 -1
  323. package/src/engine/network/ecs/owner_authorization.d.ts.map +1 -1
  324. package/src/engine/network/orchestrator/NetworkPeer.d.ts.map +1 -1
  325. package/src/engine/network/orchestrator/ServerAuthoritativeServer.d.ts.map +1 -1
  326. package/src/engine/network/replication/Replicator.d.ts +1 -1
  327. package/src/engine/network/replication/Replicator.d.ts.map +1 -1
  328. package/src/engine/network/sim/SimActionExecutor.d.ts +1 -1
  329. package/src/engine/network/sim/SimActionExecutor.d.ts.map +1 -1
  330. package/src/engine/network/time/RenderPlayout.d.ts.map +1 -1
  331. package/src/engine/network/transport/Channel.d.ts.map +1 -1
  332. package/src/engine/network/transport/fragments/FragmentRetention.d.ts.map +1 -1
  333. package/src/engine/physics/body/SolverBodyState.d.ts +11 -11
  334. package/src/engine/physics/body/SolverBodyState.d.ts.map +1 -1
  335. package/src/engine/physics/body/SolverBodyState.js +13 -13
  336. package/src/engine/physics/broadphase/compute_fat_world_aabb.d.ts +4 -4
  337. package/src/engine/physics/broadphase/compute_fat_world_aabb.d.ts.map +1 -1
  338. package/src/engine/physics/broadphase/compute_fat_world_aabb.js +2 -2
  339. package/src/engine/physics/broadphase/generate_pairs.d.ts +3 -3
  340. package/src/engine/physics/broadphase/generate_pairs.d.ts.map +1 -1
  341. package/src/engine/physics/broadphase/generate_pairs.js +1 -1
  342. package/src/engine/physics/ccd/linear_sweep.d.ts +2 -3
  343. package/src/engine/physics/ccd/linear_sweep.d.ts.map +1 -1
  344. package/src/engine/physics/ccd/linear_sweep.js +4 -5
  345. package/src/engine/physics/constraint/solve_constraints.js +3 -3
  346. package/src/engine/physics/ecs/BodyKind.d.ts +1 -1
  347. package/src/engine/physics/ecs/BodyKind.js +1 -1
  348. package/src/engine/physics/ecs/Collider.d.ts +1 -1
  349. package/src/engine/physics/ecs/Collider.js +1 -1
  350. package/src/engine/physics/ecs/Joint.d.ts +15 -10
  351. package/src/engine/physics/ecs/Joint.d.ts.map +1 -1
  352. package/src/engine/physics/ecs/Joint.js +27 -18
  353. package/src/engine/physics/ecs/JointSerializationAdapter.d.ts.map +1 -1
  354. package/src/engine/physics/ecs/JointSerializationAdapter.js +8 -6
  355. package/src/engine/physics/ecs/PhysicsSystem.d.ts +40 -77
  356. package/src/engine/physics/ecs/PhysicsSystem.d.ts.map +1 -1
  357. package/src/engine/physics/ecs/PhysicsSystem.js +113 -75
  358. package/src/engine/physics/ecs/RigidBody.d.ts +17 -12
  359. package/src/engine/physics/ecs/RigidBody.d.ts.map +1 -1
  360. package/src/engine/physics/ecs/RigidBody.js +58 -24
  361. package/src/engine/physics/ecs/RigidBodySerializationAdapter.d.ts.map +1 -1
  362. package/src/engine/physics/ecs/RigidBodySerializationAdapter.js +13 -12
  363. package/src/engine/physics/ecs/find_non_finite_physics_state.d.ts +1 -1
  364. package/src/engine/physics/ecs/find_non_finite_physics_state.js +1 -1
  365. package/src/engine/physics/fluid/FluidField.d.ts.map +1 -1
  366. package/src/engine/physics/fluid/REVIEW_02_PLAN.md +4 -4
  367. package/src/engine/physics/fluid/SliceVisualiser.d.ts.map +1 -1
  368. package/src/engine/physics/fluid/ecs/FluidComponent.d.ts +10 -10
  369. package/src/engine/physics/fluid/ecs/FluidComponent.js +10 -10
  370. package/src/engine/physics/fluid/ecs/FluidEffectorsComponent.d.ts +2 -2
  371. package/src/engine/physics/fluid/ecs/FluidEffectorsComponent.js +2 -2
  372. package/src/engine/physics/fluid/ecs/FluidObstacle.d.ts +3 -3
  373. package/src/engine/physics/fluid/ecs/FluidObstacle.js +3 -3
  374. package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +1 -1
  375. package/src/engine/physics/fluid/ecs/FluidObstacleSystem.js +4 -4
  376. package/src/engine/physics/fluid/ecs/FluidSystem.d.ts +2 -2
  377. package/src/engine/physics/fluid/ecs/FluidSystem.js +3 -3
  378. package/src/engine/physics/fluid/ecs/WorkerFluidSystem.d.ts +1 -1
  379. package/src/engine/physics/fluid/ecs/WorkerFluidSystem.js +2 -2
  380. package/src/engine/physics/fluid/ecs/fluid_reanchor_field.d.ts +3 -3
  381. package/src/engine/physics/fluid/ecs/fluid_reanchor_field.d.ts.map +1 -1
  382. package/src/engine/physics/fluid/ecs/fluid_reanchor_field.js +3 -3
  383. package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.d.ts +3 -3
  384. package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.d.ts.map +1 -1
  385. package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.js +2 -2
  386. package/src/engine/physics/fluid/effector/AbstractFluidEffector.d.ts +3 -3
  387. package/src/engine/physics/fluid/effector/AbstractFluidEffector.d.ts.map +1 -1
  388. package/src/engine/physics/fluid/effector/AbstractFluidEffector.js +2 -2
  389. package/src/engine/physics/fluid/effector/ImpulseFluidEffector.js +2 -2
  390. package/src/engine/physics/fluid/effector/WakeFluidEffector.d.ts +4 -4
  391. package/src/engine/physics/fluid/effector/WakeFluidEffector.js +8 -8
  392. package/src/engine/physics/inertia/world_inverse_inertia.d.ts +8 -17
  393. package/src/engine/physics/inertia/world_inverse_inertia.d.ts.map +1 -1
  394. package/src/engine/physics/inertia/world_inverse_inertia.js +11 -11
  395. package/src/engine/physics/integration/integrate_position.d.ts +6 -7
  396. package/src/engine/physics/integration/integrate_position.d.ts.map +1 -1
  397. package/src/engine/physics/integration/integrate_position.js +5 -6
  398. package/src/engine/physics/integration/integrate_velocity.d.ts +4 -4
  399. package/src/engine/physics/integration/integrate_velocity.d.ts.map +1 -1
  400. package/src/engine/physics/integration/integrate_velocity.js +7 -7
  401. package/src/engine/physics/inverse_kinematics/fabrik/fabrik_solve.d.ts +4 -4
  402. package/src/engine/physics/inverse_kinematics/fabrik/fabrik_solve.d.ts.map +1 -1
  403. package/src/engine/physics/inverse_kinematics/fabrik/fabrik_solve.js +3 -3
  404. package/src/engine/physics/narrowphase/convex_decomposition.d.ts.map +1 -1
  405. package/src/engine/physics/narrowphase/decomposition/triangle_buffer_layout.d.ts +1 -2
  406. package/src/engine/physics/narrowphase/decomposition/triangle_buffer_layout.d.ts.map +1 -1
  407. package/src/engine/physics/narrowphase/decomposition/triangle_buffer_layout.js +1 -2
  408. package/src/engine/physics/narrowphase/narrowphase_step.d.ts +7 -6
  409. package/src/engine/physics/narrowphase/narrowphase_step.d.ts.map +1 -1
  410. package/src/engine/physics/narrowphase/narrowphase_step.js +8 -8
  411. package/src/engine/physics/queries/PhysicsSurfacePoint.d.ts +10 -5
  412. package/src/engine/physics/queries/PhysicsSurfacePoint.d.ts.map +1 -1
  413. package/src/engine/physics/queries/PhysicsSurfacePoint.js +10 -6
  414. package/src/engine/physics/queries/overlap_shape.d.ts +5 -14
  415. package/src/engine/physics/queries/overlap_shape.d.ts.map +1 -1
  416. package/src/engine/physics/queries/overlap_shape.js +4 -4
  417. package/src/engine/physics/queries/raycast.d.ts.map +1 -1
  418. package/src/engine/physics/queries/shape_cast.d.ts +9 -1
  419. package/src/engine/physics/queries/shape_cast.d.ts.map +1 -1
  420. package/src/engine/physics/queries/shape_cast.js +2 -2
  421. package/src/engine/physics/solver/solve_contacts.d.ts +2 -2
  422. package/src/engine/physics/solver/solve_contacts.d.ts.map +1 -1
  423. package/src/engine/physics/solver/solve_contacts.js +2 -2
  424. package/src/engine/physics/vehicle/RaycastVehicle.d.ts +4 -8
  425. package/src/engine/physics/vehicle/RaycastVehicle.d.ts.map +1 -1
  426. package/src/engine/physics/vehicle/RaycastVehicle.js +16 -12
  427. package/src/engine/save/Storage.d.ts.map +1 -1
  428. package/src/engine/sound/SoundEngine.d.ts +1 -1
  429. package/src/engine/sound/SoundEngine.d.ts.map +1 -1
  430. package/src/engine/sound/ecs/audio/AudioEmitterSystem.d.ts.map +1 -1
  431. package/src/engine/sound/ecs/audio/AudioEmitterSystem.js +27 -2
  432. package/src/engine/sound/simulation/AcousticSimulator.d.ts +2 -2
  433. package/src/engine/sound/simulation/AcousticSimulator.d.ts.map +1 -1
  434. package/src/engine/sound/simulation/core/VolumeField.d.ts +1 -1
  435. package/src/engine/sound/simulation/core/VolumeField.d.ts.map +1 -1
  436. package/src/engine/sound/simulation/probe/AcousticProbeField.d.ts.map +1 -1
  437. package/src/engine/sound/simulation/probe/probe_delaunay_edges.d.ts.map +1 -1
  438. package/src/engine/sound/simulation/probe/probe_densify_portals.d.ts.map +1 -1
  439. package/src/engine/sound/simulation/probe/probe_detect_portals.d.ts.map +1 -1
  440. package/src/engine/sound/simulation/probe/probe_place_sdf_cover.d.ts.map +1 -1
  441. package/src/engine/sound/simulation/probe/probe_refine_connectivity.d.ts.map +1 -1
  442. package/src/engine/sound/simulation/render/ProbeReverbRenderer.d.ts +1 -1
  443. package/src/engine/sound/simulation/render/ProbeReverbRenderer.d.ts.map +1 -1
  444. package/src/engine/sound/simulation/render/foaReverbImpulseResponse.d.ts.map +1 -1
  445. package/src/engine/sound/sopra/SopraEngine.d.ts.map +1 -1
  446. package/src/engine/sound/sopra/legacy/SoundEmitter.d.ts +3 -3
  447. package/src/engine/sound/sopra/legacy/SoundEmitter.d.ts.map +1 -1
  448. package/src/engine/sound/sopra/legacy/SoundTrack.d.ts +3 -3
  449. package/src/engine/sound/sopra/legacy/SoundTrack.d.ts.map +1 -1
  450. package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts.map +1 -1
  451. package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
  452. package/src/engine/ui/notification/ViewEmitter.d.ts +1 -1
  453. package/src/engine/ui/notification/ViewEmitter.d.ts.map +1 -1
  454. package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
  455. package/src/extractName.d.ts.map +1 -1
  456. package/src/format/image/avif/api/convert_to_rgba.d.ts.map +1 -1
  457. package/src/format/image/avif/av1/encode/encode_av1_still.d.ts.map +1 -1
  458. package/src/format/image/avif/heif/write_avif_file.d.ts +2 -2
  459. package/src/format/image/avif/heif/write_avif_file.d.ts.map +1 -1
  460. package/src/format/image/jpeg/JpegImage.d.ts.map +1 -1
  461. package/src/format/image/png/PNG.d.ts.map +1 -1
  462. package/src/format/image/png/chunk/png_chunk_decode_iTXt.d.ts.map +1 -1
  463. package/src/format/image/png/chunk/png_chunk_decode_zTXt.d.ts.map +1 -1
  464. package/src/format/scene/gltf/ext/GltfBufferViewExtensionSet.d.ts.map +1 -1
  465. package/src/format/scene/gltf/gltf_node_world_matrices.d.ts.map +1 -1
  466. package/src/format/scene/usd/unpack_usdz.d.ts.map +1 -1
  467. package/src/format/scene/usd/usd_triangulate.d.ts.map +1 -1
  468. package/src/format/texture/basis/astc_integer_sequence.d.ts.map +1 -1
  469. package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts.map +1 -1
  470. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts.map +1 -1
  471. package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.js +22 -3
  472. package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.d.ts.map +1 -1
  473. package/src/generation/theme/ThemeEngine.d.ts +2 -2
  474. package/src/generation/theme/ThemeEngine.d.ts.map +1 -1
  475. package/src/shade/descriptor/ObjectDescriptorBase.d.ts +1 -1
  476. package/src/shade/descriptor/ObjectDescriptorBase.d.ts.map +1 -1
  477. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.js +1 -1
  478. package/src/shade/descriptor/binding/BindGroupLayoutEntry.js +3 -3
  479. package/src/shade/descriptor/pipeline/PipelineDescriptorBase.js +1 -1
  480. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.js +1 -1
  481. package/src/shade/descriptor/pipeline/render/ColorTargetState.js +3 -3
  482. package/src/shade/descriptor/pipeline/render/FragmentState.js +1 -1
  483. package/src/shade/descriptor/pipeline/render/RenderPipelineDescriptor.js +3 -3
  484. package/src/shade/descriptor/texture/TextureDescriptor.d.ts +1 -1
  485. package/src/shade/device/ShadeGPUCommandContext.d.ts +1 -1
  486. package/src/shade/device/ShadeGPUCommandContext.d.ts.map +1 -1
  487. package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts +1 -1
  488. package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts.map +1 -1
  489. package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts +1 -1
  490. package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts.map +1 -1
  491. package/src/shade/device/timing/GPUTimerArray.d.ts.map +1 -1
  492. package/src/shade/device/timing/GPUTimerStats.d.ts +1 -1
  493. package/src/shade/device/timing/GPUTimerStats.d.ts.map +1 -1
  494. package/src/shade/device/timing/GPU_PROFILER_PROPOSAL_2026_08_28.md +894 -894
  495. package/src/shade/playground/basis_textures/texture_inventory.d.ts.map +1 -1
  496. package/src/shade/playground/bvh_repro/bvh_repro_device.d.ts.map +1 -1
  497. package/src/shade/playground/ground_seam/capture_scene_color.d.ts.map +1 -1
  498. package/src/shade/playground/ground_seam/measure_flicker.d.ts.map +1 -1
  499. package/src/shade/playground/particle_editor/README.md +1 -1
  500. package/src/shade/playground/particle_system/index.html +0 -1
  501. package/src/shade/playground/particle_system/main.js +1 -2
  502. package/src/shade/playground/particle_system/particle_prototype.d.ts +7 -9
  503. package/src/shade/playground/particle_system/particle_prototype.d.ts.map +1 -1
  504. package/src/shade/playground/particle_system/particle_prototype.js +7 -9
  505. package/src/shade/playground/particle_system/particle_scene.d.ts +5 -6
  506. package/src/shade/playground/particle_system/particle_scene.d.ts.map +1 -1
  507. package/src/shade/playground/particle_system/particle_scene.js +6 -7
  508. package/src/shade/playground/skinned_blas_refit/sweep_views.js +2 -2
  509. package/src/shade/playground/skinned_blas_refit/verify_traversal_reachability.js +1 -1
  510. package/src/shade/playground/ssr_motion/README.md +22 -0
  511. package/src/shade/playground/ssr_motion/index.html +18 -0
  512. package/src/shade/playground/ssr_motion/main.d.ts +2 -0
  513. package/src/shade/playground/ssr_motion/main.d.ts.map +1 -0
  514. package/src/shade/playground/ssr_motion/main.js +149 -0
  515. package/src/shade/playground/ssr_variance/index.html +1 -0
  516. package/src/shade/playground/vgeo_viewer/README.md +123 -0
  517. package/src/shade/playground/vgeo_viewer/cut_geometry.d.ts +61 -0
  518. package/src/shade/playground/vgeo_viewer/cut_geometry.d.ts.map +1 -0
  519. package/src/shade/playground/vgeo_viewer/cut_geometry.js +497 -0
  520. package/src/shade/playground/vgeo_viewer/index.html +77 -0
  521. package/src/shade/playground/vgeo_viewer/main.d.ts +2 -0
  522. package/src/shade/playground/vgeo_viewer/main.d.ts.map +1 -0
  523. package/src/shade/playground/vgeo_viewer/main.js +1288 -0
  524. package/src/shade/playground/vgeo_viewer/sample_asset.d.ts +18 -0
  525. package/src/shade/playground/vgeo_viewer/sample_asset.d.ts.map +1 -0
  526. package/src/shade/playground/vgeo_viewer/sample_asset.js +117 -0
  527. package/src/shade/playground/vgeo_viewer/select_cut.d.ts +154 -0
  528. package/src/shade/playground/vgeo_viewer/select_cut.d.ts.map +1 -0
  529. package/src/shade/playground/vgeo_viewer/select_cut.js +437 -0
  530. package/src/shade/renderer/DynamicResolutionScaling.d.ts +1 -1
  531. package/src/shade/renderer/DynamicResolutionScaling.d.ts.map +1 -1
  532. package/src/shade/renderer/Renderer.d.ts +5 -5
  533. package/src/shade/renderer/Renderer.d.ts.map +1 -1
  534. package/src/shade/renderer/animation/GPUAnimationManager.d.ts.map +1 -1
  535. package/src/shade/renderer/animation/skin_normalize_mesh_frame.d.ts.map +1 -1
  536. package/src/shade/renderer/camera/Camera.d.ts +3 -3
  537. package/src/shade/renderer/camera/Camera.d.ts.map +1 -1
  538. package/src/shade/renderer/camera/GPUCameraContext.d.ts +1 -1
  539. package/src/shade/renderer/camera/GPUCameraContext.d.ts.map +1 -1
  540. package/src/shade/renderer/camera/OrthographicCamera.d.ts +4 -4
  541. package/src/shade/renderer/camera/OrthographicCamera.d.ts.map +1 -1
  542. package/src/shade/renderer/camera/PerspectiveCamera.d.ts +2 -2
  543. package/src/shade/renderer/camera/PerspectiveCamera.d.ts.map +1 -1
  544. package/src/shade/renderer/camera/orbital/OrbitalCameraController.d.ts +11 -3
  545. package/src/shade/renderer/camera/orbital/OrbitalCameraController.d.ts.map +1 -1
  546. package/src/shade/renderer/camera/orbital/OrbitalCameraController.js +25 -5
  547. package/src/shade/renderer/extension/FrameContext.d.ts +1 -1
  548. package/src/shade/renderer/extension/FrameContext.d.ts.map +1 -1
  549. package/src/shade/renderer/extension/GBufferTextures.d.ts +4 -4
  550. package/src/shade/renderer/extension/GBufferTextures.d.ts.map +1 -1
  551. package/src/shade/renderer/extension/PresentTarget.d.ts +1 -1
  552. package/src/shade/renderer/extension/PresentTarget.d.ts.map +1 -1
  553. package/src/shade/renderer/extension/RENDER_EXTENSION_DESIGN.md +918 -918
  554. package/src/shade/renderer/extension/SceneColor.d.ts +1 -1
  555. package/src/shade/renderer/extension/SceneColor.d.ts.map +1 -1
  556. package/src/shade/renderer/extension/ViewTextures.d.ts +4 -4
  557. package/src/shade/renderer/extension/ViewTextures.d.ts.map +1 -1
  558. package/src/shade/renderer/geometry/Attribute.d.ts +1 -1
  559. package/src/shade/renderer/geometry/Attribute.d.ts.map +1 -1
  560. package/src/shade/renderer/geometry/Geometry.d.ts +1 -1
  561. package/src/shade/renderer/geometry/Geometry.d.ts.map +1 -1
  562. package/src/shade/renderer/geometry/Geometry.js +4 -7
  563. package/src/shade/renderer/geometry/bvh/bvh2_check_bounds.d.ts.map +1 -1
  564. package/src/shade/renderer/geometry/bvh/bvh2_derive_topology.d.ts.map +1 -1
  565. package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts +3 -3
  566. package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts.map +1 -1
  567. package/src/shade/renderer/geometry/virtual/build/gltf/gltf_collect_geometries.d.ts.map +1 -1
  568. package/src/shade/renderer/geometry/virtual/format/attribute/VGEO_ATTRIBUTES.d.ts.map +1 -1
  569. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.d.ts +29 -0
  570. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.d.ts.map +1 -0
  571. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.js +59 -0
  572. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.d.ts +0 -1
  573. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.d.ts.map +1 -1
  574. package/src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.js +2 -23
  575. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.d.ts +94 -0
  576. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.d.ts.map +1 -0
  577. package/src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.js +170 -0
  578. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerHeader.d.ts +122 -0
  579. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerHeader.d.ts.map +1 -0
  580. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerHeader.js +143 -0
  581. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts +185 -0
  582. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts.map +1 -0
  583. package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.js +572 -0
  584. package/src/shade/renderer/geometry/virtual/format/read/VGeoDirectory.d.ts +64 -0
  585. package/src/shade/renderer/geometry/virtual/format/read/VGeoDirectory.d.ts.map +1 -0
  586. package/src/shade/renderer/geometry/virtual/format/read/VGeoDirectory.js +80 -0
  587. package/src/shade/renderer/geometry/virtual/format/read/VGeoPage.d.ts +198 -0
  588. package/src/shade/renderer/geometry/virtual/format/read/VGeoPage.d.ts.map +1 -0
  589. package/src/shade/renderer/geometry/virtual/format/read/VGeoPage.js +232 -0
  590. package/src/shade/renderer/geometry/virtual/format/read/VGeoPageWant.d.ts +51 -0
  591. package/src/shade/renderer/geometry/virtual/format/read/VGeoPageWant.d.ts.map +1 -0
  592. package/src/shade/renderer/geometry/virtual/format/read/VGeoPageWant.js +55 -0
  593. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.d.ts +68 -0
  594. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.d.ts.map +1 -0
  595. package/src/shade/renderer/geometry/virtual/format/read/VGeoReadOptions.js +72 -0
  596. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.d.ts +28 -0
  597. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.d.ts.map +1 -0
  598. package/src/shade/renderer/geometry/virtual/format/read/vgeo_fetch_byte_source.js +108 -0
  599. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_directory.d.ts +23 -0
  600. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_directory.d.ts.map +1 -0
  601. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_directory.js +83 -0
  602. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_header.d.ts +53 -0
  603. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_header.d.ts.map +1 -0
  604. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_header.js +211 -0
  605. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_page.d.ts +26 -0
  606. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_page.d.ts.map +1 -0
  607. package/src/shade/renderer/geometry/virtual/format/read/vgeo_read_page.js +271 -0
  608. package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts.map +1 -1
  609. package/src/shade/renderer/global_illumination/clipmap/GPUClipMap3D.d.ts +2 -2
  610. package/src/shade/renderer/global_illumination/clipmap/GPUClipMap3D.d.ts.map +1 -1
  611. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts +1 -1
  612. package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts.map +1 -1
  613. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts +1 -1
  614. package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts.map +1 -1
  615. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts +1 -1
  616. package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts.map +1 -1
  617. package/src/shade/renderer/gpu_primitive/bvh/check_bvh_structure.d.ts.map +1 -1
  618. package/src/shade/renderer/light/LightCollection.d.ts +2 -2
  619. package/src/shade/renderer/light/LightCollection.d.ts.map +1 -1
  620. package/src/shade/renderer/light/model/PointLight.d.ts +1 -1
  621. package/src/shade/renderer/light/model/PointLight.d.ts.map +1 -1
  622. package/src/shade/renderer/light/model/SpotLight.d.ts +1 -1
  623. package/src/shade/renderer/light/model/SpotLight.d.ts.map +1 -1
  624. package/src/shade/renderer/loader/gltf/fix_up_material_sides.d.ts.map +1 -1
  625. package/src/shade/renderer/loader/gltf/gltf_create_material.d.ts +1 -1
  626. package/src/shade/renderer/loader/gltf/gltf_create_material.d.ts.map +1 -1
  627. package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts +2 -2
  628. package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts.map +1 -1
  629. package/src/shade/renderer/loader/usd/usd_decode_image.d.ts +1 -1
  630. package/src/shade/renderer/loader/usd/usd_decode_image.d.ts.map +1 -1
  631. package/src/shade/renderer/material/StandardShadeMaterial.js +2 -2
  632. package/src/shade/renderer/material/util/material_convert_metallic_roughness_to_specular_glossiness.d.ts.map +1 -1
  633. package/src/shade/renderer/material/util/material_convert_specular_glossiness_to_metallic_roughness.d.ts.map +1 -1
  634. package/src/shade/renderer/particles/DESIGN.md +27 -18
  635. package/src/shade/renderer/particles/GPUParticleSystem.d.ts +24 -10
  636. package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
  637. package/src/shade/renderer/particles/GPUParticleSystem.js +80 -73
  638. package/src/shade/renderer/particles/coherence/graph_particle_bucket.d.ts +17 -16
  639. package/src/shade/renderer/particles/coherence/graph_particle_bucket.d.ts.map +1 -1
  640. package/src/shade/renderer/particles/coherence/graph_particle_bucket.js +35 -22
  641. package/src/shade/renderer/particles/graph/ParticleGroupBuilder.d.ts +7 -7
  642. package/src/shade/renderer/particles/graph/ParticleGroupBuilder.d.ts.map +1 -1
  643. package/src/shade/renderer/particles/graph/ParticleGroupBuilder.js +1 -1
  644. package/src/shade/renderer/particles/graph/ParticleNodeGroup.d.ts.map +1 -1
  645. package/src/shade/renderer/particles/graph/ParticleNodeRegistry.d.ts.map +1 -1
  646. package/src/shade/renderer/particles/graph/ParticleNodeRegistry.js +9 -15
  647. package/src/shade/renderer/particles/graph/ParticleValueType.d.ts +1 -1
  648. package/src/shade/renderer/particles/graph/ParticleValueType.d.ts.map +1 -1
  649. package/src/shade/renderer/particles/graph/make_particle_group.d.ts.map +1 -1
  650. package/src/shade/renderer/particles/graph/particle_graph_authoring.d.ts.map +1 -1
  651. package/src/shade/renderer/particles/graph/particle_group_json.d.ts.map +1 -1
  652. package/src/shade/renderer/particles/graph/particle_group_library.d.ts.map +1 -1
  653. package/src/shade/renderer/particles/graph/particle_group_library.js +8 -3
  654. package/src/shade/renderer/particles/graph/particle_node_parameters.d.ts +0 -2
  655. package/src/shade/renderer/particles/graph/particle_node_parameters.d.ts.map +1 -1
  656. package/src/shade/renderer/particles/graph/particle_node_parameters.js +0 -9
  657. package/src/shade/renderer/particles/graph/particle_node_presentation.d.ts.map +1 -1
  658. package/src/shade/renderer/particles/graph/particle_node_presentation.js +0 -10
  659. package/src/shade/renderer/particles/graph/particle_ramp.d.ts +2 -8
  660. package/src/shade/renderer/particles/graph/particle_ramp.d.ts.map +1 -1
  661. package/src/shade/renderer/particles/graph/particle_ramp.js +2 -8
  662. package/src/shade/renderer/particles/graph/validate_particle_graph.js +0 -6
  663. package/src/shade/renderer/particles/graph_particles.d.ts +11 -0
  664. package/src/shade/renderer/particles/graph_particles.d.ts.map +1 -1
  665. package/src/shade/renderer/particles/graph_particles.js +55 -37
  666. package/src/shade/renderer/particles/graph_particles_avboit.d.ts.map +1 -1
  667. package/src/shade/renderer/particles/graph_particles_avboit.js +13 -4
  668. package/src/shade/renderer/particles/graph_particles_billboard.d.ts.map +1 -1
  669. package/src/shade/renderer/particles/isa/InstructionStream.d.ts +1 -12
  670. package/src/shade/renderer/particles/isa/InstructionStream.d.ts.map +1 -1
  671. package/src/shade/renderer/particles/isa/InstructionStream.js +1 -12
  672. package/src/shade/renderer/particles/isa/ParticleVMISA.d.ts +54 -60
  673. package/src/shade/renderer/particles/isa/ParticleVMISA.d.ts.map +1 -1
  674. package/src/shade/renderer/particles/isa/ParticleVMISA.js +9 -17
  675. package/src/shade/renderer/particles/isa/particle_assembly.d.ts +0 -1
  676. package/src/shade/renderer/particles/isa/particle_assembly.d.ts.map +1 -1
  677. package/src/shade/renderer/particles/isa/particle_assembly.js +2 -16
  678. package/src/shade/renderer/particles/layout/ParticleLayout.d.ts.map +1 -1
  679. package/src/shade/renderer/particles/optimizer/dag/particle_vector_graph.d.ts +1 -1
  680. package/src/shade/renderer/particles/optimizer/dag/particle_vector_graph.js +1 -1
  681. package/src/shade/renderer/particles/optimizer/dag/particle_vector_lift.d.ts.map +1 -1
  682. package/src/shade/renderer/particles/optimizer/dag/particle_vector_lift.js +0 -14
  683. package/src/shade/renderer/particles/optimizer/dag/particle_vector_pack.d.ts.map +1 -1
  684. package/src/shade/renderer/particles/optimizer/dag/particle_vector_pack.js +3 -17
  685. package/src/shade/renderer/particles/optimizer/optimize_particle_program.d.ts +1 -1
  686. package/src/shade/renderer/particles/optimizer/optimize_particle_program.d.ts.map +1 -1
  687. package/src/shade/renderer/particles/optimizer/particle_program_analysis.d.ts.map +1 -1
  688. package/src/shade/renderer/particles/optimizer/particle_program_analysis.js +15 -36
  689. package/src/shade/renderer/particles/optimizer/particle_program_equivalence.d.ts.map +1 -1
  690. package/src/shade/renderer/particles/optimizer/particle_program_equivalence.js +1 -5
  691. package/src/shade/renderer/particles/optimizer/particle_program_fuzz.d.ts.map +1 -1
  692. package/src/shade/renderer/particles/optimizer/particle_program_fuzz.js +1 -8
  693. package/src/shade/renderer/particles/optimizer/particle_vm_semantics.d.ts +2 -11
  694. package/src/shade/renderer/particles/optimizer/particle_vm_semantics.d.ts.map +1 -1
  695. package/src/shade/renderer/particles/optimizer/particle_vm_semantics.js +2 -11
  696. package/src/shade/renderer/particles/runtime/create_particle_effect.d.ts.map +1 -1
  697. package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.d.ts.map +1 -1
  698. package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.js +13 -0
  699. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.d.ts +3 -6
  700. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.d.ts.map +1 -1
  701. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +49 -17
  702. package/src/shade/renderer/particles/shaders/shader_particle_emit.d.ts.map +1 -1
  703. package/src/shade/renderer/particles/shaders/shader_particle_emit.js +0 -2
  704. package/src/shade/renderer/particles/shaders/shader_particle_emit_wide.d.ts.map +1 -1
  705. package/src/shade/renderer/particles/shaders/shader_particle_emit_wide.js +0 -2
  706. package/src/shade/renderer/particles/shaders/shader_particle_simulate.d.ts.map +1 -1
  707. package/src/shade/renderer/particles/shaders/shader_particle_simulate.js +1 -5
  708. package/src/shade/renderer/particles/shaders/shader_particle_simulate_wide.d.ts.map +1 -1
  709. package/src/shade/renderer/particles/shaders/shader_particle_simulate_wide.js +0 -2
  710. package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts +17 -13
  711. package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts.map +1 -1
  712. package/src/shade/renderer/particles/sort/graph_particle_sort.js +43 -33
  713. package/src/shade/renderer/particles/vm/ParticleVMReference.d.ts +1 -3
  714. package/src/shade/renderer/particles/vm/ParticleVMReference.d.ts.map +1 -1
  715. package/src/shade/renderer/particles/vm/ParticleVMReference.js +4 -20
  716. package/src/shade/renderer/particles/vm/chunk_particle_vm.d.ts.map +1 -1
  717. package/src/shade/renderer/particles/vm/chunk_particle_vm.js +2 -5
  718. package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance.d.ts.map +1 -1
  719. package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance.js +0 -2
  720. package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance_wide.d.ts.map +1 -1
  721. package/src/shade/renderer/particles/warmup/shader_particle_warmup_advance_wide.js +0 -2
  722. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts +1 -1
  723. package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts.map +1 -1
  724. package/src/shade/renderer/postprocess/graph_pass_composit_red_as_rgba.d.ts.map +1 -1
  725. package/src/shade/renderer/postprocess/nss/NSS.d.ts +4 -4
  726. package/src/shade/renderer/postprocess/nss/NSS.d.ts.map +1 -1
  727. package/src/shade/renderer/postprocess/ssr/SSR.d.ts +3 -3
  728. package/src/shade/renderer/postprocess/ssr/SSR.d.ts.map +1 -1
  729. package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_reprojection.d.ts.map +1 -1
  730. package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_reprojection.js +21 -0
  731. package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_temporal_accumulate.d.ts.map +1 -1
  732. package/src/shade/renderer/postprocess/ssr/reproject/chunk_ssr_temporal_accumulate.js +4 -0
  733. package/src/shade/renderer/postprocess/ssr/ssr_reproject_shader.d.ts.map +1 -1
  734. package/src/shade/renderer/postprocess/ssr/ssr_reproject_shader.js +2 -1
  735. package/src/shade/renderer/postprocess/taa/TAA.d.ts +2 -2
  736. package/src/shade/renderer/postprocess/taa/TAA.d.ts.map +1 -1
  737. package/src/shade/renderer/rasterize/bucket/prepare_meshlet_draw_commands_by_material.d.ts.map +1 -1
  738. package/src/shade/renderer/rasterize/native/avboit/AVBOITSideChannel.d.ts.map +1 -1
  739. package/src/shade/renderer/scene/InstanceBatch.d.ts +1 -1
  740. package/src/shade/renderer/scene/InstanceBatch.d.ts.map +1 -1
  741. package/src/shade/renderer/scene/Mesh.js +1 -1
  742. package/src/shade/renderer/scene/Node3D.d.ts +3 -3
  743. package/src/shade/renderer/scene/Node3D.d.ts.map +1 -1
  744. package/src/shade/renderer/scene/bvh/StaticSceneBVH.d.ts.map +1 -1
  745. package/src/shade/renderer/shader/compiler/CodeChunk.d.ts.map +1 -1
  746. package/src/shade/renderer/shader/graph/graph_prepare_pass_input_data.d.ts.map +1 -1
  747. package/src/shade/renderer/shader/graph/graph_prepare_pass_input_data.js +11 -0
  748. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts +1 -1
  749. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts.map +1 -1
  750. package/src/shade/renderer/texture/GPUTextureContext.d.ts +1 -1
  751. package/src/shade/renderer/texture/GPUTextureContext.d.ts.map +1 -1
  752. package/src/shade/renderer/texture/ShadeTexture.js +1 -1
  753. package/src/shade/renderer/texture/format/sampler_descriptor_unpack.d.ts.map +1 -1
  754. package/src/shade/renderer/texture/source/ShadeImage.d.ts +7 -7
  755. package/src/shade/renderer/texture/source/ShadeImage.d.ts.map +1 -1
  756. package/src/shade/renderer/texture/virtual/VTPageTable.d.ts.map +1 -1
  757. package/src/shade/renderer/view/GPUViewContext.d.ts +2 -2
  758. package/src/shade/renderer/view/GPUViewContext.d.ts.map +1 -1
  759. package/src/shade/renderer/view/GPUViewSkyContext.d.ts +1 -1
  760. package/src/shade/renderer/view/GPUViewSkyContext.d.ts.map +1 -1
  761. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts +2 -2
  762. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts.map +1 -1
  763. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts +1 -1
  764. package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts.map +1 -1
  765. package/src/shade/wgsl/emulator/CPUBitmapData.d.ts.map +1 -1
  766. package/src/view/View.d.ts +1 -1
  767. package/src/view/View.d.ts.map +1 -1
  768. package/src/view/elements/button/ButtonView.d.ts +1 -1
  769. package/src/view/elements/button/ButtonView.d.ts.map +1 -1
  770. package/src/view/elements/progress/SmoothProgressBar.d.ts +2 -2
  771. package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -1
  772. package/src/view/elements/radial/RadialMenuElement.d.ts +3 -3
  773. package/src/view/elements/radial/RadialMenuElement.d.ts.map +1 -1
  774. package/src/view/elements/windrose/WindRoseDiagram.d.ts.map +1 -1
  775. package/src/view/layout/DockLayoutView.d.ts.map +1 -1
  776. package/src/view/layout/DrawerView.d.ts +2 -2
  777. package/src/view/layout/DrawerView.d.ts.map +1 -1
  778. package/src/view/layout/SplitView.d.ts +9 -9
  779. package/src/view/layout/SplitView.d.ts.map +1 -1
  780. package/src/view/minimap/MinimapMarkerCollection.d.ts +3 -2
  781. package/src/view/minimap/MinimapMarkerCollection.d.ts.map +1 -1
  782. package/src/view/minimap/MinimapMarkerCollection.js +28 -5
  783. package/src/view/minimap/dom/MinimapMarkerView.js +65 -34
  784. package/src/view/minimap/gl/MarkerGL.d.ts +15 -3
  785. package/src/view/minimap/gl/MarkerGL.d.ts.map +1 -1
  786. package/src/view/minimap/gl/MarkerGL.js +31 -4
  787. package/src/engine/physics/BULLET_REVIEW.md +0 -945
  788. package/src/engine/physics/CANNON_REVIEW.md +0 -1300
  789. package/src/engine/physics/CONSTRAINT_SOLVER_BENCH_LOG.md +0 -208
  790. package/src/engine/physics/CONSTRAINT_SOLVER_IMPROVEMENTS_PLAN.md +0 -364
  791. package/src/engine/physics/INTEPOLATION_SYSTEM_PLAN.md +0 -287
  792. package/src/engine/physics/JOLT_REVIEW.md +0 -913
  793. package/src/engine/physics/PLAN.md +0 -1120
  794. package/src/engine/physics/RAPIER_REVIEW.md +0 -934
  795. package/src/engine/physics/REVIEW_001_ACTION_PLAN.md +0 -642
  796. package/src/engine/physics/REVIEW_002.md +0 -151
  797. package/src/engine/physics/REVIEW_003.md +0 -166
  798. package/src/shade/descriptor/util/optional_clone.d.ts.map +0 -1
  799. package/src/shade/descriptor/util/optional_equality.d.ts.map +0 -1
  800. package/src/shade/descriptor/util/optional_hash.d.ts.map +0 -1
  801. package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.js +0 -2063
  802. package/src/shade/renderer/particles/shaders/chunk_particle_curve_animation.d.ts +0 -19
  803. package/src/shade/renderer/particles/shaders/chunk_particle_curve_animation.d.ts.map +0 -1
  804. package/src/shade/renderer/particles/shaders/chunk_particle_curve_animation.js +0 -30
  805. package/src/shade/renderer/particles/shaders/chunk_particle_curve_disabled.d.ts +0 -11
  806. package/src/shade/renderer/particles/shaders/chunk_particle_curve_disabled.d.ts.map +0 -1
  807. package/src/shade/renderer/particles/shaders/chunk_particle_curve_disabled.js +0 -13
  808. /package/src/{shade/descriptor/util → core/model/object}/optional_clone.d.ts +0 -0
  809. /package/src/{shade/descriptor/util → core/model/object}/optional_clone.js +0 -0
@@ -17,7 +17,7 @@
17
17
  */
18
18
  export class SceneColor extends FrameRecord {
19
19
  static is_present_at(phase: any): boolean;
20
- set color(arg: number);
20
+ set color(handle: number);
21
21
  /**
22
22
  * @returns {number}
23
23
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SceneColor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/extension/SceneColor.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;GAgBG;AACH;IAGI,0CAIC;IASD,uBAEC;IATD;;OAEG;IACH,oBAEC;;CAKJ;4BAtC2B,kBAAkB"}
1
+ {"version":3,"file":"SceneColor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/extension/SceneColor.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;GAgBG;AACH;IAGI,0CAIC;IASD,0BAEC;IATD;;OAEG;IACH,oBAEC;;CAKJ;4BAtC2B,kBAAkB"}
@@ -12,26 +12,26 @@
12
12
  */
13
13
  export class ViewTextures extends FrameRecord {
14
14
  static is_present_at(phase: any): boolean;
15
- set depth(arg: number);
15
+ set depth(handle: number);
16
16
  /**
17
17
  * @returns {number}
18
18
  */
19
19
  get depth(): number;
20
- set depth_previous(arg: number);
20
+ set depth_previous(handle: number);
21
21
  /**
22
22
  * Last frame's depth, which reprojection-shaped effects need.
23
23
  *
24
24
  * @returns {number}
25
25
  */
26
26
  get depth_previous(): number;
27
- set visibility_mesh(arg: number);
27
+ set visibility_mesh(handle: number);
28
28
  /**
29
29
  * Which mesh each pixel came from. What an outline or a selection highlight is derived from.
30
30
  *
31
31
  * @returns {number}
32
32
  */
33
33
  get visibility_mesh(): number;
34
- set visibility_triangle(arg: number);
34
+ set visibility_triangle(handle: number);
35
35
  /**
36
36
  * Which triangle each pixel came from.
37
37
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ViewTextures.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/extension/ViewTextures.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH;IAMI,0CAKC;IASD,uBAEC;IATD;;OAEG;IACH,oBAEC;IAeD,gCAEC;IAXD;;;;OAIG;IACH,6BAEC;IAeD,iCAEC;IAXD;;;;OAIG;IACH,8BAEC;IAeD,qCAEC;IAXD;;;;OAIG;IACH,kCAEC;;CAKJ;4BA5E2B,kBAAkB"}
1
+ {"version":3,"file":"ViewTextures.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/extension/ViewTextures.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH;IAMI,0CAKC;IASD,0BAEC;IATD;;OAEG;IACH,oBAEC;IAeD,mCAEC;IAXD;;;;OAIG;IACH,6BAEC;IAeD,oCAEC;IAXD;;;;OAIG;IACH,8BAEC;IAeD,wCAEC;IAXD;;;;OAIG;IACH,kCAEC;;CAKJ;4BA5E2B,kBAAkB"}
@@ -34,7 +34,7 @@ export class Attribute {
34
34
  *
35
35
  * @param {boolean} v
36
36
  */
37
- set needsUpdate(arg: boolean);
37
+ set needsUpdate(v: boolean);
38
38
  /**
39
39
  * @deprecated
40
40
  * @return {string}
@@ -1 +1 @@
1
- {"version":3,"file":"Attribute.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/geometry/Attribute.js"],"names":[],"mappings":"AASA;;;;GAIG;AACH;IA8GI;;;;;OAKG;IACH,mBAJW,MAAM,EAAE,GAAC,YAAY,GAAC,WAAW,GAAC,UAAU,GAAC,WAAW,aACxD,MAAM,SACN,MAAM,aAqBhB;IArID;;;OAGG;IACH,MAFU,aAAa,CAEI;IAG3B;;OAEG;IACH,MAFU,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,gBAAY,YAAY,GAAC,YAAY,CAEpE;IAEL;;;OAGG;IACH,OAFU,MAAM,CAEN;IASV;;;OAGG;IACH,sBAEC;IAED;;;OAGG;IACH,8BAMC;IAED;;;OAGG;IACH,mBAEC;IAED;;;OAGG;IACH,uBAEC;IAGD;;;;OAIG;IACH,cAHW,SAAS,GACP,OAAO,CAOnB;IAED,eAMC;IAED;;;OAGG;IACH,YAFW,SAAS,QAUnB;IAED;;;OAGG;IACH,SAFY,SAAS,CAQpB;IA6BD;;;OAGG;IACH,iCAQC;IAGL;;;OAGG;IACH,sBAFU,OAAO,CAEc;;CAN9B;8BA7J6B,oDAAoD"}
1
+ {"version":3,"file":"Attribute.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/geometry/Attribute.js"],"names":[],"mappings":"AASA;;;;GAIG;AACH;IA8GI;;;;;OAKG;IACH,mBAJW,MAAM,EAAE,GAAC,YAAY,GAAC,WAAW,GAAC,UAAU,GAAC,WAAW,aACxD,MAAM,SACN,MAAM,aAqBhB;IArID;;;OAGG;IACH,MAFU,aAAa,CAEI;IAG3B;;OAEG;IACH,MAFU,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,gBAAY,YAAY,GAAC,YAAY,CAEpE;IAEL;;;OAGG;IACH,OAFU,MAAM,CAEN;IASV;;;OAGG;IACH,sBAEC;IAED;;;OAGG;IACH,4BAMC;IAED;;;OAGG;IACH,mBAEC;IAED;;;OAGG;IACH,uBAEC;IAGD;;;;OAIG;IACH,cAHW,SAAS,GACP,OAAO,CAOnB;IAED,eAMC;IAED;;;OAGG;IACH,YAFW,SAAS,QAUnB;IAED;;;OAGG;IACH,SAFY,SAAS,CAQpB;IA6BD;;;OAGG;IACH,iCAQC;IAGL;;;OAGG;IACH,sBAFU,OAAO,CAEc;;CAN9B;8BA7J6B,oDAAoD"}
@@ -57,7 +57,7 @@ export class Geometry {
57
57
  /**
58
58
  * @param {boolean} v
59
59
  */
60
- set needsUpdate(arg: boolean);
60
+ set needsUpdate(v: boolean);
61
61
  /**
62
62
  *
63
63
  * @param {number|GeometryFlags} flag
@@ -1 +1 @@
1
- {"version":3,"file":"Geometry.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/geometry/Geometry.js"],"names":[],"mappings":"4BA2BU,MAAM;;;;AAQhB;;GAEG;AACH;IAQI;;;;OAIG;IACH,iBAEC;IAED;;;OAGG;IACH,MAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,YAFU,SAAS,EAAE,CAEL;IAEhB;;;OAGG;IACH,OAFU,SAAS,GAAC,IAAI,CAEX;IAEb;;;OAGG;IACH,cAFU,YAAY,CAEa;IACnC;;;OAGG;IACH,iBAFU,YAAY,CAEgB;IAEtC;;;OAGG;IACH,OAFU,MAAM,CAEM;IAOtB;;;;;;;;;;OAUG;IACH,sBAEC;IAED;;OAEG;IACH,8BAIC;IAGD;;;;OAIG;IACH,cAHW,MAAM,GAAC,aAAa,GAClB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,aAAa,GAClB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,aAAa,SACpB,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM,GAAC,aAAa,GAClB,OAAO,CAInB;IAED;;;;OAIG;IACH,cAHW,QAAQ,GACN,OAAO,CAYnB;IAED,eAQC;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACL,SAAS,GAAC,SAAS,CAkB9B;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,OAAO,CAMnB;IAED;;;OAGG;IACH,wBAFW,SAAS,QAQnB;IAED;;;OAGG;IACH,wBAFW,SAAS,QASnB;IAED;;;;OAIG;IACH,sBAHW,MAAM,GACL,SAAS,GAAC,SAAS,CAiB9B;IAED;;;OAGG;IACH,kBAFY,MAAM,CAWjB;IAED;;;OAGG;IACH,iBAFY,MAAM,CAYjB;IAED;;;;OAIG;IACH,qBAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,oBAIC;IAED;;OAEG;IACH,mBASC;IAED,qBAIC;IAED;;OAEG;IACH,qCAoBC;IAED,8BAaC;IAED,8BAKC;IAED,2BAeC;IAED,sBAOC;IAED,uBA4BC;IAoFD,uBAOC;IAED,wBAWC;IAED;;;OAGG;IACH,YAFW,QAAQ,QAmBlB;IAED;;;OAGG;IACH,SAFY,QAAQ,CAQnB;IAED,eAEC;IAED;;;OAGG;IACH,iCAYC;IAGL;;;OAGG;IACH,qBAFU,OAAO,CAEY;;CAN5B;0BAvkByB,gBAAgB"}
1
+ {"version":3,"file":"Geometry.d.ts","sourceRoot":"","sources":["../../../../../src/shade/renderer/geometry/Geometry.js"],"names":[],"mappings":"4BA4BU,MAAM;;;;AAQhB;;GAEG;AACH;IAQI;;;;OAIG;IACH,iBAEC;IAED;;;OAGG;IACH,MAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,YAFU,SAAS,EAAE,CAEL;IAEhB;;;OAGG;IACH,OAFU,SAAS,GAAC,IAAI,CAEX;IAEb;;;OAGG;IACH,cAFU,YAAY,CAEa;IACnC;;;OAGG;IACH,iBAFU,YAAY,CAEgB;IAEtC;;;OAGG;IACH,OAFU,MAAM,CAEM;IAOtB;;;;;;;;;;OAUG;IACH,sBAEC;IAED;;OAEG;IACH,4BAIC;IAGD;;;;OAIG;IACH,cAHW,MAAM,GAAC,aAAa,GAClB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,aAAa,GAClB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,aAAa,SACpB,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM,GAAC,aAAa,GAClB,OAAO,CAInB;IAED;;;;OAIG;IACH,cAHW,QAAQ,GACN,OAAO,CAYnB;IAED,eAQC;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACL,SAAS,GAAC,SAAS,CAkB9B;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,OAAO,CAMnB;IAED;;;OAGG;IACH,wBAFW,SAAS,QAQnB;IAED;;;OAGG;IACH,wBAFW,SAAS,QASnB;IAED;;;;OAIG;IACH,sBAHW,MAAM,GACL,SAAS,GAAC,SAAS,CAiB9B;IAED;;;OAGG;IACH,kBAFY,MAAM,CAWjB;IAED;;;OAGG;IACH,iBAFY,MAAM,CAYjB;IAED;;;;OAIG;IACH,qBAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,oBAIC;IAED;;OAEG;IACH,mBASC;IAED,qBAIC;IAED;;OAEG;IACH,qCAoBC;IAED,8BAaC;IAED,8BAKC;IAED,2BAeC;IAED,sBAOC;IAED,uBA4BC;IAoFD,uBAOC;IAED,wBAWC;IAED;;;OAGG;IACH,YAFW,QAAQ,QAelB;IAED;;;OAGG;IACH,SAFY,QAAQ,CAQnB;IAED,eAEC;IAED;;;OAGG;IACH,iCAYC;IAGL;;;OAGG;IACH,qBAFU,OAAO,CAEY;;CAN5B;0BAnkByB,gBAAgB"}
@@ -14,8 +14,9 @@ import {
14
14
  import {
15
15
  geometry_compute_vertex_normals_unindexed
16
16
  } from "../../../engine/graphics/geometry/buffered/geometry_compute_vertex_normals_unindexed.js";
17
- import { optional_equality } from "../../descriptor/util/optional_equality.js";
18
- import { optional_hash } from "../../descriptor/util/optional_hash.js";
17
+ import { optional_clone } from "../../../core/model/object/optional_clone.js";
18
+ import { optional_equality } from "../../../core/model/object/optional_equality.js";
19
+ import { optional_hash } from "../../../core/model/object/optional_hash.js";
19
20
  import { Attribute } from "./Attribute.js";
20
21
  import { build_tangent_from_normal } from "./normals/build_tangent_from_normal.js";
21
22
  import { geometry_build_tangents } from "./normals/geometry_build_tangents.js";
@@ -551,11 +552,7 @@ export class Geometry {
551
552
 
552
553
  this.name = other.name;
553
554
 
554
- if (other.index !== null) {
555
- this.index = other.index.clone();
556
- } else {
557
- this.index = null;
558
- }
555
+ this.index = optional_clone(other.index);
559
556
 
560
557
  this.attributes = other.attributes.map(a => a.clone());
561
558
 
@@ -1 +1 @@
1
- {"version":3,"file":"bvh2_check_bounds.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/renderer/geometry/bvh/bvh2_check_bounds.js"],"names":[],"mappings":"AA6EA;;;;;;;;;;;;;;;;;GAiBG;AACH,8CALW,WAAW,GAAC,YAAY;IAEP,KAAK,GAAtB,MAAM;;cACO,MAAM,EAAE;cAAY,MAAM;YAAU,MAAM;WAAS,OAAO;EAwFjF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,8CAPW,WAAW,GAAC,YAAY,0BACf,MAAM,QAAE,MAAM,KAAG,CAAC,MAAM,EAAE,GAAC,IAAI,CAAC;IAGxB,KAAK,GAAtB,MAAM;;cACO,MAAM,EAAE;YAAU,MAAM;WAAS,OAAO;EA6D/D"}
1
+ {"version":3,"file":"bvh2_check_bounds.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/renderer/geometry/bvh/bvh2_check_bounds.js"],"names":[],"mappings":"AA6EA;;;;;;;;;;;;;;;;;GAiBG;AACH,8CALW,WAAW,GAAC,YAAY;IAEP,KAAK,GAAtB,MAAM;IACJ;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAC,CAwFlF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,8CAPW,WAAW,GAAC,YAAY,0BACf,MAAM,QAAE,MAAM,KAAG,CAAC,MAAM,EAAE,GAAC,IAAI,CAAC;IAGxB,KAAK,GAAtB,MAAM;IACJ;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAC,CA6DhE"}
@@ -1 +1 @@
1
- {"version":3,"file":"bvh2_derive_topology.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/renderer/geometry/bvh/bvh2_derive_topology.js"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;;;;GAiBG;AACH,4CALW,WAAW;aACC,WAAW;gBAAc,WAAW;EAuD1D"}
1
+ {"version":3,"file":"bvh2_derive_topology.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/renderer/geometry/bvh/bvh2_derive_topology.js"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;;;;GAiBG;AACH,4CALW,WAAW,GACT;IAAC,OAAO,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,WAAW,CAAA;CAAC,CAuD3D"}
@@ -6,13 +6,13 @@ export class MeshletBatch {
6
6
  *
7
7
  * @param {ArrayBuffer} value
8
8
  */
9
- set data_buffer(arg: ArrayBuffer);
9
+ set data_buffer(value: ArrayBuffer);
10
10
  get data_buffer(): ArrayBuffer;
11
11
  /**
12
12
  *
13
13
  * @param {ArrayBuffer} value
14
14
  */
15
- set metadata_buffer(arg: ArrayBuffer);
15
+ set metadata_buffer(value: ArrayBuffer);
16
16
  /**
17
17
  *
18
18
  * @returns {ArrayBuffer}
@@ -22,7 +22,7 @@ export class MeshletBatch {
22
22
  *
23
23
  * @param {number} value
24
24
  */
25
- set count(arg: number);
25
+ set count(value: number);
26
26
  /**
27
27
  * Number of meshlets in the batch
28
28
  * @return {number}
@@ -1 +1 @@
1
- {"version":3,"file":"MeshletBatch.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/renderer/geometry/meshlet/MeshletBatch.js"],"names":[],"mappings":"AA8DA;;GAEG;AACH;IAiBI;;;OAGG;IACH,kCAGC;IAXD,+BAEC;IA6BD;;;OAGG;IACH,sCAGC;IAfD;;;OAGG;IACH,mCAEC;IAqBD;;;OAGG;IACH,uBAEC;IAdD;;;OAGG;IACH,oBAEC;IAUD;;;OAGG;IACH,QAFa,MAAM,CASlB;IAED;;;OAGG;IACH,cAFW,YAAY,WAQtB;IAED;;;;OAIG;IACH,YAFa,MAAM,CAoFlB;IAED;;;OAGG;IACH,iBAEC;IAED;;;;OAIG;IACH,wBAHW,MAAM,GACL,EAAE,CAeb;IAED;;;OAGG;IACH,yBAFW,MAAM;;;;MAgChB;IA4LD,qBA+BC;IAED;;;OAGG;IACH,gCAOC;IAIL;;;;OAIG;IACH,yBAFU,OAAO,CAEoB;;CAPpC"}
1
+ {"version":3,"file":"MeshletBatch.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/renderer/geometry/meshlet/MeshletBatch.js"],"names":[],"mappings":"AA8DA;;GAEG;AACH;IAiBI;;;OAGG;IACH,oCAGC;IAXD,+BAEC;IA6BD;;;OAGG;IACH,wCAGC;IAfD;;;OAGG;IACH,mCAEC;IAqBD;;;OAGG;IACH,yBAEC;IAdD;;;OAGG;IACH,oBAEC;IAUD;;;OAGG;IACH,QAFa,MAAM,CASlB;IAED;;;OAGG;IACH,cAFW,YAAY,WAQtB;IAED;;;;OAIG;IACH,YAFa,MAAM,CAoFlB;IAED;;;OAGG;IACH,iBAEC;IAED;;;;OAIG;IACH,wBAHW,MAAM,GACL,EAAE,CAeb;IAED;;;OAGG;IACH,yBAFW,MAAM;;;;MAgChB;IA4LD,qBA+BC;IAED;;;OAGG;IACH,gCAOC;IAIL;;;;OAIG;IACH,yBAFU,OAAO,CAEoB;;CAPpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"gltf_collect_geometries.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/build/gltf/gltf_collect_geometries.js"],"names":[],"mappings":"AA0NA;;;;;;;;;;GAUG;AACH;gBAH0B,YAAY,EAAE;YAAU,iBAAiB;EAqElE;6BA7R4B,mBAAmB;kCADd,wBAAwB"}
1
+ {"version":3,"file":"gltf_collect_geometries.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/build/gltf/gltf_collect_geometries.js"],"names":[],"mappings":"AA0NA;;;;;;;;;;GAUG;AACH,mGAHa;IAAC,UAAU,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAC,CAqEnE;6BA7R4B,mBAAmB;kCADd,wBAAwB"}
@@ -1 +1 @@
1
- {"version":3,"file":"VGEO_ATTRIBUTES.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/format/attribute/VGEO_ATTRIBUTES.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,8BAFU;IAAC,MAAK,kBAAkB,CAAC;IAAC,UAAU,EAAC,MAAM,CAAC;IAAC,QAAQ,EAAC,MAAM,EAAE,CAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAC,gBAAgB,EAAC,MAAM,CAAC;IAAC,QAAQ,EAAC,MAAM,CAAA;CAAC,EAAE,CAiChI;mCAjDgC,gCAAgC"}
1
+ {"version":3,"file":"VGEO_ATTRIBUTES.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/format/attribute/VGEO_ATTRIBUTES.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,8BAFU;IAAC,IAAI,EAAC,kBAAkB,CAAC;IAAC,UAAU,EAAC,MAAM,CAAC;IAAC,QAAQ,EAAC,MAAM,EAAE,CAAC;IAAC,KAAK,EAAC,MAAM,CAAC;IAAC,gBAAgB,EAAC,MAAM,CAAC;IAAC,QAAQ,EAAC,MAAM,CAAA;CAAC,EAAE,CAiChI;mCAjDgC,gCAAgC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * One frame's header, read where it sits.
3
+ *
4
+ * This is the whole of the format's self-delimiting rule (§5): 24 bytes say what codec the blob is
5
+ * under, how many child-table entries follow, and how long the blob is stored and decoded — from
6
+ * which the frame's extent, and therefore where the next one begins, follows. Nothing else in the
7
+ * file has to be consulted, which is what lets the same 24 bytes serve a sequential scan
8
+ * ({@link vgeo_scan_frames}) and a reader that fetched this frame's exact range and nothing else
9
+ * ({@link vgeo_read_page}).
10
+ *
11
+ * The `frame_offset` it comes back with is the `at` it was given, so a caller reading a range it
12
+ * fetched passes 0 and gets an extent whose offsets address that range — which is what the decoder
13
+ * wants — while a caller reading the whole file passes the absolute offset and gets absolute ones.
14
+ *
15
+ * The magic is deliberately not checked here. §5 forbids using a magic mismatch as the terminator of
16
+ * a prefix scan, and the scan is one of this function's two callers; the caller that fetched a
17
+ * specific range is the one for which a wrong magic means something, and it checks.
18
+ *
19
+ * @param {DataView} data over bytes that contain the frame header at `at`
20
+ * @param {number} at byte offset of the frame's first byte within `data`
21
+ * @param {number} page_index the frame's ordinal, which is also the page index
22
+ * @returns {VGeoFrameExtent}
23
+ *
24
+ * @author Alex Goldring
25
+ * @copyright Company Named Limited (c) 2026
26
+ */
27
+ export function vgeo_read_frame_extent(data: DataView, at: number, page_index: number): VGeoFrameExtent;
28
+ import { VGeoFrameExtent } from "./VGeoFrameExtent.js";
29
+ //# sourceMappingURL=vgeo_read_frame_extent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vgeo_read_frame_extent.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/format/frame/vgeo_read_frame_extent.js"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,6CARW,QAAQ,MACR,MAAM,cACN,MAAM,GACJ,eAAe,CAwB3B;gCArD+B,sBAAsB"}
@@ -0,0 +1,59 @@
1
+ import { round_up } from "../../../../../../core/math/round_up.js";
2
+ import { VGEO_CHILD_TABLE_ENTRY_SIZE } from "./VGEO_CHILD_TABLE_ENTRY_SIZE.js";
3
+ import { VGEO_FRAME_ALIGNMENT } from "./VGEO_FRAME_ALIGNMENT.js";
4
+ import { VGEO_FRAME_HEADER_SIZE } from "./VGEO_FRAME_HEADER_SIZE.js";
5
+ import { VGEO_FRAME_OFFSET } from "./VGEO_FRAME_OFFSET.js";
6
+ import { VGeoFrameExtent } from "./VGeoFrameExtent.js";
7
+
8
+ /**
9
+ * Everything in the container is little-endian (`VGEO_FORMAT.md` §2).
10
+ * @type {boolean}
11
+ */
12
+ const LE = true;
13
+
14
+ /**
15
+ * One frame's header, read where it sits.
16
+ *
17
+ * This is the whole of the format's self-delimiting rule (§5): 24 bytes say what codec the blob is
18
+ * under, how many child-table entries follow, and how long the blob is stored and decoded — from
19
+ * which the frame's extent, and therefore where the next one begins, follows. Nothing else in the
20
+ * file has to be consulted, which is what lets the same 24 bytes serve a sequential scan
21
+ * ({@link vgeo_scan_frames}) and a reader that fetched this frame's exact range and nothing else
22
+ * ({@link vgeo_read_page}).
23
+ *
24
+ * The `frame_offset` it comes back with is the `at` it was given, so a caller reading a range it
25
+ * fetched passes 0 and gets an extent whose offsets address that range — which is what the decoder
26
+ * wants — while a caller reading the whole file passes the absolute offset and gets absolute ones.
27
+ *
28
+ * The magic is deliberately not checked here. §5 forbids using a magic mismatch as the terminator of
29
+ * a prefix scan, and the scan is one of this function's two callers; the caller that fetched a
30
+ * specific range is the one for which a wrong magic means something, and it checks.
31
+ *
32
+ * @param {DataView} data over bytes that contain the frame header at `at`
33
+ * @param {number} at byte offset of the frame's first byte within `data`
34
+ * @param {number} page_index the frame's ordinal, which is also the page index
35
+ * @returns {VGeoFrameExtent}
36
+ *
37
+ * @author Alex Goldring
38
+ * @copyright Company Named Limited (c) 2026
39
+ */
40
+ export function vgeo_read_frame_extent(data, at, page_index) {
41
+ const result = new VGeoFrameExtent();
42
+
43
+ result.page_index = page_index;
44
+ result.frame_offset = at;
45
+
46
+ result.codec = data.getUint8(at + VGEO_FRAME_OFFSET.CODEC);
47
+ result.flags = data.getUint8(at + VGEO_FRAME_OFFSET.FLAGS);
48
+ result.child_page_count = data.getUint16(at + VGEO_FRAME_OFFSET.CHILD_PAGE_COUNT, LE);
49
+ result.stored_size = data.getUint32(at + VGEO_FRAME_OFFSET.STORED_SIZE, LE);
50
+ result.decoded_size = data.getUint32(at + VGEO_FRAME_OFFSET.DECODED_SIZE, LE);
51
+
52
+ result.extent = VGEO_FRAME_HEADER_SIZE
53
+ + VGEO_CHILD_TABLE_ENTRY_SIZE * result.child_page_count
54
+ + result.stored_size;
55
+
56
+ result.fetch_size = round_up(result.extent, VGEO_FRAME_ALIGNMENT);
57
+
58
+ return result;
59
+ }
@@ -14,5 +14,4 @@
14
14
  * @copyright Company Named Limited (c) 2026
15
15
  */
16
16
  export function vgeo_scan_frames(buffer: BinaryBuffer): VGeoFrameExtent[];
17
- import { VGeoFrameExtent } from "./VGeoFrameExtent.js";
18
17
  //# sourceMappingURL=vgeo_scan_frames.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vgeo_scan_frames.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.js"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;GAcG;AACH,wDALa,eAAe,EAAE,CAsD7B;gCAlE+B,sBAAsB"}
1
+ {"version":3,"file":"vgeo_scan_frames.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/format/frame/vgeo_scan_frames.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;GAcG;AACH,wDALa,iBAAiB,CAqC7B"}
@@ -1,11 +1,7 @@
1
- import { round_up } from "../../../../../../core/math/round_up.js";
2
- import { VGEO_CHILD_TABLE_ENTRY_SIZE } from "./VGEO_CHILD_TABLE_ENTRY_SIZE.js";
3
- import { VGEO_FRAME_ALIGNMENT } from "./VGEO_FRAME_ALIGNMENT.js";
4
1
  import { VGEO_FRAME_HEADER_SIZE } from "./VGEO_FRAME_HEADER_SIZE.js";
5
- import { VGEO_FRAME_OFFSET } from "./VGEO_FRAME_OFFSET.js";
6
2
  import { VGEO_HEADER_OFFSET } from "../header/VGEO_HEADER_OFFSET.js";
7
3
  import { VGEO_HEADER_SIZE } from "../header/VGEO_HEADER_SIZE.js";
8
- import { VGeoFrameExtent } from "./VGeoFrameExtent.js";
4
+ import { vgeo_read_frame_extent } from "./vgeo_read_frame_extent.js";
9
5
 
10
6
  /**
11
7
  * Walk a whole `.vgeo` file's frame region, in file order.
@@ -43,24 +39,7 @@ export function vgeo_scan_frames(buffer) {
43
39
  let offset = Math.max(VGEO_HEADER_SIZE, root_page_offset);
44
40
 
45
41
  while (offset + VGEO_FRAME_HEADER_SIZE <= end) {
46
- const extent_record = new VGeoFrameExtent();
47
-
48
- extent_record.page_index = result.length;
49
- extent_record.frame_offset = offset;
50
-
51
- buffer.position = offset + VGEO_FRAME_OFFSET.CODEC;
52
-
53
- extent_record.codec = buffer.readUint8();
54
- extent_record.flags = buffer.readUint8();
55
- extent_record.child_page_count = buffer.readUint16();
56
- extent_record.stored_size = buffer.readUint32();
57
- extent_record.decoded_size = buffer.readUint32();
58
-
59
- extent_record.extent = VGEO_FRAME_HEADER_SIZE
60
- + VGEO_CHILD_TABLE_ENTRY_SIZE * extent_record.child_page_count
61
- + extent_record.stored_size;
62
-
63
- extent_record.fetch_size = round_up(extent_record.extent, VGEO_FRAME_ALIGNMENT);
42
+ const extent_record = vgeo_read_frame_extent(buffer.dataView, offset, result.length);
64
43
 
65
44
  result.push(extent_record);
66
45
 
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Somewhere a `.vgeo` can be read from, a range at a time.
3
+ *
4
+ * The whole point of the container's layout is that a reader never needs all of it: the header is
5
+ * 256 bytes, a frame's exact extent is written in the parent that points at it, and a page decodes
6
+ * from its own bytes with no other page involved. What a reader needs from the environment is
7
+ * therefore not "give me the file" but "give me these bytes of it", and that is the whole of this
8
+ * class. An `ArrayBuffer` in hand is one implementation, a `File` the user dropped is another
9
+ * ({@link from_blob} — the browser reads only the slice), an HTTP range request a third
10
+ * ({@link vgeo_fetch_byte_source}).
11
+ *
12
+ * Reads are asynchronous because the interesting sources are. A source over bytes already in memory
13
+ * resolves immediately and costs a microtask, which is the right price for not having two readers.
14
+ *
15
+ * Ranges are checked against the length the source declares, so a file that names bytes it does not
16
+ * have fails here, naming the range, rather than somewhere downstream holding a short array.
17
+ *
18
+ * {@link request_count} and {@link bytes_read} are kept because they are the measurement a streaming
19
+ * reader exists to move: what a view actually cost to put on screen, against the size of the file it
20
+ * came from.
21
+ *
22
+ * @author Alex Goldring
23
+ * @copyright Company Named Limited (c) 2026
24
+ */
25
+ export class VGeoByteSource {
26
+ /**
27
+ * A source over bytes already in memory.
28
+ *
29
+ * Nothing is copied and nothing is deferred; it exists so that a caller holding a whole file —
30
+ * a build's own output, a fixture — reads it through the same interface as one that is
31
+ * streaming, and so that neither the reader nor anything under it has a resident case.
32
+ *
33
+ * @param {Uint8Array|ArrayBuffer} bytes
34
+ * @param {string} [name]
35
+ * @returns {VGeoByteSource}
36
+ */
37
+ static of(bytes: Uint8Array | ArrayBuffer, name?: string): VGeoByteSource;
38
+ /**
39
+ * A source over a `File` or a `Blob` — a file dropped onto a page.
40
+ *
41
+ * Genuinely partial: `Blob.slice` names a range and the browser reads that range, so dropping a
42
+ * gigabyte asset costs whatever the traversal asks for and not a gigabyte of heap. That is the
43
+ * one case where a debug tool and a runtime want exactly the same thing.
44
+ *
45
+ * @param {Blob} blob
46
+ * @param {string} [name]
47
+ * @returns {VGeoByteSource}
48
+ */
49
+ static from_blob(blob: Blob, name?: string): VGeoByteSource;
50
+ /**
51
+ * @param {number} byte_length
52
+ * @param {function(number, number): Promise<Uint8Array>} read given a byte offset and a byte
53
+ * count, resolves with exactly that many bytes
54
+ * @param {string} [name]
55
+ */
56
+ constructor(byte_length: number, read: (arg0: number, arg1: number) => Promise<Uint8Array>, name?: string);
57
+ /**
58
+ * How many bytes this source holds — the whole file, however little of it has been read.
59
+ * @type {number}
60
+ */
61
+ byte_length: number;
62
+ /**
63
+ * Reads served so far.
64
+ * @type {number}
65
+ */
66
+ request_count: number;
67
+ /**
68
+ * Bytes served so far. Against {@link byte_length}, this is the fraction of the file a session
69
+ * actually touched.
70
+ * @type {number}
71
+ */
72
+ bytes_read: number;
73
+ /**
74
+ * @returns {string}
75
+ */
76
+ get name(): string;
77
+ /**
78
+ * Forget what has been read so far.
79
+ *
80
+ * For re-opening the same file under different read options, where the question is what *this*
81
+ * open cost and a running total across both would answer nobody's.
82
+ */
83
+ reset_counters(): void;
84
+ /**
85
+ * @param {number} byte_offset
86
+ * @param {number} byte_length
87
+ * @returns {Promise<Uint8Array>} exactly that range
88
+ * @throws {Error} if the range is not inside the source, or the reader answered with a different
89
+ * number of bytes than it was asked for
90
+ */
91
+ read(byte_offset: number, byte_length: number): Promise<Uint8Array>;
92
+ #private;
93
+ }
94
+ //# sourceMappingURL=VGeoByteSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VGeoByteSource.d.ts","sourceRoot":"","sources":["../../../../../../../../src/shade/renderer/geometry/virtual/format/read/VGeoByteSource.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IAsGI;;;;;;;;;;OAUG;IACH,iBAJW,UAAU,GAAC,WAAW,SACtB,MAAM,GACJ,cAAc,CAU1B;IAED;;;;;;;;;;OAUG;IACH,uBAJW,IAAI,SACJ,MAAM,GACJ,cAAc,CAU1B;IA/GD;;;;;OAKG;IACH,yBALW,MAAM,eACG,MAAM,QAAE,MAAM,KAAG,QAAQ,UAAU,CAAC,SAE7C,MAAM,EAUhB;IA5CD;;;OAGG;IACH,aAFU,MAAM,CAEA;IAEhB;;;OAGG;IACH,eAFU,MAAM,CAEE;IAElB;;;;OAIG;IACH,YAFU,MAAM,CAED;IA6Bf;;OAEG;IACH,mBAEC;IAED;;;;;OAKG;IACH,uBAGC;IAED;;;;;;OAMG;IACH,kBANW,MAAM,eACN,MAAM,GACJ,QAAQ,UAAU,CAAC,CAgC/B;;CA2CJ"}
@@ -0,0 +1,170 @@
1
+ import { assert } from "../../../../../../core/assert.js";
2
+
3
+ /**
4
+ * Somewhere a `.vgeo` can be read from, a range at a time.
5
+ *
6
+ * The whole point of the container's layout is that a reader never needs all of it: the header is
7
+ * 256 bytes, a frame's exact extent is written in the parent that points at it, and a page decodes
8
+ * from its own bytes with no other page involved. What a reader needs from the environment is
9
+ * therefore not "give me the file" but "give me these bytes of it", and that is the whole of this
10
+ * class. An `ArrayBuffer` in hand is one implementation, a `File` the user dropped is another
11
+ * ({@link from_blob} — the browser reads only the slice), an HTTP range request a third
12
+ * ({@link vgeo_fetch_byte_source}).
13
+ *
14
+ * Reads are asynchronous because the interesting sources are. A source over bytes already in memory
15
+ * resolves immediately and costs a microtask, which is the right price for not having two readers.
16
+ *
17
+ * Ranges are checked against the length the source declares, so a file that names bytes it does not
18
+ * have fails here, naming the range, rather than somewhere downstream holding a short array.
19
+ *
20
+ * {@link request_count} and {@link bytes_read} are kept because they are the measurement a streaming
21
+ * reader exists to move: what a view actually cost to put on screen, against the size of the file it
22
+ * came from.
23
+ *
24
+ * @author Alex Goldring
25
+ * @copyright Company Named Limited (c) 2026
26
+ */
27
+ export class VGeoByteSource {
28
+ /**
29
+ * How many bytes this source holds — the whole file, however little of it has been read.
30
+ * @type {number}
31
+ */
32
+ byte_length = 0;
33
+
34
+ /**
35
+ * Reads served so far.
36
+ * @type {number}
37
+ */
38
+ request_count = 0;
39
+
40
+ /**
41
+ * Bytes served so far. Against {@link byte_length}, this is the fraction of the file a session
42
+ * actually touched.
43
+ * @type {number}
44
+ */
45
+ bytes_read = 0;
46
+
47
+ /**
48
+ * @type {function(number, number): Promise<Uint8Array>}
49
+ */
50
+ #read;
51
+
52
+ /**
53
+ * For the message, so a failed read says which file it was.
54
+ * @type {string}
55
+ */
56
+ #name;
57
+
58
+ /**
59
+ * @param {number} byte_length
60
+ * @param {function(number, number): Promise<Uint8Array>} read given a byte offset and a byte
61
+ * count, resolves with exactly that many bytes
62
+ * @param {string} [name]
63
+ */
64
+ constructor(byte_length, read, name = 'a byte source') {
65
+ assert.isNonNegativeInteger(byte_length, 'byte_length');
66
+ assert.isFunction(read, 'read');
67
+
68
+ this.byte_length = byte_length;
69
+
70
+ this.#read = read;
71
+ this.#name = name;
72
+ }
73
+
74
+ /**
75
+ * @returns {string}
76
+ */
77
+ get name() {
78
+ return this.#name;
79
+ }
80
+
81
+ /**
82
+ * Forget what has been read so far.
83
+ *
84
+ * For re-opening the same file under different read options, where the question is what *this*
85
+ * open cost and a running total across both would answer nobody's.
86
+ */
87
+ reset_counters() {
88
+ this.request_count = 0;
89
+ this.bytes_read = 0;
90
+ }
91
+
92
+ /**
93
+ * @param {number} byte_offset
94
+ * @param {number} byte_length
95
+ * @returns {Promise<Uint8Array>} exactly that range
96
+ * @throws {Error} if the range is not inside the source, or the reader answered with a different
97
+ * number of bytes than it was asked for
98
+ */
99
+ async read(byte_offset, byte_length) {
100
+ if (
101
+ !Number.isInteger(byte_offset) || byte_offset < 0
102
+ || !Number.isInteger(byte_length) || byte_length < 0
103
+ || byte_offset + byte_length > this.byte_length
104
+ ) {
105
+ throw new Error(
106
+ `${this.#name} was asked for ${byte_length} bytes at ${byte_offset},`
107
+ + ` and holds ${this.byte_length}`
108
+ );
109
+ }
110
+
111
+ const bytes = await this.#read(byte_offset, byte_length);
112
+
113
+ if (bytes.byteLength !== byte_length) {
114
+ // Checked rather than trusted: everything downstream indexes by the format's offsets,
115
+ // and a short array would come back as a page whose tail reads as zeros — which decodes
116
+ // and very nearly validates.
117
+ throw new Error(
118
+ `${this.#name} answered ${bytes.byteLength} bytes for a read of ${byte_length}`
119
+ + ` at ${byte_offset}`
120
+ );
121
+ }
122
+
123
+ this.request_count++;
124
+ this.bytes_read += byte_length;
125
+
126
+ return bytes;
127
+ }
128
+
129
+ /**
130
+ * A source over bytes already in memory.
131
+ *
132
+ * Nothing is copied and nothing is deferred; it exists so that a caller holding a whole file —
133
+ * a build's own output, a fixture — reads it through the same interface as one that is
134
+ * streaming, and so that neither the reader nor anything under it has a resident case.
135
+ *
136
+ * @param {Uint8Array|ArrayBuffer} bytes
137
+ * @param {string} [name]
138
+ * @returns {VGeoByteSource}
139
+ */
140
+ static of(bytes, name = 'a buffer in memory') {
141
+ const array = bytes instanceof Uint8Array ? bytes : new Uint8Array(bytes);
142
+
143
+ return new VGeoByteSource(
144
+ array.byteLength,
145
+ async (offset, length) => array.subarray(offset, offset + length),
146
+ name
147
+ );
148
+ }
149
+
150
+ /**
151
+ * A source over a `File` or a `Blob` — a file dropped onto a page.
152
+ *
153
+ * Genuinely partial: `Blob.slice` names a range and the browser reads that range, so dropping a
154
+ * gigabyte asset costs whatever the traversal asks for and not a gigabyte of heap. That is the
155
+ * one case where a debug tool and a runtime want exactly the same thing.
156
+ *
157
+ * @param {Blob} blob
158
+ * @param {string} [name]
159
+ * @returns {VGeoByteSource}
160
+ */
161
+ static from_blob(blob, name = blob.name ?? 'a blob') {
162
+ return new VGeoByteSource(
163
+ blob.size,
164
+ async (offset, length) => new Uint8Array(
165
+ await blob.slice(offset, offset + length).arrayBuffer()
166
+ ),
167
+ name
168
+ );
169
+ }
170
+ }