@woosh/meep-engine 2.168.1 → 2.169.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/build/bundle-worker-image-decoder.js +1 -1
- package/editor/process/symbolic/make3DSymbolicDisplay.js +1 -1
- package/editor/view/ecs/EntityList.js +1 -1
- package/editor/view/ecs/components/particles/ParticleLayerController.js +1 -1
- package/editor/view/makeEntityDecorators.js +1 -1
- package/package.json +1 -1
- package/src/REVIEW_2026_08_06/adv-core.md +511 -0
- package/src/REVIEW_2026_08_06/adv-gfx.md +480 -0
- package/src/REVIEW_2026_08_06/adv-view.md +446 -0
- package/src/REVIEW_2026_08_06/api-core.md +296 -0
- package/src/REVIEW_2026_08_06/api-engine.md +195 -0
- package/src/REVIEW_2026_08_06/bvh-phys-sound-net.md +507 -0
- package/src/REVIEW_2026_08_06/core-binary.md +348 -0
- package/src/REVIEW_2026_08_06/core-collection.md +376 -0
- package/src/REVIEW_2026_08_06/core-math.md +221 -0
- package/src/REVIEW_2026_08_06/core-process.md +266 -0
- package/src/REVIEW_2026_08_06/core-science.md +223 -0
- package/src/REVIEW_2026_08_06/engine-ai-nav.md +279 -0
- package/src/REVIEW_2026_08_06/engine-animation.md +167 -0
- package/src/REVIEW_2026_08_06/engine-asset.md +166 -0
- package/src/REVIEW_2026_08_06/engine-ecs.md +920 -0
- package/src/REVIEW_2026_08_06/engine-input.md +197 -0
- package/src/REVIEW_2026_08_06/engine-misc.md +248 -0
- package/src/REVIEW_2026_08_06/engine-terrain.md +52 -0
- package/src/REVIEW_2026_08_06/generation.md +176 -0
- package/src/REVIEW_2026_08_06/geom-2d.md +434 -0
- package/src/REVIEW_2026_08_06/geom-3d.md +117 -0
- package/src/REVIEW_2026_08_06/gfx-gi.md +143 -0
- package/src/REVIEW_2026_08_06/gfx-render.md +740 -0
- package/src/REVIEW_2026_08_06/gfx-texture.md +690 -0
- package/src/REVIEW_2026_08_06/prior-criticals.md +49 -0
- package/src/REVIEW_2026_08_06/prior-highs.md +138 -0
- package/src/REVIEW_2026_08_06/test-gaps.md +364 -0
- package/src/REVIEW_2026_08_06/view.md +667 -0
- package/src/REVIEW_2026_08_06.md +610 -0
- package/src/core/IdPool.d.ts +2 -2
- package/src/core/IdPool.d.ts.map +1 -1
- package/src/core/IdPool.js +1 -1
- package/src/core/binary/32BitEncoder.d.ts +2 -3
- package/src/core/binary/32BitEncoder.d.ts.map +1 -1
- package/src/core/binary/32BitEncoder.js +1 -1
- package/src/core/binary/BinaryBuffer.d.ts.map +1 -1
- package/src/core/binary/BinaryBuffer.js +12 -1
- package/src/core/binary/BitImage2.d.ts +5 -1
- package/src/core/binary/BitImage2.d.ts.map +1 -1
- package/src/core/binary/BitImage2.js +5 -1
- package/src/core/bvh2/bvh3/BVH.d.ts +2 -2
- package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/BVH.js +1 -1
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.d.ts +2 -2
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.js +86 -86
- package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.d.ts +2 -2
- package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.d.ts.map +1 -1
- package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.js +1 -1
- package/src/core/bvh8/build/NodeProxy.d.ts.map +1 -1
- package/src/core/bvh8/build/NodeProxy.js +314 -308
- package/src/core/cache/Cache.d.ts +4 -4
- package/src/core/cache/Cache.d.ts.map +1 -1
- package/src/core/cache/Cache.js +3 -3
- package/src/core/cache/LoadingCache.d.ts +1 -1
- package/src/core/cache/LoadingCache.js +2 -2
- package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts +2 -2
- package/src/core/cache/wtinylfu/CacheWTinylfu.js +2 -2
- package/src/core/collection/array/array_index_by_equality.d.ts +2 -2
- package/src/core/collection/array/array_index_by_equality.d.ts.map +1 -1
- package/src/core/collection/array/array_index_by_equality.js +1 -1
- package/src/core/collection/array/array_pick_best_element.d.ts +2 -2
- package/src/core/collection/array/array_pick_best_element.d.ts.map +1 -1
- package/src/core/collection/array/array_pick_best_element.js +1 -1
- package/src/core/collection/array/array_pick_best_elements.d.ts +2 -2
- package/src/core/collection/array/array_pick_best_elements.d.ts.map +1 -1
- package/src/core/collection/array/array_pick_best_elements.js +1 -1
- package/src/core/collection/array/array_set_diff.d.ts +2 -3
- package/src/core/collection/array/array_set_diff.d.ts.map +1 -1
- package/src/core/collection/array/array_set_diff.js +1 -1
- package/src/core/collection/array/array_set_diff_sorting.d.ts +2 -2
- package/src/core/collection/array/array_set_diff_sorting.d.ts.map +1 -1
- package/src/core/collection/array/array_set_diff_sorting.js +1 -1
- package/src/core/collection/array/iterator/ArrayIteratorRandom.d.ts +2 -1
- package/src/core/collection/array/iterator/ArrayIteratorRandom.d.ts.map +1 -1
- package/src/core/collection/heap/BinaryHeap.d.ts +2 -2
- package/src/core/collection/heap/BinaryHeap.d.ts.map +1 -1
- package/src/core/collection/heap/BinaryHeap.js +1 -1
- package/src/core/collection/list/List.d.ts +32 -17
- package/src/core/collection/list/List.d.ts.map +1 -1
- package/src/core/collection/list/List.js +43 -9
- package/src/core/collection/list/SortedListProjection.d.ts.map +1 -1
- package/src/core/collection/list/SortedListProjection.js +4 -1
- package/src/core/collection/map/BiMap.d.ts +25 -2
- package/src/core/collection/map/BiMap.d.ts.map +1 -1
- package/src/core/collection/map/BiMap.js +57 -3
- package/src/core/collection/map/HashMap.d.ts +2 -2
- package/src/core/collection/map/HashMap.d.ts.map +1 -1
- package/src/core/collection/map/HashMap.js +1 -1
- package/src/core/collection/set/ArraySet.d.ts +2 -2
- package/src/core/collection/set/ArraySet.d.ts.map +1 -1
- package/src/core/collection/set/ArraySet.js +1 -1
- package/src/core/collection/table/RowFirstTable.d.ts +2 -2
- package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
- package/src/core/collection/table/RowFirstTable.js +1 -1
- package/src/core/collection/table/RowFirstTableSpec.js +4 -4
- package/src/core/debug/matchers/IsAnything.d.ts.map +1 -1
- package/src/core/debug/matchers/IsAnything.js +5 -1
- package/src/core/events/signal/Signal.d.ts.map +1 -1
- package/src/core/events/signal/Signal.js +3 -1
- package/src/core/fsm/simple/SimpleStateMachineDescription.d.ts +2 -2
- package/src/core/fsm/simple/SimpleStateMachineDescription.d.ts.map +1 -1
- package/src/core/fsm/simple/SimpleStateMachineDescription.js +1 -1
- package/src/core/geom/2d/bvh/BVH2D.d.ts +2 -2
- package/src/core/geom/2d/bvh/BVH2D.d.ts.map +1 -1
- package/src/core/geom/2d/bvh/BVH2D.js +1 -1
- package/src/core/geom/2d/polygon/TRIANGULATION_DESIGN.md +433 -0
- package/src/core/geom/2d/polygon/polygon2_is_counter_clockwise.d.ts +31 -0
- package/src/core/geom/2d/polygon/polygon2_is_counter_clockwise.d.ts.map +1 -0
- package/src/core/geom/2d/polygon/polygon2_is_counter_clockwise.js +84 -0
- package/src/core/geom/2d/polygon/polygon2_signed_area.d.ts +24 -2
- package/src/core/geom/2d/polygon/polygon2_signed_area.d.ts.map +1 -1
- package/src/core/geom/2d/polygon/polygon2_signed_area.js +52 -34
- package/src/core/geom/2d/polygon/polygon2_triangulate.corpus.d.ts +28 -0
- package/src/core/geom/2d/polygon/polygon2_triangulate.corpus.d.ts.map +1 -0
- package/src/core/geom/2d/polygon/polygon2_triangulate.corpus.js +86 -0
- package/src/core/geom/2d/polygon/polygon2_triangulate.d.ts +40 -0
- package/src/core/geom/2d/polygon/polygon2_triangulate.d.ts.map +1 -0
- package/src/core/geom/2d/polygon/polygon2_triangulate.js +1280 -0
- package/src/core/geom/2d/polygon/polygon2_triangulation_deviation.d.ts +28 -0
- package/src/core/geom/2d/polygon/polygon2_triangulation_deviation.d.ts.map +1 -0
- package/src/core/geom/2d/polygon/polygon2_triangulation_deviation.js +77 -0
- package/src/core/geom/2d/quad-tree/qt_match_data_by_circle.d.ts +2 -2
- package/src/core/geom/2d/quad-tree/qt_match_data_by_circle.d.ts.map +1 -1
- package/src/core/geom/2d/quad-tree/qt_match_data_by_circle.js +1 -1
- package/src/core/geom/2d/quad-tree/qt_query_data_raycast.d.ts +2 -2
- package/src/core/geom/2d/quad-tree/qt_query_data_raycast.d.ts.map +1 -1
- package/src/core/geom/2d/quad-tree/qt_query_data_raycast.js +1 -1
- package/src/core/geom/2d/triangle/tri2_rasterize_conservative.d.ts +6 -3
- package/src/core/geom/2d/triangle/tri2_rasterize_conservative.d.ts.map +1 -1
- package/src/core/geom/2d/triangle/tri2_rasterize_conservative.js +26 -13
- package/src/core/geom/2d/triangle/tri2_signed_area.d.ts +17 -1
- package/src/core/geom/2d/triangle/tri2_signed_area.d.ts.map +1 -1
- package/src/core/geom/2d/triangle/tri2_signed_area.js +35 -23
- package/src/core/geom/2d/v2_morton_encode.d.ts +20 -0
- package/src/core/geom/2d/v2_morton_encode.d.ts.map +1 -0
- package/src/core/geom/2d/v2_morton_encode.js +23 -0
- package/src/core/geom/3d/aabb/AABB3.d.ts +2 -2
- package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
- package/src/core/geom/3d/aabb/AABB3.js +1 -1
- package/src/core/geom/3d/atlas/segment/atlas_merge_charts.d.ts.map +1 -1
- package/src/core/geom/3d/atlas/segment/atlas_merge_charts.js +4 -1
- package/src/core/geom/3d/polygon/polygon3_compute_normal.d.ts +27 -0
- package/src/core/geom/3d/polygon/polygon3_compute_normal.d.ts.map +1 -0
- package/src/core/geom/3d/polygon/polygon3_compute_normal.js +60 -0
- package/src/core/geom/3d/polygon/polygon3_triangulate.d.ts +34 -0
- package/src/core/geom/3d/polygon/polygon3_triangulate.d.ts.map +1 -0
- package/src/core/geom/3d/polygon/polygon3_triangulate.js +94 -0
- package/src/core/geom/3d/quaternion/quat3_multiply.d.ts +8 -2
- package/src/core/geom/3d/quaternion/quat3_multiply.d.ts.map +1 -1
- package/src/core/geom/3d/quaternion/quat3_multiply.js +8 -2
- package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/ConvexHullShape3D.js +32 -2
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts +2 -2
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.js +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.d.ts +2 -5
- package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.js +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.d.ts +2 -2
- package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.js +1 -1
- package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.d.ts +2 -3
- package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.js +69 -69
- package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.d.ts +2 -3
- package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.js +50 -50
- package/src/core/geom/3d/topology/struct/TopoEdge.d.ts +2 -2
- package/src/core/geom/3d/topology/struct/TopoEdge.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoEdge.js +1 -1
- package/src/core/geom/3d/topology/struct/TopoMesh.d.ts +2 -3
- package/src/core/geom/3d/topology/struct/TopoMesh.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoMesh.js +1 -1
- package/src/core/geom/3d/topology/struct/TopoTriangle.d.ts +2 -2
- package/src/core/geom/3d/topology/struct/TopoTriangle.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoTriangle.js +1 -1
- package/src/core/geom/3d/topology/struct/TopoVertex.d.ts +2 -2
- package/src/core/geom/3d/topology/struct/TopoVertex.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoVertex.js +1 -1
- package/src/core/geom/3d/topology/struct/binary/io/face/bt_face_triangulate.d.ts +23 -6
- package/src/core/geom/3d/topology/struct/binary/io/face/bt_face_triangulate.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/binary/io/face/bt_face_triangulate.js +268 -124
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_assert_valid.d.ts +17 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_assert_valid.d.ts.map +1 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_assert_valid.js +44 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_count_edge_faces.d.ts +20 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_count_edge_faces.d.ts.map +1 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_count_edge_faces.js +40 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_is_closed.d.ts +19 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_is_closed.d.ts.map +1 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_is_closed.js +34 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_is_manifold.d.ts +22 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_is_manifold.d.ts.map +1 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_is_manifold.js +37 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_validate.d.ts +87 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_validate.d.ts.map +1 -0
- package/src/core/geom/3d/topology/struct/binary/query/bt_mesh_validate.js +599 -0
- package/src/core/geom/3d/topology/util/mesh_flood_fill.d.ts +1 -1
- package/src/core/geom/3d/topology/util/mesh_flood_fill.js +1 -1
- package/src/core/geom/3d/triangle/tri3_compute_signed_volume.d.ts +32 -0
- package/src/core/geom/3d/triangle/tri3_compute_signed_volume.d.ts.map +1 -1
- package/src/core/geom/3d/triangle/tri3_compute_signed_volume.js +66 -7
- package/src/core/geom/3d/triangle/tri3_mesh_compute_signed_volume.d.ts +22 -1
- package/src/core/geom/3d/triangle/tri3_mesh_compute_signed_volume.d.ts.map +1 -1
- package/src/core/geom/3d/triangle/tri3_mesh_compute_signed_volume.js +83 -38
- package/src/core/geom/3d/util/aabb3_emit_point_grid.d.ts +2 -2
- package/src/core/geom/3d/util/aabb3_emit_point_grid.d.ts.map +1 -1
- package/src/core/geom/3d/util/aabb3_emit_point_grid.js +1 -1
- package/src/core/geom/MANIFOLD_COMPARISON_2026_08_01.md +554 -0
- package/src/core/geom/Quaternion.d.ts +2 -2
- package/src/core/geom/Quaternion.d.ts.map +1 -1
- package/src/core/geom/Quaternion.js +1 -1
- package/src/core/geom/Vector1.d.ts +2 -2
- package/src/core/geom/Vector1.d.ts.map +1 -1
- package/src/core/geom/Vector1.js +1 -1
- package/src/core/geom/packing/max-rect/find_best_container.d.ts +2 -2
- package/src/core/geom/packing/max-rect/find_best_container.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/find_best_container.js +1 -1
- package/src/core/geom/vec3/v3_cotangent.d.ts +6 -2
- package/src/core/geom/vec3/v3_cotangent.d.ts.map +1 -1
- package/src/core/geom/vec3/v3_cotangent.js +6 -2
- package/src/core/geom/vec3/v3_cross.d.ts +6 -2
- package/src/core/geom/vec3/v3_cross.d.ts.map +1 -1
- package/src/core/geom/vec3/v3_cross.js +6 -2
- package/src/core/geom/vec3/v3_lerp.d.ts +1 -1
- package/src/core/geom/vec3/v3_lerp.js +1 -1
- package/src/core/geom/vec3/v3_multiply.d.ts +6 -2
- package/src/core/geom/vec3/v3_multiply.d.ts.map +1 -1
- package/src/core/geom/vec3/v3_multiply.js +6 -2
- package/src/core/geom/vec3/v3_subtract.d.ts +6 -2
- package/src/core/geom/vec3/v3_subtract.d.ts.map +1 -1
- package/src/core/geom/vec3/v3_subtract.js +6 -2
- package/src/core/json/abstractJSONSerializer.d.ts +2 -2
- package/src/core/json/abstractJSONSerializer.d.ts.map +1 -1
- package/src/core/json/abstractJSONSerializer.js +1 -1
- package/src/core/lang/reactive/AbstractCachingParser.d.ts +2 -3
- package/src/core/lang/reactive/AbstractCachingParser.d.ts.map +1 -1
- package/src/core/lang/reactive/AbstractCachingParser.js +1 -1
- package/src/core/localization/Localization.d.ts +2 -2
- package/src/core/localization/Localization.d.ts.map +1 -1
- package/src/core/localization/Localization.js +2 -2
- package/src/core/math/noise/create_simplex_noise_2d.d.ts +2 -2
- package/src/core/math/noise/create_simplex_noise_2d.d.ts.map +1 -1
- package/src/core/math/noise/create_simplex_noise_2d.js +1 -1
- package/src/core/math/physics/mie/MIE_PARTICLES_STANDARD.js +1 -1
- package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.d.ts +3 -3
- package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.d.ts.map +1 -1
- package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.js +2 -2
- package/src/core/math/random/randomSeed.d.ts +13 -0
- package/src/core/math/random/randomSeed.d.ts.map +1 -0
- package/src/core/math/random/randomSeed.js +16 -0
- package/src/core/math/random/seededRandom_Mulberry32.d.ts +3 -2
- package/src/core/math/random/seededRandom_Mulberry32.d.ts.map +1 -1
- package/src/core/math/random/seededRandom_Mulberry32.js +1 -1
- package/src/core/math/spline/spline3_hermite_apply_transform.d.ts +50 -0
- package/src/core/math/spline/spline3_hermite_apply_transform.d.ts.map +1 -0
- package/src/core/math/spline/spline3_hermite_apply_transform.js +107 -0
- package/src/core/math/spline/spline3_hermite_reverse.d.ts +34 -0
- package/src/core/math/spline/spline3_hermite_reverse.d.ts.map +1 -0
- package/src/core/math/spline/spline3_hermite_reverse.js +49 -0
- package/src/core/math/statistics/hammersley_sequence.d.ts +17 -4
- package/src/core/math/statistics/hammersley_sequence.d.ts.map +1 -1
- package/src/core/math/statistics/hammersley_sequence.js +25 -16
- package/src/core/model/ModuleRegistry.d.ts +2 -2
- package/src/core/model/ModuleRegistry.d.ts.map +1 -1
- package/src/core/model/ModuleRegistry.js +1 -1
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts +1 -1
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.js +2 -2
- package/src/core/model/object/objectDeepEquals.d.ts +2 -2
- package/src/core/model/object/objectDeepEquals.d.ts.map +1 -1
- package/src/core/model/object/objectDeepEquals.js +1 -1
- package/src/core/model/reactive/model/ReactiveExpression.d.ts +2 -2
- package/src/core/model/reactive/model/ReactiveExpression.d.ts.map +1 -1
- package/src/core/model/reactive/model/ReactiveExpression.js +1 -1
- package/src/core/model/validate_enum_schema.d.ts +2 -3
- package/src/core/model/validate_enum_schema.d.ts.map +1 -1
- package/src/core/model/validate_enum_schema.js +1 -1
- package/src/core/process/Future.d.ts +3 -3
- package/src/core/process/Future.d.ts.map +1 -1
- package/src/core/process/Future.js +13 -1
- package/src/core/process/PromiseWatcher.d.ts.map +1 -1
- package/src/core/process/PromiseWatcher.js +9 -2
- package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
- package/src/core/process/executor/ConcurrentExecutor.js +12 -2
- package/src/core/process/task/Task.d.ts +3 -3
- package/src/core/process/task/Task.d.ts.map +1 -1
- package/src/core/process/task/Task.js +2 -2
- package/src/core/process/task/util/countTask.d.ts +2 -2
- package/src/core/process/task/util/countTask.d.ts.map +1 -1
- package/src/core/process/task/util/countTask.js +1 -1
- package/src/core/process/task/util/randomCountTask.d.ts +2 -2
- package/src/core/process/task/util/randomCountTask.d.ts.map +1 -1
- package/src/core/process/task/util/randomCountTask.js +1 -1
- package/src/core/process/worker/WorkerProxy.d.ts.map +1 -1
- package/src/core/process/worker/WorkerProxy.js +5 -2
- package/src/core/process/worker/extractTransferables.d.ts.map +1 -1
- package/src/core/process/worker/extractTransferables.js +4 -1
- package/src/engine/Engine.d.ts +12 -12
- package/src/engine/Engine.d.ts.map +1 -1
- package/src/engine/Engine.js +149 -10
- package/src/engine/animation/Animations.d.ts +4 -4
- package/src/engine/animation/Animations.d.ts.map +1 -1
- package/src/engine/animation/Animations.js +2 -2
- package/src/engine/animation/EntityAnimation.d.ts +5 -5
- package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
- package/src/engine/animation/EntityAnimation.js +2 -2
- package/src/engine/animation/TransitionFunctions.d.ts +1 -4
- package/src/engine/animation/TransitionFunctions.d.ts.map +1 -1
- package/src/engine/animation/TransitionFunctions.js +1 -1
- package/src/engine/animation/Tween.d.ts +4 -4
- package/src/engine/animation/Tween.d.ts.map +1 -1
- package/src/engine/animation/Tween.js +2 -2
- package/src/engine/asset/AssetManager.d.ts +6 -6
- package/src/engine/asset/AssetManager.d.ts.map +1 -1
- package/src/engine/asset/AssetManager.js +1411 -1411
- package/src/engine/asset/AssetRequest.d.ts +4 -4
- package/src/engine/asset/AssetRequest.d.ts.map +1 -1
- package/src/engine/asset/AssetRequest.js +3 -3
- package/src/engine/asset/loaders/ArrayBufferLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/ArrayBufferLoader.js +7 -0
- package/src/engine/asset/loaders/AssetLoader.d.ts +3 -3
- package/src/engine/asset/loaders/AssetLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/AssetLoader.js +2 -2
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts +0 -10
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.d.ts +6 -6
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +3 -3
- package/src/engine/ecs/EntityManager.d.ts +4 -4
- package/src/engine/ecs/EntityManager.js +4 -4
- package/src/engine/ecs/EntityObserver.d.ts +3 -3
- package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
- package/src/engine/ecs/EntityObserver.js +2 -2
- package/src/engine/ecs/System.d.ts +4 -4
- package/src/engine/ecs/System.d.ts.map +1 -1
- package/src/engine/ecs/System.js +2 -2
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.d.ts +2 -3
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.js +1 -1
- package/src/engine/ecs/grid/pick.d.ts +4 -2
- package/src/engine/ecs/grid/pick.d.ts.map +1 -1
- package/src/engine/ecs/grid/pick.js +1 -1
- package/src/engine/ecs/parent/EntityNode.d.ts +4 -4
- package/src/engine/ecs/parent/EntityNode.d.ts.map +1 -1
- package/src/engine/ecs/parent/EntityNode.js +2 -2
- package/src/engine/ecs/speaker/lines/sets/LineSetDescription.d.ts.map +1 -1
- package/src/engine/ecs/speaker/lines/sets/LineSetDescription.js +3 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts +2 -2
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.js +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionHeaderCodec.d.ts +1 -2
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionHeaderCodec.d.ts.map +1 -1
- package/src/engine/ecs/systems/AnimationSystem.d.ts +0 -5
- package/src/engine/ecs/systems/AnimationSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts +2 -2
- package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/TerrainSystem.js +5 -2
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +34 -5
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +87 -26
- package/src/engine/ecs/terrain/util/obtainTerrain.d.ts +2 -3
- package/src/engine/ecs/terrain/util/obtainTerrain.d.ts.map +1 -1
- package/src/engine/ecs/terrain/util/obtainTerrain.js +1 -1
- package/src/engine/ecs/util/hideEntityGracefully.js +2 -2
- package/src/engine/graphics/CONTEXT_LOSS_RECOVERY_PLAN.md +446 -0
- package/src/engine/graphics/FrameRunner.d.ts +2 -2
- package/src/engine/graphics/FrameRunner.d.ts.map +1 -1
- package/src/engine/graphics/FrameRunner.js +1 -1
- package/src/engine/graphics/GraphicsEngine.d.ts +60 -9
- package/src/engine/graphics/GraphicsEngine.d.ts.map +1 -1
- package/src/engine/graphics/GraphicsEngine.js +197 -25
- package/src/engine/graphics/camera/CameraShake.d.ts +6 -6
- package/src/engine/graphics/camera/CameraShake.d.ts.map +1 -1
- package/src/engine/graphics/context/WebGLContextFailureReason.d.ts +9 -0
- package/src/engine/graphics/context/WebGLContextFailureReason.d.ts.map +1 -0
- package/src/engine/graphics/context/WebGLContextFailureReason.js +17 -0
- package/src/engine/graphics/context/WebGLContextMonitor.d.ts +106 -0
- package/src/engine/graphics/context/WebGLContextMonitor.d.ts.map +1 -0
- package/src/engine/graphics/context/WebGLContextMonitor.js +341 -0
- package/src/engine/graphics/context/WebGLContextState.d.ts +14 -0
- package/src/engine/graphics/context/WebGLContextState.d.ts.map +1 -0
- package/src/engine/graphics/context/WebGLContextState.js +24 -0
- package/src/engine/graphics/context/testWebGLContextLoss.d.ts +2 -0
- package/src/engine/graphics/context/testWebGLContextLoss.d.ts.map +1 -0
- package/src/engine/graphics/context/testWebGLContextLoss.js +696 -0
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts +2 -2
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/CameraSystem.js +1 -1
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationAdapter.js +68 -32
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationUpgrader_0_1.d.ts +14 -0
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationUpgrader_0_1.d.ts.map +1 -0
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationUpgrader_0_1.js +41 -0
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.d.ts +2 -3
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.js +2 -2
- package/src/engine/graphics/ecs/light/three/ThreeLightCache.d.ts +1 -1
- package/src/engine/graphics/ecs/light/three/ThreeLightCache.js +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.d.ts +4 -5
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.js +7 -2
- package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts +1 -1
- package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/trail2d/Trail2DSystem.js +2 -1
- package/src/engine/graphics/ecs/trail3d/Trail3DSystem.d.ts +1 -1
- package/src/engine/graphics/ecs/trail3d/Trail3DSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/trail3d/Trail3DSystem.js +3 -5
- package/src/engine/graphics/geometry/MikkT/BuildNeighborsFast.d.ts.map +1 -1
- package/src/engine/graphics/geometry/MikkT/BuildNeighborsFast.js +3 -2
- package/src/engine/graphics/geometry/MikkT/GenerateSharedVerticesIndexList.d.ts.map +1 -1
- package/src/engine/graphics/geometry/MikkT/GenerateSharedVerticesIndexList.js +3 -1
- package/src/engine/graphics/geometry/computeBoundingSphereFromVertexData.d.ts +2 -2
- package/src/engine/graphics/geometry/computeBoundingSphereFromVertexData.js +1 -1
- package/src/engine/graphics/geometry/computeMeshSurfaceArea.js +1 -1
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.d.ts +2 -2
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.d.ts.map +1 -1
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.js +1 -1
- package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts +2 -2
- package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts.map +1 -1
- package/src/engine/graphics/geometry/ribbon/Ribbon.js +1 -1
- package/src/engine/graphics/load_and_set_cubemap_v0.d.ts +5 -0
- package/src/engine/graphics/load_and_set_cubemap_v0.d.ts.map +1 -1
- package/src/engine/graphics/load_and_set_cubemap_v0.js +26 -21
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts +2 -2
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.d.ts +2 -2
- package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.js +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.d.ts +2 -2
- package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.js +1 -1
- package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/group/ParticleGroup.js +19 -8
- package/src/engine/graphics/particles/particular/group/optimizeCommandQueue.js +1 -1
- package/src/engine/graphics/render/RendererPool.d.ts +4 -4
- package/src/engine/graphics/render/RendererPool.d.ts.map +1 -1
- package/src/engine/graphics/render/RendererPool.js +2 -2
- package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts +5 -4
- package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FrameGraph.js +2 -2
- package/src/engine/graphics/render/layers/RenderLayer.d.ts +2 -2
- package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
- package/src/engine/graphics/render/layers/RenderLayer.js +1 -1
- package/src/engine/graphics/render/layers/RenderLayerUtils.js +1 -1
- package/src/engine/graphics/sh3/lightmap/bake_lightmap_for_scene.d.ts +3 -1
- package/src/engine/graphics/sh3/lightmap/bake_lightmap_for_scene.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lightmap/bake_lightmap_for_scene.js +681 -681
- package/src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.d.ts +2 -2
- package/src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.js +145 -145
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts +2 -1
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/AtlasLookupTexture.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/AtlasLookupTexture.js +10 -3
- package/src/engine/graphics/texture/atlas/TextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/TextureAtlas.js +4 -1
- package/src/engine/graphics/texture/atlas/gpu/WebGLTextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/gpu/WebGLTextureAtlas.js +11 -0
- package/src/engine/graphics/texture/cubemap/load_environment_map.d.ts.map +1 -1
- package/src/engine/graphics/texture/cubemap/load_environment_map.js +5 -2
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +2 -2
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.js +1 -1
- package/src/engine/graphics/texture/sampler/distance/computeSignedDistanceField_Chamfer.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/distance/computeSignedDistanceField_Chamfer.js +26 -18
- package/src/engine/graphics/texture/sampler/filter/sampler2d_blur_gaussian.d.ts +15 -2
- package/src/engine/graphics/texture/sampler/filter/sampler2d_blur_gaussian.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/filter/sampler2d_blur_gaussian.js +29 -3
- package/src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.d.ts +14 -1
- package/src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.js +148 -171
- package/src/engine/graphics/texture/sampler/sampler2d_combine.d.ts +2 -2
- package/src/engine/graphics/texture/sampler/sampler2d_combine.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/sampler2d_combine.js +1 -1
- package/src/engine/graphics/texture/sampler/sampler2d_paint.js +1 -1
- package/src/engine/graphics/texture/sampler/util/bitSet2Sampler2D.js +2 -2
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.js +2 -2
- package/src/engine/grid/obstacle/GridObstacle.d.ts +2 -2
- package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
- package/src/engine/grid/obstacle/GridObstacle.js +1 -1
- package/src/engine/input/ecs/util/TopDownCameraControllerHelper.d.ts.map +1 -1
- package/src/engine/input/ecs/util/TopDownCameraControllerHelper.js +10 -3
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts +2 -2
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.js +1 -1
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts +3 -3
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.js +1 -1
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.d.ts +2 -1
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/Blackboard.d.ts +4 -4
- package/src/engine/intelligence/blackboard/Blackboard.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/Blackboard.js +2 -2
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts +17 -15
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/MonteCarlo.js +345 -345
- package/src/engine/intelligence/mcts/StateNode.d.ts +2 -2
- package/src/engine/intelligence/mcts/StateNode.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/StateNode.js +364 -364
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +3 -3
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
- package/src/engine/intelligence/optimization/RandomOptimizer.js +2 -2
- package/src/engine/intelligence/optimization/optimize_cyclic_sequence_pairwise.d.ts +2 -2
- package/src/engine/intelligence/optimization/optimize_cyclic_sequence_pairwise.d.ts.map +1 -1
- package/src/engine/intelligence/optimization/optimize_cyclic_sequence_pairwise.js +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts +4 -5
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.js +2 -2
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_2_3.d.ts +14 -0
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_2_3.d.ts.map +1 -0
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_2_3.js +38 -0
- package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts +0 -5
- package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts.map +1 -1
- package/src/engine/network/orchestrator/ServerAuthoritativeClient.d.ts.map +1 -1
- package/src/engine/network/orchestrator/ServerAuthoritativeClient.js +433 -425
- package/src/engine/physics/constraint/solve_constraints.d.ts +4 -1
- package/src/engine/physics/constraint/solve_constraints.d.ts.map +1 -1
- package/src/engine/physics/constraint/solve_constraints.js +38 -13
- package/src/engine/physics/contact/ManifoldStore.d.ts +15 -3
- package/src/engine/physics/contact/ManifoldStore.d.ts.map +1 -1
- package/src/engine/physics/contact/ManifoldStore.js +15 -3
- package/src/engine/physics/ecs/Joint.d.ts +7 -4
- package/src/engine/physics/ecs/Joint.d.ts.map +1 -1
- package/src/engine/physics/ecs/Joint.js +7 -4
- package/src/engine/physics/ecs/PhysicsSystem.d.ts +14 -0
- package/src/engine/physics/ecs/PhysicsSystem.d.ts.map +1 -1
- package/src/engine/physics/ecs/PhysicsSystem.js +16 -0
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -8
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts.map +1 -1
- package/src/engine/physics/fluid/ecs/FluidSystem.d.ts +3 -7
- package/src/engine/physics/fluid/ecs/FluidSystem.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/convex_convex_manifold.d.ts +15 -7
- package/src/engine/physics/narrowphase/convex_convex_manifold.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/convex_convex_manifold.js +33 -10
- package/src/engine/physics/narrowphase/refine_ray_concave.d.ts +6 -2
- package/src/engine/physics/narrowphase/refine_ray_concave.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/refine_ray_concave.js +6 -2
- package/src/engine/physics/narrowphase/refine_ray_hit.d.ts +6 -2
- package/src/engine/physics/narrowphase/refine_ray_hit.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/refine_ray_hit.js +6 -2
- package/src/engine/physics/queries/raycast.d.ts.map +1 -1
- package/src/engine/physics/queries/raycast.js +11 -4
- package/src/engine/save/GameStateLoader.d.ts +2 -2
- package/src/engine/save/GameStateLoader.d.ts.map +1 -1
- package/src/engine/save/GameStateLoader.js +1 -1
- package/src/engine/save/Storage.d.ts +4 -4
- package/src/engine/save/Storage.d.ts.map +1 -1
- package/src/engine/save/Storage.js +2 -2
- package/src/engine/save/storage/IndexedDBStorage.d.ts.map +1 -1
- package/src/engine/save/storage/IndexedDBStorage.js +24 -5
- package/src/engine/simulation/Ticker.d.ts +12 -0
- package/src/engine/simulation/Ticker.d.ts.map +1 -1
- package/src/engine/simulation/Ticker.js +18 -0
- package/src/engine/sound/simulation/AcousticSimulator.d.ts.map +1 -1
- package/src/engine/sound/simulation/AcousticSimulator.js +9 -1
- package/src/engine/sound/simulation/core/VolumeField.d.ts +6 -2
- package/src/engine/sound/simulation/core/VolumeField.d.ts.map +1 -1
- package/src/engine/sound/simulation/core/VolumeField.js +6 -2
- package/src/engine/sound/simulation/probe/AcousticProbeField.d.ts +6 -2
- package/src/engine/sound/simulation/probe/AcousticProbeField.d.ts.map +1 -1
- package/src/engine/sound/simulation/probe/AcousticProbeField.js +6 -2
- package/src/engine/sound/simulation/probe/acoustic_probe_transfer.d.ts +6 -2
- package/src/engine/sound/simulation/probe/acoustic_probe_transfer.d.ts.map +1 -1
- package/src/engine/sound/simulation/probe/acoustic_probe_transfer.js +6 -2
- package/src/engine/sound/simulation/probe/bakeProbeReflectors.d.ts +3 -1
- package/src/engine/sound/simulation/probe/bakeProbeReflectors.d.ts.map +1 -1
- package/src/engine/sound/simulation/probe/bakeProbeReflectors.js +3 -1
- package/src/engine/sound/simulation/prototypeAcousticSolver.js +1652 -1652
- package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts +2 -2
- package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts.map +1 -1
- package/src/engine/sound/sopra/util/buildAttenuationCurve.js +40 -40
- package/src/engine/ui/GUIEngine.d.ts.map +1 -1
- package/src/engine/ui/GUIEngine.js +8 -1
- package/src/engine/ui/notification/NotificationManager.d.ts +5 -5
- package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
- package/src/engine/ui/notification/NotificationManager.js +4 -4
- package/src/engine/ui/tiles2d/TileGrid.d.ts +2 -2
- package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
- package/src/engine/ui/tiles2d/TileGrid.js +1 -1
- package/src/generation/filtering/numeric/complex/CellFilterSimplexNoise.d.ts +1 -1
- package/src/generation/filtering/numeric/complex/CellFilterSimplexNoise.js +1 -1
- package/src/generation/grid/generation/road/GridTaskGenerateRoads.js +2 -2
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts +1 -1
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.js +1 -1
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorRandomRotation.d.ts +2 -1
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorRandomRotation.d.ts.map +1 -1
- package/src/generation/markers/actions/probability/MarkerNodeActionSelectWeighted.d.ts +2 -1
- package/src/generation/markers/actions/probability/MarkerNodeActionSelectWeighted.d.ts.map +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformRotateRandom.d.ts +2 -1
- package/src/generation/markers/transform/MarkerNodeTransformRotateRandom.d.ts.map +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.d.ts +4 -3
- package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.d.ts.map +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.js +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordUniqueRandomEnum.d.ts +2 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordUniqueRandomEnum.d.ts.map +1 -1
- package/src/generation/theme/TerrainTheme.d.ts.map +1 -1
- package/src/generation/theme/TerrainTheme.js +2 -1
- package/src/generation/theme/ThemeEngine.d.ts.map +1 -1
- package/src/generation/theme/ThemeEngine.js +6 -5
- package/src/view/ViewGroup.d.ts.map +1 -1
- package/src/view/ViewGroup.js +9 -7
- package/src/view/common/VirtualListView.d.ts +1 -1
- package/src/view/common/VirtualListView.js +1 -1
- package/src/view/graphics/WebGLContextFailureView.d.ts +19 -0
- package/src/view/graphics/WebGLContextFailureView.d.ts.map +1 -0
- package/src/view/graphics/WebGLContextFailureView.js +76 -0
- package/src/view/minimap/Minimap.d.ts +8 -0
- package/src/view/minimap/Minimap.d.ts.map +1 -1
- package/src/view/minimap/Minimap.js +16 -3
- package/src/view/minimap/dom/MinimapMarkerView.d.ts.map +1 -1
- package/src/view/minimap/dom/MinimapMarkerView.js +3 -1
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts +2 -2
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts.map +1 -1
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.js +1 -1
|
@@ -5,7 +5,7 @@ import { assert } from "../../../assert.js";
|
|
|
5
5
|
* @param {number} width
|
|
6
6
|
* @param {number} height
|
|
7
7
|
* @param {QuadTreeNode<T>} boxes
|
|
8
|
-
* @param {
|
|
8
|
+
* @param {(containerWidth: number, containerHeight: number, childWidth: number, childHeight: number) => number} costFunction
|
|
9
9
|
* @returns {QuadTreeDatum<T>} suitable container box
|
|
10
10
|
*/
|
|
11
11
|
export function find_best_container(
|
|
@@ -12,8 +12,12 @@
|
|
|
12
12
|
* non-finite — callers exclude degenerate faces upstream rather than guarding
|
|
13
13
|
* here.
|
|
14
14
|
*
|
|
15
|
-
* @param {number} ax
|
|
16
|
-
* @param {number}
|
|
15
|
+
* @param {number} ax
|
|
16
|
+
* @param {number} ay
|
|
17
|
+
* @param {number} az
|
|
18
|
+
* @param {number} bx
|
|
19
|
+
* @param {number} by
|
|
20
|
+
* @param {number} bz
|
|
17
21
|
* @returns {number}
|
|
18
22
|
*/
|
|
19
23
|
export function v3_cotangent(ax: number, ay: number, az: number, bx: number, by: number, bz: number): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3_cotangent.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_cotangent.js"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"v3_cotangent.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_cotangent.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,iCARW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACJ,MAAM,CAUlB"}
|
|
@@ -14,8 +14,12 @@ import { v3_dot } from "./v3_dot.js";
|
|
|
14
14
|
* non-finite — callers exclude degenerate faces upstream rather than guarding
|
|
15
15
|
* here.
|
|
16
16
|
*
|
|
17
|
-
* @param {number} ax
|
|
18
|
-
* @param {number}
|
|
17
|
+
* @param {number} ax
|
|
18
|
+
* @param {number} ay
|
|
19
|
+
* @param {number} az
|
|
20
|
+
* @param {number} bx
|
|
21
|
+
* @param {number} by
|
|
22
|
+
* @param {number} bz
|
|
19
23
|
* @returns {number}
|
|
20
24
|
*/
|
|
21
25
|
export function v3_cotangent(ax, ay, az, bx, by, bz) {
|
|
@@ -7,8 +7,12 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @param {number[]|Float32Array|Float64Array} result destination
|
|
9
9
|
* @param {number} result_offset offset into `result`
|
|
10
|
-
* @param {number} ax
|
|
11
|
-
* @param {number}
|
|
10
|
+
* @param {number} ax first vector x
|
|
11
|
+
* @param {number} ay first vector y
|
|
12
|
+
* @param {number} az first vector z
|
|
13
|
+
* @param {number} bx second vector x
|
|
14
|
+
* @param {number} by second vector y
|
|
15
|
+
* @param {number} bz second vector z
|
|
12
16
|
*
|
|
13
17
|
* @author Alex Goldring
|
|
14
18
|
* @copyright Company Named Limited (c) 2026
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3_cross.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_cross.js"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"v3_cross.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_cross.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,iCAZW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,iBAClC,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAShB"}
|
|
@@ -7,8 +7,12 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @param {number[]|Float32Array|Float64Array} result destination
|
|
9
9
|
* @param {number} result_offset offset into `result`
|
|
10
|
-
* @param {number} ax
|
|
11
|
-
* @param {number}
|
|
10
|
+
* @param {number} ax first vector x
|
|
11
|
+
* @param {number} ay first vector y
|
|
12
|
+
* @param {number} az first vector z
|
|
13
|
+
* @param {number} bx second vector x
|
|
14
|
+
* @param {number} by second vector y
|
|
15
|
+
* @param {number} bz second vector z
|
|
12
16
|
*
|
|
13
17
|
* @author Alex Goldring
|
|
14
18
|
* @copyright Company Named Limited (c) 2026
|
|
@@ -3,7 +3,7 @@ import { lerp } from "../../math/lerp.js";
|
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
*
|
|
6
|
-
* @param {Vector3|{set:
|
|
6
|
+
* @param {Vector3|{set:(x: number, y: number, z: number) => void}} result
|
|
7
7
|
* @param {number} a_x
|
|
8
8
|
* @param {number} a_y
|
|
9
9
|
* @param {number} a_z
|
|
@@ -6,8 +6,12 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @param {number[]|Float32Array|Float64Array} result destination
|
|
8
8
|
* @param {number} result_offset offset into `result`
|
|
9
|
-
* @param {number} ax
|
|
10
|
-
* @param {number}
|
|
9
|
+
* @param {number} ax first factor x
|
|
10
|
+
* @param {number} ay first factor y
|
|
11
|
+
* @param {number} az first factor z
|
|
12
|
+
* @param {number} bx second factor x
|
|
13
|
+
* @param {number} by second factor y
|
|
14
|
+
* @param {number} bz second factor z
|
|
11
15
|
*
|
|
12
16
|
* @author Alex Goldring
|
|
13
17
|
* @copyright Company Named Limited (c) 2026
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3_multiply.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_multiply.js"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"v3_multiply.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_multiply.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,oCAZW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,iBAClC,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAShB"}
|
|
@@ -6,8 +6,12 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @param {number[]|Float32Array|Float64Array} result destination
|
|
8
8
|
* @param {number} result_offset offset into `result`
|
|
9
|
-
* @param {number} ax
|
|
10
|
-
* @param {number}
|
|
9
|
+
* @param {number} ax first factor x
|
|
10
|
+
* @param {number} ay first factor y
|
|
11
|
+
* @param {number} az first factor z
|
|
12
|
+
* @param {number} bx second factor x
|
|
13
|
+
* @param {number} by second factor y
|
|
14
|
+
* @param {number} bz second factor z
|
|
11
15
|
*
|
|
12
16
|
* @author Alex Goldring
|
|
13
17
|
* @copyright Company Named Limited (c) 2026
|
|
@@ -6,8 +6,12 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @param {number[]|Float32Array|Float64Array} result destination
|
|
8
8
|
* @param {number} result_offset offset into `result`
|
|
9
|
-
* @param {number} ax
|
|
10
|
-
* @param {number}
|
|
9
|
+
* @param {number} ax minuend x
|
|
10
|
+
* @param {number} ay minuend y
|
|
11
|
+
* @param {number} az minuend z
|
|
12
|
+
* @param {number} bx subtrahend x
|
|
13
|
+
* @param {number} by subtrahend y
|
|
14
|
+
* @param {number} bz subtrahend z
|
|
11
15
|
*
|
|
12
16
|
* @author Alex Goldring
|
|
13
17
|
* @copyright Company Named Limited (c) 2026
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v3_subtract.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_subtract.js"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"v3_subtract.d.ts","sourceRoot":"","sources":["../../../../../src/core/geom/vec3/v3_subtract.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,oCAZW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,iBAClC,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAShB"}
|
|
@@ -6,8 +6,12 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @param {number[]|Float32Array|Float64Array} result destination
|
|
8
8
|
* @param {number} result_offset offset into `result`
|
|
9
|
-
* @param {number} ax
|
|
10
|
-
* @param {number}
|
|
9
|
+
* @param {number} ax minuend x
|
|
10
|
+
* @param {number} ay minuend y
|
|
11
|
+
* @param {number} az minuend z
|
|
12
|
+
* @param {number} bx subtrahend x
|
|
13
|
+
* @param {number} by subtrahend y
|
|
14
|
+
* @param {number} bz subtrahend z
|
|
11
15
|
*
|
|
12
16
|
* @author Alex Goldring
|
|
13
17
|
* @copyright Company Named Limited (c) 2026
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @template T
|
|
3
3
|
* @param {T} source
|
|
4
|
-
* @param {Map<string,
|
|
4
|
+
* @param {Map<string, (v: Object) => Object>} serializers
|
|
5
5
|
* @param {Map<*,string>} classNames
|
|
6
6
|
* @param {boolean} [constructorNameFallback]
|
|
7
7
|
*/
|
|
8
|
-
export function abstractJSONSerializer<T>(source: T, serializers:
|
|
8
|
+
export function abstractJSONSerializer<T>(source: T, serializers: Map<string, (v: any) => any>, classNames: Map<any, string>, constructorNameFallback?: boolean): T | {
|
|
9
9
|
type: any;
|
|
10
10
|
data: any;
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstractJSONSerializer.d.ts","sourceRoot":"","sources":["../../../../src/core/json/abstractJSONSerializer.js"],"names":[],"mappings":"AA+BA;;;;;;GAMG;AACH,
|
|
1
|
+
{"version":3,"file":"abstractJSONSerializer.d.ts","sourceRoot":"","sources":["../../../../src/core/json/abstractJSONSerializer.js"],"names":[],"mappings":"AA+BA;;;;;;GAMG;AACH,4GAHW,SAAM,MAAM,CAAC,4BACb,OAAO;;;EA4DjB"}
|
|
@@ -32,7 +32,7 @@ function resolve_class_name(Klass, classNames, max_depth = 64) {
|
|
|
32
32
|
/**
|
|
33
33
|
* @template T
|
|
34
34
|
* @param {T} source
|
|
35
|
-
* @param {Map<string,
|
|
35
|
+
* @param {Map<string, (v: Object) => Object>} serializers
|
|
36
36
|
* @param {Map<*,string>} classNames
|
|
37
37
|
* @param {boolean} [constructorNameFallback]
|
|
38
38
|
*/
|
|
@@ -23,10 +23,9 @@ export class AbstractCachingParser<T> {
|
|
|
23
23
|
/**
|
|
24
24
|
*
|
|
25
25
|
* @param {string} code
|
|
26
|
-
* @param {
|
|
26
|
+
* @param {(e: Error) => void} [errorConsumer]
|
|
27
27
|
*/
|
|
28
|
-
validate(code: string, errorConsumer?:
|
|
28
|
+
validate(code: string, errorConsumer?: (e: Error) => void): boolean;
|
|
29
29
|
}
|
|
30
30
|
import { Cache } from "../../cache/Cache.js";
|
|
31
|
-
import { noop } from "../../function/noop.js";
|
|
32
31
|
//# sourceMappingURL=AbstractCachingParser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractCachingParser.d.ts","sourceRoot":"","sources":["../../../../../src/core/lang/reactive/AbstractCachingParser.js"],"names":[],"mappings":"AAMA;;GAEG;AACH;IAEI;;;OAGG;IACH,SAFU,MAAM,MAAM,EAAE,CAAC,CAAC,CAKvB;IAGH;;;;;OAKG;IACH,wBAEC;IAED;;;;OAIG;IACH,YAHW,MAAM,GACJ,CAAC,CAWb;IAED;;;;OAIG;IACH,eAHW,MAAM,
|
|
1
|
+
{"version":3,"file":"AbstractCachingParser.d.ts","sourceRoot":"","sources":["../../../../../src/core/lang/reactive/AbstractCachingParser.js"],"names":[],"mappings":"AAMA;;GAEG;AACH;IAEI;;;OAGG;IACH,SAFU,MAAM,MAAM,EAAE,CAAC,CAAC,CAKvB;IAGH;;;;;OAKG;IACH,wBAEC;IAED;;;;OAIG;IACH,YAHW,MAAM,GACJ,CAAC,CAWb;IAED;;;;OAIG;IACH,eAHW,MAAM,sBACF,KAAK,KAAK,IAAI,WAe5B;CACJ;sBAjEqB,sBAAsB"}
|
|
@@ -44,9 +44,9 @@ export class Localization {
|
|
|
44
44
|
setAssetManager(am: AssetManager): void;
|
|
45
45
|
/**
|
|
46
46
|
* @returns {boolean}
|
|
47
|
-
* @param {
|
|
47
|
+
* @param {(key: string, error: *, original: string) => void} errorConsumer
|
|
48
48
|
*/
|
|
49
|
-
validate(errorConsumer: any): boolean;
|
|
49
|
+
validate(errorConsumer: (key: string, error: any, original: string) => void): boolean;
|
|
50
50
|
/**
|
|
51
51
|
* Request locale switch
|
|
52
52
|
* Assumes a specific folder structure, each different locale is stored with its locale code as name, and there's also "languages.json" file expected to be in the folder
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Localization.d.ts","sourceRoot":"","sources":["../../../../src/core/localization/Localization.js"],"names":[],"mappings":"AA8BA;IAEQ;;;OAGG;IACH,cAFU,eAAa,IAAI,CAEH;IAExB,SAAc;IAEd;;;OAGG;IACH,6BAFU,gBAAgB,CAEwB;IAElD;;;OAGG;IACH,QAFU,cAAc,CAEY;IAEpC;;;OAGG;IACH,OAFU,OAAO,CAEA;IAEjB;;;OAGG;IACH,wBAIE;IAGN;;;;OAIG;IACH,4BAEC;IAED;;;;OAIG;IACH,0BAHW,MAAM,GACJ,MAAM,CAMlB;IAED;;;OAGG;IACH,wCAEC;IAED;;;OAGG;IACH,
|
|
1
|
+
{"version":3,"file":"Localization.d.ts","sourceRoot":"","sources":["../../../../src/core/localization/Localization.js"],"names":[],"mappings":"AA8BA;IAEQ;;;OAGG;IACH,cAFU,eAAa,IAAI,CAEH;IAExB,SAAc;IAEd;;;OAGG;IACH,6BAFU,gBAAgB,CAEwB;IAElD;;;OAGG;IACH,QAFU,cAAc,CAEY;IAEpC;;;OAGG;IACH,OAFU,OAAO,CAEA;IAEjB;;;OAGG;IACH,wBAIE;IAGN;;;;OAIG;IACH,4BAEC;IAED;;;;OAIG;IACH,0BAHW,MAAM,GACJ,MAAM,CAMlB;IAED;;;OAGG;IACH,wCAEC;IAED;;;OAGG;IACH,8BAFiB,MAAM,wBAAsB,MAAM,KAAK,IAAI,GAD/C,OAAO,CAoBnB;IAED;;;;;;OAMG;IACH,mBAJW,MAAM,SACN,MAAM,gBAgDhB;IAGD;;;OAGG;IACH,gCAFW,MAAM,UAMhB;IAED;;;;;OAKG;IACH,0BA0BC;IAED;;;;;;OAMG;IACH,eALW,MAAM,SACN,MAAM,GAEJ,MAAM,CAoBlB;IAED;;;;OAIG;IACH,eAHW,MAAM,GACL,OAAO,CAIlB;CACJ;iCApPgC,uBAAuB;2BAL7B,4BAA4B"}
|
|
@@ -97,7 +97,7 @@ export class Localization {
|
|
|
97
97
|
|
|
98
98
|
/**
|
|
99
99
|
* @returns {boolean}
|
|
100
|
-
* @param {
|
|
100
|
+
* @param {(key: string, error: *, original: string) => void} errorConsumer
|
|
101
101
|
*/
|
|
102
102
|
validate(errorConsumer) {
|
|
103
103
|
let result = true;
|
|
@@ -139,7 +139,7 @@ export class Localization {
|
|
|
139
139
|
|
|
140
140
|
while (_path.endsWith('/') || _path.endsWith('\\')) {
|
|
141
141
|
// remove trailing slash if present
|
|
142
|
-
_path.slice(0, _path.length - 1);
|
|
142
|
+
_path = _path.slice(0, _path.length - 1);
|
|
143
143
|
}
|
|
144
144
|
|
|
145
145
|
const pLoadData = am.promise(`${_path}/${locale}.json`, "json")
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Creates a 2D noise function
|
|
3
3
|
* @param [random] the random function that will be used to build the permutation table
|
|
4
|
-
* @returns {
|
|
4
|
+
* @returns {(x: number, y: number) => number} producing values in range -1 .. 1
|
|
5
5
|
*/
|
|
6
|
-
export function create_simplex_noise_2d(random?: () => number): (
|
|
6
|
+
export function create_simplex_noise_2d(random?: () => number): (x: number, y: number) => number;
|
|
7
7
|
//# sourceMappingURL=create_simplex_noise_2d.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create_simplex_noise_2d.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/noise/create_simplex_noise_2d.js"],"names":[],"mappings":"AAyDA;;;;GAIG;AACH,
|
|
1
|
+
{"version":3,"file":"create_simplex_noise_2d.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/noise/create_simplex_noise_2d.js"],"names":[],"mappings":"AAyDA;;;;GAIG;AACH,oEAFiB,MAAM,KAAK,MAAM,KAAK,MAAM,CA0G5C"}
|
|
@@ -58,7 +58,7 @@ const grad4 = /*#__PURE__*/ new Float64Array([0, 1, 1, 1, 0, 1, 1, -1, 0, 1, -1,
|
|
|
58
58
|
/**
|
|
59
59
|
* Creates a 2D noise function
|
|
60
60
|
* @param [random] the random function that will be used to build the permutation table
|
|
61
|
-
* @returns {
|
|
61
|
+
* @returns {(x: number, y: number) => number} producing values in range -1 .. 1
|
|
62
62
|
*/
|
|
63
63
|
export function create_simplex_noise_2d(random = Math.random) {
|
|
64
64
|
// allocate continuous chunk of memory
|
|
@@ -14,7 +14,7 @@ import { ri_water } from "./ri_water.js";
|
|
|
14
14
|
* Assumes the medium is air (n=1.0).
|
|
15
15
|
* Computes the spectrally-averaged RGB Mie properties.
|
|
16
16
|
* @param {number} diameter_m (in meters)
|
|
17
|
-
* @param {
|
|
17
|
+
* @param {(result: number[], wavelength: number) => number[]} refraction refraction [n, k] - Complex refractive index of the particle. (n=real, k=imaginary)
|
|
18
18
|
*/
|
|
19
19
|
function make(diameter_m, refraction){
|
|
20
20
|
const radius = diameter_m * 0.5;
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
* Performs full wide visible spectrum sweep.
|
|
4
4
|
* Energy is relative to D65 illuminant (standard for rec709 and sRGB).
|
|
5
5
|
* @param {number} radius_m Particle radius in meters.
|
|
6
|
-
* @param {
|
|
7
|
-
* @param {
|
|
6
|
+
* @param {(result: number[], wavelength_nm: number) => void} n_p Particle Refraction Index. function of wavelength, Complex number.
|
|
7
|
+
* @param {(result: number[], wavelength_nm: number) => void} n_med Medium Refraction Index. function of wavelength, Complex number.
|
|
8
8
|
* @param {number} [step_size_nm] In nanometers. Controls step size in spectral integration steps, smaller steps = more accurate. Use 1, or multiples of 5
|
|
9
9
|
*/
|
|
10
|
-
export function compute_mie_particle_properties_rgb(radius_m: number, n_p:
|
|
10
|
+
export function compute_mie_particle_properties_rgb(radius_m: number, n_p: (result: number[], wavelength_nm: number) => void, n_med: (result: number[], wavelength_nm: number) => void, step_size_nm?: number): {
|
|
11
11
|
scattering_coefficients: number[];
|
|
12
12
|
extinction_coefficients: number[];
|
|
13
13
|
extinction_intercept: number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute_mie_particle_properties_rgb.d.ts","sourceRoot":"","sources":["../../../../../../src/core/math/physics/mie/compute_mie_particle_properties_rgb.js"],"names":[],"mappings":"AAMA;;;;;;;;GAQG;AACH,8DALW,MAAM,
|
|
1
|
+
{"version":3,"file":"compute_mie_particle_properties_rgb.d.ts","sourceRoot":"","sources":["../../../../../../src/core/math/physics/mie/compute_mie_particle_properties_rgb.js"],"names":[],"mappings":"AAMA;;;;;;;;GAQG;AACH,8DALW,MAAM,gBACG,MAAM,EAAE,iBAAiB,MAAM,KAAK,IAAI,kBACxC,MAAM,EAAE,iBAAiB,MAAM,KAAK,IAAI,iBACjD,MAAM;;;;;;EA+JhB"}
|
|
@@ -9,8 +9,8 @@ import { compute_lorenz_mie_optical_properties } from "./compute_lorenz_mie_opti
|
|
|
9
9
|
* Performs full wide visible spectrum sweep.
|
|
10
10
|
* Energy is relative to D65 illuminant (standard for rec709 and sRGB).
|
|
11
11
|
* @param {number} radius_m Particle radius in meters.
|
|
12
|
-
* @param {
|
|
13
|
-
* @param {
|
|
12
|
+
* @param {(result: number[], wavelength_nm: number) => void} n_p Particle Refraction Index. function of wavelength, Complex number.
|
|
13
|
+
* @param {(result: number[], wavelength_nm: number) => void} n_med Medium Refraction Index. function of wavelength, Complex number.
|
|
14
14
|
* @param {number} [step_size_nm] In nanometers. Controls step size in spectral integration steps, smaller steps = more accurate. Use 1, or multiples of 5
|
|
15
15
|
*/
|
|
16
16
|
export function compute_mie_particle_properties_rgb(
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Draw a child seed from an existing generator.
|
|
3
|
+
*
|
|
4
|
+
* Seeded generators here consume an integer. Mulberry32 mixes its seed with
|
|
5
|
+
* bitwise operators, which coerce to int32 and discard any fractional part, so
|
|
6
|
+
* handing it a raw `random()` result -- a value in [0,1) -- collapses every
|
|
7
|
+
* distinct parent seed onto the same stream. Widen to an integer first.
|
|
8
|
+
*
|
|
9
|
+
* @param {function():number} random
|
|
10
|
+
* @returns {number} integer in [0, 2^32)
|
|
11
|
+
*/
|
|
12
|
+
export function randomSeed(random: () => number): number;
|
|
13
|
+
//# sourceMappingURL=randomSeed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"randomSeed.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/random/randomSeed.js"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,yCAHsB,MAAM,GACf,MAAM,CAIlB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { randomIntegerBetween } from "./randomIntegerBetween.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Draw a child seed from an existing generator.
|
|
5
|
+
*
|
|
6
|
+
* Seeded generators here consume an integer. Mulberry32 mixes its seed with
|
|
7
|
+
* bitwise operators, which coerce to int32 and discard any fractional part, so
|
|
8
|
+
* handing it a raw `random()` result -- a value in [0,1) -- collapses every
|
|
9
|
+
* distinct parent seed onto the same stream. Widen to an integer first.
|
|
10
|
+
*
|
|
11
|
+
* @param {function():number} random
|
|
12
|
+
* @returns {number} integer in [0, 2^32)
|
|
13
|
+
*/
|
|
14
|
+
export function randomSeed(random) {
|
|
15
|
+
return randomIntegerBetween(random, 0, 0xFFFFFFFF);
|
|
16
|
+
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
*
|
|
3
3
|
* @param {number} [seed]
|
|
4
|
-
* @returns {(function():number)|{setCurrentSeed:(
|
|
4
|
+
* @returns {(function():number)|{setCurrentSeed:( (v: number) => void),getCurrentSeed:(function():number)}}
|
|
5
5
|
*/
|
|
6
6
|
export function seededRandom_Mulberry32(seed?: number): (() => number) | {
|
|
7
|
-
setCurrentSeed: (
|
|
7
|
+
setCurrentSeed: (v: number) => void;
|
|
8
|
+
getCurrentSeed: (() => number);
|
|
8
9
|
};
|
|
9
10
|
//# sourceMappingURL=seededRandom_Mulberry32.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seededRandom_Mulberry32.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/random/seededRandom_Mulberry32.js"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,+CAHW,MAAM,
|
|
1
|
+
{"version":3,"file":"seededRandom_Mulberry32.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/random/seededRandom_Mulberry32.js"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,+CAHW,MAAM,UACQ,MAAM;wBAAwB,MAAM,KAAK,IAAI;oBAAiB,OAAY,MAAM,CAAC;EA2BzG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
*
|
|
3
3
|
* @param {number} [seed]
|
|
4
|
-
* @returns {(function():number)|{setCurrentSeed:(
|
|
4
|
+
* @returns {(function():number)|{setCurrentSeed:( (v: number) => void),getCurrentSeed:(function():number)}}
|
|
5
5
|
*/
|
|
6
6
|
export function seededRandom_Mulberry32(seed = 0) {
|
|
7
7
|
let _seed = seed;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Apply a 4x4 affine matrix to a 3d cubic Hermite segment.
|
|
3
|
+
*
|
|
4
|
+
* The result is written as twelve values in control-point order --
|
|
5
|
+
* `[p0x, p0y, p0z, p1x, p1y, p1z, m0x, m0y, m0z, m1x, m1y, m1z]` -- matching
|
|
6
|
+
* the `(p0, p1, m0, m1)` argument order the rest of the `spline3_hermite_*`
|
|
7
|
+
* family uses, note the stride and offset.
|
|
8
|
+
*
|
|
9
|
+
* Endpoints transform as points, so the translation column applies. Tangents
|
|
10
|
+
* transform as directions, so it does not, and -- unlike
|
|
11
|
+
* {@link m4_transform_direction_v3_buffer}, which is written for normals -- they
|
|
12
|
+
* are deliberately NOT re-normalised: a Hermite tangent's magnitude is part of
|
|
13
|
+
* the curve's shape, and rescaling it would change the geometry rather than
|
|
14
|
+
* move it. Under this rule the transformed segment is exactly the image of the
|
|
15
|
+
* original curve: `T(H(u)) = H_transformed(u)` for every `u`.
|
|
16
|
+
*
|
|
17
|
+
* The matrix must be AFFINE — the perspective row must be zero and `m4[15]`
|
|
18
|
+
* must be 1. This is a real restriction, not defensive book-keeping: a
|
|
19
|
+
* projective map sends a polynomial cubic to a *rational* cubic, which no
|
|
20
|
+
* Hermite segment can represent, so a perspective matrix here would silently
|
|
21
|
+
* produce a curve that is merely plausible.
|
|
22
|
+
*
|
|
23
|
+
* Matrix layout is meep's usual column-major (OpenGL) convention, so `m4[0..2]`
|
|
24
|
+
* is the X axis, `m4[4..6]` the Y axis, `m4[8..10]` the Z axis and `m4[12..14]`
|
|
25
|
+
* the translation.
|
|
26
|
+
*
|
|
27
|
+
* Safe to use in place: the inputs are scalars, so they are already read before
|
|
28
|
+
* anything is written.
|
|
29
|
+
*
|
|
30
|
+
* @param {number[]|Float32Array|Float64Array} output where to write the result
|
|
31
|
+
* @param {number} output_offset where to start writing
|
|
32
|
+
* @param {number} output_stride step between result values, useful when working in higher dimensions. Typically, this will be 1.
|
|
33
|
+
* @param {number} p0x
|
|
34
|
+
* @param {number} p0y
|
|
35
|
+
* @param {number} p0z
|
|
36
|
+
* @param {number} p1x
|
|
37
|
+
* @param {number} p1y
|
|
38
|
+
* @param {number} p1z
|
|
39
|
+
* @param {number} m0x tangent at p0
|
|
40
|
+
* @param {number} m0y tangent at p0
|
|
41
|
+
* @param {number} m0z tangent at p0
|
|
42
|
+
* @param {number} m1x tangent at p1
|
|
43
|
+
* @param {number} m1y tangent at p1
|
|
44
|
+
* @param {number} m1z tangent at p1
|
|
45
|
+
* @param {number[]|Float32Array|Float64Array} m4 column-major affine 4x4 matrix
|
|
46
|
+
* @author Alex Goldring
|
|
47
|
+
* @copyright Company Named Limited (c) 2026
|
|
48
|
+
*/
|
|
49
|
+
export function spline3_hermite_apply_transform(output: number[] | Float32Array | Float64Array, output_offset: number, output_stride: number, p0x: number, p0y: number, p0z: number, p1x: number, p1y: number, p1z: number, m0x: number, m0y: number, m0z: number, m1x: number, m1y: number, m1z: number, m4: number[] | Float32Array | Float64Array): void;
|
|
50
|
+
//# sourceMappingURL=spline3_hermite_apply_transform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spline3_hermite_apply_transform.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/spline/spline3_hermite_apply_transform.js"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,wDAnBW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,iBAClC,MAAM,iBACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,OACN,MAAM,MACN,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,QAmD5C"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { assert } from "../../assert.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* How far the perspective row may drift from `(0, 0, 0, 1)` and still count as
|
|
5
|
+
* affine. Loose enough to accept a matrix that has been inverted or composed a
|
|
6
|
+
* few times, tight enough that a real perspective matrix — whose `m4[11]` is
|
|
7
|
+
* typically −1 — is nowhere near it.
|
|
8
|
+
* @type {number}
|
|
9
|
+
*/
|
|
10
|
+
const AFFINE_EPSILON = 1e-9;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Apply a 4x4 affine matrix to a 3d cubic Hermite segment.
|
|
14
|
+
*
|
|
15
|
+
* The result is written as twelve values in control-point order --
|
|
16
|
+
* `[p0x, p0y, p0z, p1x, p1y, p1z, m0x, m0y, m0z, m1x, m1y, m1z]` -- matching
|
|
17
|
+
* the `(p0, p1, m0, m1)` argument order the rest of the `spline3_hermite_*`
|
|
18
|
+
* family uses, note the stride and offset.
|
|
19
|
+
*
|
|
20
|
+
* Endpoints transform as points, so the translation column applies. Tangents
|
|
21
|
+
* transform as directions, so it does not, and -- unlike
|
|
22
|
+
* {@link m4_transform_direction_v3_buffer}, which is written for normals -- they
|
|
23
|
+
* are deliberately NOT re-normalised: a Hermite tangent's magnitude is part of
|
|
24
|
+
* the curve's shape, and rescaling it would change the geometry rather than
|
|
25
|
+
* move it. Under this rule the transformed segment is exactly the image of the
|
|
26
|
+
* original curve: `T(H(u)) = H_transformed(u)` for every `u`.
|
|
27
|
+
*
|
|
28
|
+
* The matrix must be AFFINE — the perspective row must be zero and `m4[15]`
|
|
29
|
+
* must be 1. This is a real restriction, not defensive book-keeping: a
|
|
30
|
+
* projective map sends a polynomial cubic to a *rational* cubic, which no
|
|
31
|
+
* Hermite segment can represent, so a perspective matrix here would silently
|
|
32
|
+
* produce a curve that is merely plausible.
|
|
33
|
+
*
|
|
34
|
+
* Matrix layout is meep's usual column-major (OpenGL) convention, so `m4[0..2]`
|
|
35
|
+
* is the X axis, `m4[4..6]` the Y axis, `m4[8..10]` the Z axis and `m4[12..14]`
|
|
36
|
+
* the translation.
|
|
37
|
+
*
|
|
38
|
+
* Safe to use in place: the inputs are scalars, so they are already read before
|
|
39
|
+
* anything is written.
|
|
40
|
+
*
|
|
41
|
+
* @param {number[]|Float32Array|Float64Array} output where to write the result
|
|
42
|
+
* @param {number} output_offset where to start writing
|
|
43
|
+
* @param {number} output_stride step between result values, useful when working in higher dimensions. Typically, this will be 1.
|
|
44
|
+
* @param {number} p0x
|
|
45
|
+
* @param {number} p0y
|
|
46
|
+
* @param {number} p0z
|
|
47
|
+
* @param {number} p1x
|
|
48
|
+
* @param {number} p1y
|
|
49
|
+
* @param {number} p1z
|
|
50
|
+
* @param {number} m0x tangent at p0
|
|
51
|
+
* @param {number} m0y tangent at p0
|
|
52
|
+
* @param {number} m0z tangent at p0
|
|
53
|
+
* @param {number} m1x tangent at p1
|
|
54
|
+
* @param {number} m1y tangent at p1
|
|
55
|
+
* @param {number} m1z tangent at p1
|
|
56
|
+
* @param {number[]|Float32Array|Float64Array} m4 column-major affine 4x4 matrix
|
|
57
|
+
* @author Alex Goldring
|
|
58
|
+
* @copyright Company Named Limited (c) 2026
|
|
59
|
+
*/
|
|
60
|
+
export function spline3_hermite_apply_transform(
|
|
61
|
+
output,
|
|
62
|
+
output_offset,
|
|
63
|
+
output_stride,
|
|
64
|
+
p0x, p0y, p0z,
|
|
65
|
+
p1x, p1y, p1z,
|
|
66
|
+
m0x, m0y, m0z,
|
|
67
|
+
m1x, m1y, m1z,
|
|
68
|
+
m4
|
|
69
|
+
) {
|
|
70
|
+
assert.isNonNegativeInteger(output_offset, 'output_offset');
|
|
71
|
+
assert.isNonNegativeInteger(output_stride, 'output_stride');
|
|
72
|
+
assert.greaterThanOrEqual(output_stride, 1, 'output_stride must be at least 1');
|
|
73
|
+
|
|
74
|
+
// Tolerance, not equality: an affine matrix that has been through
|
|
75
|
+
// m4_invert or a chain of m4_multiply comes back with a perspective row
|
|
76
|
+
// that is affine to rounding rather than exactly so. Measured, 37% of
|
|
77
|
+
// Float64Array inverses of a random affine matrix land on
|
|
78
|
+
// `m4[15] = 1 ± 1e-13`; meep's own Float32Array matrices snap back to
|
|
79
|
+
// exactly 1, which is why the spec's fixtures did not catch this.
|
|
80
|
+
assert.ok(Math.abs(m4[3]) <= AFFINE_EPSILON, 'm4[3] must be 0, matrix must be affine');
|
|
81
|
+
assert.ok(Math.abs(m4[7]) <= AFFINE_EPSILON, 'm4[7] must be 0, matrix must be affine');
|
|
82
|
+
assert.ok(Math.abs(m4[11]) <= AFFINE_EPSILON, 'm4[11] must be 0, matrix must be affine');
|
|
83
|
+
assert.ok(Math.abs(m4[15] - 1) <= AFFINE_EPSILON, 'm4[15] must be 1, matrix must be affine');
|
|
84
|
+
|
|
85
|
+
const a0 = m4[0], a1 = m4[1], a2 = m4[2];
|
|
86
|
+
const b0 = m4[4], b1 = m4[5], b2 = m4[6];
|
|
87
|
+
const c0 = m4[8], c1 = m4[9], c2 = m4[10];
|
|
88
|
+
const tx = m4[12], ty = m4[13], tz = m4[14];
|
|
89
|
+
|
|
90
|
+
// endpoints: homogeneous points, translation column included
|
|
91
|
+
output[output_offset] = a0 * p0x + b0 * p0y + c0 * p0z + tx;
|
|
92
|
+
output[output_offset + output_stride] = a1 * p0x + b1 * p0y + c1 * p0z + ty;
|
|
93
|
+
output[output_offset + output_stride * 2] = a2 * p0x + b2 * p0y + c2 * p0z + tz;
|
|
94
|
+
|
|
95
|
+
output[output_offset + output_stride * 3] = a0 * p1x + b0 * p1y + c0 * p1z + tx;
|
|
96
|
+
output[output_offset + output_stride * 4] = a1 * p1x + b1 * p1y + c1 * p1z + ty;
|
|
97
|
+
output[output_offset + output_stride * 5] = a2 * p1x + b2 * p1y + c2 * p1z + tz;
|
|
98
|
+
|
|
99
|
+
// tangents: directions, translation column dropped, magnitude preserved
|
|
100
|
+
output[output_offset + output_stride * 6] = a0 * m0x + b0 * m0y + c0 * m0z;
|
|
101
|
+
output[output_offset + output_stride * 7] = a1 * m0x + b1 * m0y + c1 * m0z;
|
|
102
|
+
output[output_offset + output_stride * 8] = a2 * m0x + b2 * m0y + c2 * m0z;
|
|
103
|
+
|
|
104
|
+
output[output_offset + output_stride * 9] = a0 * m1x + b0 * m1y + c0 * m1z;
|
|
105
|
+
output[output_offset + output_stride * 10] = a1 * m1x + b1 * m1y + c1 * m1z;
|
|
106
|
+
output[output_offset + output_stride * 11] = a2 * m1x + b2 * m1y + c2 * m1z;
|
|
107
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reverse the parameterisation of a cubic Hermite segment: writes the curve
|
|
3
|
+
* `R(u) = H(1 - u)`, which traces exactly the same points in the opposite
|
|
4
|
+
* direction.
|
|
5
|
+
*
|
|
6
|
+
* The result is written in the same `[p0, p1, m0, m1]` order every other
|
|
7
|
+
* `spline3_hermite_*` function uses, note the stride and offset.
|
|
8
|
+
*
|
|
9
|
+
* Reversal negates the tangents as well as swapping the endpoints. From
|
|
10
|
+
* `R'(u) = -H'(1 - u)` we get `R'(0) = -H'(1) = -m1` and `R'(1) = -H'(0) = -m0`,
|
|
11
|
+
* so the result is `[p1, p0, -m1, -m0]`. Writing `[p1, p0, m1, m0]` without the
|
|
12
|
+
* sign flip is the classic mistake: it yields a curve through the same two
|
|
13
|
+
* endpoints that bulges the wrong way, which is easy to miss on a nearly
|
|
14
|
+
* straight segment and obvious on a curved one.
|
|
15
|
+
*
|
|
16
|
+
* Exact — every output is an input or an input with its sign flipped, so there
|
|
17
|
+
* is no rounding, and reversing twice returns the original four values.
|
|
18
|
+
*
|
|
19
|
+
* Safe to use in place: the inputs are scalars, so they are already read before
|
|
20
|
+
* anything is written. `output` may be the very array the values came from,
|
|
21
|
+
* at the same offset.
|
|
22
|
+
*
|
|
23
|
+
* @param {number[]|Float32Array|Float64Array} output where to write the result
|
|
24
|
+
* @param {number} output_offset where to start writing
|
|
25
|
+
* @param {number} output_stride step between result values, useful when working in higher dimensions. Typically, this will be 1.
|
|
26
|
+
* @param {number} p0
|
|
27
|
+
* @param {number} p1
|
|
28
|
+
* @param {number} m0 tangent at p0
|
|
29
|
+
* @param {number} m1 tangent at p1
|
|
30
|
+
* @author Alex Goldring
|
|
31
|
+
* @copyright Company Named Limited (c) 2026
|
|
32
|
+
*/
|
|
33
|
+
export function spline3_hermite_reverse(output: number[] | Float32Array | Float64Array, output_offset: number, output_stride: number, p0: number, p1: number, m0: number, m1: number): void;
|
|
34
|
+
//# sourceMappingURL=spline3_hermite_reverse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spline3_hermite_reverse.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/spline/spline3_hermite_reverse.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,gDAVW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,iBAClC,MAAM,iBACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAkBhB"}
|