@woosh/meep-engine 2.109.1 → 2.109.3
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/build/meep.cjs +126 -186
- package/build/meep.min.js +1 -1
- package/build/meep.module.js +126 -186
- package/package.json +1 -1
- package/src/core/binary/ctz32.d.ts.map +1 -1
- package/src/core/binary/ctz32.js +12 -11
- package/src/core/binary/reinterpret_int32_as_float32.d.ts +7 -0
- package/src/core/binary/reinterpret_int32_as_float32.d.ts.map +1 -0
- package/src/core/binary/reinterpret_int32_as_float32.js +14 -0
- package/src/core/binary/reverse_bits_uint32.d.ts +8 -0
- package/src/core/binary/reverse_bits_uint32.d.ts.map +1 -0
- package/src/core/binary/reverse_bits_uint32.js +17 -0
- package/src/core/binary/reverse_bits_uint32.spec.d.ts +2 -0
- package/src/core/binary/reverse_bits_uint32.spec.d.ts.map +1 -0
- package/src/core/binary/reverse_bits_uint32.spec.js +18 -0
- package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/BVH.js +13 -18
- package/src/core/bvh2/bvh3/ebvh_build_for_geometry_incremental.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/ebvh_build_for_geometry_incremental.js +3 -1
- package/src/core/bvh2/bvh3/ebvh_build_for_geometry_morton.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/ebvh_build_for_geometry_morton.js +6 -7
- package/src/core/bvh2/bvh3/ebvh_build_hierarchy.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/ebvh_build_hierarchy.js +4 -0
- package/src/core/bvh2/bvh3/query/backtracking/bvh_backtracking_query_leaves_ray.d.ts +16 -0
- package/src/core/bvh2/bvh3/query/backtracking/bvh_backtracking_query_leaves_ray.d.ts.map +1 -0
- package/src/core/bvh2/bvh3/query/backtracking/bvh_backtracking_query_leaves_ray.js +130 -0
- package/src/core/bvh2/bvh3/query/bvh_query_leaves_ray_segment.d.ts +18 -0
- package/src/core/bvh2/bvh3/query/bvh_query_leaves_ray_segment.d.ts.map +1 -0
- package/src/core/bvh2/bvh3/query/bvh_query_leaves_ray_segment.js +94 -0
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_ray_segment.d.ts +18 -0
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_ray_segment.d.ts.map +1 -0
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_ray_segment.js +100 -0
- package/src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.d.ts +2 -0
- package/src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.d.ts.map +1 -0
- package/src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.js +1 -0
- package/src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.d.ts +9 -0
- package/src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.d.ts.map +1 -0
- package/src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.js +31 -0
- package/src/core/collection/array/array_quick_sort_by_lookup_map.d.ts +9 -0
- package/src/core/collection/array/array_quick_sort_by_lookup_map.d.ts.map +1 -0
- package/src/core/collection/array/array_quick_sort_by_lookup_map.js +79 -0
- package/src/core/collection/array/array_quick_sort_by_lookup_uint.d.ts +8 -0
- package/src/core/collection/array/array_quick_sort_by_lookup_uint.d.ts.map +1 -0
- package/src/core/collection/array/{array_quick_sort_by_lookup.js → array_quick_sort_by_lookup_uint.js} +1 -1
- package/src/core/collection/array/array_shuffle.js +1 -1
- package/src/core/collection/array/array_swap_one.d.ts.map +1 -1
- package/src/core/collection/array/array_swap_one.js +6 -0
- package/src/core/collection/map/HashMap.js +2 -2
- package/src/core/events/signal/Signal.d.ts.map +1 -1
- package/src/core/events/signal/Signal.js +10 -10
- package/src/core/geom/2d/compute_triangle_area_2d.d.ts.map +1 -1
- package/src/core/geom/2d/compute_triangle_area_2d.js +5 -3
- package/src/core/geom/3d/Ray3.d.ts +6 -0
- package/src/core/geom/3d/Ray3.d.ts.map +1 -1
- package/src/core/geom/3d/Ray3.js +24 -0
- package/src/core/geom/3d/aabb/aabb3_compute_distance_above_plane_min.d.ts +16 -0
- package/src/core/geom/3d/aabb/aabb3_compute_distance_above_plane_min.d.ts.map +1 -0
- package/src/core/geom/3d/aabb/aabb3_compute_distance_above_plane_min.js +29 -0
- package/src/core/geom/3d/aabb/aabb3_from_v3_array_transformed.d.ts +2 -2
- package/src/core/geom/3d/aabb/aabb3_from_v3_array_transformed.d.ts.map +1 -1
- package/src/core/geom/3d/aabb/aabb3_from_v3_array_transformed.js +6 -6
- package/src/core/geom/3d/aabb/aabb3_intersects_ray_segment.d.ts +21 -0
- package/src/core/geom/3d/aabb/aabb3_intersects_ray_segment.d.ts.map +1 -0
- package/src/core/geom/3d/aabb/aabb3_intersects_ray_segment.js +67 -0
- package/src/core/geom/3d/eulerAnglesFromMatrix.d.ts +2 -2
- package/src/core/geom/3d/eulerAnglesFromMatrix.d.ts.map +1 -1
- package/src/core/geom/3d/eulerAnglesFromMatrix.js +28 -25
- package/src/core/geom/3d/morton/v3_morton_encode_bounded.d.ts +2 -2
- package/src/core/geom/3d/morton/v3_morton_encode_bounded.d.ts.map +1 -1
- package/src/core/geom/3d/morton/v3_morton_encode_bounded.js +1 -1
- package/src/core/geom/3d/normal/octahedron/decode_octahedron_to_unit.d.ts +2 -2
- package/src/core/geom/3d/normal/octahedron/decode_octahedron_to_unit.d.ts.map +1 -1
- package/src/core/geom/3d/normal/octahedron/decode_octahedron_to_unit.js +1 -1
- package/src/core/geom/3d/ray/ray3_interval_array_apply_matrix4.d.ts +11 -0
- package/src/core/geom/3d/ray/ray3_interval_array_apply_matrix4.d.ts.map +1 -0
- package/src/core/geom/3d/ray/ray3_interval_array_apply_matrix4.js +61 -0
- package/src/core/geom/3d/ray/ray3_shift_origin_along_direction.js +2 -2
- package/src/core/geom/3d/sphere/sphere_intersects_ray.js +1 -1
- package/src/core/geom/3d/tetrahedra/tetrahedron_compute_circumsphere.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/tetrahedron_compute_circumsphere.js +24 -188
- package/src/core/geom/3d/tetrahedra/triangle/prototype.js +1 -1
- package/src/core/geom/3d/tetrahedra/visualize_tetrahedral_mesh.d.ts +11 -0
- package/src/core/geom/3d/tetrahedra/visualize_tetrahedral_mesh.d.ts.map +1 -0
- package/src/core/geom/3d/tetrahedra/visualize_tetrahedral_mesh.js +42 -0
- package/src/core/geom/3d/topology/samples/sampleFloodFill.js +2 -2
- package/src/core/geom/3d/topology/tm_face_area.js +2 -2
- package/src/core/geom/3d/triangle/{computeTriangleSurfaceArea.d.ts → compute_triangle_area_3d.d.ts} +2 -2
- package/src/core/geom/3d/triangle/compute_triangle_area_3d.d.ts.map +1 -0
- package/src/core/geom/3d/triangle/{computeTriangleSurfaceArea.js → compute_triangle_area_3d.js} +2 -4
- package/src/core/geom/Quaternion.d.ts.map +1 -1
- package/src/core/geom/Quaternion.js +13 -102
- package/src/core/geom/Quaternion.spec.js +2 -2
- package/src/core/geom/Vector1.d.ts.map +1 -1
- package/src/core/geom/Vector1.js +14 -6
- package/src/core/geom/vec3/v3_array_displace_in_direction.d.ts +14 -0
- package/src/core/geom/vec3/v3_array_displace_in_direction.d.ts.map +1 -0
- package/src/core/geom/vec3/{v3_shift_along_direction.js → v3_array_displace_in_direction.js} +1 -1
- package/src/core/geom/vec3/v3_displace_in_direction.d.ts +7 -7
- package/src/core/geom/vec3/v3_displace_in_direction.d.ts.map +1 -1
- package/src/core/geom/vec3/v3_displace_in_direction.js +20 -17
- package/src/core/geom/vec3/v3_displace_in_direction.spec.d.ts +2 -0
- package/src/core/geom/vec3/v3_displace_in_direction.spec.d.ts.map +1 -0
- package/src/core/geom/vec3/v3_displace_in_direction.spec.js +80 -0
- package/src/core/geom/vec4/v4_length.d.ts +10 -0
- package/src/core/geom/vec4/v4_length.d.ts.map +1 -0
- package/src/core/geom/vec4/v4_length.js +13 -0
- package/src/core/geom/vec4/v4_length_sqr.js +2 -1
- package/src/core/graph/eigen/matrix_eigenvalues_in_place.spec.js +31 -1
- package/src/core/math/FLT_EPSILON_64.d.ts +6 -0
- package/src/core/math/FLT_EPSILON_64.d.ts.map +1 -0
- package/src/core/math/FLT_EPSILON_64.js +5 -0
- package/src/core/math/gaussian.d.ts +2 -2
- package/src/core/math/gaussian.js +2 -2
- package/src/core/math/linalg/README.md +1 -0
- package/src/core/math/linalg/lu_factor_linear_system.d.ts +13 -0
- package/src/core/math/linalg/lu_factor_linear_system.d.ts.map +1 -0
- package/src/core/math/linalg/lu_factor_linear_system.js +112 -0
- package/src/core/math/linalg/lu_solve_linear_system.d.ts +14 -0
- package/src/core/math/linalg/lu_solve_linear_system.d.ts.map +1 -0
- package/src/core/math/linalg/lu_solve_linear_system.js +51 -0
- package/src/core/math/linalg/solve_linear_system.d.ts +14 -0
- package/src/core/math/linalg/solve_linear_system.d.ts.map +1 -0
- package/src/core/math/linalg/solve_linear_system.js +52 -0
- package/src/core/math/linalg/solve_linear_system.spec.d.ts +2 -0
- package/src/core/math/linalg/solve_linear_system.spec.d.ts.map +1 -0
- package/src/core/math/linalg/solve_linear_system.spec.js +70 -0
- package/src/core/math/linalg/solve_linear_system_GEPP_2x2.d.ts +10 -0
- package/src/core/math/linalg/solve_linear_system_GEPP_2x2.d.ts.map +1 -0
- package/src/core/math/linalg/solve_linear_system_GEPP_2x2.js +91 -0
- package/src/core/math/max4.d.ts +10 -0
- package/src/core/math/max4.d.ts.map +1 -0
- package/src/core/math/max4.js +24 -0
- package/src/core/math/min4.d.ts +10 -0
- package/src/core/math/min4.d.ts.map +1 -0
- package/src/core/math/min4.js +23 -0
- package/src/core/math/solveQuadratic.d.ts.map +1 -1
- package/src/core/math/solveQuadratic.js +2 -0
- package/src/core/math/statistics/gaussian_amplitude.d.ts +8 -0
- package/src/core/math/statistics/gaussian_amplitude.d.ts.map +1 -0
- package/src/core/math/statistics/gaussian_amplitude.js +13 -0
- package/src/core/math/statistics/halton_sequence.js +3 -3
- package/src/core/math/statistics/halton_sequence.spec.js +18 -0
- package/src/core/math/statistics/hammersley_sequence.d.ts +9 -0
- package/src/core/math/statistics/hammersley_sequence.d.ts.map +1 -0
- package/src/core/math/statistics/hammersley_sequence.js +25 -0
- package/src/core/math/statistics/hammersley_sequence_2d.d.ts +9 -0
- package/src/core/math/statistics/hammersley_sequence_2d.d.ts.map +1 -0
- package/src/core/math/statistics/hammersley_sequence_2d.js +17 -0
- package/src/core/math/statistics/radical_inverse_VdC_base_2.d.ts +8 -0
- package/src/core/math/statistics/radical_inverse_VdC_base_2.d.ts.map +1 -0
- package/src/core/math/statistics/radical_inverse_VdC_base_2.js +15 -0
- package/src/core/math/statistics/radical_inverse_VdC_base_2.spec.d.ts +2 -0
- package/src/core/math/statistics/radical_inverse_VdC_base_2.spec.d.ts.map +1 -0
- package/src/core/math/statistics/radical_inverse_VdC_base_2.spec.js +9 -0
- package/src/core/model/node-graph/node/NodeInstance.d.ts.map +1 -1
- package/src/core/model/node-graph/node/NodeInstance.js +26 -12
- package/src/core/model/node-graph/node/NodeInstance.spec.d.ts +2 -0
- package/src/core/model/node-graph/node/NodeInstance.spec.d.ts.map +1 -0
- package/src/core/model/node-graph/node/NodeInstance.spec.js +82 -0
- package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts.map +1 -1
- package/src/core/model/node-graph/node/NodeInstancePortReference.js +9 -0
- package/src/core/model/node-graph/node/NodeInstancePortReference.spec.js +20 -0
- package/src/core/model/node-graph/node/Port.d.ts.map +1 -1
- package/src/core/model/node-graph/node/Port.js +5 -12
- package/src/core/model/node-graph/node/PortDirection.d.ts.map +1 -1
- package/src/core/model/node-graph/node/PortDirection.js +7 -1
- package/src/engine/asset/CORS/CrossOriginConfig.d.ts.map +1 -1
- package/src/engine/asset/CORS/CrossOriginConfig.js +6 -4
- package/src/engine/graphics/geometry/buffered/computeBufferAttributeHash.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/computeBufferAttributeHash.js +9 -5
- package/src/engine/graphics/geometry/computeMeshSurfaceArea.js +2 -2
- package/src/engine/graphics/impostors/octahedral/grid/OctahedralUvEncoder.d.ts.map +1 -1
- package/src/engine/graphics/impostors/octahedral/grid/OctahedralUvEncoder.js +33 -3
- package/src/engine/graphics/impostors/octahedral/prototypeBaker.js +12 -9
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_INFERNO.d.ts +6 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_INFERNO.d.ts.map +1 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_INFERNO.js +18 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_TURBO.d.ts +6 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_TURBO.d.ts.map +1 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_TURBO.js +266 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_VIRIDIS.d.ts +7 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_VIRIDIS.d.ts.map +1 -0
- package/src/engine/graphics/particles/particular/engine/parameter/sample/RGB_LUT_VIRIDIS.js +19 -0
- package/src/engine/graphics/sh3/SH3VisualisationMaterial.js +9 -9
- package/src/engine/graphics/sh3/gi/material/MaterialTransformer.d.ts.map +1 -1
- package/src/engine/graphics/sh3/gi/material/MaterialTransformer.js +0 -2
- package/src/engine/graphics/sh3/lpv/LightProbeVolume.d.ts +4 -27
- package/src/engine/graphics/sh3/lpv/LightProbeVolume.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lpv/LightProbeVolume.js +36 -158
- package/src/engine/graphics/sh3/lpv/LightProbeVolumeBaker.d.ts +13 -0
- package/src/engine/graphics/sh3/lpv/LightProbeVolumeBaker.d.ts.map +1 -0
- package/src/engine/graphics/sh3/lpv/LightProbeVolumeBaker.js +63 -0
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts +1 -0
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.js +25 -1
- package/src/engine/graphics/sh3/lpv/build_probes_for_scene.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lpv/build_probes_for_scene.js +4 -29
- package/src/engine/graphics/sh3/lpv/{LightProbeVolumeSerializationAdapter.d.ts → serialization/LightProbeVolumeSerializationAdapter.d.ts} +2 -2
- package/src/engine/graphics/sh3/lpv/serialization/LightProbeVolumeSerializationAdapter.d.ts.map +1 -0
- package/src/engine/graphics/sh3/lpv/{LightProbeVolumeSerializationAdapter.js → serialization/LightProbeVolumeSerializationAdapter.js} +2 -2
- package/src/engine/graphics/sh3/lpv/sh3_bake_depth.d.ts +13 -0
- package/src/engine/graphics/sh3/lpv/sh3_bake_depth.d.ts.map +1 -0
- package/src/engine/graphics/sh3/lpv/sh3_bake_depth.js +71 -0
- package/src/engine/graphics/sh3/lpv/worker/lpv_build_worker.d.ts +2 -0
- package/src/engine/graphics/sh3/lpv/worker/lpv_build_worker.d.ts.map +1 -0
- package/src/engine/graphics/sh3/lpv/worker/lpv_build_worker.js +38 -0
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.d.ts +1 -7
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.js +34 -148
- package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts +13 -9
- package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.js +75 -55
- package/src/engine/graphics/sh3/path_tracer/PathTracedScene.d.ts +23 -5
- package/src/engine/graphics/sh3/path_tracer/PathTracedScene.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/PathTracedScene.js +201 -72
- package/src/engine/graphics/sh3/path_tracer/PathTracer.js +1 -1
- package/src/engine/graphics/sh3/path_tracer/build_bvh_nodes_distances_along_ray.d.ts +15 -0
- package/src/engine/graphics/sh3/path_tracer/build_bvh_nodes_distances_along_ray.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/build_bvh_nodes_distances_along_ray.js +46 -0
- package/src/engine/graphics/sh3/path_tracer/build_bvh_nodes_distances_sqr_to_point.d.ts +14 -0
- package/src/engine/graphics/sh3/path_tracer/build_bvh_nodes_distances_sqr_to_point.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/build_bvh_nodes_distances_sqr_to_point.js +43 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/compute_triangle_group_aabb3.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/{compute_triangle_group_aabb3.js → geometry/compute_triangle_group_aabb3.js} +2 -2
- package/src/engine/graphics/sh3/path_tracer/geometry/construct_ray_hit_from_geometry.d.ts +12 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/construct_ray_hit_from_geometry.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/construct_ray_hit_from_geometry.js +72 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/sample_triangle_attribute.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/sort_triangles_by_distance_to_point.d.ts +13 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/sort_triangles_by_distance_to_point.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/geometry/sort_triangles_by_distance_to_point.js +48 -0
- package/src/engine/graphics/sh3/path_tracer/material/StandardMaterial.d.ts +1 -0
- package/src/engine/graphics/sh3/path_tracer/material/StandardMaterial.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/material/StandardMaterial.js +4 -0
- package/src/engine/graphics/sh3/path_tracer/material/StandardTexture.d.ts +1 -0
- package/src/engine/graphics/sh3/path_tracer/material/StandardTexture.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/material/StandardTexture.js +8 -5
- package/src/engine/graphics/sh3/path_tracer/prototypePathTracer.js +27 -21
- package/src/engine/graphics/sh3/path_tracer/ray_hit_apply_transform.d.ts +2 -2
- package/src/engine/graphics/sh3/path_tracer/ray_hit_apply_transform.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/ray_hit_apply_transform.js +1 -1
- package/src/engine/graphics/sh3/path_tracer/sampling/getBiasedNormalSample.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/{getBiasedNormalSample.js → sampling/getBiasedNormalSample.js} +1 -1
- package/src/engine/graphics/sh3/path_tracer/sampling/random_in_hemisphere.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/{random_in_hemisphere.js → sampling/random_in_hemisphere.js} +1 -1
- package/src/engine/graphics/sh3/path_tracer/sort_bvh_nodes_by_distance_to_point.d.ts +12 -0
- package/src/engine/graphics/sh3/path_tracer/sort_bvh_nodes_by_distance_to_point.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/sort_bvh_nodes_by_distance_to_point.js +46 -0
- package/src/engine/graphics/sh3/path_tracer/texture/sample_material.js +2 -2
- package/src/engine/graphics/sh3/path_tracer/three_object_to_path_traced_scene.d.ts +7 -0
- package/src/engine/graphics/sh3/path_tracer/three_object_to_path_traced_scene.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/three_object_to_path_traced_scene.js +69 -0
- package/src/engine/graphics/sh3/prototypeSH3Probe.js +29 -7
- package/src/engine/graphics/texture/formatToChannelCount.d.ts.map +1 -1
- package/src/engine/graphics/texture/formatToChannelCount.js +14 -1
- package/src/engine/graphics/three/three_object_replace_materials.d.ts +7 -0
- package/src/engine/graphics/three/three_object_replace_materials.d.ts.map +1 -0
- package/src/engine/graphics/three/three_object_replace_materials.js +13 -0
- package/src/core/collection/array/array_quick_sort_by_lookup.d.ts +0 -8
- package/src/core/collection/array/array_quick_sort_by_lookup.d.ts.map +0 -1
- package/src/core/geom/3d/triangle/computeTriangleSurfaceArea.d.ts.map +0 -1
- package/src/core/geom/vec3/v3_shift_along_direction.d.ts +0 -14
- package/src/core/geom/vec3/v3_shift_along_direction.d.ts.map +0 -1
- package/src/engine/graphics/filter/FlipArrayViaCanvas.d.ts +0 -2
- package/src/engine/graphics/filter/FlipArrayViaCanvas.d.ts.map +0 -1
- package/src/engine/graphics/filter/FlipArrayViaCanvas.js +0 -13
- package/src/engine/graphics/sh3/lpv/LightProbeVolumeSerializationAdapter.d.ts.map +0 -1
- package/src/engine/graphics/sh3/path_tracer/compute_triangle_group_aabb3.d.ts.map +0 -1
- package/src/engine/graphics/sh3/path_tracer/getBiasedNormalSample.d.ts.map +0 -1
- package/src/engine/graphics/sh3/path_tracer/random_in_hemisphere.d.ts.map +0 -1
- package/src/engine/graphics/sh3/path_tracer/sample_triangle_attribute.d.ts.map +0 -1
- /package/src/engine/graphics/sh3/path_tracer/{compute_triangle_group_aabb3.d.ts → geometry/compute_triangle_group_aabb3.d.ts} +0 -0
- /package/src/engine/graphics/sh3/path_tracer/{sample_triangle_attribute.d.ts → geometry/sample_triangle_attribute.d.ts} +0 -0
- /package/src/engine/graphics/sh3/path_tracer/{sample_triangle_attribute.js → geometry/sample_triangle_attribute.js} +0 -0
- /package/src/engine/graphics/sh3/path_tracer/{getBiasedNormalSample.d.ts → sampling/getBiasedNormalSample.d.ts} +0 -0
- /package/src/engine/graphics/sh3/path_tracer/{random_in_hemisphere.d.ts → sampling/random_in_hemisphere.d.ts} +0 -0
package/build/meep.module.js
CHANGED
|
@@ -975,13 +975,6 @@ class SignalHandler {
|
|
|
975
975
|
*/
|
|
976
976
|
SignalHandler.prototype.isSignalHandler = true;
|
|
977
977
|
|
|
978
|
-
/**
|
|
979
|
-
*
|
|
980
|
-
* @author Alex Goldring
|
|
981
|
-
* @copyright Alex Goldring 2014
|
|
982
|
-
*/
|
|
983
|
-
|
|
984
|
-
|
|
985
978
|
/**
|
|
986
979
|
* Common dispatch stack
|
|
987
980
|
* @readonly
|
|
@@ -1598,11 +1591,12 @@ function findSignalHandlerIndexByHandleAndContext(handlers, f, ctx) {
|
|
|
1598
1591
|
const l = handlers.length;
|
|
1599
1592
|
|
|
1600
1593
|
for (let i = 0; i < l; i++) {
|
|
1601
|
-
const
|
|
1594
|
+
const handler = handlers[i];
|
|
1602
1595
|
|
|
1603
|
-
if (
|
|
1596
|
+
if (handler.handle === f && handler.context === ctx) {
|
|
1604
1597
|
return i;
|
|
1605
1598
|
}
|
|
1599
|
+
|
|
1606
1600
|
}
|
|
1607
1601
|
|
|
1608
1602
|
return -1;
|
|
@@ -1635,7 +1629,7 @@ function removeHandlerByHandler(signal, h) {
|
|
|
1635
1629
|
*/
|
|
1636
1630
|
function removeHandlerByHandlerAndContext(signal, h, ctx) {
|
|
1637
1631
|
const handlers = signal.handlers;
|
|
1638
|
-
|
|
1632
|
+
const i = findSignalHandlerIndexByHandleAndContext(handlers, h, ctx);
|
|
1639
1633
|
|
|
1640
1634
|
if (i >= 0) {
|
|
1641
1635
|
handlers.splice(i, 1);
|
|
@@ -1645,6 +1639,12 @@ function removeHandlerByHandlerAndContext(signal, h, ctx) {
|
|
|
1645
1639
|
return false;
|
|
1646
1640
|
}
|
|
1647
1641
|
|
|
1642
|
+
/**
|
|
1643
|
+
*
|
|
1644
|
+
* @param {function} f
|
|
1645
|
+
* @param {*} context
|
|
1646
|
+
* @param {Array} args
|
|
1647
|
+
*/
|
|
1648
1648
|
function dispatchCallback(f, context, args) {
|
|
1649
1649
|
|
|
1650
1650
|
try {
|
|
@@ -1936,6 +1936,30 @@ function v3_dot(x0, y0, z0, x1, y1, z1) {
|
|
|
1936
1936
|
return (x0 * x1 + y0 * y1 + z0 * z1);
|
|
1937
1937
|
}
|
|
1938
1938
|
|
|
1939
|
+
/**
|
|
1940
|
+
*
|
|
1941
|
+
* @param {number} x
|
|
1942
|
+
* @param {number} y
|
|
1943
|
+
* @param {number} z
|
|
1944
|
+
* @param {number} w
|
|
1945
|
+
* @returns {number}
|
|
1946
|
+
*/
|
|
1947
|
+
function v4_length_sqr(x, y, z, w) {
|
|
1948
|
+
return x * x + y * y + z * z + w * w;
|
|
1949
|
+
}
|
|
1950
|
+
|
|
1951
|
+
/**
|
|
1952
|
+
*
|
|
1953
|
+
* @param {number} x
|
|
1954
|
+
* @param {number} y
|
|
1955
|
+
* @param {number} z
|
|
1956
|
+
* @param {number} w
|
|
1957
|
+
* @returns {number}
|
|
1958
|
+
*/
|
|
1959
|
+
function v4_length(x, y, z, w) {
|
|
1960
|
+
return Math.sqrt(v4_length_sqr(x, y, z, w));
|
|
1961
|
+
}
|
|
1962
|
+
|
|
1939
1963
|
/**
|
|
1940
1964
|
*
|
|
1941
1965
|
* @param {number} v
|
|
@@ -3600,7 +3624,7 @@ let Quaternion$1 = class Quaternion {
|
|
|
3600
3624
|
const z = this.z;
|
|
3601
3625
|
const w = this.w;
|
|
3602
3626
|
|
|
3603
|
-
return
|
|
3627
|
+
return v4_length(x, y, z, w);
|
|
3604
3628
|
}
|
|
3605
3629
|
|
|
3606
3630
|
/**
|
|
@@ -3612,48 +3636,20 @@ let Quaternion$1 = class Quaternion {
|
|
|
3612
3636
|
Quaternion.rotateTowards(this, this, other, max_delta);
|
|
3613
3637
|
}
|
|
3614
3638
|
|
|
3615
|
-
/**
|
|
3616
|
-
*
|
|
3617
|
-
* @param {Vector3} direction
|
|
3618
|
-
* @param {Vector3} [up]
|
|
3619
|
-
* @param {Vector3} [forward]
|
|
3620
|
-
*/
|
|
3621
|
-
alignToDirection(direction, up = Vector3$1.up, forward = Vector3$1.forward) {
|
|
3622
|
-
|
|
3623
|
-
const dot = up.dot(direction);
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
if (Math.abs(dot + 1) < 0.000001) {
|
|
3627
|
-
// vector a and b point exactly in the opposite direction,
|
|
3628
|
-
// so it is a 180 degrees turn around the up-axis
|
|
3629
|
-
this.set(forward.x, forward.y, forward.z, Math.PI);
|
|
3630
|
-
} else if (Math.abs(dot - 1) < 0.000001) {
|
|
3631
|
-
// vector a and b point exactly in the same direction
|
|
3632
|
-
// so we return the identity quaternion
|
|
3633
|
-
this.set(0, 0, 0, 1);
|
|
3634
|
-
}
|
|
3635
|
-
|
|
3636
|
-
const angle = Math.acos(dot);
|
|
3637
|
-
|
|
3638
|
-
axis.crossVectors(up, direction);
|
|
3639
|
-
axis.normalize();
|
|
3640
|
-
|
|
3641
|
-
this.fromAxisAngle(axis, angle);
|
|
3642
|
-
}
|
|
3643
|
-
|
|
3644
3639
|
/**
|
|
3645
3640
|
*
|
|
3646
3641
|
* @param {Vector3} source
|
|
3647
3642
|
* @param {Vector3} target
|
|
3643
|
+
* @param {Vector3} [up]
|
|
3648
3644
|
*/
|
|
3649
|
-
lookAt(source, target) {
|
|
3645
|
+
lookAt(source, target, up = Vector3$1.up) {
|
|
3650
3646
|
const forward = new Vector3$1();
|
|
3651
3647
|
|
|
3652
3648
|
forward.subVectors(target, source);
|
|
3653
3649
|
|
|
3654
3650
|
forward.normalize();
|
|
3655
3651
|
|
|
3656
|
-
this.
|
|
3652
|
+
this.lookRotation(forward, up);
|
|
3657
3653
|
}
|
|
3658
3654
|
|
|
3659
3655
|
/**
|
|
@@ -4036,22 +4032,23 @@ let Quaternion$1 = class Quaternion {
|
|
|
4036
4032
|
const qW_1 = qW + l0;
|
|
4037
4033
|
|
|
4038
4034
|
//normalize result
|
|
4039
|
-
const l1 = Math.sqrt(p0 + qW_1 * qW_1);
|
|
4035
|
+
const l1 = 1 / Math.sqrt(p0 + qW_1 * qW_1);
|
|
4040
4036
|
|
|
4041
|
-
const x = qX
|
|
4042
|
-
const y = qY
|
|
4043
|
-
const z = qZ
|
|
4044
|
-
const w = qW
|
|
4037
|
+
const x = qX * l1;
|
|
4038
|
+
const y = qY * l1;
|
|
4039
|
+
const z = qZ * l1;
|
|
4040
|
+
const w = qW * l1;
|
|
4045
4041
|
|
|
4046
4042
|
this.set(x, y, z, w);
|
|
4047
4043
|
}
|
|
4048
4044
|
|
|
4049
4045
|
/**
|
|
4046
|
+
* NOTE: Vectors need to be normalized
|
|
4050
4047
|
* Based on blog post: http://lolengine.net/blog/2013/09/18/beautiful-maths-quaternion-from-vectors
|
|
4051
4048
|
* @param {Vector3} from
|
|
4052
4049
|
* @param {Vector3} to
|
|
4053
4050
|
*/
|
|
4054
|
-
|
|
4051
|
+
fromUnitVectors(from, to) {
|
|
4055
4052
|
|
|
4056
4053
|
//quat quat::fromtwovectors(vec3 u, vec3 v)
|
|
4057
4054
|
// {
|
|
@@ -4070,7 +4067,7 @@ let Quaternion$1 = class Quaternion {
|
|
|
4070
4067
|
|
|
4071
4068
|
const uv_dot = v3_dot(ax, ay, az, bx, by, bz);
|
|
4072
4069
|
|
|
4073
|
-
if (uv_dot
|
|
4070
|
+
if (uv_dot < -0.9999999) {
|
|
4074
4071
|
//to vector is opposite, produce a reversal quaternion
|
|
4075
4072
|
|
|
4076
4073
|
tempvec3.crossVectors(Vector3$1.left, from);
|
|
@@ -4114,49 +4111,6 @@ let Quaternion$1 = class Quaternion {
|
|
|
4114
4111
|
);
|
|
4115
4112
|
}
|
|
4116
4113
|
|
|
4117
|
-
/**
|
|
4118
|
-
* Input vectors must be normalized
|
|
4119
|
-
* @param {Vector3} from
|
|
4120
|
-
* @param {Vector3} to
|
|
4121
|
-
*/
|
|
4122
|
-
fromUnitVectors(from, to) {
|
|
4123
|
-
|
|
4124
|
-
const dot = from.dot(to);
|
|
4125
|
-
|
|
4126
|
-
let x, y, z, w;
|
|
4127
|
-
|
|
4128
|
-
if (dot < -0.9999999) {
|
|
4129
|
-
const tempvec3 = new Vector3$1();
|
|
4130
|
-
|
|
4131
|
-
tempvec3.crossVectors(Vector3$1.left, from);
|
|
4132
|
-
|
|
4133
|
-
if (tempvec3.lengthSqr() < 0.00001) {
|
|
4134
|
-
tempvec3.crossVectors(Vector3$1.up, from);
|
|
4135
|
-
}
|
|
4136
|
-
|
|
4137
|
-
tempvec3.normalize();
|
|
4138
|
-
|
|
4139
|
-
this.fromAxisAngle(tempvec3, Math.PI);
|
|
4140
|
-
} else if (dot > 0.9999999) {
|
|
4141
|
-
x = 0;
|
|
4142
|
-
y = 0;
|
|
4143
|
-
z = 0;
|
|
4144
|
-
w = 1;
|
|
4145
|
-
|
|
4146
|
-
this.set(x, y, z, w);
|
|
4147
|
-
} else {
|
|
4148
|
-
//cross product from x to
|
|
4149
|
-
|
|
4150
|
-
x = from.y * to.z - from.z * to.y;
|
|
4151
|
-
y = from.z * to.x - from.x * to.z;
|
|
4152
|
-
z = from.x * to.y - from.y * to.x;
|
|
4153
|
-
w = 1 + dot;
|
|
4154
|
-
|
|
4155
|
-
this.set(x, y, z, w);
|
|
4156
|
-
this.normalize();
|
|
4157
|
-
}
|
|
4158
|
-
}
|
|
4159
|
-
|
|
4160
4114
|
/**
|
|
4161
4115
|
* @deprecated
|
|
4162
4116
|
* @param {Matrix4} m
|
|
@@ -4343,17 +4297,6 @@ let Quaternion$1 = class Quaternion {
|
|
|
4343
4297
|
this.slerpQuaternions(this, other, t);
|
|
4344
4298
|
}
|
|
4345
4299
|
|
|
4346
|
-
/**
|
|
4347
|
-
* @see https://github.com/gareth-cross/quat/blob/master/include/quaternion.hpp
|
|
4348
|
-
* TODO implement
|
|
4349
|
-
* @param {Quaternion} a
|
|
4350
|
-
* @param {Quaternion} b
|
|
4351
|
-
* @param {number} t
|
|
4352
|
-
*/
|
|
4353
|
-
quaternionsInterpolateRungeKutta4(a, b, t) {
|
|
4354
|
-
throw new Error('Not Implemented');
|
|
4355
|
-
}
|
|
4356
|
-
|
|
4357
4300
|
/**
|
|
4358
4301
|
*
|
|
4359
4302
|
* @param {function} handler
|
|
@@ -4673,13 +4616,6 @@ Quaternion$1.prototype.toArray = Quaternion$1.prototype.writeToArray;
|
|
|
4673
4616
|
Quaternion$1.identity = Object.freeze(new Quaternion$1(0, 0, 0, 1));
|
|
4674
4617
|
|
|
4675
4618
|
|
|
4676
|
-
/**
|
|
4677
|
-
*
|
|
4678
|
-
* @type {Vector3}
|
|
4679
|
-
*/
|
|
4680
|
-
const axis = new Vector3$1();
|
|
4681
|
-
|
|
4682
|
-
|
|
4683
4619
|
const tempvec3 = new Vector3$1();
|
|
4684
4620
|
|
|
4685
4621
|
/**
|
|
@@ -50505,6 +50441,14 @@ class Vector1 extends Number {
|
|
|
50505
50441
|
return this.set(clamp$1(this.x, low, high));
|
|
50506
50442
|
}
|
|
50507
50443
|
|
|
50444
|
+
/**
|
|
50445
|
+
* Negate sign of the value, if value is 7, it will become -7 and vice versa
|
|
50446
|
+
* Zero is unaffected
|
|
50447
|
+
*/
|
|
50448
|
+
negate() {
|
|
50449
|
+
this.set(-this.x);
|
|
50450
|
+
}
|
|
50451
|
+
|
|
50508
50452
|
/**
|
|
50509
50453
|
*
|
|
50510
50454
|
* @param {Vector1|Vector2|Vector3|Vector4} other
|
|
@@ -50559,7 +50503,7 @@ class Vector1 extends Number {
|
|
|
50559
50503
|
* @param {number[]} array
|
|
50560
50504
|
* @param {number} offset
|
|
50561
50505
|
*/
|
|
50562
|
-
readFromArray(array, offset=0) {
|
|
50506
|
+
readFromArray(array, offset = 0) {
|
|
50563
50507
|
this.set(array[offset]);
|
|
50564
50508
|
}
|
|
50565
50509
|
|
|
@@ -50568,11 +50512,11 @@ class Vector1 extends Number {
|
|
|
50568
50512
|
* @param {number[]} array
|
|
50569
50513
|
* @param {number} offset
|
|
50570
50514
|
*/
|
|
50571
|
-
writeToArray(array, offset=0) {
|
|
50515
|
+
writeToArray(array, offset = 0) {
|
|
50572
50516
|
array[offset] = this.x;
|
|
50573
50517
|
}
|
|
50574
50518
|
|
|
50575
|
-
asArray(){
|
|
50519
|
+
asArray() {
|
|
50576
50520
|
return [this.x];
|
|
50577
50521
|
}
|
|
50578
50522
|
|
|
@@ -52482,7 +52426,7 @@ class BVH {
|
|
|
52482
52426
|
/**
|
|
52483
52427
|
*
|
|
52484
52428
|
* @param {number} id
|
|
52485
|
-
* @param {number[]|ArrayLike<number
|
|
52429
|
+
* @param {number[]|ArrayLike<number>|AABB3} aabb
|
|
52486
52430
|
*/
|
|
52487
52431
|
node_set_aabb(id, aabb) {
|
|
52488
52432
|
|
|
@@ -52623,27 +52567,24 @@ class BVH {
|
|
|
52623
52567
|
const float32 = this.__data_float32;
|
|
52624
52568
|
|
|
52625
52569
|
const a_x0 = float32[address_a];
|
|
52626
|
-
const b_x0 = float32[address_b];
|
|
52627
|
-
const x0 = min2(a_x0, b_x0);
|
|
52628
|
-
|
|
52629
52570
|
const a_y0 = float32[address_a + 1];
|
|
52630
|
-
const b_y0 = float32[address_b + 1];
|
|
52631
|
-
const y0 = min2(a_y0, b_y0);
|
|
52632
|
-
|
|
52633
52571
|
const a_z0 = float32[address_a + 2];
|
|
52634
|
-
const b_z0 = float32[address_b + 2];
|
|
52635
|
-
const z0 = min2(a_z0, b_z0);
|
|
52636
|
-
|
|
52637
52572
|
const a_x1 = float32[address_a + 3];
|
|
52638
|
-
const b_x1 = float32[address_b + 3];
|
|
52639
|
-
const x1 = max2(a_x1, b_x1);
|
|
52640
|
-
|
|
52641
52573
|
const a_y1 = float32[address_a + 4];
|
|
52642
|
-
const b_y1 = float32[address_b + 4];
|
|
52643
|
-
const y1 = max2(a_y1, b_y1);
|
|
52644
|
-
|
|
52645
52574
|
const a_z1 = float32[address_a + 5];
|
|
52575
|
+
|
|
52576
|
+
const b_x0 = float32[address_b];
|
|
52577
|
+
const b_y0 = float32[address_b + 1];
|
|
52578
|
+
const b_z0 = float32[address_b + 2];
|
|
52579
|
+
const b_x1 = float32[address_b + 3];
|
|
52580
|
+
const b_y1 = float32[address_b + 4];
|
|
52646
52581
|
const b_z1 = float32[address_b + 5];
|
|
52582
|
+
|
|
52583
|
+
const x0 = min2(a_x0, b_x0);
|
|
52584
|
+
const y0 = min2(a_y0, b_y0);
|
|
52585
|
+
const z0 = min2(a_z0, b_z0);
|
|
52586
|
+
const x1 = max2(a_x1, b_x1);
|
|
52587
|
+
const y1 = max2(a_y1, b_y1);
|
|
52647
52588
|
const z1 = max2(a_z1, b_z1);
|
|
52648
52589
|
|
|
52649
52590
|
|
|
@@ -52776,8 +52717,6 @@ class BVH {
|
|
|
52776
52717
|
const uint32 = this.__data_uint32;
|
|
52777
52718
|
|
|
52778
52719
|
do {
|
|
52779
|
-
index = this.balance(index);
|
|
52780
|
-
|
|
52781
52720
|
const address = index * ELEMENT_WORD_COUNT;
|
|
52782
52721
|
|
|
52783
52722
|
const child1 = uint32[address + COLUMN_CHILD_1];
|
|
@@ -55141,7 +55080,7 @@ function mortonEncode_magicbits(x, y, z) {
|
|
|
55141
55080
|
* @param {number} x
|
|
55142
55081
|
* @param {number} y
|
|
55143
55082
|
* @param {number} z
|
|
55144
|
-
* @param {number[]} bounds
|
|
55083
|
+
* @param {number[]|AABB3} bounds
|
|
55145
55084
|
* @returns {number}
|
|
55146
55085
|
*/
|
|
55147
55086
|
function v3_morton_encode_bounded(x, y, z, bounds) {
|
|
@@ -59799,34 +59738,35 @@ function collectIteratorValueToArray(result, iterator) {
|
|
|
59799
59738
|
* @return {number}
|
|
59800
59739
|
*/
|
|
59801
59740
|
function ctz32(x) {
|
|
59741
|
+
let _x = x;
|
|
59802
59742
|
let n = 0;
|
|
59803
59743
|
|
|
59804
|
-
if ((
|
|
59805
|
-
|
|
59744
|
+
if ((_x & 0xffff) === 0) {
|
|
59745
|
+
_x >>= 16;
|
|
59806
59746
|
n += 16;
|
|
59807
59747
|
}
|
|
59808
59748
|
|
|
59809
|
-
if ((
|
|
59810
|
-
|
|
59749
|
+
if ((_x & 0xff) === 0) {
|
|
59750
|
+
_x >>= 8;
|
|
59811
59751
|
n += 8;
|
|
59812
59752
|
}
|
|
59813
59753
|
|
|
59814
|
-
if ((
|
|
59815
|
-
|
|
59754
|
+
if ((_x & 0xf) === 0) {
|
|
59755
|
+
_x >>= 4;
|
|
59816
59756
|
n += 4;
|
|
59817
59757
|
}
|
|
59818
59758
|
|
|
59819
|
-
if ((
|
|
59820
|
-
|
|
59759
|
+
if ((_x & 0x3) === 0) {
|
|
59760
|
+
_x >>= 2;
|
|
59821
59761
|
n += 2;
|
|
59822
59762
|
}
|
|
59823
59763
|
|
|
59824
|
-
if ((
|
|
59825
|
-
|
|
59764
|
+
if ((_x & 0x1) === 0) {
|
|
59765
|
+
_x >>= 1;
|
|
59826
59766
|
n += 1;
|
|
59827
59767
|
}
|
|
59828
59768
|
|
|
59829
|
-
if (
|
|
59769
|
+
if (_x === 0) {
|
|
59830
59770
|
n += 1;
|
|
59831
59771
|
}
|
|
59832
59772
|
|
|
@@ -59860,6 +59800,7 @@ function invokeObjectHash(object) {
|
|
|
59860
59800
|
* @param {number} index1
|
|
59861
59801
|
*/
|
|
59862
59802
|
function array_swap_one(array, index0, index1) {
|
|
59803
|
+
|
|
59863
59804
|
const t = array[index0];
|
|
59864
59805
|
|
|
59865
59806
|
array[index0] = array[index1];
|
|
@@ -60198,8 +60139,12 @@ class HashMap {
|
|
|
60198
60139
|
return true;
|
|
60199
60140
|
}
|
|
60200
60141
|
|
|
60142
|
+
// assert.equal(record.hash, this.#build_key_hash(record.key), `Key hash has diverged for key ${record.key}, likely key was mutated or hash function is unstable`);
|
|
60143
|
+
|
|
60201
60144
|
const result = this.keyEqualityFunction(record.key, key);
|
|
60202
60145
|
|
|
60146
|
+
// assert.isBoolean(result, `result(a=${record.key},b=${key})`);
|
|
60147
|
+
|
|
60203
60148
|
return result;
|
|
60204
60149
|
}
|
|
60205
60150
|
|
|
@@ -67565,8 +67510,12 @@ function formatToChannelCount(format) {
|
|
|
67565
67510
|
case RGFormat:
|
|
67566
67511
|
return 2;
|
|
67567
67512
|
case RGBFormat:
|
|
67513
|
+
case RGB_S3TC_DXT1_Format:
|
|
67568
67514
|
return 3;
|
|
67569
67515
|
case RGBAFormat:
|
|
67516
|
+
case RGBA_S3TC_DXT1_Format:
|
|
67517
|
+
case RGBA_S3TC_DXT3_Format:
|
|
67518
|
+
case RGBA_S3TC_DXT5_Format:
|
|
67570
67519
|
return 4;
|
|
67571
67520
|
default:
|
|
67572
67521
|
throw new Error(`Unsupported format '${format}'`);
|
|
@@ -67964,13 +67913,15 @@ const CrossOriginKind = {
|
|
|
67964
67913
|
};
|
|
67965
67914
|
|
|
67966
67915
|
class CrossOriginConfig {
|
|
67967
|
-
|
|
67968
|
-
this.kind = CrossOriginKind.Anonymous;
|
|
67969
|
-
}
|
|
67970
|
-
|
|
67916
|
+
kind = CrossOriginKind.Anonymous;
|
|
67971
67917
|
}
|
|
67972
67918
|
|
|
67973
67919
|
const default_coc = new CrossOriginConfig();
|
|
67920
|
+
|
|
67921
|
+
/**
|
|
67922
|
+
* @readonly
|
|
67923
|
+
* @type {Readonly<CrossOriginConfig>}
|
|
67924
|
+
*/
|
|
67974
67925
|
CrossOriginConfig.default = Object.freeze(default_coc);
|
|
67975
67926
|
|
|
67976
67927
|
/**
|
|
@@ -105101,13 +105052,6 @@ class EngineConfiguration {
|
|
|
105101
105052
|
}
|
|
105102
105053
|
}
|
|
105103
105054
|
|
|
105104
|
-
//
|
|
105105
|
-
|
|
105106
|
-
|
|
105107
|
-
function atan2(a, b) {
|
|
105108
|
-
return Math.atan2(a, b);
|
|
105109
|
-
}
|
|
105110
|
-
|
|
105111
105055
|
/**
|
|
105112
105056
|
*
|
|
105113
105057
|
* @param {number[]} mat4
|
|
@@ -105119,15 +105063,9 @@ function coeff(mat4, row_index, column_index) {
|
|
|
105119
105063
|
return mat4[row_index + column_index * 4];
|
|
105120
105064
|
}
|
|
105121
105065
|
|
|
105122
|
-
|
|
105123
|
-
|
|
105124
|
-
|
|
105125
|
-
|
|
105126
|
-
function cos(a) {
|
|
105127
|
-
return Math.cos(a);
|
|
105128
|
-
}
|
|
105129
|
-
|
|
105130
|
-
const EIGEN_PI = Math.PI;
|
|
105066
|
+
const sin = Math.sin;
|
|
105067
|
+
const cos = Math.cos;
|
|
105068
|
+
const atan2 = Math.atan2;
|
|
105131
105069
|
|
|
105132
105070
|
/**
|
|
105133
105071
|
*
|
|
@@ -105152,10 +105090,14 @@ const EIGEN_PI = Math.PI;
|
|
|
105152
105090
|
* @param {number[]} res
|
|
105153
105091
|
* @param {number[]|Float32Array|mat4} m4
|
|
105154
105092
|
* @param {number} a0 axis index
|
|
105155
|
-
* @param {number} a1
|
|
105156
|
-
* @param {number} a2
|
|
105093
|
+
* @param {number} a1 axis index
|
|
105094
|
+
* @param {number} a2 axis index
|
|
105157
105095
|
*/
|
|
105158
|
-
function eulerAnglesFromMatrix(
|
|
105096
|
+
function eulerAnglesFromMatrix(
|
|
105097
|
+
res, m4,
|
|
105098
|
+
a0, a1, a2
|
|
105099
|
+
) {
|
|
105100
|
+
|
|
105159
105101
|
const odd = ((a0 + 1) % 3 === a1) ? 0 : 1;
|
|
105160
105102
|
|
|
105161
105103
|
const i = a0;
|
|
@@ -105164,11 +105106,12 @@ function eulerAnglesFromMatrix(res, m4, a0, a1, a2) {
|
|
|
105164
105106
|
|
|
105165
105107
|
if (a0 === a2) {
|
|
105166
105108
|
res[0] = atan2(coeff(m4, j, i), coeff(m4, k, i));
|
|
105167
|
-
|
|
105109
|
+
|
|
105110
|
+
if ((odd && res[0] < 0) || ((~odd) && res[0] > 0)) {
|
|
105168
105111
|
if (res[0] > 0) {
|
|
105169
|
-
res[0] -=
|
|
105112
|
+
res[0] -= Math.PI;
|
|
105170
105113
|
} else {
|
|
105171
|
-
res[0] +=
|
|
105114
|
+
res[0] += Math.PI;
|
|
105172
105115
|
}
|
|
105173
105116
|
const s2 = v2_magnitude(coeff(m4, j, i), coeff(m4, k, i));
|
|
105174
105117
|
res[1] = -atan2(s2, coeff(m4, i, i));
|
|
@@ -105189,25 +105132,34 @@ function eulerAnglesFromMatrix(res, m4, a0, a1, a2) {
|
|
|
105189
105132
|
|
|
105190
105133
|
const s1 = sin(res[0]);
|
|
105191
105134
|
const c1 = cos(res[0]);
|
|
105135
|
+
|
|
105192
105136
|
res[2] = atan2(c1 * coeff(m4, j, k) - s1 * coeff(m4, k, k), c1 * coeff(m4, j, j) - s1 * coeff(m4, k, j));
|
|
105137
|
+
|
|
105193
105138
|
} else {
|
|
105139
|
+
|
|
105194
105140
|
res[0] = atan2(coeff(m4, j, k), coeff(m4, k, k));
|
|
105141
|
+
|
|
105195
105142
|
const c2 = v2_magnitude(coeff(m4, i, i), coeff(m4, i, j));
|
|
105196
|
-
|
|
105143
|
+
|
|
105144
|
+
if ((odd && res[0] < 0) || ((~odd) && res[0] > 0)) {
|
|
105197
105145
|
if (res[0] > 0) {
|
|
105198
|
-
res[0] -=
|
|
105146
|
+
res[0] -= Math.PI;
|
|
105199
105147
|
} else {
|
|
105200
|
-
res[0] +=
|
|
105148
|
+
res[0] += Math.PI;
|
|
105201
105149
|
}
|
|
105202
105150
|
res[1] = atan2(-coeff(m4, i, k), -c2);
|
|
105203
|
-
} else
|
|
105151
|
+
} else {
|
|
105204
105152
|
res[1] = atan2(-coeff(m4, i, k), c2);
|
|
105153
|
+
}
|
|
105154
|
+
|
|
105205
105155
|
const s1 = sin(res[0]);
|
|
105206
105156
|
const c1 = cos(res[0]);
|
|
105157
|
+
|
|
105207
105158
|
res[2] = atan2(s1 * coeff(m4, k, i) - c1 * coeff(m4, j, i), c1 * coeff(m4, j, j) - s1 * coeff(m4, k, j));
|
|
105159
|
+
|
|
105208
105160
|
}
|
|
105209
105161
|
|
|
105210
|
-
if (
|
|
105162
|
+
if (odd === 0) {
|
|
105211
105163
|
// invert result
|
|
105212
105164
|
res[0] = -res[0];
|
|
105213
105165
|
res[1] = -res[1];
|
|
@@ -118052,18 +118004,6 @@ function v4_dot(
|
|
|
118052
118004
|
return (x0 * x1 + y0 * y1 + z0 * z1 + w0 * w1);
|
|
118053
118005
|
}
|
|
118054
118006
|
|
|
118055
|
-
/**
|
|
118056
|
-
*
|
|
118057
|
-
* @param {number} x
|
|
118058
|
-
* @param {number} y
|
|
118059
|
-
* @param {number} z
|
|
118060
|
-
* @param {number} w
|
|
118061
|
-
* @returns {number}
|
|
118062
|
-
*/
|
|
118063
|
-
function v4_length_sqr(x, y, z, w) {
|
|
118064
|
-
return x * x + y * y + z * z + w * w;
|
|
118065
|
-
}
|
|
118066
|
-
|
|
118067
118007
|
/**
|
|
118068
118008
|
*
|
|
118069
118009
|
* @param {number} x0
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ctz32.d.ts","sourceRoot":"","sources":["../../../../src/core/binary/ctz32.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,yBAHW,MAAM,GACL,MAAM,
|
|
1
|
+
{"version":3,"file":"ctz32.d.ts","sourceRoot":"","sources":["../../../../src/core/binary/ctz32.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,yBAHW,MAAM,GACL,MAAM,CAoCjB"}
|
package/src/core/binary/ctz32.js
CHANGED
|
@@ -5,34 +5,35 @@
|
|
|
5
5
|
* @return {number}
|
|
6
6
|
*/
|
|
7
7
|
export function ctz32(x) {
|
|
8
|
+
let _x = x;
|
|
8
9
|
let n = 0;
|
|
9
10
|
|
|
10
|
-
if ((
|
|
11
|
-
|
|
11
|
+
if ((_x & 0xffff) === 0) {
|
|
12
|
+
_x >>= 16;
|
|
12
13
|
n += 16;
|
|
13
14
|
}
|
|
14
15
|
|
|
15
|
-
if ((
|
|
16
|
-
|
|
16
|
+
if ((_x & 0xff) === 0) {
|
|
17
|
+
_x >>= 8;
|
|
17
18
|
n += 8;
|
|
18
19
|
}
|
|
19
20
|
|
|
20
|
-
if ((
|
|
21
|
-
|
|
21
|
+
if ((_x & 0xf) === 0) {
|
|
22
|
+
_x >>= 4;
|
|
22
23
|
n += 4;
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
if ((
|
|
26
|
-
|
|
26
|
+
if ((_x & 0x3) === 0) {
|
|
27
|
+
_x >>= 2;
|
|
27
28
|
n += 2;
|
|
28
29
|
}
|
|
29
30
|
|
|
30
|
-
if ((
|
|
31
|
-
|
|
31
|
+
if ((_x & 0x1) === 0) {
|
|
32
|
+
_x >>= 1;
|
|
32
33
|
n += 1;
|
|
33
34
|
}
|
|
34
35
|
|
|
35
|
-
if (
|
|
36
|
+
if (_x === 0) {
|
|
36
37
|
n += 1;
|
|
37
38
|
}
|
|
38
39
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reinterpret_int32_as_float32.d.ts","sourceRoot":"","sources":["../../../../src/core/binary/reinterpret_int32_as_float32.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,oDAHW,MAAM,GACJ,MAAM,CAMlB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const b = new ArrayBuffer(4);
|
|
2
|
+
const b_f32 = new Float32Array(b);
|
|
3
|
+
const b_i32 = new Int32Array(b);
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
* @param {number} value
|
|
8
|
+
* @returns {number}
|
|
9
|
+
*/
|
|
10
|
+
export function reinterpret_int32_as_float32(value) {
|
|
11
|
+
b_i32[0] = value;
|
|
12
|
+
|
|
13
|
+
return b_f32[0];
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reverse_bits_uint32.d.ts","sourceRoot":"","sources":["../../../../src/core/binary/reverse_bits_uint32.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,2CAHW,MAAM,GACJ,MAAM,CAYlB"}
|