@woosh/meep-engine 3.40.0 → 3.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/bundle-worker-image-decoder.js +1 -1
- package/build/bundle-worker-terrain.js +1 -1
- package/editor/selection/editor_pick.d.ts.map +1 -1
- package/editor/selection/editor_pick.js +2 -1
- package/editor/tools/TransformToolV2.d.ts.map +1 -1
- package/editor/tools/TransformToolV2.js +7 -1
- package/editor/tools/engine/ToolEngine.d.ts.map +1 -1
- package/editor/tools/engine/ToolEngine.js +10 -0
- package/editor/tools/v2/TransformControls.d.ts.map +1 -1
- package/editor/tools/v2/TransformControls.js +7 -20
- package/editor/tools/v2/handle/gizmo_drag_plane.d.ts.map +1 -1
- package/editor/tools/v2/handle/gizmo_drag_plane.js +4 -0
- package/editor/view/ecs/EntityEditor.d.ts.map +1 -1
- package/editor/view/ecs/EntityEditor.js +3 -1
- package/editor/view/node-graph/NodeGraphView.d.ts.map +1 -1
- package/editor/view/node-graph/NodeGraphView.js +28 -12
- package/package.json +1 -1
- package/samples/engine/first-scene/index.html +4 -1
- package/samples/engine/first-scene/main.js +14 -9
- package/src/core/binary/utf8/utf8_decode.js +3 -3
- package/src/core/bvh2/binary/2/bvh32_query_user_data_ray.d.ts.map +1 -1
- package/src/core/bvh2/binary/2/bvh32_query_user_data_ray.js +112 -113
- package/src/core/bvh2/bvh3/ebvh_nodes_sort_sah_local4.js +2 -2
- package/src/core/cache/wtinylfu/benchmark/CacheWTinylfu.bench.md +14 -14
- package/src/core/collection/RingBuffer.d.ts.map +1 -1
- package/src/core/collection/RingBuffer.js +4 -0
- package/src/core/collection/array/array_contains_duplicates.d.ts.map +1 -1
- package/src/core/collection/array/array_contains_duplicates.js +2 -1
- package/src/core/collection/array/array_copy.d.ts.map +1 -1
- package/src/core/collection/array/array_copy.js +23 -0
- package/src/core/collection/array/typed/sparse_typed_array_hash.d.ts +2 -2
- package/src/core/collection/array/typed/sparse_typed_array_hash.d.ts.map +1 -1
- package/src/core/collection/array/typed/sparse_typed_array_hash.js +9 -8
- package/src/core/collection/array/typed/uint16_array_hash.d.ts +2 -2
- package/src/core/collection/array/typed/uint16_array_hash.js +4 -4
- package/src/core/collection/array/typed/uint8_array_hash.d.ts +2 -2
- package/src/core/collection/array/typed/uint8_array_hash.js +4 -4
- package/src/core/collection/array/weightedRandomFromArray.d.ts +1 -0
- package/src/core/collection/array/weightedRandomFromArray.d.ts.map +1 -1
- package/src/core/collection/array/weightedRandomFromArray.js +9 -1
- package/src/core/collection/heap/BinaryHeap.d.ts.map +1 -1
- package/src/core/collection/heap/BinaryHeap.js +4 -0
- package/src/core/collection/list/List.d.ts.map +1 -1
- package/src/core/collection/list/List.js +4 -2
- package/src/core/collection/set/ArraySet.js +1 -1
- package/src/core/collection/set/HashSet.d.ts +1 -1
- package/src/core/collection/set/HashSet.d.ts.map +1 -1
- package/src/core/collection/set/HashSet.js +4 -2
- package/src/core/debug/matchers/IsEqual.js +1 -1
- package/src/core/debug/matchers/IsIterableContaining.d.ts.map +1 -1
- package/src/core/debug/matchers/IsIterableContaining.js +61 -74
- package/src/core/events/signal/SignalBinding.js +101 -101
- package/src/core/function/extractFunctionBody.js +13 -13
- package/src/core/function/objectsEqual.d.ts.map +1 -1
- package/src/core/function/objectsEqual.js +15 -14
- package/src/core/geom/3d/frustum/frustum3_compute_closest_point.d.ts.map +1 -1
- package/src/core/geom/3d/frustum/frustum3_compute_closest_point.js +207 -172
- package/src/core/geom/3d/gjk/gjk_epa_penetration.d.ts.map +1 -1
- package/src/core/geom/3d/gjk/gjk_epa_penetration.js +5 -4
- package/src/core/geom/3d/line/line3_compute_segment_point_distance_eikonal.d.ts.map +1 -1
- package/src/core/geom/3d/line/line3_compute_segment_point_distance_eikonal.js +8 -2
- package/src/core/geom/3d/quaternion/swing_twist_clamp.d.ts +24 -0
- package/src/core/geom/3d/quaternion/swing_twist_clamp.d.ts.map +1 -0
- package/src/core/geom/3d/quaternion/swing_twist_clamp.js +62 -0
- package/src/core/geom/3d/quaternion/swing_twist_compose.d.ts +15 -0
- package/src/core/geom/3d/quaternion/swing_twist_compose.d.ts.map +1 -0
- package/src/core/geom/3d/quaternion/swing_twist_compose.js +36 -0
- package/src/core/geom/3d/quaternion/swing_twist_error.d.ts +39 -0
- package/src/core/geom/3d/quaternion/swing_twist_error.d.ts.map +1 -0
- package/src/core/geom/3d/quaternion/swing_twist_error.js +85 -0
- package/src/core/geom/3d/triangle/tri3_ray_intersection.d.ts +20 -0
- package/src/core/geom/3d/triangle/tri3_ray_intersection.d.ts.map +1 -1
- package/src/core/geom/3d/triangle/tri3_ray_intersection.js +182 -0
- package/src/core/geom/vec3/v3_rigid_align_paired_unit_vectors.d.ts +11 -6
- package/src/core/geom/vec3/v3_rigid_align_paired_unit_vectors.d.ts.map +1 -1
- package/src/core/geom/vec3/v3_rigid_align_paired_unit_vectors.js +27 -13
- package/src/core/math/linalg/eigen/matrix_symmetric_4x4_eigen.d.ts +25 -0
- package/src/core/math/linalg/eigen/matrix_symmetric_4x4_eigen.d.ts.map +1 -0
- package/src/core/math/linalg/eigen/matrix_symmetric_4x4_eigen.js +166 -0
- package/src/core/math/linalg/eigen/matrix_top_eigenvector_power_iteration.d.ts +5 -3
- package/src/core/math/linalg/eigen/matrix_top_eigenvector_power_iteration.d.ts.map +1 -1
- package/src/core/math/linalg/eigen/matrix_top_eigenvector_power_iteration.js +5 -3
- package/src/core/math/noise/curl_noise_3dt.d.ts.map +1 -1
- package/src/core/math/noise/curl_noise_3dt.js +20 -10
- package/src/core/math/noise/sdnoise.d.ts +16 -5
- package/src/core/math/noise/sdnoise.d.ts.map +1 -1
- package/src/core/math/noise/sdnoise.js +43 -9
- package/src/core/math/spline/spline3_hermite_nearest_point.d.ts +16 -1
- package/src/core/math/spline/spline3_hermite_nearest_point.d.ts.map +1 -1
- package/src/core/math/spline/spline3_hermite_nearest_point.js +44 -3
- package/src/engine/Engine.d.ts.map +1 -1
- package/src/engine/Engine.js +6 -2
- package/src/engine/animation/curve/AnimationCurve.d.ts +3 -0
- package/src/engine/animation/curve/AnimationCurve.d.ts.map +1 -1
- package/src/engine/animation/curve/AnimationCurve.js +6 -1
- package/src/engine/control/first-person/FirstPersonPlayerController.d.ts +9 -0
- package/src/engine/control/first-person/FirstPersonPlayerController.d.ts.map +1 -1
- package/src/engine/control/first-person/FirstPersonPlayerControllerConfig.d.ts +26 -0
- package/src/engine/control/first-person/FirstPersonPlayerControllerConfig.d.ts.map +1 -1
- package/src/engine/control/first-person/FirstPersonPlayerControllerConfig.js +2 -0
- package/src/engine/control/first-person/abilities/AbilitySet.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/AbilitySet.js +9 -0
- package/src/engine/control/first-person/abilities/LedgeGrab.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/LedgeGrab.js +6 -0
- package/src/engine/control/first-person/abilities/Slide.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/Slide.js +1 -0
- package/src/engine/control/first-person/abilities/WallRun.d.ts +4 -1
- package/src/engine/control/first-person/abilities/WallRun.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/WallRun.js +13 -1
- package/src/engine/control/first-person/mastery/SlideInitiationTimingEvaluator.d.ts +1 -1
- package/src/engine/control/first-person/mastery/SlideInitiationTimingEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/SlideInitiationTimingEvaluator.js +6 -5
- package/src/engine/control/first-person/mastery/StrideTimingJumpEvaluator.d.ts +3 -3
- package/src/engine/control/first-person/mastery/StrideTimingJumpEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/StrideTimingJumpEvaluator.js +9 -8
- package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.d.ts.map +1 -1
- package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.js +13 -4
- package/src/engine/ecs/EntityManager.d.ts +9 -1
- package/src/engine/ecs/EntityManager.d.ts.map +1 -1
- package/src/engine/ecs/EntityManager.js +44 -42
- package/src/engine/ecs/dynamic_actions/rules/DynamicRuleDescription.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/rules/DynamicRuleDescription.js +2 -1
- package/src/engine/ecs/dynamic_actions/rules/DynamicRuleDescriptionTable.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/rules/DynamicRuleDescriptionTable.js +1 -0
- package/src/engine/ecs/fow/FogOfWarRevealerSystem.d.ts.map +1 -1
- package/src/engine/ecs/fow/FogOfWarRevealerSystem.js +3 -0
- package/src/engine/ecs/gpu/GPUStateAuthority.d.ts +20 -0
- package/src/engine/ecs/gpu/GPUStateAuthority.d.ts.map +1 -1
- package/src/engine/ecs/gpu/GPUStateAuthority.js +21 -0
- package/src/engine/ecs/gpu/GPU_AUTHORITY_EVENT_HOLD_CHANGE.d.ts +13 -0
- package/src/engine/ecs/gpu/GPU_AUTHORITY_EVENT_HOLD_CHANGE.d.ts.map +1 -0
- package/src/engine/ecs/gpu/GPU_AUTHORITY_EVENT_HOLD_CHANGE.js +12 -0
- package/src/engine/ecs/gpu/gpu_authority_grant.d.ts +6 -0
- package/src/engine/ecs/gpu/gpu_authority_grant.d.ts.map +1 -1
- package/src/engine/ecs/gpu/gpu_authority_grant.js +7 -1
- package/src/engine/ecs/gpu/gpu_authority_held.d.ts +14 -0
- package/src/engine/ecs/gpu/gpu_authority_held.d.ts.map +1 -0
- package/src/engine/ecs/gpu/gpu_authority_held.js +23 -0
- package/src/engine/ecs/gpu/gpu_authority_hold.d.ts +23 -0
- package/src/engine/ecs/gpu/gpu_authority_hold.d.ts.map +1 -0
- package/src/engine/ecs/gpu/gpu_authority_hold.js +41 -0
- package/src/engine/ecs/gpu/gpu_authority_unhold.d.ts +14 -0
- package/src/engine/ecs/gpu/gpu_authority_unhold.d.ts.map +1 -0
- package/src/engine/ecs/gpu/gpu_authority_unhold.js +32 -0
- package/src/engine/ecs/ik/IKGoal.d.ts +59 -0
- package/src/engine/ecs/ik/IKGoal.d.ts.map +1 -0
- package/src/engine/ecs/ik/IKGoal.js +83 -0
- package/src/engine/ecs/ik/IKGoalSystem.d.ts +75 -0
- package/src/engine/ecs/ik/IKGoalSystem.d.ts.map +1 -0
- package/src/engine/ecs/ik/IKGoalSystem.js +1456 -0
- package/src/engine/ecs/ik/PLAN.md +179 -0
- package/src/engine/ecs/parent/EntityNode.js +3 -3
- package/src/engine/ecs/speaker/VoiceSystem.d.ts +2 -2
- package/src/engine/ecs/speaker/VoiceSystem.d.ts.map +1 -1
- package/src/engine/ecs/speaker/VoiceSystem.js +4 -0
- package/src/engine/ecs/storage/BinaryBufferDeSerializer.js +5 -5
- package/src/engine/ecs/storage/BinaryBufferSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/BinaryBufferSerializer.js +4 -5
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.js +3 -2
- package/src/engine/ecs/storage/binary/SERIALIZATION_COVERAGE.md +7 -3
- package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter2.js +1 -1
- package/src/engine/ecs/storage/binary/object-v2/BinaryObjectDeSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/object-v2/BinaryObjectDeSerializer.js +8 -1
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.d.ts.map +1 -1
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.js +9 -2
- package/src/engine/ecs/system/orderSystemsByDeclaredAccess.d.ts +33 -0
- package/src/engine/ecs/system/orderSystemsByDeclaredAccess.d.ts.map +1 -0
- package/src/engine/ecs/system/orderSystemsByDeclaredAccess.js +282 -0
- package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.js +5 -2
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.js +3 -0
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.js +1 -0
- package/src/engine/ecs/terrain/overlay/TerrainOverlay.js +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTile.js +13 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +1 -0
- package/src/engine/ecs/transform/T64WorldCache.js +139 -139
- package/src/engine/ecs/transform/t64_evaluate_local.d.ts +25 -0
- package/src/engine/ecs/transform/t64_evaluate_local.d.ts.map +1 -0
- package/src/engine/ecs/transform/t64_evaluate_local.js +35 -0
- package/src/engine/ecs/transform/t64_evaluate_world.d.ts +5 -3
- package/src/engine/ecs/transform/t64_evaluate_world.d.ts.map +1 -1
- package/src/engine/ecs/transform/t64_evaluate_world.js +128 -126
- package/src/engine/graphics/ecs/light/LightSerializationAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/LightSerializationAdapter.js +13 -1
- package/src/engine/graphics/ecs/light/LightSerializationUpgrader_0_1.d.ts +5 -0
- package/src/engine/graphics/ecs/light/LightSerializationUpgrader_0_1.d.ts.map +1 -0
- package/src/engine/graphics/ecs/light/LightSerializationUpgrader_0_1.js +27 -0
- package/src/engine/graphics/ecs/water/Water.d.ts +11 -0
- package/src/engine/graphics/ecs/water/Water.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/Water.js +17 -0
- package/src/engine/graphics/ecs/water/WaterSerializationAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/WaterSerializationAdapter.js +3 -1
- package/src/engine/graphics/ecs/water/WaterSerializationUpgrader_4_5.d.ts +9 -0
- package/src/engine/graphics/ecs/water/WaterSerializationUpgrader_4_5.d.ts.map +1 -0
- package/src/engine/graphics/ecs/water/WaterSerializationUpgrader_4_5.js +24 -0
- package/src/engine/graphics/ecs/water/WaterWaves.d.ts +30 -9
- package/src/engine/graphics/ecs/water/WaterWaves.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/WaterWaves.js +41 -9
- package/src/engine/graphics/ecs/water/WaterWavesSerializationAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/WaterWavesSerializationAdapter.js +30 -26
- package/src/engine/graphics/ecs/water/WaterWavesSerializationUpgrader_0_1.d.ts +6 -0
- package/src/engine/graphics/ecs/water/WaterWavesSerializationUpgrader_0_1.d.ts.map +1 -0
- package/src/engine/graphics/ecs/water/WaterWavesSerializationUpgrader_0_1.js +22 -0
- package/src/engine/graphics/geometry/buffered/query/bvh32_geometry_raycast.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/query/bvh32_geometry_raycast.js +3 -5
- package/src/engine/graphics/texture/3d/scs3d_sample_linear3.d.ts +20 -0
- package/src/engine/graphics/texture/3d/scs3d_sample_linear3.d.ts.map +1 -1
- package/src/engine/graphics/texture/3d/scs3d_sample_linear3.js +36 -0
- package/src/engine/graphics3/AnimationGraphSystem.d.ts +2 -0
- package/src/engine/graphics3/AnimationGraphSystem.d.ts.map +1 -1
- package/src/engine/graphics3/AnimationGraphSystem.js +337 -329
- package/src/engine/graphics3/AnimationSystem.d.ts +2 -0
- package/src/engine/graphics3/AnimationSystem.d.ts.map +1 -1
- package/src/engine/graphics3/AnimationSystem.js +360 -352
- package/src/engine/graphics3/WaterSystem.d.ts +12 -3
- package/src/engine/graphics3/WaterSystem.d.ts.map +1 -1
- package/src/engine/graphics3/WaterSystem.js +78 -46
- package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
- package/src/engine/input/devices/PointerDevice.js +29 -4
- package/src/engine/intelligence/behavior/selector/WeightedRandomBehavior.d.ts +1 -0
- package/src/engine/intelligence/behavior/selector/WeightedRandomBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/selector/WeightedRandomBehavior.js +14 -3
- package/src/engine/physics/cloth/MEASUREMENTS.md +130 -0
- package/src/engine/physics/cloth/PLAN.md +16 -1
- package/src/engine/physics/cloth/ecs/ClothColliderSystem.d.ts +5 -6
- package/src/engine/physics/cloth/ecs/ClothColliderSystem.d.ts.map +1 -1
- package/src/engine/physics/cloth/ecs/ClothColliderSystem.js +5 -6
- package/src/engine/physics/cloth/ecs/ClothInstance.d.ts +4 -7
- package/src/engine/physics/cloth/ecs/ClothInstance.d.ts.map +1 -1
- package/src/engine/physics/cloth/ecs/ClothInstance.js +4 -7
- package/src/engine/physics/cloth/ecs/ClothSystem.d.ts +4 -3
- package/src/engine/physics/cloth/ecs/ClothSystem.d.ts.map +1 -1
- package/src/engine/physics/cloth/ecs/ClothSystem.js +4 -3
- package/src/engine/physics/cloth/ecs/ClothWorld.d.ts.map +1 -1
- package/src/engine/physics/cloth/ecs/ClothWorld.js +10 -0
- package/src/engine/physics/cloth/ecs/cloth_seed_rig.d.ts +24 -24
- package/src/engine/physics/cloth/ecs/cloth_seed_rig.d.ts.map +1 -1
- package/src/engine/physics/cloth/ecs/cloth_seed_rig.js +46 -43
- package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts +1 -1
- package/src/engine/physics/cloth/ecs/cloth_write_back.js +1 -1
- package/src/engine/physics/constraint/solve_constraints.d.ts +0 -35
- package/src/engine/physics/constraint/solve_constraints.d.ts.map +1 -1
- package/src/engine/physics/constraint/solve_constraints.js +1 -83
- package/src/engine/physics/ecs/ContactProbe.d.ts +73 -0
- package/src/engine/physics/ecs/ContactProbe.d.ts.map +1 -0
- package/src/engine/physics/ecs/ContactProbe.js +103 -0
- package/src/engine/physics/ecs/ContactProbeSystem.d.ts +44 -0
- package/src/engine/physics/ecs/ContactProbeSystem.d.ts.map +1 -0
- package/src/engine/physics/ecs/ContactProbeSystem.js +397 -0
- package/src/engine/physics/fluid/ecs/FluidComponent.d.ts +1 -1
- package/src/engine/physics/fluid/ecs/FluidComponent.js +1 -1
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
- package/src/engine/physics/fluid/solver/v3_grid_advect_maccormack_velocity.d.ts.map +1 -1
- package/src/engine/physics/fluid/solver/v3_grid_advect_maccormack_velocity.js +12 -3
- package/src/engine/physics/fluid/solver/v3_grid_advect_sl_velocity.d.ts.map +1 -1
- package/src/engine/physics/fluid/solver/v3_grid_advect_sl_velocity.js +8 -2
- package/src/engine/physics/fluid/solver/v3_grid_sample_scalar_masked.d.ts +19 -0
- package/src/engine/physics/fluid/solver/v3_grid_sample_scalar_masked.d.ts.map +1 -1
- package/src/engine/physics/fluid/solver/v3_grid_sample_scalar_masked.js +41 -2
- package/src/engine/physics/fluid/solver/v3_mac_advect_scalar.d.ts.map +1 -1
- package/src/engine/physics/fluid/solver/v3_mac_advect_scalar.js +9 -3
- package/src/engine/physics/fluid/solver/v3_mac_advect_sl_velocity.d.ts.map +1 -1
- package/src/engine/physics/fluid/solver/v3_mac_advect_sl_velocity.js +26 -10
- package/src/engine/physics/inverse_kinematics/frame_fabrik/FrameFabrikProblem.d.ts +205 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/FrameFabrikProblem.d.ts.map +1 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/FrameFabrikProblem.js +245 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/frame_fabrik_limit_from_joint.d.ts +21 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/frame_fabrik_limit_from_joint.d.ts.map +1 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/frame_fabrik_limit_from_joint.js +63 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/frame_fabrik_solve.d.ts +33 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/frame_fabrik_solve.d.ts.map +1 -0
- package/src/engine/physics/inverse_kinematics/frame_fabrik/frame_fabrik_solve.js +874 -0
- package/src/engine/physics/inverse_kinematics/joint_hinge_mid_axis.d.ts +27 -0
- package/src/engine/physics/inverse_kinematics/joint_hinge_mid_axis.d.ts.map +1 -0
- package/src/engine/physics/inverse_kinematics/joint_hinge_mid_axis.js +77 -0
- package/src/engine/physics/inverse_kinematics/two_bone_path_solve.d.ts +36 -0
- package/src/engine/physics/inverse_kinematics/two_bone_path_solve.d.ts.map +1 -0
- package/src/engine/physics/inverse_kinematics/two_bone_path_solve.js +97 -0
- package/src/engine/physics/inverse_kinematics/two_joint_ik.d.ts +33 -11
- package/src/engine/physics/inverse_kinematics/two_joint_ik.d.ts.map +1 -1
- package/src/engine/physics/inverse_kinematics/two_joint_ik.js +158 -67
- package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.d.ts +3 -6
- package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.js +22 -9
- package/src/engine/ui/DraggableAspect.d.ts +5 -1
- package/src/engine/ui/DraggableAspect.d.ts.map +1 -1
- package/src/engine/ui/DraggableAspect.js +61 -4
- package/src/format/image/avif/heif/ItemProperty.d.ts +1 -1
- package/src/format/image/avif/heif/ItemProperty.js +1 -1
- package/src/format/image/png/chunk/png_chunk_decode_iTXt.d.ts.map +1 -1
- package/src/format/image/png/chunk/png_chunk_decode_iTXt.js +17 -6
- package/src/shade/device/mock/SoftwareGPUDevice.d.ts +2 -4
- package/src/shade/device/mock/SoftwareGPUDevice.d.ts.map +1 -1
- package/src/shade/device/mock/SoftwareGPUDevice.js +20 -13
- package/src/shade/playground/skinned_blas_refit/sweep_views.d.ts.map +1 -1
- package/src/shade/playground/skinned_blas_refit/sweep_views.js +2 -1
- package/src/shade/playground/water_refraction/README.md +10 -11
- package/src/shade/playground/water_refraction/main.js +9 -8
- package/src/shade/playground/water_refraction/world.js +1 -1
- package/src/shade/playground/water_surface/README.md +43 -0
- package/src/shade/playground/water_surface/index.html +30 -0
- package/src/shade/playground/water_surface/main.d.ts +2 -0
- package/src/shade/playground/water_surface/main.d.ts.map +1 -0
- package/src/shade/playground/water_surface/main.js +154 -0
- package/src/shade/playground/water_surface/world.d.ts +44 -0
- package/src/shade/playground/water_surface/world.d.ts.map +1 -0
- package/src/shade/playground/water_surface/world.js +160 -0
- package/src/shade/renderer/animation/ANIMATION_TRACK_BINDING_STRUCT.d.ts.map +1 -1
- package/src/shade/renderer/animation/ANIMATION_TRACK_BINDING_STRUCT.js +10 -1
- package/src/shade/renderer/animation/GPUAnimationManager.d.ts +10 -4
- package/src/shade/renderer/animation/GPUAnimationManager.d.ts.map +1 -1
- package/src/shade/renderer/animation/GPUAnimationManager.js +251 -23
- package/src/shade/renderer/animation/POSE_ACCUMULATOR_LAYOUT.d.ts +12 -4
- package/src/shade/renderer/animation/POSE_ACCUMULATOR_LAYOUT.d.ts.map +1 -1
- package/src/shade/renderer/animation/POSE_ACCUMULATOR_LAYOUT.js +12 -4
- package/src/shade/renderer/animation/chunk_pose_accumulator.d.ts.map +1 -1
- package/src/shade/renderer/animation/chunk_pose_accumulator.js +14 -1
- package/src/shade/renderer/animation/pose/PoseChannelIndex.d.ts +78 -0
- package/src/shade/renderer/animation/pose/PoseChannelIndex.d.ts.map +1 -0
- package/src/shade/renderer/animation/pose/PoseChannelIndex.js +274 -0
- package/src/shade/renderer/animation/pose/PosePlayback.d.ts +40 -3
- package/src/shade/renderer/animation/pose/PosePlayback.d.ts.map +1 -1
- package/src/shade/renderer/animation/pose/PosePlayback.js +77 -3
- package/src/shade/renderer/animation/pose/pose_evaluate_local.d.ts +21 -3
- package/src/shade/renderer/animation/pose/pose_evaluate_local.d.ts.map +1 -1
- package/src/shade/renderer/animation/pose/pose_evaluate_local.js +79 -11
- package/src/shade/renderer/animation/shader_animation_apply.js +1 -1
- package/src/shade/renderer/animation/shader_animation_pose_resolve.d.ts +3 -2
- package/src/shade/renderer/animation/shader_animation_pose_resolve.d.ts.map +1 -1
- package/src/shade/renderer/animation/shader_animation_pose_resolve.js +187 -176
- package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts.map +1 -1
- package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.js +5 -0
- package/src/shade/renderer/binding/BufferBinding.js +2 -2
- package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts.map +1 -1
- package/src/shade/renderer/buffer/table/GPUTypedTable.js +5 -3
- package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts +10 -3
- package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.js +17 -9
- package/src/shade/renderer/camera/orbital/OrbitalCameraInput.d.ts +3 -0
- package/src/shade/renderer/camera/orbital/OrbitalCameraInput.d.ts.map +1 -1
- package/src/shade/renderer/camera/orbital/OrbitalCameraInput.js +16 -0
- package/src/shade/renderer/camera/orbital/OrbitalCameraRig.d.ts +2 -0
- package/src/shade/renderer/camera/orbital/OrbitalCameraRig.d.ts.map +1 -1
- package/src/shade/renderer/camera/orbital/OrbitalCameraRig.js +11 -0
- package/src/shade/renderer/geometry/meshlet/build/meshoptimizer/geometry_to_meshlets_meshoptimizer.d.ts +1 -1
- package/src/shade/renderer/geometry/meshlet/build/meshoptimizer/geometry_to_meshlets_meshoptimizer.d.ts.map +1 -1
- package/src/shade/renderer/geometry/meshlet/build/meshoptimizer/geometry_to_meshlets_meshoptimizer.js +9 -3
- package/src/shade/renderer/geometry/util/geometry_simplify_redundant_topology.d.ts.map +1 -1
- package/src/shade/renderer/geometry/util/geometry_simplify_redundant_topology.js +2 -2
- package/src/shade/renderer/geometry/virtual/format/vgeo_validate_container.d.ts.map +1 -1
- package/src/shade/renderer/geometry/virtual/format/vgeo_validate_container.js +85 -0
- package/src/shade/renderer/geometry/virtual/runtime/GPUVirtualGeometryRuntime.d.ts.map +1 -1
- package/src/shade/renderer/geometry/virtual/runtime/GPUVirtualGeometryRuntime.js +12 -6
- package/src/shade/renderer/geometry/virtual/runtime/VGeoPageFetcher.d.ts.map +1 -1
- package/src/shade/renderer/geometry/virtual/runtime/VGeoPageFetcher.js +7 -0
- package/src/shade/renderer/geometry/virtual/runtime/VGeoRuntimeTables.d.ts.map +1 -1
- package/src/shade/renderer/geometry/virtual/runtime/VGeoRuntimeTables.js +3 -1
- package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts +1 -1
- package/src/shade/renderer/object_property/chunk_write_object_property.d.ts +3 -1
- package/src/shade/renderer/object_property/chunk_write_object_property.d.ts.map +1 -1
- package/src/shade/renderer/object_property/chunk_write_object_property.js +5 -2
- package/src/shade/renderer/object_property/chunk_write_object_property_node3d.d.ts +4 -0
- package/src/shade/renderer/object_property/chunk_write_object_property_node3d.d.ts.map +1 -1
- package/src/shade/renderer/object_property/chunk_write_object_property_node3d.js +6 -1
- package/src/shade/renderer/postprocess/nss/NSS.d.ts +1 -1
- package/src/shade/renderer/scene/SCENE_DATABASE_SPEC.js +2 -1
- package/src/shade/renderer/scene/optimization/geometry/geometry_deduplicate.d.ts +1 -1
- package/src/shade/renderer/scene/optimization/geometry/geometry_deduplicate.d.ts.map +1 -1
- package/src/shade/renderer/scene/optimization/geometry/geometry_deduplicate.js +135 -73
- package/src/shade/renderer/scene/optimization/geometry/internal/cover_greedy.d.ts +7 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/cover_greedy.d.ts.map +1 -1
- package/src/shade/renderer/scene/optimization/geometry/internal/cover_greedy.js +29 -1
- package/src/shade/renderer/scene/optimization/geometry/internal/face_neighbourhood_hash.d.ts +19 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/face_neighbourhood_hash.d.ts.map +1 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/face_neighbourhood_hash.js +167 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/neighbourhood_anchor_index.d.ts +25 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/neighbourhood_anchor_index.d.ts.map +1 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/neighbourhood_anchor_index.js +124 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/seed_correspondence_from_face_pair.d.ts +19 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/seed_correspondence_from_face_pair.d.ts.map +1 -0
- package/src/shade/renderer/scene/optimization/geometry/internal/seed_correspondence_from_face_pair.js +48 -0
- package/src/shade/renderer/scene/rows/GPUSceneRows.d.ts +17 -1
- package/src/shade/renderer/scene/rows/GPUSceneRows.d.ts.map +1 -1
- package/src/shade/renderer/scene/rows/GPUSceneRows.js +29 -3
- package/src/shade/renderer/shader/chunk/math/fft/chunk_fft128_inverse.d.ts +13 -0
- package/src/shade/renderer/shader/chunk/math/fft/chunk_fft128_inverse.d.ts.map +1 -0
- package/src/shade/renderer/shader/chunk/math/fft/chunk_fft128_inverse.js +42 -0
- package/src/shade/renderer/shader/chunk/math/fft/chunk_fft128x4_inverse_workgroup.d.ts +15 -0
- package/src/shade/renderer/shader/chunk/math/fft/chunk_fft128x4_inverse_workgroup.d.ts.map +1 -0
- package/src/shade/renderer/shader/chunk/math/fft/chunk_fft128x4_inverse_workgroup.js +39 -0
- package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.js +2 -0
- package/src/shade/renderer/water/GPUWaterRenderer.d.ts +15 -0
- package/src/shade/renderer/water/GPUWaterRenderer.d.ts.map +1 -1
- package/src/shade/renderer/water/GPUWaterRenderer.js +110 -30
- package/src/shade/renderer/water/medium/GPUWaterBodies.d.ts +16 -8
- package/src/shade/renderer/water/medium/GPUWaterBodies.d.ts.map +1 -1
- package/src/shade/renderer/water/medium/GPUWaterBodies.js +31 -26
- package/src/shade/renderer/water/medium/shader_water_meshlets.d.ts +0 -1
- package/src/shade/renderer/water/medium/shader_water_meshlets.d.ts.map +1 -1
- package/src/shade/renderer/water/medium/shader_water_meshlets.js +1 -39
- package/src/shade/renderer/water/shader_water.d.ts +0 -1
- package/src/shade/renderer/water/shader_water.d.ts.map +1 -1
- package/src/shade/renderer/water/shader_water.js +201 -72
- package/src/shade/renderer/water/surface/GPUWaterSurface.d.ts +70 -0
- package/src/shade/renderer/water/surface/GPUWaterSurface.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/GPUWaterSurface.js +199 -0
- package/src/shade/renderer/water/surface/WATER_WAVE_RECORD_STRUCT.d.ts +5 -2
- package/src/shade/renderer/water/surface/WATER_WAVE_RECORD_STRUCT.d.ts.map +1 -1
- package/src/shade/renderer/water/surface/WATER_WAVE_RECORD_STRUCT.js +32 -12
- package/src/shade/renderer/water/surface/chunk_water_surface_sample.d.ts +22 -0
- package/src/shade/renderer/water/surface/chunk_water_surface_sample.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/chunk_water_surface_sample.js +217 -0
- package/src/shade/renderer/water/surface/graph_water_tessellation.d.ts +65 -11
- package/src/shade/renderer/water/surface/graph_water_tessellation.d.ts.map +1 -1
- package/src/shade/renderer/water/surface/graph_water_tessellation.js +163 -28
- package/src/shade/renderer/water/surface/lod/WATER_LOD.d.ts +51 -0
- package/src/shade/renderer/water/surface/lod/WATER_LOD.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/lod/WATER_LOD.js +95 -0
- package/src/shade/renderer/water/surface/lod/chunk_water_lod.d.ts +10 -0
- package/src/shade/renderer/water/surface/lod/chunk_water_lod.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/lod/chunk_water_lod.js +127 -0
- package/src/shade/renderer/water/surface/lod/chunk_water_lod_cell.d.ts +17 -0
- package/src/shade/renderer/water/surface/lod/chunk_water_lod_cell.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/lod/chunk_water_lod_cell.js +246 -0
- package/src/shade/renderer/water/surface/lod/shader_water_lod.d.ts +118 -0
- package/src/shade/renderer/water/surface/lod/shader_water_lod.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/lod/shader_water_lod.js +727 -0
- package/src/shade/renderer/water/surface/particles/GPUWaterParticles.d.ts +60 -0
- package/src/shade/renderer/water/surface/particles/GPUWaterParticles.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/particles/GPUWaterParticles.js +228 -0
- package/src/shade/renderer/water/surface/particles/WATER_PARTICLE_STRUCT.d.ts +17 -0
- package/src/shade/renderer/water/surface/particles/WATER_PARTICLE_STRUCT.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/particles/WATER_PARTICLE_STRUCT.js +49 -0
- package/src/shade/renderer/water/surface/particles/chunk_water_particle.d.ts +22 -0
- package/src/shade/renderer/water/surface/particles/chunk_water_particle.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/particles/chunk_water_particle.js +143 -0
- package/src/shade/renderer/water/surface/particles/chunk_water_particle_step.d.ts +15 -0
- package/src/shade/renderer/water/surface/particles/chunk_water_particle_step.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/particles/chunk_water_particle_step.js +121 -0
- package/src/shade/renderer/water/surface/particles/shader_water_particles.d.ts +83 -0
- package/src/shade/renderer/water/surface/particles/shader_water_particles.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/particles/shader_water_particles.js +502 -0
- package/src/shade/renderer/water/surface/shader_water_cull.d.ts +42 -0
- package/src/shade/renderer/water/surface/shader_water_cull.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/shader_water_cull.js +269 -0
- package/src/shade/renderer/water/surface/shader_water_waves_combine.d.ts +15 -0
- package/src/shade/renderer/water/surface/shader_water_waves_combine.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/shader_water_waves_combine.js +73 -0
- package/src/shade/renderer/water/surface/shader_water_waves_derive.d.ts +11 -0
- package/src/shade/renderer/water/surface/shader_water_waves_derive.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/shader_water_waves_derive.js +78 -0
- package/src/shade/renderer/water/surface/spectrum/GPUWaterSpectrum.d.ts +35 -0
- package/src/shade/renderer/water/surface/spectrum/GPUWaterSpectrum.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/spectrum/GPUWaterSpectrum.js +103 -0
- package/src/shade/renderer/water/surface/spectrum/WATER_BAND_STATE.d.ts +22 -0
- package/src/shade/renderer/water/surface/spectrum/WATER_BAND_STATE.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/spectrum/WATER_BAND_STATE.js +57 -0
- package/src/shade/renderer/water/surface/spectrum/WATER_SPECTRUM.d.ts +22 -0
- package/src/shade/renderer/water/surface/spectrum/WATER_SPECTRUM.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/spectrum/WATER_SPECTRUM.js +25 -0
- package/src/shade/renderer/water/surface/spectrum/chunk_water_jonswap.d.ts +14 -0
- package/src/shade/renderer/water/surface/spectrum/chunk_water_jonswap.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/spectrum/chunk_water_jonswap.js +48 -0
- package/src/shade/renderer/water/surface/spectrum/chunk_water_spectrum.d.ts +23 -0
- package/src/shade/renderer/water/surface/spectrum/chunk_water_spectrum.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/spectrum/chunk_water_spectrum.js +169 -0
- package/src/shade/renderer/water/surface/spectrum/shader_water_spectrum.d.ts +26 -0
- package/src/shade/renderer/water/surface/spectrum/shader_water_spectrum.d.ts.map +1 -0
- package/src/shade/renderer/water/surface/spectrum/shader_water_spectrum.js +161 -0
- package/src/shade/wgsl/emulator/WGSLJavaScriptCompiler.d.ts.map +1 -1
- package/src/shade/wgsl/emulator/WGSLJavaScriptCompiler.js +18 -6
- package/src/shade/wgsl/emulator/WGSLLanguageCore.d.ts.map +1 -1
- package/src/shade/wgsl/emulator/WGSLLanguageCore.js +11 -3
- package/src/core/geom/2d/polygon/polygon2_triangulate.corpus.d.ts +0 -28
- package/src/core/geom/2d/polygon/polygon2_triangulate.corpus.d.ts.map +0 -1
- package/src/core/geom/2d/polygon/polygon2_triangulate.corpus.js +0 -86
- package/src/engine/ecs/ik/IKConstraint.d.ts +0 -52
- package/src/engine/ecs/ik/IKConstraint.d.ts.map +0 -1
- package/src/engine/ecs/ik/IKConstraint.js +0 -95
- package/src/engine/ecs/ik/IKProblem.d.ts +0 -45
- package/src/engine/ecs/ik/IKProblem.d.ts.map +0 -1
- package/src/engine/ecs/ik/IKProblem.js +0 -58
- package/src/engine/ecs/ik/IKSolver.d.ts +0 -8
- package/src/engine/ecs/ik/IKSolver.d.ts.map +0 -1
- package/src/engine/ecs/ik/IKSolver.js +0 -9
- package/src/engine/ecs/ik/InverseKinematics.d.ts +0 -48
- package/src/engine/ecs/ik/InverseKinematics.d.ts.map +0 -1
- package/src/engine/ecs/ik/InverseKinematics.js +0 -119
- package/src/engine/ecs/ik/InverseKinematicsSerializationAdapter.d.ts +0 -19
- package/src/engine/ecs/ik/InverseKinematicsSerializationAdapter.d.ts.map +0 -1
- package/src/engine/ecs/ik/InverseKinematicsSerializationAdapter.js +0 -72
- package/src/engine/ecs/ik/InverseKinematicsSystem.d.ts +0 -54
- package/src/engine/ecs/ik/InverseKinematicsSystem.d.ts.map +0 -1
- package/src/engine/ecs/ik/InverseKinematicsSystem.js +0 -212
- package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.d.ts +0 -8
- package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.d.ts.map +0 -1
- package/src/engine/ecs/ik/OneBoneSurfaceAlignmentSolver.js +0 -153
- package/src/engine/ecs/ik/TwoBoneInverseKinematicsSolver.d.ts +0 -5
- package/src/engine/ecs/ik/TwoBoneInverseKinematicsSolver.d.ts.map +0 -1
- package/src/engine/ecs/ik/TwoBoneInverseKinematicsSolver.js +0 -120
- package/src/engine/ecs/ik/ik_bone_chain.d.ts +0 -64
- package/src/engine/ecs/ik/ik_bone_chain.d.ts.map +0 -1
- package/src/engine/ecs/ik/ik_bone_chain.js +0 -142
- package/src/engine/ecs/ik/ik_probe_terrain_contact.d.ts +0 -42
- package/src/engine/ecs/ik/ik_probe_terrain_contact.d.ts.map +0 -1
- package/src/engine/ecs/ik/ik_probe_terrain_contact.js +0 -123
- package/src/engine/ecs/ik/ik_write_local_rotation.d.ts +0 -18
- package/src/engine/ecs/ik/ik_write_local_rotation.d.ts.map +0 -1
- package/src/engine/ecs/ik/ik_write_local_rotation.js +0 -32
- package/src/engine/ecs/storage/binary/object-v2/serializerTestHarness.d.ts +0 -29
- package/src/engine/ecs/storage/binary/object-v2/serializerTestHarness.d.ts.map +0 -1
- package/src/engine/ecs/storage/binary/object-v2/serializerTestHarness.js +0 -44
- package/src/shade/renderer/water/medium/shader_water_bodies_derive.d.ts +0 -4
- package/src/shade/renderer/water/medium/shader_water_bodies_derive.d.ts.map +0 -1
- package/src/shade/renderer/water/medium/shader_water_bodies_derive.js +0 -32
- package/src/shade/renderer/water/surface/GPUWaterWaveSimulation.d.ts +0 -25
- package/src/shade/renderer/water/surface/GPUWaterWaveSimulation.d.ts.map +0 -1
- package/src/shade/renderer/water/surface/GPUWaterWaveSimulation.js +0 -128
- package/src/shade/renderer/water/surface/chunk_water_tessellation.d.ts +0 -9
- package/src/shade/renderer/water/surface/chunk_water_tessellation.d.ts.map +0 -1
- package/src/shade/renderer/water/surface/chunk_water_tessellation.js +0 -144
- package/src/shade/renderer/water/surface/chunk_water_wave.d.ts +0 -13
- package/src/shade/renderer/water/surface/chunk_water_wave.d.ts.map +0 -1
- package/src/shade/renderer/water/surface/chunk_water_wave.js +0 -40
- package/src/shade/renderer/water/surface/shader_water_tiles.d.ts +0 -4
- package/src/shade/renderer/water/surface/shader_water_tiles.d.ts.map +0 -1
- package/src/shade/renderer/water/surface/shader_water_tiles.js +0 -123
- package/src/shade/renderer/water/surface/shader_water_wave_batch.d.ts +0 -6
- package/src/shade/renderer/water/surface/shader_water_wave_batch.d.ts.map +0 -1
- package/src/shade/renderer/water/surface/shader_water_wave_batch.js +0 -85
- package/src/shade/renderer/water/surface/shader_water_wave_domain.d.ts +0 -6
- package/src/shade/renderer/water/surface/shader_water_wave_domain.d.ts.map +0 -1
- package/src/shade/renderer/water/surface/shader_water_wave_domain.js +0 -83
|
@@ -5,7 +5,7 @@ import { Light } from "./Light.js";
|
|
|
5
5
|
export class LightSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
6
6
|
|
|
7
7
|
klass = Light;
|
|
8
|
-
version =
|
|
8
|
+
version = 1;
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
*
|
|
@@ -24,6 +24,12 @@ export class LightSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
|
24
24
|
value.penumbra.toBinaryBuffer(buffer);
|
|
25
25
|
value.distance.toBinaryBuffer(buffer);
|
|
26
26
|
}
|
|
27
|
+
|
|
28
|
+
value.radius.toBinaryBuffer(buffer);
|
|
29
|
+
|
|
30
|
+
if (value.type.getValue() === LightType.POINT) {
|
|
31
|
+
value.distance.toBinaryBuffer(buffer);
|
|
32
|
+
}
|
|
27
33
|
}
|
|
28
34
|
|
|
29
35
|
/**
|
|
@@ -43,5 +49,11 @@ export class LightSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
|
43
49
|
value.penumbra.fromBinaryBuffer(buffer);
|
|
44
50
|
value.distance.fromBinaryBuffer(buffer);
|
|
45
51
|
}
|
|
52
|
+
|
|
53
|
+
value.radius.fromBinaryBuffer(buffer);
|
|
54
|
+
|
|
55
|
+
if (value.type.getValue() === LightType.POINT) {
|
|
56
|
+
value.distance.fromBinaryBuffer(buffer);
|
|
57
|
+
}
|
|
46
58
|
}
|
|
47
59
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export class LightSerializationUpgrader_0_1 extends BinaryClassUpgrader {
|
|
2
|
+
upgrade(source: any, target: any): void;
|
|
3
|
+
}
|
|
4
|
+
import { BinaryClassUpgrader } from "../../../ecs/storage/binary/BinaryClassUpgrader.js";
|
|
5
|
+
//# sourceMappingURL=LightSerializationUpgrader_0_1.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightSerializationUpgrader_0_1.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/light/LightSerializationUpgrader_0_1.js"],"names":[],"mappings":"AAGA;IAII,wCAkBC;CACJ;oCA1BmC,oDAAoD"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { BinaryClassUpgrader } from "../../../ecs/storage/binary/BinaryClassUpgrader.js";
|
|
2
|
+
import { LightType } from "./LightType.js";
|
|
3
|
+
|
|
4
|
+
export class LightSerializationUpgrader_0_1 extends BinaryClassUpgrader {
|
|
5
|
+
__startVersion = 0;
|
|
6
|
+
__targetVersion = 1;
|
|
7
|
+
|
|
8
|
+
upgrade(source, target) {
|
|
9
|
+
const type = source.readUint8();
|
|
10
|
+
target.writeUint8(type);
|
|
11
|
+
target.writeUint32(source.readUint32());
|
|
12
|
+
target.writeFloat64(source.readFloat64());
|
|
13
|
+
target.writeUint8(source.readUint8());
|
|
14
|
+
|
|
15
|
+
if (type === LightType.SPOT) {
|
|
16
|
+
target.writeFloat64(source.readFloat64());
|
|
17
|
+
target.writeFloat64(source.readFloat64());
|
|
18
|
+
target.writeFloat64(source.readFloat64());
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
target.writeFloat64(0);
|
|
22
|
+
|
|
23
|
+
if (type === LightType.POINT) {
|
|
24
|
+
target.writeFloat64(1);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -28,6 +28,15 @@ declare class Water {
|
|
|
28
28
|
* @type {Vector1}
|
|
29
29
|
*/
|
|
30
30
|
roughness: Vector1;
|
|
31
|
+
/**
|
|
32
|
+
* Whether the body's surface keeps moving while no view sees it. Off (the default), a hidden body is paused:
|
|
33
|
+
* its wave particles stand still and its wind turn holds until it comes back into view, and it costs one
|
|
34
|
+
* culling test a frame. On, it is simulated every frame wherever the camera looks, at the cost of a visible
|
|
35
|
+
* body's simulation — for water whose ripples must have travelled on when the camera turns back.
|
|
36
|
+
* Ambient waves follow time, not state: they are current either way.
|
|
37
|
+
* @type {ObservedBoolean}
|
|
38
|
+
*/
|
|
39
|
+
simulateWhenHidden: ObservedBoolean;
|
|
31
40
|
/** Optical edits queue a scene row update. */
|
|
32
41
|
onChanged: Signal;
|
|
33
42
|
/** @param {ParticipatingMedium} value */
|
|
@@ -42,6 +51,7 @@ declare class Water {
|
|
|
42
51
|
toJSON(): {
|
|
43
52
|
ior: number;
|
|
44
53
|
roughness: number;
|
|
54
|
+
simulateWhenHidden: boolean;
|
|
45
55
|
medium: any;
|
|
46
56
|
};
|
|
47
57
|
#private;
|
|
@@ -50,6 +60,7 @@ declare namespace Water {
|
|
|
50
60
|
let typeName: string;
|
|
51
61
|
}
|
|
52
62
|
import Vector1 from "../../../../core/geom/Vector1.js";
|
|
63
|
+
import ObservedBoolean from "../../../../core/model/ObservedBoolean.js";
|
|
53
64
|
import Signal from "../../../../core/events/signal/Signal.js";
|
|
54
65
|
import { ParticipatingMedium } from "../../../../shade/renderer/medium/ParticipatingMedium.js";
|
|
55
66
|
//# sourceMappingURL=Water.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Water.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/Water.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Water.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/Water.js"],"names":[],"mappings":";AAUA;;;;;;;;;;;;;;;GAeG;AACH;IA6CI,0BASC;IArDD;;;OAGG;IACH,KAFU,OAAO,CAEQ;IAEzB;;;;OAIG;IACH,WAFU,OAAO,CAEa;IAE9B;;;;;;;OAOG;IACH,oBAFU,eAAe,CAEuB;IAEhD,8CAA8C;IAC9C,kBAAyB;IAWzB,yCAAyC;IACzC,uCAMC;IAbD;;;;OAIG;IACH,kCAAqC;IAqBrC,0BAoBC;IAED;;;;;MAOC;;CACJ;;;;oBA/GmB,kCAAkC;4BAC1B,2CAA2C;mBAFpD,0CAA0C;oCAGzB,0DAA0D"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import Signal from "../../../../core/events/signal/Signal.js";
|
|
2
2
|
import Vector1 from "../../../../core/geom/Vector1.js";
|
|
3
|
+
import ObservedBoolean from "../../../../core/model/ObservedBoolean.js";
|
|
3
4
|
import { ParticipatingMedium } from "../../../../shade/renderer/medium/ParticipatingMedium.js";
|
|
4
5
|
import {
|
|
5
6
|
participating_medium_from_json,
|
|
@@ -37,6 +38,16 @@ class Water {
|
|
|
37
38
|
*/
|
|
38
39
|
roughness = new Vector1(0.02);
|
|
39
40
|
|
|
41
|
+
/**
|
|
42
|
+
* Whether the body's surface keeps moving while no view sees it. Off (the default), a hidden body is paused:
|
|
43
|
+
* its wave particles stand still and its wind turn holds until it comes back into view, and it costs one
|
|
44
|
+
* culling test a frame. On, it is simulated every frame wherever the camera looks, at the cost of a visible
|
|
45
|
+
* body's simulation — for water whose ripples must have travelled on when the camera turns back.
|
|
46
|
+
* Ambient waves follow time, not state: they are current either way.
|
|
47
|
+
* @type {ObservedBoolean}
|
|
48
|
+
*/
|
|
49
|
+
simulateWhenHidden = new ObservedBoolean(false);
|
|
50
|
+
|
|
40
51
|
/** Optical edits queue a scene row update. */
|
|
41
52
|
onChanged = new Signal();
|
|
42
53
|
/** @type {ParticipatingMedium|null} */
|
|
@@ -61,6 +72,7 @@ class Water {
|
|
|
61
72
|
constructor(options) {
|
|
62
73
|
this.ior.onChanged.add(this.#changed);
|
|
63
74
|
this.roughness.onChanged.add(this.#changed);
|
|
75
|
+
this.simulateWhenHidden.onChanged.add(this.#changed);
|
|
64
76
|
this.medium = water_medium_default();
|
|
65
77
|
if (options !== undefined) {
|
|
66
78
|
console.error('Constructor options are deprecated');
|
|
@@ -81,6 +93,10 @@ class Water {
|
|
|
81
93
|
this.roughness.fromJSON(json.roughness);
|
|
82
94
|
}
|
|
83
95
|
|
|
96
|
+
if (typeof json.simulateWhenHidden === 'boolean') {
|
|
97
|
+
this.simulateWhenHidden.fromJSON(json.simulateWhenHidden);
|
|
98
|
+
}
|
|
99
|
+
|
|
84
100
|
if (json.medium !== null && typeof json.medium === 'object') {
|
|
85
101
|
participating_medium_from_json(this.medium, json.medium);
|
|
86
102
|
}
|
|
@@ -90,6 +106,7 @@ class Water {
|
|
|
90
106
|
return {
|
|
91
107
|
ior: this.ior.toJSON(),
|
|
92
108
|
roughness: this.roughness.toJSON(),
|
|
109
|
+
simulateWhenHidden: this.simulateWhenHidden.toJSON(),
|
|
93
110
|
medium: participating_medium_to_json(this.medium),
|
|
94
111
|
};
|
|
95
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WaterSerializationAdapter.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterSerializationAdapter.js"],"names":[],"mappings":"AAOA;;IAEI,oBAAc;IAGd;;;;OAIG;IACH,uCAFW,KAAK,
|
|
1
|
+
{"version":3,"file":"WaterSerializationAdapter.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterSerializationAdapter.js"],"names":[],"mappings":"AAOA;;IAEI,oBAAc;IAGd;;;;OAIG;IACH,uCAFW,KAAK,QAQf;IAED;;;;OAIG;IACH,yCAFW,KAAK,QAQf;CACJ;gDArC+C,gEAAgE;kBAK9F,YAAY"}
|
|
@@ -8,7 +8,7 @@ import Water from "./Water.js";
|
|
|
8
8
|
export class WaterSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
9
9
|
|
|
10
10
|
klass = Water;
|
|
11
|
-
version =
|
|
11
|
+
version = 5;
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
*
|
|
@@ -20,6 +20,7 @@ export class WaterSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
|
20
20
|
buffer.writeFloat32(value.roughness.getValue());
|
|
21
21
|
|
|
22
22
|
serialize_participating_medium(buffer, value.medium);
|
|
23
|
+
value.simulateWhenHidden.toBinaryBuffer(buffer);
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
/**
|
|
@@ -32,5 +33,6 @@ export class WaterSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
|
32
33
|
value.roughness.set(buffer.readFloat32());
|
|
33
34
|
|
|
34
35
|
deserialize_participating_medium(buffer, value.medium);
|
|
36
|
+
value.simulateWhenHidden.fromBinaryBuffer(buffer);
|
|
35
37
|
}
|
|
36
38
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keep version 4's optics and append `simulateWhenHidden` as version 5 introduced it: off, so a body saved before
|
|
3
|
+
* pauses while hidden, like every body by default.
|
|
4
|
+
*/
|
|
5
|
+
export class WaterSerializationUpgrader_4_5 extends BinaryClassUpgrader {
|
|
6
|
+
upgrade(source: any, target: any): void;
|
|
7
|
+
}
|
|
8
|
+
import { BinaryClassUpgrader } from "../../../ecs/storage/binary/BinaryClassUpgrader.js";
|
|
9
|
+
//# sourceMappingURL=WaterSerializationUpgrader_4_5.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WaterSerializationUpgrader_4_5.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterSerializationUpgrader_4_5.js"],"names":[],"mappings":"AAOA;;;GAGG;AACH;IAII,wCAOC;CACJ;oCAvBmC,oDAAoD"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BinaryClassUpgrader } from "../../../ecs/storage/binary/BinaryClassUpgrader.js";
|
|
2
|
+
import {
|
|
3
|
+
deserialize_participating_medium,
|
|
4
|
+
serialize_participating_medium
|
|
5
|
+
} from "../../../../shade/renderer/medium/participating_medium_serialization.js";
|
|
6
|
+
import { water_medium_default } from "../../../../shade/renderer/medium/water/water_presets.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Keep version 4's optics and append `simulateWhenHidden` as version 5 introduced it: off, so a body saved before
|
|
10
|
+
* pauses while hidden, like every body by default.
|
|
11
|
+
*/
|
|
12
|
+
export class WaterSerializationUpgrader_4_5 extends BinaryClassUpgrader {
|
|
13
|
+
__startVersion = 4;
|
|
14
|
+
__targetVersion = 5;
|
|
15
|
+
|
|
16
|
+
upgrade(source, target) {
|
|
17
|
+
target.writeFloat32(source.readFloat32());
|
|
18
|
+
target.writeFloat32(source.readFloat32());
|
|
19
|
+
const medium = water_medium_default();
|
|
20
|
+
deserialize_participating_medium(source, medium);
|
|
21
|
+
serialize_participating_medium(target, medium);
|
|
22
|
+
target.writeUint8(0);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -1,29 +1,50 @@
|
|
|
1
|
+
/** Amplitude reflection coefficient of a water body's outline when nothing says otherwise. */
|
|
2
|
+
export const WATER_WAVES_SHORE_REFLECTION_DEFAULT: 0.5;
|
|
1
3
|
export default WaterWaves;
|
|
2
4
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
+
* The waves of the {@link Water} on the same entity: the wind that raises them and how the body's outline
|
|
6
|
+
* treats them (WATER_SURFACE_SIMULATION_PLAN_2026_10_06.md §6.1).
|
|
5
7
|
*
|
|
6
|
-
* Kept apart from `Water
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Kept apart from `Water`, which describes the body and its optics and says nothing about how the surface
|
|
9
|
+
* moves. A body without this component is calm, and its outline reflects wave particles (from
|
|
10
|
+
* `WaterSystem.splash`) at the default coefficient.
|
|
11
|
+
*
|
|
12
|
+
* The wind's waves follow from physics: a fetch-limited JONSWAP sea of this wind speed over the water upwind
|
|
13
|
+
* — the body's own extent along the wind plus {@link upwindFetch} — so the same wind raises centimetre ripples
|
|
14
|
+
* on a puddle and swell on an open sea.
|
|
10
15
|
*/
|
|
11
16
|
declare class WaterWaves {
|
|
12
17
|
/**
|
|
13
|
-
* Wind speed at 10 m, m/s.
|
|
14
|
-
* of the waves the simulation's grid does not resolve (Cox-Munk).
|
|
18
|
+
* Wind speed at 10 m, m/s.
|
|
15
19
|
* @type {Vector1}
|
|
16
20
|
*/
|
|
17
21
|
windSpeed: Vector1;
|
|
18
22
|
/**
|
|
19
|
-
* Direction the wind blows towards, radians in the
|
|
23
|
+
* Direction the wind blows towards, radians in the body's local xz plane, measured from +x towards +z.
|
|
24
|
+
* The angle turns with the body's rotation and is not skewed by its scale. A change turns the waves over
|
|
25
|
+
* a few seconds.
|
|
20
26
|
* @type {Vector1}
|
|
21
27
|
*/
|
|
22
28
|
windDirection: Vector1;
|
|
29
|
+
/**
|
|
30
|
+
* Open water upwind of the mesh, metres, added to the mesh's own extent along the wind. Zero for a body
|
|
31
|
+
* that is all the water there is (a pool, a lake); an open sea states the distance to its far shore
|
|
32
|
+
* (a fully developed sea at 10 m/s needs about 170 km).
|
|
33
|
+
* @type {Vector1}
|
|
34
|
+
*/
|
|
35
|
+
upwindFetch: Vector1;
|
|
36
|
+
/**
|
|
37
|
+
* Amplitude reflection coefficient of the mesh's outline for wave particles: 0 a beach that absorbs
|
|
38
|
+
* them, 1 a wall that returns them whole.
|
|
39
|
+
* @type {Vector1}
|
|
40
|
+
*/
|
|
41
|
+
shoreReflection: Vector1;
|
|
23
42
|
fromJSON(json: any): void;
|
|
24
43
|
toJSON(): {
|
|
25
44
|
windSpeed: number;
|
|
26
45
|
windDirection: number;
|
|
46
|
+
upwindFetch: number;
|
|
47
|
+
shoreReflection: number;
|
|
27
48
|
};
|
|
28
49
|
}
|
|
29
50
|
declare namespace WaterWaves {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WaterWaves.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterWaves.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WaterWaves.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterWaves.js"],"names":[],"mappings":"AAEA,8FAA8F;AAC9F,uDAAwD;;AAExD;;;;;;;;;;;GAWG;AACH;IACI;;;OAGG;IACH,WAFU,OAAO,CAEU;IAE3B;;;;;OAKG;IACH,eAFU,OAAO,CAEc;IAE/B;;;;;OAKG;IACH,aAFU,OAAO,CAEY;IAE7B;;;;OAIG;IACH,iBAFU,OAAO,CAEmD;IAEpE,0BAgBC;IAED;;;;;MAOC;CACJ;;;;oBAzEmB,kCAAkC"}
|
|
@@ -1,28 +1,50 @@
|
|
|
1
1
|
import Vector1 from "../../../../core/geom/Vector1.js";
|
|
2
2
|
|
|
3
|
+
/** Amplitude reflection coefficient of a water body's outline when nothing says otherwise. */
|
|
4
|
+
export const WATER_WAVES_SHORE_REFLECTION_DEFAULT = 0.5;
|
|
5
|
+
|
|
3
6
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
7
|
+
* The waves of the {@link Water} on the same entity: the wind that raises them and how the body's outline
|
|
8
|
+
* treats them (WATER_SURFACE_SIMULATION_PLAN_2026_10_06.md §6.1).
|
|
9
|
+
*
|
|
10
|
+
* Kept apart from `Water`, which describes the body and its optics and says nothing about how the surface
|
|
11
|
+
* moves. A body without this component is calm, and its outline reflects wave particles (from
|
|
12
|
+
* `WaterSystem.splash`) at the default coefficient.
|
|
6
13
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* tessellates its authored rest surface and allocates no wave grid until a splash is queued.
|
|
14
|
+
* The wind's waves follow from physics: a fetch-limited JONSWAP sea of this wind speed over the water upwind
|
|
15
|
+
* — the body's own extent along the wind plus {@link upwindFetch} — so the same wind raises centimetre ripples
|
|
16
|
+
* on a puddle and swell on an open sea.
|
|
11
17
|
*/
|
|
12
18
|
class WaterWaves {
|
|
13
19
|
/**
|
|
14
|
-
* Wind speed at 10 m, m/s.
|
|
15
|
-
* of the waves the simulation's grid does not resolve (Cox-Munk).
|
|
20
|
+
* Wind speed at 10 m, m/s.
|
|
16
21
|
* @type {Vector1}
|
|
17
22
|
*/
|
|
18
23
|
windSpeed = new Vector1(3);
|
|
19
24
|
|
|
20
25
|
/**
|
|
21
|
-
* Direction the wind blows towards, radians in the
|
|
26
|
+
* Direction the wind blows towards, radians in the body's local xz plane, measured from +x towards +z.
|
|
27
|
+
* The angle turns with the body's rotation and is not skewed by its scale. A change turns the waves over
|
|
28
|
+
* a few seconds.
|
|
22
29
|
* @type {Vector1}
|
|
23
30
|
*/
|
|
24
31
|
windDirection = new Vector1(0);
|
|
25
32
|
|
|
33
|
+
/**
|
|
34
|
+
* Open water upwind of the mesh, metres, added to the mesh's own extent along the wind. Zero for a body
|
|
35
|
+
* that is all the water there is (a pool, a lake); an open sea states the distance to its far shore
|
|
36
|
+
* (a fully developed sea at 10 m/s needs about 170 km).
|
|
37
|
+
* @type {Vector1}
|
|
38
|
+
*/
|
|
39
|
+
upwindFetch = new Vector1(0);
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Amplitude reflection coefficient of the mesh's outline for wave particles: 0 a beach that absorbs
|
|
43
|
+
* them, 1 a wall that returns them whole.
|
|
44
|
+
* @type {Vector1}
|
|
45
|
+
*/
|
|
46
|
+
shoreReflection = new Vector1(WATER_WAVES_SHORE_REFLECTION_DEFAULT);
|
|
47
|
+
|
|
26
48
|
fromJSON(json) {
|
|
27
49
|
if (typeof json.windSpeed === 'number') {
|
|
28
50
|
this.windSpeed.fromJSON(json.windSpeed);
|
|
@@ -31,12 +53,22 @@ class WaterWaves {
|
|
|
31
53
|
if (typeof json.windDirection === 'number') {
|
|
32
54
|
this.windDirection.fromJSON(json.windDirection);
|
|
33
55
|
}
|
|
56
|
+
|
|
57
|
+
if (typeof json.upwindFetch === 'number') {
|
|
58
|
+
this.upwindFetch.fromJSON(json.upwindFetch);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (typeof json.shoreReflection === 'number') {
|
|
62
|
+
this.shoreReflection.fromJSON(json.shoreReflection);
|
|
63
|
+
}
|
|
34
64
|
}
|
|
35
65
|
|
|
36
66
|
toJSON() {
|
|
37
67
|
return {
|
|
38
68
|
windSpeed: this.windSpeed.toJSON(),
|
|
39
69
|
windDirection: this.windDirection.toJSON(),
|
|
70
|
+
upwindFetch: this.upwindFetch.toJSON(),
|
|
71
|
+
shoreReflection: this.shoreReflection.toJSON(),
|
|
40
72
|
};
|
|
41
73
|
}
|
|
42
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WaterWavesSerializationAdapter.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterWavesSerializationAdapter.js"],"names":[],"mappings":"AAGA;;IAEI,yBAAmB;IAGnB;;;OAGG;IACH,uCAFW,UAAU,
|
|
1
|
+
{"version":3,"file":"WaterWavesSerializationAdapter.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterWavesSerializationAdapter.js"],"names":[],"mappings":"AAGA;;IAEI,yBAAmB;IAGnB;;;OAGG;IACH,uCAFW,UAAU,QAOpB;IAED;;;OAGG;IACH,yCAFW,UAAU,QAOpB;CACJ;gDA7B+C,gEAAgE;uBACzF,iBAAiB"}
|
|
@@ -1,26 +1,30 @@
|
|
|
1
|
-
import { BinaryClassSerializationAdapter } from "../../../ecs/storage/binary/BinaryClassSerializationAdapter.js";
|
|
2
|
-
import WaterWaves from "./WaterWaves.js";
|
|
3
|
-
|
|
4
|
-
export class WaterWavesSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
5
|
-
|
|
6
|
-
klass = WaterWaves;
|
|
7
|
-
version =
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @param {BinaryBuffer} buffer
|
|
11
|
-
* @param {WaterWaves} value
|
|
12
|
-
*/
|
|
13
|
-
serialize(buffer, value) {
|
|
14
|
-
buffer.writeFloat32(value.windSpeed.getValue());
|
|
15
|
-
buffer.writeFloat32(value.windDirection.getValue());
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
1
|
+
import { BinaryClassSerializationAdapter } from "../../../ecs/storage/binary/BinaryClassSerializationAdapter.js";
|
|
2
|
+
import WaterWaves from "./WaterWaves.js";
|
|
3
|
+
|
|
4
|
+
export class WaterWavesSerializationAdapter extends BinaryClassSerializationAdapter {
|
|
5
|
+
|
|
6
|
+
klass = WaterWaves;
|
|
7
|
+
version = 1;
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @param {BinaryBuffer} buffer
|
|
11
|
+
* @param {WaterWaves} value
|
|
12
|
+
*/
|
|
13
|
+
serialize(buffer, value) {
|
|
14
|
+
buffer.writeFloat32(value.windSpeed.getValue());
|
|
15
|
+
buffer.writeFloat32(value.windDirection.getValue());
|
|
16
|
+
buffer.writeFloat32(value.upwindFetch.getValue());
|
|
17
|
+
buffer.writeFloat32(value.shoreReflection.getValue());
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @param {BinaryBuffer} buffer
|
|
22
|
+
* @param {WaterWaves} value
|
|
23
|
+
*/
|
|
24
|
+
deserialize(buffer, value) {
|
|
25
|
+
value.windSpeed.set(buffer.readFloat32());
|
|
26
|
+
value.windDirection.set(buffer.readFloat32());
|
|
27
|
+
value.upwindFetch.set(buffer.readFloat32());
|
|
28
|
+
value.shoreReflection.set(buffer.readFloat32());
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Keep version 0's wind and append the version-1 defaults. */
|
|
2
|
+
export class WaterWavesSerializationUpgrader_0_1 extends BinaryClassUpgrader {
|
|
3
|
+
upgrade(source: any, target: any): void;
|
|
4
|
+
}
|
|
5
|
+
import { BinaryClassUpgrader } from "../../../ecs/storage/binary/BinaryClassUpgrader.js";
|
|
6
|
+
//# sourceMappingURL=WaterWavesSerializationUpgrader_0_1.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WaterWavesSerializationUpgrader_0_1.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/ecs/water/WaterWavesSerializationUpgrader_0_1.js"],"names":[],"mappings":"AAWA,+DAA+D;AAC/D;IAII,wCAIC;CACJ;oCArBmC,oDAAoD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BinaryClassUpgrader } from "../../../ecs/storage/binary/BinaryClassUpgrader.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The fields version 1 appended, with the defaults they had at that version: constants, not read off the
|
|
5
|
+
* current `WaterWaves`, since an upgrader writes the format of its target version.
|
|
6
|
+
*/
|
|
7
|
+
const VERSION_1_DEFAULTS = [
|
|
8
|
+
0, // upwind fetch, metres
|
|
9
|
+
0.5, // shore reflection
|
|
10
|
+
];
|
|
11
|
+
|
|
12
|
+
/** Keep version 0's wind and append the version-1 defaults. */
|
|
13
|
+
export class WaterWavesSerializationUpgrader_0_1 extends BinaryClassUpgrader {
|
|
14
|
+
__startVersion = 0;
|
|
15
|
+
__targetVersion = 1;
|
|
16
|
+
|
|
17
|
+
upgrade(source, target) {
|
|
18
|
+
target.writeFloat32(source.readFloat32());
|
|
19
|
+
target.writeFloat32(source.readFloat32());
|
|
20
|
+
for (const value of VERSION_1_DEFAULTS) { target.writeFloat32(value); }
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bvh32_geometry_raycast.d.ts","sourceRoot":"","sources":["../../../../../../../src/engine/graphics/geometry/buffered/query/bvh32_geometry_raycast.js"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;GAiBG;AACH,+CAhBW,aAAa,kCAEb,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,iBAC1B,MAAM,iBACN,MAAM,0BACN,OAAO,WACP,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,GAAC,SAAS,YACpC,MAAM,YACN,MAAM,YACN,MAAM,eACN,MAAM,eACN,MAAM,eACN,MAAM,gBACN,MAAM,GACJ,OAAO,
|
|
1
|
+
{"version":3,"file":"bvh32_geometry_raycast.d.ts","sourceRoot":"","sources":["../../../../../../../src/engine/graphics/geometry/buffered/query/bvh32_geometry_raycast.js"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;GAiBG;AACH,+CAhBW,aAAa,kCAEb,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,iBAC1B,MAAM,iBACN,MAAM,0BACN,OAAO,WACP,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,GAAC,SAAS,YACpC,MAAM,YACN,MAAM,YACN,MAAM,eACN,MAAM,eACN,MAAM,eACN,MAAM,gBACN,MAAM,GACJ,OAAO,CA6DnB;8BA1F6B,8CAA8C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { assert } from "../../../../../core/assert.js";
|
|
2
2
|
import { bvh32_query_user_data_ray } from "../../../../../core/bvh2/binary/2/bvh32_query_user_data_ray.js";
|
|
3
3
|
import { SurfacePoint3 } from "../../../../../core/geom/3d/SurfacePoint3.js";
|
|
4
|
-
import {
|
|
4
|
+
import { tri3_ray_intersection_triangle_array } from "../../../../../core/geom/3d/triangle/tri3_ray_intersection.js";
|
|
5
5
|
import { read_triangle_vertices } from "../read_triangle_vertices.js";
|
|
6
6
|
|
|
7
7
|
const scratch_array = []
|
|
@@ -68,13 +68,11 @@ export function bvh32_geometry_raycast(
|
|
|
68
68
|
triangle_index
|
|
69
69
|
);
|
|
70
70
|
|
|
71
|
-
const triangle_hit_found =
|
|
71
|
+
const triangle_hit_found = tri3_ray_intersection_triangle_array(
|
|
72
72
|
scratch_hit,
|
|
73
73
|
origin_x, origin_y, origin_z,
|
|
74
74
|
direction_x, direction_y, direction_z,
|
|
75
|
-
triangle_scratch
|
|
76
|
-
triangle_scratch[3], triangle_scratch[4], triangle_scratch[5],
|
|
77
|
-
triangle_scratch[6], triangle_scratch[7], triangle_scratch[8]
|
|
75
|
+
triangle_scratch, 0
|
|
78
76
|
)
|
|
79
77
|
|
|
80
78
|
if (!triangle_hit_found) {
|
|
@@ -24,4 +24,24 @@
|
|
|
24
24
|
* @return {Float32Array|number[]} `out`, for chaining.
|
|
25
25
|
*/
|
|
26
26
|
export function scs3d_sample_linear3(out: Float32Array | number[], data_0: Float32Array, data_1: Float32Array, data_2: Float32Array, res_x: number, res_y: number, res_z: number, x: number, y: number, z: number): Float32Array | number[];
|
|
27
|
+
/**
|
|
28
|
+
* {@link scs3d_sample_linear3} with the position read from `position[position_offset ..+2]`.
|
|
29
|
+
* For per-cell callers, passing fractional coordinates in a reusable array avoids numeric argument
|
|
30
|
+
* boxes when the sampler is not inlined. Float64 coordinates preserve the scalar form's precision.
|
|
31
|
+
*
|
|
32
|
+
* The three coordinates are read before any output store, so `position` may overlap `out` and a
|
|
33
|
+
* reentrant output setter cannot change the coordinates used by the scalar facade's sample.
|
|
34
|
+
*
|
|
35
|
+
* @param {Float32Array|Float64Array|number[]} out length >= 3
|
|
36
|
+
* @param {Float32Array} data_0
|
|
37
|
+
* @param {Float32Array} data_1
|
|
38
|
+
* @param {Float32Array} data_2
|
|
39
|
+
* @param {number} res_x
|
|
40
|
+
* @param {number} res_y
|
|
41
|
+
* @param {number} res_z
|
|
42
|
+
* @param {Float64Array} position `[x, y, z]`, in grid index space
|
|
43
|
+
* @param {number} position_offset
|
|
44
|
+
* @return {Float32Array|Float64Array|number[]} `out`, for chaining.
|
|
45
|
+
*/
|
|
46
|
+
export function scs3d_sample_linear3_array(out: Float32Array | Float64Array | number[], data_0: Float32Array, data_1: Float32Array, data_2: Float32Array, res_x: number, res_y: number, res_z: number, position: Float64Array, position_offset: number): Float32Array | Float64Array | number[];
|
|
27
47
|
//# sourceMappingURL=scs3d_sample_linear3.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scs3d_sample_linear3.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/3d/scs3d_sample_linear3.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scs3d_sample_linear3.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/3d/scs3d_sample_linear3.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,0CAZW,YAAY,GAAC,MAAM,EAAE,UACrB,YAAY,UACZ,YAAY,UACZ,YAAY,SACZ,MAAM,SACN,MAAM,SACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACL,YAAY,GAAC,MAAM,EAAE,CAWhC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,gDAXW,YAAY,GAAC,YAAY,GAAC,MAAM,EAAE,UAClC,YAAY,UACZ,YAAY,UACZ,YAAY,SACZ,MAAM,SACN,MAAM,SACN,MAAM,YACN,YAAY,mBACZ,MAAM,GACL,YAAY,GAAC,YAAY,GAAC,MAAM,EAAE,CA0D7C"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { clamp } from "../../../../core/math/clamp.js";
|
|
2
2
|
import { lerp } from "../../../../core/math/lerp.js";
|
|
3
3
|
|
|
4
|
+
const scratch_position = new Float64Array(3);
|
|
5
|
+
|
|
4
6
|
/**
|
|
5
7
|
* Trilinearly sample THREE single-channel 3D grids at the same fractional
|
|
6
8
|
* position, sharing one set of corner indices and interpolation weights.
|
|
@@ -27,6 +29,40 @@ import { lerp } from "../../../../core/math/lerp.js";
|
|
|
27
29
|
* @return {Float32Array|number[]} `out`, for chaining.
|
|
28
30
|
*/
|
|
29
31
|
export function scs3d_sample_linear3(out, data_0, data_1, data_2, res_x, res_y, res_z, x, y, z) {
|
|
32
|
+
const position = scratch_position;
|
|
33
|
+
position[0] = x;
|
|
34
|
+
position[1] = y;
|
|
35
|
+
position[2] = z;
|
|
36
|
+
|
|
37
|
+
scs3d_sample_linear3_array(out, data_0, data_1, data_2, res_x, res_y, res_z, position, 0);
|
|
38
|
+
|
|
39
|
+
return out;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* {@link scs3d_sample_linear3} with the position read from `position[position_offset ..+2]`.
|
|
44
|
+
* For per-cell callers, passing fractional coordinates in a reusable array avoids numeric argument
|
|
45
|
+
* boxes when the sampler is not inlined. Float64 coordinates preserve the scalar form's precision.
|
|
46
|
+
*
|
|
47
|
+
* The three coordinates are read before any output store, so `position` may overlap `out` and a
|
|
48
|
+
* reentrant output setter cannot change the coordinates used by the scalar facade's sample.
|
|
49
|
+
*
|
|
50
|
+
* @param {Float32Array|Float64Array|number[]} out length >= 3
|
|
51
|
+
* @param {Float32Array} data_0
|
|
52
|
+
* @param {Float32Array} data_1
|
|
53
|
+
* @param {Float32Array} data_2
|
|
54
|
+
* @param {number} res_x
|
|
55
|
+
* @param {number} res_y
|
|
56
|
+
* @param {number} res_z
|
|
57
|
+
* @param {Float64Array} position `[x, y, z]`, in grid index space
|
|
58
|
+
* @param {number} position_offset
|
|
59
|
+
* @return {Float32Array|Float64Array|number[]} `out`, for chaining.
|
|
60
|
+
*/
|
|
61
|
+
export function scs3d_sample_linear3_array(out, data_0, data_1, data_2, res_x, res_y, res_z, position, position_offset) {
|
|
62
|
+
const x = position[position_offset];
|
|
63
|
+
const y = position[position_offset + 1];
|
|
64
|
+
const z = position[position_offset + 2];
|
|
65
|
+
|
|
30
66
|
const x_max = res_x - 1;
|
|
31
67
|
const y_max = res_y - 1;
|
|
32
68
|
const z_max = res_z - 1;
|
|
@@ -20,6 +20,7 @@ export class AnimationGraphSystem extends System<any> {
|
|
|
20
20
|
*/
|
|
21
21
|
constructor(graphics: GraphicsEngine, meshes: MeshSystem);
|
|
22
22
|
dependencies: (typeof SGMesh | typeof AnimationGraphController)[];
|
|
23
|
+
components_used: ResourceAccessSpecification<typeof AnimationGraphController>[];
|
|
23
24
|
/**
|
|
24
25
|
* @param {AnimationGraphController} controller
|
|
25
26
|
* @param {SGMesh} model
|
|
@@ -61,5 +62,6 @@ export class AnimationGraphSystem extends System<any> {
|
|
|
61
62
|
import { System } from "../ecs/System.js";
|
|
62
63
|
import { SGMesh } from "../graphics/ecs/mesh-v2/aggregate/SGMesh.js";
|
|
63
64
|
import { AnimationGraphController } from "./animation/AnimationGraphController.js";
|
|
65
|
+
import { ResourceAccessSpecification } from "../../core/model/ResourceAccessSpecification.js";
|
|
64
66
|
import { PosePlayback } from "../../shade/renderer/animation/pose/PosePlayback.js";
|
|
65
67
|
//# sourceMappingURL=AnimationGraphSystem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnimationGraphSystem.d.ts","sourceRoot":"","sources":["../../../../src/engine/graphics3/AnimationGraphSystem.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AnimationGraphSystem.d.ts","sourceRoot":"","sources":["../../../../src/engine/graphics3/AnimationGraphSystem.js"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;GAcG;AACH;IAmBI;;;OAGG;IACH,0DAgBC;IAPG,kEAAsD;IAItD,gFAEC;IAGL;;;;OAIG;IACH,iBAJW,wBAAwB,SACxB,MAAM,UACN,MAAM,QAahB;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,6BALW,YAAY,EAAE,UACd,MAAM,GACJ,OAAO,CA+CnB;IAED;;;;OAIG;IACH,mBAJW,wBAAwB,SACxB,MAAM,UACN,MAAM,QAYhB;IAED,4CAQC;;CA4JJ;uBA5UsB,kBAAkB;uBAClB,6CAA6C;yCAC3B,yCAAyC;4CAJtC,iDAAiD;6BAChE,qDAAqD"}
|