@woosh/meep-engine 3.21.0 → 3.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +96 -213
- package/editor/particles/effect/ParticleEffectDocument.d.ts.map +1 -1
- package/editor/particles/effect/ParticleEffectDocument.js +0 -3
- package/editor/particles/effect/ParticleReferenceSimulation.js +1 -1
- package/editor/persistence/SceneMetadata.d.ts +9 -4
- package/editor/persistence/SceneMetadata.d.ts.map +1 -1
- package/editor/persistence/SceneMetadata.js +4 -3
- package/editor/tools/TransformToolV2.d.ts +2 -1
- package/editor/tools/TransformToolV2.d.ts.map +1 -1
- package/editor/tools/engine/Tool.d.ts +1 -1
- package/editor/tools/engine/Tool.d.ts.map +1 -1
- package/editor/tools/engine/ToolEngine.d.ts +1 -1
- package/editor/tools/engine/ToolEngine.d.ts.map +1 -1
- package/editor/view/ecs/EntityEditor.d.ts +3 -2
- package/editor/view/ecs/EntityEditor.d.ts.map +1 -1
- package/editor/view/ecs/EntityList.d.ts +7 -3
- package/editor/view/ecs/EntityList.d.ts.map +1 -1
- package/editor/view/ecs/EntityList.js +3 -2
- package/editor/view/ecs/components/common/NumericIntervalController.d.ts +8 -3
- package/editor/view/ecs/components/common/NumericIntervalController.d.ts.map +1 -1
- package/editor/view/ecs/components/common/NumericIntervalController.js +3 -2
- package/editor/view/ecs/components/common/TextController.d.ts +7 -3
- package/editor/view/ecs/components/common/TextController.d.ts.map +1 -1
- package/editor/view/ecs/components/common/TextController.js +3 -2
- package/editor/view/library/MeshLibraryView.d.ts.map +1 -1
- package/editor/view/library/MeshLibraryView.js +3 -2
- package/editor/view/node-graph/NodeIconView.d.ts +5 -2
- package/editor/view/node-graph/NodeIconView.d.ts.map +1 -1
- package/editor/view/node-graph/NodeIconView.js +2 -1
- package/editor/view/node-graph/PortView.d.ts +9 -4
- package/editor/view/node-graph/PortView.d.ts.map +1 -1
- package/editor/view/node-graph/PortView.js +4 -3
- package/editor/view/particles/ColorLutGradientView.d.ts +7 -3
- package/editor/view/particles/ColorLutGradientView.d.ts.map +1 -1
- package/editor/view/particles/ColorLutGradientView.js +3 -2
- package/editor/view/particles/ScalarLutCurveView.d.ts +9 -4
- package/editor/view/particles/ScalarLutCurveView.d.ts.map +1 -1
- package/editor/view/particles/ScalarLutCurveView.js +4 -3
- package/editor/view/particles/effect/ParticleEmitterInspectorView.d.ts.map +1 -1
- package/editor/view/particles/effect/ParticleEmitterInspectorView.js +0 -1
- package/editor/view/tools/ToolView.d.ts +7 -3
- package/editor/view/tools/ToolView.d.ts.map +1 -1
- package/editor/view/tools/ToolView.js +3 -2
- package/package.json +2 -1
- package/src/core/binary/allocator/OffsetAllocator.d.ts +24 -1
- package/src/core/binary/allocator/OffsetAllocator.d.ts.map +1 -1
- package/src/core/binary/allocator/OffsetAllocator.js +101 -1
- package/src/core/binary/type/Field.d.ts +5 -1
- package/src/core/binary/type/Field.d.ts.map +1 -1
- package/src/core/binary/type/Field.js +4 -0
- package/src/core/binary/type/Type.d.ts +4 -0
- package/src/core/binary/type/Type.d.ts.map +1 -1
- package/src/core/binary/type/Type.js +4 -0
- package/src/core/cache/Cache.d.ts +15 -7
- package/src/core/cache/Cache.d.ts.map +1 -1
- package/src/core/cache/Cache.js +7 -6
- package/src/core/cache/wtinylfu/CacheRegionWTinylfu.d.ts +5 -2
- package/src/core/cache/wtinylfu/CacheRegionWTinylfu.d.ts.map +1 -1
- package/src/core/cache/wtinylfu/CacheRegionWTinylfu.js +2 -1
- package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts +20 -10
- package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts.map +1 -1
- package/src/core/cache/wtinylfu/CacheWTinylfu.js +9 -8
- package/src/core/collection/CuckooFilter.d.ts +8 -4
- package/src/core/collection/CuckooFilter.d.ts.map +1 -1
- package/src/core/collection/CuckooFilter.js +3 -2
- package/src/core/collection/list/List.d.ts +0 -1
- package/src/core/collection/list/List.d.ts.map +1 -1
- package/src/core/collection/list/List.js +0 -1
- package/src/core/collection/map/HashMap.d.ts +12 -7
- package/src/core/collection/map/HashMap.d.ts.map +1 -1
- package/src/core/collection/map/HashMap.js +5 -5
- package/src/core/collection/map/ObservedMap.d.ts +1 -2
- package/src/core/collection/map/ObservedMap.d.ts.map +1 -1
- package/src/core/collection/map/ObservedMap.js +0 -1
- package/src/core/collection/table/RowFirstTable.d.ts +1 -0
- package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
- package/src/core/collection/table/RowFirstTable.js +4 -0
- package/src/core/color/Color.d.ts +1 -2
- package/src/core/color/Color.d.ts.map +1 -1
- package/src/core/color/Color.js +5 -4
- package/src/core/color/hsv/hsv2rgb_float.d.ts +23 -1
- package/src/core/color/hsv/hsv2rgb_float.d.ts.map +1 -1
- package/src/core/color/hsv/hsv2rgb_float.js +31 -3
- package/src/core/color/hsv/hsv_to_rgb.d.ts +20 -9
- package/src/core/color/hsv/hsv_to_rgb.d.ts.map +1 -1
- package/src/core/color/hsv/hsv_to_rgb.js +30 -10
- package/src/core/color/hsv/hsv_to_rgb_uint8.d.ts.map +1 -1
- package/src/core/color/hsv/hsv_to_rgb_uint8.js +10 -5
- package/src/core/function/FunctionCompiler.d.ts +9 -4
- package/src/core/function/FunctionCompiler.d.ts.map +1 -1
- package/src/core/function/FunctionCompiler.js +8 -6
- package/src/core/geom/3d/quaternion/quat3_shortest_arc.d.ts +41 -0
- package/src/core/geom/3d/quaternion/quat3_shortest_arc.d.ts.map +1 -0
- package/src/core/geom/3d/quaternion/quat3_shortest_arc.js +94 -0
- package/src/core/geom/3d/ray/Ray3.d.ts +5 -5
- package/src/core/geom/3d/ray/Ray3.d.ts.map +1 -1
- package/src/core/geom/3d/ray/Ray3.js +3 -3
- package/src/core/geom/3d/shape/AbstractShape3D.d.ts +1 -0
- package/src/core/geom/3d/shape/AbstractShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/AbstractShape3D.js +4 -0
- package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts +2 -4
- package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/ConvexHullShape3D.js +0 -2
- package/src/core/geom/3d/shape/TransformedShape3D.d.ts +1 -2
- package/src/core/geom/3d/shape/TransformedShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/TransformedShape3D.js +0 -1
- package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.d.ts +6 -0
- package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/binary/BinaryDataBlock.js +5 -0
- package/src/core/geom/3d/topology/struct/binary/BinaryTopology.d.ts +2 -0
- package/src/core/geom/3d/topology/struct/binary/BinaryTopology.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/binary/BinaryTopology.js +5 -0
- package/src/core/geom/Quaternion.d.ts +1 -0
- package/src/core/geom/Quaternion.d.ts.map +1 -1
- package/src/core/geom/Quaternion.js +4 -0
- package/src/core/geom/Vector1.d.ts +8 -0
- package/src/core/geom/Vector1.d.ts.map +1 -1
- package/src/core/geom/Vector1.js +6 -0
- package/src/core/geom/Vector3.d.ts +6 -0
- package/src/core/geom/Vector3.d.ts.map +1 -1
- package/src/core/geom/Vector3.js +5 -0
- package/src/core/geom/Vector4.d.ts +10 -2
- package/src/core/geom/Vector4.d.ts.map +1 -1
- package/src/core/geom/Vector4.js +6 -1
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts +4 -4
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.js +1 -1
- package/src/core/graph/convert_graph_to_dot_string.d.ts +7 -3
- package/src/core/graph/convert_graph_to_dot_string.d.ts.map +1 -1
- package/src/core/graph/convert_graph_to_dot_string.js +3 -2
- package/src/core/localization/Localization.d.ts +3 -2
- package/src/core/localization/Localization.d.ts.map +1 -1
- package/src/core/localization/Localization.js +4 -0
- package/src/core/math/noise/create_simplex_noise_2d.js +6 -6
- package/src/core/model/ObservedValue.d.ts +8 -6
- package/src/core/model/ObservedValue.d.ts.map +1 -1
- package/src/core/model/ObservedValue.js +3 -1
- package/src/core/model/node-graph/Connection.d.ts +1 -0
- package/src/core/model/node-graph/Connection.d.ts.map +1 -1
- package/src/core/model/node-graph/Connection.js +4 -0
- package/src/core/model/node-graph/NodeGraph.d.ts +8 -5
- package/src/core/model/node-graph/NodeGraph.d.ts.map +1 -1
- package/src/core/model/node-graph/NodeGraph.js +3 -3
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts +9 -4
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts.map +1 -1
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.js +4 -3
- package/src/core/model/node-graph/node/NodeDescription.d.ts +12 -4
- package/src/core/model/node-graph/node/NodeDescription.d.ts.map +1 -1
- package/src/core/model/node-graph/node/NodeDescription.js +10 -3
- package/src/core/model/node-graph/node/NodeInstance.d.ts +5 -2
- package/src/core/model/node-graph/node/NodeInstance.d.ts.map +1 -1
- package/src/core/model/node-graph/node/NodeInstance.js +6 -0
- package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts +5 -2
- package/src/core/model/node-graph/node/NodeInstancePortReference.d.ts.map +1 -1
- package/src/core/model/node-graph/node/NodeInstancePortReference.js +6 -0
- package/src/core/model/node-graph/node/NodeRegistry.d.ts +2 -1
- package/src/core/model/node-graph/node/NodeRegistry.d.ts.map +1 -1
- package/src/core/model/node-graph/node/NodeRegistry.js +4 -0
- package/src/core/model/node-graph/node/Port.d.ts +12 -5
- package/src/core/model/node-graph/node/Port.d.ts.map +1 -1
- package/src/core/model/node-graph/node/Port.js +9 -4
- package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.d.ts +5 -2
- package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.d.ts.map +1 -1
- package/src/core/model/node-graph/util/convert_node_graph_to_dot_string.js +2 -1
- package/src/core/model/node-graph/util/graph_clone_by_node_subset.d.ts +5 -2
- package/src/core/model/node-graph/util/graph_clone_by_node_subset.d.ts.map +1 -1
- package/src/core/model/node-graph/util/graph_clone_by_node_subset.js +2 -1
- package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.d.ts +5 -2
- package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.d.ts.map +1 -1
- package/src/core/model/node-graph/util/graph_collect_connections_amongst_nodes.js +2 -1
- package/src/core/primitives/Class.d.ts +15 -0
- package/src/core/primitives/Class.d.ts.map +1 -0
- package/src/core/primitives/Class.js +18 -0
- package/src/core/primitives/TypedArray.d.ts +15 -0
- package/src/core/primitives/TypedArray.d.ts.map +1 -0
- package/src/core/primitives/TypedArray.js +27 -0
- package/src/core/process/buildPromiseChain.d.ts +9 -4
- package/src/core/process/buildPromiseChain.d.ts.map +1 -1
- package/src/core/process/buildPromiseChain.js +4 -3
- package/src/core/process/executor/ConcurrentExecutor.d.ts +2 -0
- package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
- package/src/core/process/executor/ConcurrentExecutor.js +5 -0
- package/src/core/process/task/Task.d.ts +17 -7
- package/src/core/process/task/Task.d.ts.map +1 -1
- package/src/core/process/task/Task.js +12 -6
- package/src/engine/Engine.d.ts +17 -7
- package/src/engine/Engine.d.ts.map +1 -1
- package/src/engine/Engine.js +9 -4
- package/src/engine/EngineConfiguration.d.ts +33 -9
- package/src/engine/EngineConfiguration.d.ts.map +1 -1
- package/src/engine/EngineConfiguration.js +22 -4
- package/src/engine/EngineHarness.d.ts +22 -10
- package/src/engine/EngineHarness.d.ts.map +1 -1
- package/src/engine/EngineHarness.js +13 -8
- package/src/engine/EntityCreator.d.ts +26 -11
- package/src/engine/EntityCreator.d.ts.map +1 -1
- package/src/engine/EntityCreator.js +16 -13
- package/src/engine/animation/EntityAnimation.d.ts +1 -1
- package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
- package/src/engine/animation/curve/actionProcessorOperations/curveActions.d.ts +28 -18
- package/src/engine/animation/curve/actionProcessorOperations/curveActions.d.ts.map +1 -1
- package/src/engine/animation/curve/actionProcessorOperations/curveActions.js +9 -8
- package/src/engine/animation/curve/draw/build_plot_entity_from_array.d.ts +18 -8
- package/src/engine/animation/curve/draw/build_plot_entity_from_array.d.ts.map +1 -1
- package/src/engine/animation/curve/draw/build_plot_entity_from_array.js +8 -7
- package/src/engine/animation/curve/editor/CurveEditorView.d.ts +22 -11
- package/src/engine/animation/curve/editor/CurveEditorView.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/CurveEditorView.js +7 -6
- package/src/engine/animation/curve/editor/DragHandler.d.ts +12 -7
- package/src/engine/animation/curve/editor/DragHandler.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/DragHandler.js +4 -3
- package/src/engine/animation/curve/editor/KeyframeStateManager.d.ts +3 -2
- package/src/engine/animation/curve/editor/KeyframeStateManager.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.d.ts +21 -10
- package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/canvas2dDrawWorldAxisLabels.js +10 -9
- package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.d.ts +20 -9
- package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/canvas2dPlotCurveLine.js +9 -8
- package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.d.ts +15 -7
- package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/canvas2dPlotCurvePoints.js +7 -6
- package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.d.ts +39 -18
- package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/createKeyframeDraggableAspect.js +18 -17
- package/src/engine/animation/curve/editor/createPanTool.d.ts +13 -5
- package/src/engine/animation/curve/editor/createPanTool.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/createPanTool.js +5 -4
- package/src/engine/animation/curve/editor/createSelectionBoxTool.d.ts +19 -8
- package/src/engine/animation/curve/editor/createSelectionBoxTool.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/createSelectionBoxTool.js +8 -7
- package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +6 -2
- package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
- package/src/engine/animation/keyed2/AnimationTrackPlayback.js +4 -0
- package/src/engine/animation/removeEntityGenericEffect.d.ts +13 -6
- package/src/engine/animation/removeEntityGenericEffect.d.ts.map +1 -1
- package/src/engine/animation/removeEntityGenericEffect.js +6 -5
- package/src/engine/animation/removeEntityWithMeshParticlesEffect.d.ts +11 -5
- package/src/engine/animation/removeEntityWithMeshParticlesEffect.d.ts.map +1 -1
- package/src/engine/animation/removeEntityWithMeshParticlesEffect.js +5 -4
- package/src/engine/asset/Asset.d.ts +6 -3
- package/src/engine/asset/Asset.d.ts.map +1 -1
- package/src/engine/asset/Asset.js +4 -1
- package/src/engine/asset/AssetManager.d.ts +42 -21
- package/src/engine/asset/AssetManager.d.ts.map +1 -1
- package/src/engine/asset/AssetManager.js +20 -12
- package/src/engine/asset/AssetRequest.d.ts +4 -2
- package/src/engine/asset/AssetRequest.d.ts.map +1 -1
- package/src/engine/asset/AssetRequest.js +5 -0
- package/src/engine/asset/AssetRequestScope.d.ts +1 -0
- package/src/engine/asset/AssetRequestScope.d.ts.map +1 -1
- package/src/engine/asset/AssetRequestScope.js +4 -0
- package/src/engine/asset/AssetTransformer.d.ts +7 -1
- package/src/engine/asset/AssetTransformer.d.ts.map +1 -1
- package/src/engine/asset/AssetTransformer.js +5 -0
- package/src/engine/asset/PendingAsset.d.ts +8 -0
- package/src/engine/asset/PendingAsset.d.ts.map +1 -1
- package/src/engine/asset/PendingAsset.js +6 -0
- package/src/engine/asset/loaders/ArrayBufferLoader.d.ts +6 -3
- package/src/engine/asset/loaders/ArrayBufferLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/ArrayBufferLoader.js +2 -1
- package/src/engine/asset/loaders/AssetLoader.d.ts +8 -2
- package/src/engine/asset/loaders/AssetLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/AssetLoader.js +5 -0
- package/src/engine/asset/loaders/USDSceneBundleAssetLoader.d.ts +10 -0
- package/src/engine/asset/loaders/USDSceneBundleAssetLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/image/ImageRGBADataLoader.d.ts +5 -2
- package/src/engine/asset/loaders/image/ImageRGBADataLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/image/ImageRGBADataLoader.js +2 -1
- package/src/engine/asset/preloader/AssetPreloader.d.ts +2 -1
- package/src/engine/asset/preloader/AssetPreloader.d.ts.map +1 -1
- package/src/engine/asset/preloader/AssetPreloader.js +4 -0
- package/src/engine/development/performance/MetricCollection.d.ts +11 -3
- package/src/engine/development/performance/MetricCollection.d.ts.map +1 -1
- package/src/engine/development/performance/MetricCollection.js +7 -2
- package/src/engine/ecs/Entity.d.ts +3 -2
- package/src/engine/ecs/Entity.d.ts.map +1 -1
- package/src/engine/ecs/Entity.js +9 -1
- package/src/engine/ecs/EntityComponentDataset.d.ts +8 -6
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +9 -0
- package/src/engine/ecs/EntityManager.d.ts +2 -1
- package/src/engine/ecs/EntityManager.d.ts.map +1 -1
- package/src/engine/ecs/EntityManager.js +5 -0
- package/src/engine/ecs/EntityObserver.d.ts +4 -0
- package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
- package/src/engine/ecs/EntityObserver.js +4 -0
- package/src/engine/ecs/EntityReference.d.ts +4 -0
- package/src/engine/ecs/EntityReference.d.ts.map +1 -1
- package/src/engine/ecs/EntityReference.js +4 -0
- package/src/engine/ecs/System.d.ts +11 -2
- package/src/engine/ecs/System.d.ts.map +1 -1
- package/src/engine/ecs/System.js +6 -0
- package/src/engine/ecs/async/WorkerSystem.d.ts +10 -0
- package/src/engine/ecs/async/WorkerSystem.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.d.ts +7 -3
- package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/actions/definition/SpeakLineActionDescription.js +3 -2
- package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.d.ts +7 -3
- package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/actions/definition/WriteToBlackboardActionDescription.js +3 -2
- package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts +36 -17
- package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts.map +1 -1
- package/src/engine/ecs/gui/menu/radial/RadialContextMenu.js +17 -16
- package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.d.ts +7 -3
- package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.d.ts.map +1 -1
- package/src/engine/ecs/gui/parallax/GuiElementParallaxSystem.js +3 -2
- package/src/engine/ecs/ik/InverseKinematics.d.ts +17 -8
- package/src/engine/ecs/ik/InverseKinematics.d.ts.map +1 -1
- package/src/engine/ecs/ik/InverseKinematics.js +8 -7
- package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts +9 -0
- package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinaryClassSerializationAdapter.js +9 -0
- package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts +4 -0
- package/src/engine/ecs/storage/binary/BinaryClassUpgrader.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinaryClassUpgrader.js +4 -0
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts +10 -4
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/BinarySerializationRegistry.js +5 -0
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts +5 -2
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.js +2 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.d.ts +7 -3
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionSerializer.js +3 -2
- package/src/engine/ecs/system/SystemExecutionPhase.d.ts +9 -0
- package/src/engine/ecs/system/SystemExecutionPhase.d.ts.map +1 -0
- package/src/engine/ecs/systems/ScriptSystem.d.ts +1 -0
- package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts +7 -2
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/Terrain.js +8 -0
- package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSerializationUpgrader_0_1.d.ts +6 -0
- package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts +3 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.js +5 -0
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts +3 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.js +5 -0
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts +4 -0
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.js +4 -0
- package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts +7 -2
- package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTile.js +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +6 -2
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +6 -1
- package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts +9 -4
- package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts.map +1 -1
- package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.js +4 -3
- package/src/engine/ecs/transform/Transform64.d.ts +4 -0
- package/src/engine/ecs/transform/Transform64.d.ts.map +1 -1
- package/src/engine/ecs/transform/Transform64.js +4 -0
- package/src/engine/graphics/camera/CameraShakeBehavior.d.ts +20 -10
- package/src/engine/graphics/camera/CameraShakeBehavior.d.ts.map +1 -1
- package/src/engine/graphics/camera/CameraShakeBehavior.js +9 -8
- package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts +8 -4
- package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts.map +1 -1
- package/src/engine/graphics/camera/CameraShakeTraumaBehavior.js +3 -2
- package/src/engine/graphics/camera/makeOrbitalCameraController.d.ts +11 -5
- package/src/engine/graphics/camera/makeOrbitalCameraController.d.ts.map +1 -1
- package/src/engine/graphics/camera/makeOrbitalCameraController.js +5 -4
- package/src/engine/graphics/canvas/canvas2d_draw_grid.d.ts +19 -9
- package/src/engine/graphics/canvas/canvas2d_draw_grid.d.ts.map +1 -1
- package/src/engine/graphics/canvas/canvas2d_draw_grid.js +9 -8
- package/src/engine/graphics/canvas/canvas2d_draw_label.d.ts +17 -8
- package/src/engine/graphics/canvas/canvas2d_draw_label.d.ts.map +1 -1
- package/src/engine/graphics/canvas/canvas2d_draw_label.js +8 -7
- package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.d.ts +21 -10
- package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.d.ts.map +1 -1
- package/src/engine/graphics/canvas/canvas2d_draw_linear_scale.js +10 -9
- package/src/engine/graphics/canvas/canvas2d_plot_data_line.d.ts +18 -8
- package/src/engine/graphics/canvas/canvas2d_plot_data_line.d.ts.map +1 -1
- package/src/engine/graphics/canvas/canvas2d_plot_data_line.js +8 -7
- package/src/engine/graphics/ecs/camera/Camera.d.ts +4 -0
- package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/Camera.js +4 -0
- package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts +11 -5
- package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.js +5 -4
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts +1 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/particles/ParticleEffect.d.ts +5 -5
- package/src/engine/graphics/ecs/particles/ParticleEffect.js +5 -5
- package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.d.ts +19 -9
- package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.d.ts.map +1 -1
- package/src/engine/graphics/ecs/trail3d/make_gradient_stroke.js +9 -8
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts +3 -0
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +3 -0
- package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts +9 -4
- package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/volume/AttributeValue.js +4 -3
- package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts +7 -1
- package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FrameGraph.js +5 -0
- package/src/engine/graphics/render/frame_graph/FrameGraphNode.d.ts +4 -0
- package/src/engine/graphics/render/frame_graph/FrameGraphNode.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FrameGraphNode.js +4 -0
- package/src/engine/graphics/render/frame_graph/FramePassBuilder.d.ts +9 -1
- package/src/engine/graphics/render/frame_graph/FramePassBuilder.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FramePassBuilder.js +6 -0
- package/src/engine/graphics/render/frame_graph/FramePassNode.d.ts +6 -0
- package/src/engine/graphics/render/frame_graph/FramePassNode.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FramePassNode.js +5 -0
- package/src/engine/graphics/render/frame_graph/FramePassResources.d.ts +7 -1
- package/src/engine/graphics/render/frame_graph/FramePassResources.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FramePassResources.js +5 -0
- package/src/engine/graphics/render/frame_graph/IFrameGraphContext.d.ts +6 -2
- package/src/engine/graphics/render/frame_graph/IFrameGraphContext.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/IFrameGraphContext.js +4 -0
- package/src/engine/graphics/render/frame_graph/ResourceEntry.d.ts +13 -5
- package/src/engine/graphics/render/frame_graph/ResourceEntry.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/ResourceEntry.js +7 -1
- package/src/engine/graphics/render/frame_graph/ResourceNode.d.ts +9 -3
- package/src/engine/graphics/render/frame_graph/ResourceNode.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/ResourceNode.js +6 -1
- package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.d.ts +5 -1
- package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/resource/RenderResourceManager.js +4 -0
- package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.d.ts +7 -3
- package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/resource/ResourceDescriptor.js +6 -2
- package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts +5 -2
- package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/CachingTextureAtlas.js +2 -1
- package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.d.ts +9 -4
- package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/TextureAtlasDebugger.js +4 -3
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +4 -0
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.js +4 -0
- package/src/engine/graphics/texture/sampler/debug/prototypeSamplerFiltering.js +3 -2
- package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts +0 -5
- package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts.map +1 -1
- package/src/engine/graphics3/GraphicsEngine.d.ts +6 -0
- package/src/engine/graphics3/GraphicsEngine.d.ts.map +1 -1
- package/src/engine/graphics3/GraphicsEngine.js +9 -0
- package/src/engine/graphics3/ParticipatingMedia.d.ts +9 -4
- package/src/engine/graphics3/ParticipatingMedia.d.ts.map +1 -1
- package/src/engine/graphics3/ParticipatingMedia.js +4 -3
- package/src/engine/graphics3/ShadeCameraAdapter.d.ts +5 -1
- package/src/engine/graphics3/ShadeCameraAdapter.d.ts.map +1 -1
- package/src/engine/graphics3/ShadeCameraAdapter.js +4 -0
- package/src/engine/graphics3/TooltipComponentSystem.d.ts +13 -6
- package/src/engine/graphics3/TooltipComponentSystem.d.ts.map +1 -1
- package/src/engine/graphics3/TooltipComponentSystem.js +6 -5
- package/src/engine/graphics3/VolumetricLightMap.d.ts +5 -2
- package/src/engine/graphics3/VolumetricLightMap.d.ts.map +1 -1
- package/src/engine/graphics3/VolumetricLightMap.js +2 -1
- package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
- package/src/engine/input/devices/PointerDevice.js +7 -6
- package/src/engine/input/devices/gamepad/GamepadHandle.d.ts +4 -0
- package/src/engine/input/devices/gamepad/GamepadHandle.d.ts.map +1 -1
- package/src/engine/input/devices/gamepad/GamepadHandle.js +4 -0
- package/src/engine/input/devices/touch/observePinch.d.ts +17 -8
- package/src/engine/input/devices/touch/observePinch.d.ts.map +1 -1
- package/src/engine/input/devices/touch/observePinch.js +8 -7
- package/src/engine/input/ecs/components/InputBinding.d.ts +11 -5
- package/src/engine/input/ecs/components/InputBinding.d.ts.map +1 -1
- package/src/engine/input/ecs/components/InputBinding.js +5 -4
- package/src/engine/input/ecs/ism/InputMapSystem.d.ts +4 -0
- package/src/engine/input/ecs/ism/InputMapSystem.d.ts.map +1 -1
- package/src/engine/input/ecs/systems/InputControllerSystem.d.ts +1 -1
- package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
- package/src/engine/input/ecs/util/TerrainCameraTargetSampler.d.ts +5 -2
- package/src/engine/input/ecs/util/TerrainCameraTargetSampler.d.ts.map +1 -1
- package/src/engine/input/ecs/util/TerrainCameraTargetSampler.js +2 -1
- package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.d.ts +9 -4
- package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/OrbitingBehavior.js +4 -3
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts +9 -4
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.js +4 -3
- package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.d.ts +9 -4
- package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/util/syncExecuteBehaviorToCompletion.js +4 -3
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts +19 -9
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/MonteCarlo.js +9 -8
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +13 -6
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
- package/src/engine/intelligence/optimization/RandomOptimizer.js +6 -5
- package/src/engine/interpolation/InterpolationSystem.d.ts +4 -0
- package/src/engine/interpolation/InterpolationSystem.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts +5 -2
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.js +6 -0
- package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts +6 -2
- package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.js +4 -0
- package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts +7 -4
- package/src/engine/knowledge/database/StaticKnowledgeDatabase.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDatabase.js +6 -0
- package/src/engine/makeSimpleTaskProgressView.d.ts +10 -4
- package/src/engine/makeSimpleTaskProgressView.d.ts.map +1 -1
- package/src/engine/makeSimpleTaskProgressView.js +4 -3
- package/src/engine/navigation/mesh/build/navmesh_build_topology.d.ts +20 -9
- package/src/engine/navigation/mesh/build/navmesh_build_topology.d.ts.map +1 -1
- package/src/engine/navigation/mesh/build/navmesh_build_topology.js +9 -8
- package/src/engine/network/sim/ActionLog.d.ts +1 -2
- package/src/engine/network/sim/ActionLog.d.ts.map +1 -1
- package/src/engine/network/sim/ActionLog.js +0 -1
- package/src/engine/network/state/InputRing.d.ts +1 -2
- package/src/engine/network/state/InputRing.d.ts.map +1 -1
- package/src/engine/network/state/InputRing.js +0 -1
- package/src/engine/notify/Notification.d.ts +15 -9
- package/src/engine/notify/Notification.d.ts.map +1 -1
- package/src/engine/notify/Notification.js +5 -4
- package/src/engine/options/OptionAbstract.d.ts +4 -0
- package/src/engine/options/OptionAbstract.d.ts.map +1 -1
- package/src/engine/options/OptionAbstract.js +4 -0
- package/src/engine/options/OptionsView.d.ts +10 -4
- package/src/engine/options/OptionsView.d.ts.map +1 -1
- package/src/engine/options/OptionsView.js +4 -3
- package/src/engine/physics/ccd/linear_sweep.d.ts +4 -7
- package/src/engine/physics/ccd/linear_sweep.d.ts.map +1 -1
- package/src/engine/physics/ccd/linear_sweep.js +3 -1
- package/src/engine/physics/cloth/MEASUREMENTS.md +956 -0
- package/src/engine/physics/cloth/PLAN.md +1581 -0
- package/src/engine/physics/cloth/ecs/Cloth.d.ts +145 -0
- package/src/engine/physics/cloth/ecs/Cloth.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/Cloth.js +212 -0
- package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts +208 -0
- package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/ClothDynamics.js +331 -0
- package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.d.ts +10 -0
- package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/ClothDynamicsFlags.js +57 -0
- package/src/engine/physics/cloth/ecs/ClothExclude.d.ts +45 -0
- package/src/engine/physics/cloth/ecs/ClothExclude.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/ClothExclude.js +59 -0
- package/src/engine/physics/cloth/ecs/ClothFlags.d.ts +10 -0
- package/src/engine/physics/cloth/ecs/ClothFlags.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/ClothFlags.js +47 -0
- package/src/engine/physics/cloth/ecs/ClothInstance.d.ts +321 -0
- package/src/engine/physics/cloth/ecs/ClothInstance.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/ClothInstance.js +363 -0
- package/src/engine/physics/cloth/ecs/ClothSystem.d.ts +149 -0
- package/src/engine/physics/cloth/ecs/ClothSystem.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/ClothSystem.js +773 -0
- package/src/engine/physics/cloth/ecs/cloth_dynamics_library.d.ts +157 -0
- package/src/engine/physics/cloth/ecs/cloth_dynamics_library.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/cloth_dynamics_library.js +254 -0
- package/src/engine/physics/cloth/ecs/cloth_dynamics_map.d.ts +235 -0
- package/src/engine/physics/cloth/ecs/cloth_dynamics_map.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/cloth_dynamics_map.js +271 -0
- package/src/engine/physics/cloth/ecs/cloth_seed_subtree.d.ts +114 -0
- package/src/engine/physics/cloth/ecs/cloth_seed_subtree.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/cloth_seed_subtree.js +645 -0
- package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts +9 -0
- package/src/engine/physics/cloth/ecs/cloth_write_back.d.ts.map +1 -0
- package/src/engine/physics/cloth/ecs/cloth_write_back.js +449 -0
- package/src/engine/physics/cloth/playground/README.md +185 -0
- package/src/engine/physics/cloth/playground/cloth_playground_build.d.ts +58 -0
- package/src/engine/physics/cloth/playground/cloth_playground_build.d.ts.map +1 -0
- package/src/engine/physics/cloth/playground/cloth_playground_build.js +333 -0
- package/src/engine/physics/cloth/playground/cloth_playground_draw.d.ts +79 -0
- package/src/engine/physics/cloth/playground/cloth_playground_draw.d.ts.map +1 -0
- package/src/engine/physics/cloth/playground/cloth_playground_draw.js +519 -0
- package/src/engine/physics/cloth/playground/index.html +200 -0
- package/src/engine/physics/cloth/playground/main.d.ts +2 -0
- package/src/engine/physics/cloth/playground/main.d.ts.map +1 -0
- package/src/engine/physics/cloth/playground/main.js +876 -0
- package/src/engine/physics/cloth/playground/rig.html +187 -0
- package/src/engine/physics/cloth/playground/rig_build.d.ts +81 -0
- package/src/engine/physics/cloth/playground/rig_build.d.ts.map +1 -0
- package/src/engine/physics/cloth/playground/rig_build.js +296 -0
- package/src/engine/physics/cloth/playground/rig_main.d.ts +2 -0
- package/src/engine/physics/cloth/playground/rig_main.d.ts.map +1 -0
- package/src/engine/physics/cloth/playground/rig_main.js +955 -0
- package/src/engine/physics/cloth/solver/ClothState.d.ts +323 -0
- package/src/engine/physics/cloth/solver/ClothState.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/ClothState.js +673 -0
- package/src/engine/physics/cloth/solver/cloth_color_particles.d.ts +67 -0
- package/src/engine/physics/cloth/solver/cloth_color_particles.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/cloth_color_particles.js +220 -0
- package/src/engine/physics/cloth/solver/cloth_solve_vertex.d.ts +13 -0
- package/src/engine/physics/cloth/solver/cloth_solve_vertex.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/cloth_solve_vertex.js +201 -0
- package/src/engine/physics/cloth/solver/cloth_solver_constants.d.ts +97 -0
- package/src/engine/physics/cloth/solver/cloth_solver_constants.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/cloth_solver_constants.js +102 -0
- package/src/engine/physics/cloth/solver/cloth_step.d.ts +91 -0
- package/src/engine/physics/cloth/solver/cloth_step.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/cloth_step.js +289 -0
- package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.d.ts +54 -0
- package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/cloth_vertex_accumulator.js +56 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.d.ts +125 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_bend_row.js +383 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.d.ts +112 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_leash_row.js +346 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.d.ts +94 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/constraint/cloth_stretch_row.js +383 -0
- package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.d.ts +27 -0
- package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.d.ts.map +1 -0
- package/src/engine/physics/cloth/solver/find_non_finite_cloth_state.js +104 -0
- package/src/engine/physics/ecs/PhysicsSystem.d.ts +5 -7
- package/src/engine/physics/ecs/PhysicsSystem.d.ts.map +1 -1
- package/src/engine/physics/ecs/PhysicsSystem.js +4 -1
- package/src/engine/physics/ecs/RigidBodySerializationUpgrader_0_1.d.ts +6 -0
- package/src/engine/physics/ecs/RigidBodySerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
- package/src/engine/physics/narrowphase/compute_penetration.d.ts +26 -23
- package/src/engine/physics/narrowphase/compute_penetration.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/compute_penetration.js +25 -4
- package/src/engine/physics/narrowphase/narrowphase_step.d.ts +16 -23
- package/src/engine/physics/narrowphase/narrowphase_step.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/narrowphase_step.js +15 -4
- package/src/engine/physics/narrowphase/refine_ray_concave.d.ts +4 -6
- package/src/engine/physics/narrowphase/refine_ray_concave.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/refine_ray_concave.js +3 -1
- package/src/engine/physics/narrowphase/refine_ray_hit.d.ts +6 -6
- package/src/engine/physics/narrowphase/refine_ray_hit.d.ts.map +1 -1
- package/src/engine/physics/narrowphase/refine_ray_hit.js +5 -1
- package/src/engine/physics/queries/shape_cast.d.ts +9 -7
- package/src/engine/physics/queries/shape_cast.d.ts.map +1 -1
- package/src/engine/physics/queries/shape_cast.js +8 -1
- package/src/engine/platform/EnginePlatform.d.ts +4 -0
- package/src/engine/platform/EnginePlatform.d.ts.map +1 -1
- package/src/engine/platform/EnginePlatform.js +4 -0
- package/src/engine/plugin/EnginePlugin.d.ts +9 -0
- package/src/engine/plugin/EnginePlugin.d.ts.map +1 -1
- package/src/engine/plugin/EnginePlugin.js +9 -0
- package/src/engine/plugin/EnginePluginManager.d.ts +13 -2
- package/src/engine/plugin/EnginePluginManager.d.ts.map +1 -1
- package/src/engine/plugin/EnginePluginManager.js +10 -0
- package/src/engine/save/StorageBackedList.d.ts +8 -4
- package/src/engine/save/StorageBackedList.d.ts.map +1 -1
- package/src/engine/save/StorageBackedList.js +3 -2
- package/src/engine/scene/Scene.d.ts +10 -0
- package/src/engine/scene/Scene.d.ts.map +1 -1
- package/src/engine/scene/Scene.js +7 -0
- package/src/engine/scene/SceneManager.d.ts +4 -0
- package/src/engine/scene/SceneManager.d.ts.map +1 -1
- package/src/engine/scene/SceneManager.js +4 -0
- package/src/engine/scene/SerializedScene.d.ts +8 -4
- package/src/engine/scene/SerializedScene.d.ts.map +1 -1
- package/src/engine/scene/SerializedScene.js +3 -2
- package/src/engine/scene/transitionToScene.d.ts +11 -5
- package/src/engine/scene/transitionToScene.d.ts.map +1 -1
- package/src/engine/scene/transitionToScene.js +5 -4
- package/src/engine/simulation/Ticker.d.ts +5 -2
- package/src/engine/simulation/Ticker.d.ts.map +1 -1
- package/src/engine/simulation/Ticker.js +2 -1
- package/src/engine/sound/SoundEngine.d.ts +4 -0
- package/src/engine/sound/SoundEngine.d.ts.map +1 -1
- package/src/engine/sound/SoundEngine.js +4 -0
- package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.d.ts +7 -3
- package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.d.ts.map +1 -1
- package/src/engine/sound/material/concrete/json/deserializeSoundMaterialFromJSON.js +3 -2
- package/src/engine/sound/simulation/ecs/AcousticSimulationSystem.d.ts +10 -0
- package/src/engine/sound/simulation/ecs/AcousticSimulationSystem.d.ts.map +1 -1
- package/src/engine/sound/sopra/SopraEngine.d.ts +5 -0
- package/src/engine/sound/sopra/SopraEngine.d.ts.map +1 -1
- package/src/engine/sound/sopra/SopraEngine.js +8 -0
- package/src/engine/sound/sopra/definition/BusDefinition.d.ts +4 -0
- package/src/engine/sound/sopra/definition/BusDefinition.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/BusDefinition.js +4 -0
- package/src/engine/sound/sopra/definition/EventDescription.d.ts +1 -0
- package/src/engine/sound/sopra/definition/EventDescription.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/EventDescription.js +4 -0
- package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.d.ts +6 -0
- package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.js +5 -0
- package/src/engine/sound/sopra/definition/clip/BlendContainerAudioClip.d.ts +1 -1
- package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.d.ts +1 -0
- package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.d.ts +1 -1
- package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts +10 -2
- package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/clip/SampleAudioClip.js +7 -0
- package/src/engine/sound/sopra/definition/clip/SequenceContainerAudioClip.d.ts +1 -1
- package/src/engine/sound/sopra/definition/clip/SwitchContainerAudioClip.d.ts +1 -1
- package/src/engine/sound/sopra/runtime/BusGraph.d.ts +4 -0
- package/src/engine/sound/sopra/runtime/BusGraph.d.ts.map +1 -1
- package/src/engine/sound/sopra/runtime/BusGraph.js +4 -0
- package/src/engine/sound/sopra/runtime/EventInstance.d.ts +9 -1
- package/src/engine/sound/sopra/runtime/EventInstance.d.ts.map +1 -1
- package/src/engine/sound/sopra/runtime/EventInstance.js +11 -0
- package/src/engine/sound/sopra/runtime/VoiceManager.d.ts +2 -0
- package/src/engine/sound/sopra/runtime/VoiceManager.d.ts.map +1 -1
- package/src/engine/sound/sopra/runtime/VoiceManager.js +5 -0
- package/src/engine/ui/DraggableAspect.d.ts +14 -6
- package/src/engine/ui/DraggableAspect.d.ts.map +1 -1
- package/src/engine/ui/DraggableAspect.js +6 -5
- package/src/engine/ui/GUIEngine.d.ts +73 -26
- package/src/engine/ui/GUIEngine.d.ts.map +1 -1
- package/src/engine/ui/GUIEngine.js +37 -19
- package/src/engine/ui/bindings/DomElementBindingDescription.d.ts +7 -3
- package/src/engine/ui/bindings/DomElementBindingDescription.d.ts.map +1 -1
- package/src/engine/ui/bindings/DomElementBindingDescription.js +3 -2
- package/src/engine/ui/modal/ModalStack.d.ts +4 -0
- package/src/engine/ui/modal/ModalStack.d.ts.map +1 -1
- package/src/engine/ui/modal/ModalStack.js +4 -0
- package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts +4 -0
- package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts.map +1 -1
- package/src/engine/ui/notification/AnimatedObjectEmitter.js +4 -0
- package/src/engine/ui/notification/NotificationManager.d.ts +21 -8
- package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
- package/src/engine/ui/notification/NotificationManager.js +10 -3
- package/src/engine/ui/notification/ViewEmitter.d.ts +8 -2
- package/src/engine/ui/notification/ViewEmitter.d.ts.map +1 -1
- package/src/engine/ui/notification/ViewEmitter.js +6 -1
- package/src/engine/ui/scene/SceneGUIContext.d.ts +4 -0
- package/src/engine/ui/scene/SceneGUIContext.d.ts.map +1 -1
- package/src/engine/ui/scene/SceneGUIContext.js +4 -0
- package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.d.ts +9 -4
- package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.d.ts.map +1 -1
- package/src/generation/filtering/numeric/util/populateSampler2DFromCellFilter.js +4 -3
- package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts +9 -4
- package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts.map +1 -1
- package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.js +4 -3
- package/src/generation/grid/generation/GridTaskApplyActionToCells.d.ts +9 -4
- package/src/generation/grid/generation/GridTaskApplyActionToCells.d.ts.map +1 -1
- package/src/generation/grid/generation/GridTaskApplyActionToCells.js +4 -3
- package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.d.ts +9 -4
- package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.d.ts.map +1 -1
- package/src/generation/grid/generation/discrete/GridTaskActionRuleSet.js +4 -3
- package/src/generation/grid/generation/grid/select/CellSupplierBestN.d.ts +11 -5
- package/src/generation/grid/generation/grid/select/CellSupplierBestN.d.ts.map +1 -1
- package/src/generation/grid/generation/grid/select/CellSupplierBestN.js +5 -4
- package/src/generation/grid/generation/road/GridTaskGenerateRoads.d.ts +9 -4
- package/src/generation/grid/generation/road/GridTaskGenerateRoads.d.ts.map +1 -1
- package/src/generation/grid/generation/road/GridTaskGenerateRoads.js +12 -10
- package/src/generation/grid/generation/util/buildDistanceMapToObjective.d.ts +19 -9
- package/src/generation/grid/generation/util/buildDistanceMapToObjective.d.ts.map +1 -1
- package/src/generation/grid/generation/util/buildDistanceMapToObjective.js +9 -8
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts +17 -8
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts.map +1 -1
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.js +8 -7
- package/src/generation/markers/GridActionRuleSet.d.ts +11 -5
- package/src/generation/markers/GridActionRuleSet.d.ts.map +1 -1
- package/src/generation/markers/GridActionRuleSet.js +5 -4
- package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.d.ts +9 -4
- package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.d.ts.map +1 -1
- package/src/generation/markers/actions/MarkerNodeActionEntityPlacement.js +4 -3
- package/src/generation/markers/actions/MarkerNodeActionImaginary.d.ts +9 -4
- package/src/generation/markers/actions/MarkerNodeActionImaginary.d.ts.map +1 -1
- package/src/generation/markers/actions/MarkerNodeActionImaginary.js +4 -3
- package/src/generation/markers/actions/MarkerProcessingRule.d.ts +11 -5
- package/src/generation/markers/actions/MarkerProcessingRule.d.ts.map +1 -1
- package/src/generation/markers/actions/MarkerProcessingRule.js +5 -4
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts +5 -2
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.d.ts.map +1 -1
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorClingToTerrain.js +2 -1
- package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.d.ts +13 -6
- package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.d.ts.map +1 -1
- package/src/generation/markers/actions/terrain/MarkerNodeActionPaintTerrain.js +6 -5
- package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.d.ts +7 -3
- package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.d.ts.map +1 -1
- package/src/generation/markers/emitter/MarkerNodeEmitterPredicated.js +3 -2
- package/src/generation/placement/GridCellPlacementRule.d.ts +15 -7
- package/src/generation/placement/GridCellPlacementRule.d.ts.map +1 -1
- package/src/generation/placement/GridCellPlacementRule.js +7 -6
- package/src/shade/descriptor/ObjectDescriptorBase.d.ts +8 -3
- package/src/shade/descriptor/ObjectDescriptorBase.d.ts.map +1 -1
- package/src/shade/descriptor/ObjectDescriptorBase.js +7 -2
- package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.d.ts +12 -0
- package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.d.ts.map +1 -1
- package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.js +8 -0
- package/src/shade/descriptor/binding/BufferBindingLayout.d.ts +11 -6
- package/src/shade/descriptor/binding/BufferBindingLayout.d.ts.map +1 -1
- package/src/shade/descriptor/binding/BufferBindingLayout.js +5 -4
- package/src/shade/descriptor/binding/SamplerBindingLayout.d.ts +2 -2
- package/src/shade/descriptor/binding/SamplerBindingLayout.d.ts.map +1 -1
- package/src/shade/descriptor/binding/SamplerBindingLayout.js +1 -1
- package/src/shade/descriptor/binding/StorageTextureBindingLayout.d.ts +2 -2
- package/src/shade/descriptor/binding/StorageTextureBindingLayout.d.ts.map +1 -1
- package/src/shade/descriptor/binding/StorageTextureBindingLayout.js +1 -1
- package/src/shade/descriptor/binding/TextureBindingLayout.d.ts +4 -4
- package/src/shade/descriptor/binding/TextureBindingLayout.d.ts.map +1 -1
- package/src/shade/descriptor/binding/TextureBindingLayout.js +2 -2
- package/src/shade/descriptor/blend/BlendComponent.d.ts +6 -6
- package/src/shade/descriptor/blend/BlendComponent.d.ts.map +1 -1
- package/src/shade/descriptor/blend/BlendComponent.js +3 -3
- package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.d.ts +12 -0
- package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.js +8 -0
- package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.d.ts +18 -5
- package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.js +14 -4
- package/src/shade/descriptor/pipeline/render/DepthStencilState.d.ts +4 -1
- package/src/shade/descriptor/pipeline/render/DepthStencilState.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/render/DepthStencilState.js +3 -0
- package/src/shade/descriptor/pipeline/render/FragmentState.d.ts +5 -2
- package/src/shade/descriptor/pipeline/render/FragmentState.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/render/FragmentState.js +4 -1
- package/src/shade/descriptor/pipeline/render/PrimitiveState.d.ts +8 -8
- package/src/shade/descriptor/pipeline/render/PrimitiveState.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/render/PrimitiveState.js +4 -4
- package/src/shade/descriptor/pipeline/render/StencilFaceState.d.ts +16 -4
- package/src/shade/descriptor/pipeline/render/StencilFaceState.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/render/StencilFaceState.js +12 -0
- package/src/shade/descriptor/pipeline/render/VertexState.d.ts +5 -2
- package/src/shade/descriptor/pipeline/render/VertexState.d.ts.map +1 -1
- package/src/shade/descriptor/pipeline/render/VertexState.js +4 -1
- package/src/shade/descriptor/texture/SamplerDescriptor.d.ts +24 -6
- package/src/shade/descriptor/texture/SamplerDescriptor.d.ts.map +1 -1
- package/src/shade/descriptor/texture/SamplerDescriptor.js +18 -0
- package/src/shade/descriptor/texture/TextureDescriptor.d.ts +2 -2
- package/src/shade/descriptor/texture/TextureDescriptor.d.ts.map +1 -1
- package/src/shade/descriptor/texture/TextureDescriptor.js +1 -1
- package/src/shade/device/ShadeGPUCommandContext.d.ts +46 -12
- package/src/shade/device/ShadeGPUCommandContext.d.ts.map +1 -1
- package/src/shade/device/ShadeGPUCommandContext.js +28 -8
- package/src/shade/device/graph/GraphicsExecutionContext.d.ts +6 -0
- package/src/shade/device/graph/GraphicsExecutionContext.d.ts.map +1 -1
- package/src/shade/device/graph/GraphicsExecutionContext.js +5 -0
- package/src/shade/device/graph/TextureResourceDescriptor.d.ts +13 -6
- package/src/shade/device/graph/TextureResourceDescriptor.d.ts.map +1 -1
- package/src/shade/device/graph/TextureResourceDescriptor.js +6 -5
- package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts +6 -0
- package/src/shade/device/pass/ShadeGPUComputePassEncoder.d.ts.map +1 -1
- package/src/shade/device/pass/ShadeGPUComputePassEncoder.js +5 -0
- package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts +6 -0
- package/src/shade/device/pass/ShadeGPURenderPassEncoder.d.ts.map +1 -1
- package/src/shade/device/pass/ShadeGPURenderPassEncoder.js +5 -0
- package/src/shade/device/pipeline/ComputePipelineManager.d.ts +9 -1
- package/src/shade/device/pipeline/ComputePipelineManager.d.ts.map +1 -1
- package/src/shade/device/pipeline/ComputePipelineManager.js +6 -0
- package/src/shade/device/pipeline/PipelineLayoutManager.d.ts +6 -0
- package/src/shade/device/pipeline/PipelineLayoutManager.d.ts.map +1 -1
- package/src/shade/device/pipeline/PipelineLayoutManager.js +5 -0
- package/src/shade/device/pipeline/RenderPipelineManager.d.ts +7 -1
- package/src/shade/device/pipeline/RenderPipelineManager.d.ts.map +1 -1
- package/src/shade/device/pipeline/RenderPipelineManager.js +5 -0
- package/src/shade/device/shader/ShaderModuleCompiler.d.ts +4 -0
- package/src/shade/device/shader/ShaderModuleCompiler.d.ts.map +1 -1
- package/src/shade/device/shader/ShaderModuleCompiler.js +4 -0
- package/src/shade/device/timing/profile/GPUFrameRecorder.d.ts +6 -0
- package/src/shade/device/timing/profile/GPUFrameRecorder.d.ts.map +1 -1
- package/src/shade/device/timing/profile/GPUFrameRecorder.js +5 -0
- package/src/shade/device/timing/profile/GPUProfileFrame.d.ts +6 -0
- package/src/shade/device/timing/profile/GPUProfileFrame.d.ts.map +1 -1
- package/src/shade/device/timing/profile/GPUProfileFrame.js +5 -0
- package/src/shade/device/timing/profile/GPUProfileSession.d.ts +1 -0
- package/src/shade/device/timing/profile/GPUProfileSession.d.ts.map +1 -1
- package/src/shade/device/timing/profile/GPUProfileSession.js +4 -0
- package/src/shade/device/timing/profile/GPUProfileSpan.d.ts +4 -0
- package/src/shade/device/timing/profile/GPUProfileSpan.d.ts.map +1 -1
- package/src/shade/device/timing/profile/GPUProfileSpan.js +4 -0
- package/src/shade/playground/add_random_meshes.d.ts +19 -8
- package/src/shade/playground/add_random_meshes.d.ts.map +1 -1
- package/src/shade/playground/add_random_meshes.js +8 -7
- package/src/shade/playground/ground_seam/capture_scene_color.d.ts +4 -0
- package/src/shade/playground/ground_seam/capture_scene_color.d.ts.map +1 -1
- package/src/shade/playground/particle_ecs/index.html +0 -2
- package/src/shade/playground/particle_ecs/main.js +8 -29
- package/src/shade/playground/particle_system/main.js +8 -21
- package/src/shade/playground/particle_system/particle_prototype.js +8 -8
- package/src/shade/playground/particle_system/particle_scene.d.ts +0 -61
- package/src/shade/playground/particle_system/particle_scene.d.ts.map +1 -1
- package/src/shade/playground/particle_system/particle_scene.js +0 -57
- package/src/shade/playground/ssr_variance/reference.d.ts +1 -1
- package/src/shade/playground/ssr_variance/reference.d.ts.map +1 -1
- package/src/shade/playground/vgeo_viewer/README.md +11 -2
- package/src/shade/playground/vgeo_viewer/cut_geometry.d.ts.map +1 -1
- package/src/shade/playground/vgeo_viewer/cut_geometry.js +3 -40
- package/src/shade/playground/vgeo_viewer/main.js +14 -0
- package/src/shade/playground/vgeo_viewer/select_cut.d.ts +19 -0
- package/src/shade/playground/vgeo_viewer/select_cut.d.ts.map +1 -1
- package/src/shade/playground/vgeo_viewer/select_cut.js +53 -9
- package/src/shade/renderer/GPUSamplerManager.d.ts +4 -0
- package/src/shade/renderer/GPUSamplerManager.d.ts.map +1 -1
- package/src/shade/renderer/GPUSamplerManager.js +4 -0
- package/src/shade/renderer/GraphicsContext.d.ts +2 -0
- package/src/shade/renderer/GraphicsContext.d.ts.map +1 -1
- package/src/shade/renderer/GraphicsContext.js +5 -0
- package/src/shade/renderer/Renderer.d.ts +14 -4
- package/src/shade/renderer/Renderer.d.ts.map +1 -1
- package/src/shade/renderer/Renderer.js +70 -67
- package/src/shade/renderer/ResourceManager.d.ts +10 -0
- package/src/shade/renderer/ResourceManager.d.ts.map +1 -1
- package/src/shade/renderer/ResourceManager.js +7 -0
- package/src/shade/renderer/animation/GPUAnimationManager.d.ts +18 -11
- package/src/shade/renderer/animation/GPUAnimationManager.d.ts.map +1 -1
- package/src/shade/renderer/animation/GPUAnimationManager.js +2063 -1958
- package/src/shade/renderer/animation/ShadeAnimationChannel.d.ts +2 -0
- package/src/shade/renderer/animation/ShadeAnimationChannel.d.ts.map +1 -1
- package/src/shade/renderer/animation/ShadeAnimationChannel.js +5 -0
- package/src/shade/renderer/animation/ShadeAnimationClip.d.ts +4 -0
- package/src/shade/renderer/animation/ShadeAnimationClip.d.ts.map +1 -1
- package/src/shade/renderer/animation/ShadeAnimationClip.js +4 -0
- package/src/shade/renderer/animation/Skin.d.ts +6 -0
- package/src/shade/renderer/animation/Skin.d.ts.map +1 -1
- package/src/shade/renderer/animation/Skin.js +5 -0
- package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts +48 -0
- package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.d.ts.map +1 -1
- package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.js +201 -14
- package/src/shade/renderer/binding/BindGroupDescriptor.d.ts +2 -1
- package/src/shade/renderer/binding/BindGroupDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/binding/BindGroupDescriptor.js +4 -0
- package/src/shade/renderer/binding/BindGroupManager.d.ts +1 -0
- package/src/shade/renderer/binding/BindGroupManager.d.ts.map +1 -1
- package/src/shade/renderer/binding/BindGroupManager.js +4 -0
- package/src/shade/renderer/buffer/GPUBufferAllocatorNative.d.ts +4 -0
- package/src/shade/renderer/buffer/GPUBufferAllocatorNative.d.ts.map +1 -1
- package/src/shade/renderer/buffer/GPUBufferAllocatorNative.js +4 -0
- package/src/shade/renderer/buffer/GPUTypedBuffer.d.ts +20 -8
- package/src/shade/renderer/buffer/GPUTypedBuffer.d.ts.map +1 -1
- package/src/shade/renderer/buffer/GPUTypedBuffer.js +11 -6
- package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.d.ts +15 -7
- package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.d.ts.map +1 -1
- package/src/shade/renderer/buffer/graph_inspect_gpu_buffer.js +7 -6
- package/src/shade/renderer/buffer/inspect_gpu_buffer.d.ts +26 -12
- package/src/shade/renderer/buffer/inspect_gpu_buffer.d.ts.map +1 -1
- package/src/shade/renderer/buffer/inspect_gpu_buffer.js +12 -10
- package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.d.ts +13 -6
- package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.d.ts.map +1 -1
- package/src/shade/renderer/buffer/inspect_gpu_buffer_typed.js +6 -5
- package/src/shade/renderer/buffer/table/GPUDatabase.d.ts +13 -5
- package/src/shade/renderer/buffer/table/GPUDatabase.d.ts.map +1 -1
- package/src/shade/renderer/buffer/table/GPUDatabase.js +10 -4
- package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts +3 -1
- package/src/shade/renderer/buffer/table/GPUTypedTable.d.ts.map +1 -1
- package/src/shade/renderer/buffer/table/GPUTypedTable.js +5 -0
- package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts +4 -0
- package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/buffer/table/GPUTypedTableDescriptor.js +4 -0
- package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.d.ts +11 -4
- package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.d.ts.map +1 -1
- package/src/shade/renderer/buffer/table/single/GPUSingleTypeTable.js +9 -3
- package/src/shade/renderer/camera/CameraManager.d.ts +4 -0
- package/src/shade/renderer/camera/CameraManager.d.ts.map +1 -1
- package/src/shade/renderer/camera/CameraManager.js +4 -0
- package/src/shade/renderer/camera/GPUCameraContext.d.ts +4 -2
- package/src/shade/renderer/camera/GPUCameraContext.d.ts.map +1 -1
- package/src/shade/renderer/camera/GPUCameraContext.js +5 -0
- package/src/shade/renderer/extension/FrameContext.d.ts +15 -5
- package/src/shade/renderer/extension/FrameContext.d.ts.map +1 -1
- package/src/shade/renderer/extension/FrameContext.js +7 -0
- package/src/shade/renderer/extension/FrameRecord.d.ts +7 -1
- package/src/shade/renderer/extension/FrameRecord.d.ts.map +1 -1
- package/src/shade/renderer/extension/FrameRecord.js +5 -0
- package/src/shade/renderer/extension/RenderExtension.d.ts +4 -0
- package/src/shade/renderer/extension/RenderExtension.d.ts.map +1 -1
- package/src/shade/renderer/extension/RenderExtension.js +4 -0
- package/src/shade/renderer/geometry/Attribute.d.ts +2 -2
- package/src/shade/renderer/geometry/Attribute.d.ts.map +1 -1
- package/src/shade/renderer/geometry/Attribute.js +1 -1
- package/src/shade/renderer/geometry/GPUGeometryManager.d.ts +30 -2
- package/src/shade/renderer/geometry/GPUGeometryManager.d.ts.map +1 -1
- package/src/shade/renderer/geometry/GPUGeometryManager.js +642 -591
- package/src/shade/renderer/geometry/GPUGeometryMetadata.d.ts +4 -0
- package/src/shade/renderer/geometry/GPUGeometryMetadata.d.ts.map +1 -1
- package/src/shade/renderer/geometry/GPUGeometryMetadata.js +4 -0
- package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.d.ts +7 -3
- package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.d.ts.map +1 -1
- package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.js +3 -2
- package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.d.ts +4 -0
- package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.d.ts.map +1 -1
- package/src/shade/renderer/geometry/bvh/GPUGeometryBVHManager.js +4 -0
- package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.d.ts +11 -5
- package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.d.ts.map +1 -1
- package/src/shade/renderer/geometry/bvh/bvh_to_gpu_buffer.js +5 -4
- package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.d.ts +12 -4
- package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.d.ts.map +1 -1
- package/src/shade/renderer/geometry/meshlet/GPUMeshletManager.js +10 -3
- package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts +1 -0
- package/src/shade/renderer/geometry/meshlet/MeshletBatch.d.ts.map +1 -1
- package/src/shade/renderer/geometry/meshlet/MeshletBatch.js +4 -0
- package/src/shade/renderer/geometry/meshlet_batch_to_bvh.d.ts +13 -6
- package/src/shade/renderer/geometry/meshlet_batch_to_bvh.d.ts.map +1 -1
- package/src/shade/renderer/geometry/meshlet_batch_to_bvh.js +6 -5
- package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.d.ts +2 -0
- package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.d.ts.map +1 -1
- package/src/shade/renderer/geometry/sdf/GPUGeometrySDFManager.js +5 -0
- package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.d.ts +13 -6
- package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.d.ts.map +1 -1
- package/src/shade/renderer/geometry/sdf/shader_sdf_visualize.js +6 -5
- package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts +31 -0
- package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.d.ts.map +1 -1
- package/src/shade/renderer/geometry/virtual/format/read/VGeoContainerReader.js +345 -0
- package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts +11 -5
- package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/brick4/cpu/brick4_bake_for_scene.js +5 -4
- package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.d.ts +12 -5
- package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/brick4/cpu/brick4_generate_tree_from_scene.js +5 -4
- package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.d.ts +11 -5
- package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/brick4/gpu/bake/brick4_bake_basic.js +5 -4
- package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.d.ts +5 -1
- package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/GPULightProbeVolume.js +4 -0
- package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts +4 -0
- package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/LightProbeVolume.js +4 -0
- package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts +7 -1
- package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/bake/GPULightProbeVolumeRenderer.js +5 -0
- package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.d.ts +11 -5
- package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/graph_bake_irradiance_lookup_2d.js +5 -4
- package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.d.ts +9 -4
- package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/lpv_visualise_probes.js +4 -3
- package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.d.ts +9 -4
- package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/placement/graph_generate_probe_locations.js +4 -3
- package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.d.ts +7 -3
- package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/lpv/placement/software/lpv_generate_probe_locations2.js +3 -2
- package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.d.ts +28 -8
- package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/probe/octahedral/GPUProbeAtlas.js +17 -6
- package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.d.ts +13 -6
- package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/probe/octahedral/border/graph_lpv_paint_border_depth.js +6 -5
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.d.ts +15 -7
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lpv_store_sh.js +7 -6
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.d.ts +17 -8
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_lvp_atlas_to_sh.js +8 -7
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.d.ts +17 -8
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/probe/octahedral/convolve/graph_reduce_atlas_to_sh.js +8 -7
- package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts +15 -7
- package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.d.ts.map +1 -1
- package/src/shade/renderer/global_illumination/sharc/SpatialHashRadianceCache.js +7 -6
- package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.d.ts +19 -9
- package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.d.ts.map +1 -1
- package/src/shade/renderer/gpu_primitive/bvh/graph_bvh_build_lbvh.js +9 -8
- package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.d.ts +9 -4
- package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.d.ts.map +1 -1
- package/src/shade/renderer/gpu_primitive/prefix_sum/v1/graph_prefix_scan_csdldf.js +4 -3
- package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.d.ts +11 -5
- package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.d.ts.map +1 -1
- package/src/shade/renderer/gpu_primitive/sort/graph_radix_sort.js +5 -4
- package/src/shade/renderer/hiz/HierarchicalZBuffer.d.ts +9 -1
- package/src/shade/renderer/hiz/HierarchicalZBuffer.d.ts.map +1 -1
- package/src/shade/renderer/hiz/HierarchicalZBuffer.js +6 -0
- package/src/shade/renderer/hiz/generate_downsampler_code.d.ts +11 -5
- package/src/shade/renderer/hiz/generate_downsampler_code.d.ts.map +1 -1
- package/src/shade/renderer/hiz/generate_downsampler_code.js +5 -4
- package/src/shade/renderer/hiz/graph_build_hzb.d.ts +13 -6
- package/src/shade/renderer/hiz/graph_build_hzb.d.ts.map +1 -1
- package/src/shade/renderer/hiz/graph_build_hzb.js +6 -5
- package/src/shade/renderer/light/GPULightCollection.d.ts +4 -1
- package/src/shade/renderer/light/GPULightCollection.d.ts.map +1 -1
- package/src/shade/renderer/light/GPULightCollection.js +6 -0
- package/src/shade/renderer/light/LightCollection.d.ts +9 -3
- package/src/shade/renderer/light/LightCollection.d.ts.map +1 -1
- package/src/shade/renderer/light/LightCollection.js +5 -0
- package/src/shade/renderer/light/cluster/cull/graph_cull_lights.d.ts +11 -5
- package/src/shade/renderer/light/cluster/cull/graph_cull_lights.d.ts.map +1 -1
- package/src/shade/renderer/light/cluster/cull/graph_cull_lights.js +17 -14
- package/src/shade/renderer/light/cluster/graph_assign_clsuters.d.ts +13 -6
- package/src/shade/renderer/light/cluster/graph_assign_clsuters.d.ts.map +1 -1
- package/src/shade/renderer/light/cluster/graph_assign_clsuters.js +6 -5
- package/src/shade/renderer/light/cluster/graph_build_light_clusters.d.ts +13 -6
- package/src/shade/renderer/light/cluster/graph_build_light_clusters.d.ts.map +1 -1
- package/src/shade/renderer/light/cluster/graph_build_light_clusters.js +6 -5
- package/src/shade/renderer/light/environment/graph_filter_environment_map.d.ts +7 -3
- package/src/shade/renderer/light/environment/graph_filter_environment_map.d.ts.map +1 -1
- package/src/shade/renderer/light/environment/graph_filter_environment_map.js +3 -2
- package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.d.ts +11 -5
- package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.d.ts.map +1 -1
- package/src/shade/renderer/lightmap/bake/raster/graph_draw_lightmap_viz_buffer.js +5 -4
- package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts +1 -1
- package/src/shade/renderer/material/GPUMaterialContext.d.ts +17 -1
- package/src/shade/renderer/material/GPUMaterialContext.d.ts.map +1 -1
- package/src/shade/renderer/material/GPUMaterialContext.js +10 -0
- package/src/shade/renderer/material/GPUMaterialManager.d.ts +19 -5
- package/src/shade/renderer/material/GPUMaterialManager.d.ts.map +1 -1
- package/src/shade/renderer/material/GPUMaterialManager.js +19 -4
- package/src/shade/renderer/material/ShadeMaterial.d.ts +2 -1
- package/src/shade/renderer/material/ShadeMaterial.d.ts.map +1 -1
- package/src/shade/renderer/material/ShadeMaterial.js +4 -0
- package/src/shade/renderer/material/StandardShadeMaterial.d.ts +6 -0
- package/src/shade/renderer/material/StandardShadeMaterial.d.ts.map +1 -1
- package/src/shade/renderer/material/StandardShadeMaterial.js +5 -0
- package/src/shade/renderer/material/resident/GPUResidentMaterialContext.d.ts +12 -0
- package/src/shade/renderer/material/resident/GPUResidentMaterialContext.d.ts.map +1 -1
- package/src/shade/renderer/material/resident/GPUResidentMaterialContext.js +8 -0
- package/src/shade/renderer/particles/DESIGN.md +82 -69
- package/src/shade/renderer/particles/GPUParticleSystem.d.ts +93 -48
- package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
- package/src/shade/renderer/particles/GPUParticleSystem.js +117 -176
- package/src/shade/renderer/particles/ParticleConstants.d.ts +6 -12
- package/src/shade/renderer/particles/ParticleConstants.d.ts.map +1 -1
- package/src/shade/renderer/particles/ParticleConstants.js +6 -13
- package/src/shade/renderer/particles/coherence/graph_particle_bucket.d.ts +4 -4
- package/src/shade/renderer/particles/coherence/graph_particle_bucket.js +6 -6
- package/src/shade/renderer/particles/coherence/particle_program_buckets.d.ts +2 -1
- package/src/shade/renderer/particles/coherence/particle_program_buckets.d.ts.map +1 -1
- package/src/shade/renderer/particles/coherence/particle_program_buckets.js +6 -8
- package/src/shade/renderer/particles/coherence/shader_particle_bucket.d.ts.map +1 -1
- package/src/shade/renderer/particles/coherence/shader_particle_bucket.js +4 -3
- package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.d.ts +10 -14
- package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.d.ts.map +1 -1
- package/src/shade/renderer/particles/data/PARTICLE_COUNTERS.js +10 -14
- package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.d.ts +6 -5
- package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.d.ts.map +1 -1
- package/src/shade/renderer/particles/data/PARTICLE_EMITTER_STRUCT.js +6 -5
- package/src/shade/renderer/particles/graph_particles.d.ts +19 -32
- package/src/shade/renderer/particles/graph_particles.d.ts.map +1 -1
- package/src/shade/renderer/particles/graph_particles.js +18 -25
- package/src/shade/renderer/particles/graph_particles_avboit.js +16 -16
- package/src/shade/renderer/particles/runtime/EmitterRegistry.d.ts +3 -2
- package/src/shade/renderer/particles/runtime/EmitterRegistry.d.ts.map +1 -1
- package/src/shade/renderer/particles/runtime/EmitterRegistry.js +31 -27
- package/src/shade/renderer/particles/runtime/ParticleEmitter.d.ts +4 -4
- package/src/shade/renderer/particles/runtime/ParticleEmitter.js +4 -4
- package/src/shade/renderer/particles/shaders/chunk_particle_avboit_contribution.js +4 -4
- package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts +7 -6
- package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.js +7 -6
- package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts +4 -3
- package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/chunk_particle_lighting.js +4 -3
- package/src/shade/renderer/particles/shaders/chunk_particle_render_math.d.ts +2 -2
- package/src/shade/renderer/particles/shaders/chunk_particle_render_math.js +10 -10
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +3 -3
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_splat.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_splat.js +2 -1
- package/src/shade/renderer/particles/shaders/shader_particle_finalize.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_finalize.js +13 -16
- package/src/shade/renderer/particles/shaders/shader_particle_render.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_render.js +22 -19
- package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.d.ts +10 -3
- package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.d.ts.map +1 -1
- package/src/shade/renderer/path_tracer/accumulating/AccumulatingPathTracer.js +12 -2
- package/src/shade/renderer/path_tracer/graph_path_trace_scene.d.ts +7 -3
- package/src/shade/renderer/path_tracer/graph_path_trace_scene.d.ts.map +1 -1
- package/src/shade/renderer/path_tracer/graph_path_trace_scene.js +3 -2
- package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.d.ts +11 -5
- package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/bloom/graph_bloom_downsample.js +5 -4
- package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.d.ts +13 -6
- package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/bloom/graph_postprocess_bloom.js +11 -9
- package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts +31 -15
- package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/denoise/LigmaDenoiser.js +15 -14
- package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.d.ts +21 -10
- package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/denoise/debug/graph_pass_debug_reprojection.js +10 -9
- package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.d.ts +17 -8
- package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/denoise/graph_atorus_denoise_luma.js +8 -7
- package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.d.ts +6 -0
- package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/dof/gather/DepthOfFieldU.js +5 -0
- package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.d.ts +6 -0
- package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/dof/raymarch/DepthOfField.js +5 -0
- package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.d.ts +14 -6
- package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/eye/GPUCameraExposureManager.js +6 -4
- package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.d.ts +13 -6
- package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/gtao/graph_build_depth_mipmap.js +6 -5
- package/src/shade/renderer/postprocess/gtao/render_copy_texture.d.ts +28 -13
- package/src/shade/renderer/postprocess/gtao/render_copy_texture.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/gtao/render_copy_texture.js +13 -11
- package/src/shade/renderer/postprocess/motion_blur/MotionBlur.d.ts +4 -0
- package/src/shade/renderer/postprocess/motion_blur/MotionBlur.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/motion_blur/MotionBlur.js +4 -0
- package/src/shade/renderer/postprocess/nss/NSS.d.ts +7 -1
- package/src/shade/renderer/postprocess/nss/NSS.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/nss/NSS.js +5 -0
- package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.d.ts +9 -4
- package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/graph_build_depth_max_pyramid.js +4 -3
- package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.d.ts +13 -6
- package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/ssr_graph_prefilter_color.js +6 -5
- package/src/shade/renderer/postprocess/taa/TAA.d.ts +15 -7
- package/src/shade/renderer/postprocess/taa/TAA.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/taa/TAA.js +7 -6
- package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.d.ts +13 -6
- package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/velocity/graph_add_camera_velocity.js +6 -5
- package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.d.ts +11 -5
- package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/compute/graph_mesh_frustum_cull.js +5 -4
- package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.d.ts +11 -5
- package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/compute/graph_mesh_sphere_cull.js +5 -4
- package/src/shade/renderer/rasterize/execute_rasterization_jobs.d.ts +12 -5
- package/src/shade/renderer/rasterize/execute_rasterization_jobs.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/execute_rasterization_jobs.js +5 -4
- package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.d.ts +2 -0
- package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/GPUCollectionLimits.js +5 -0
- package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.d.ts +11 -5
- package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_meshes_classify_buckets.js +5 -4
- package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.d.ts +9 -4
- package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/bucket/mesh/graph_scene_meshes_cull_and_classify_buckets.js +4 -3
- package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.d.ts +11 -5
- package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/bucket/meshlet/graph_sort_meshlets_by_bucket_id.js +5 -4
- package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.d.ts +15 -7
- package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_mesh_filter_one_way.js +7 -6
- package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.d.ts +15 -7
- package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_mesh_filter_two_way.js +7 -6
- package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.d.ts +13 -6
- package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_meshlets_expand.js +6 -5
- package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.d.ts +17 -8
- package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_one_way.js +8 -7
- package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.d.ts +13 -6
- package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_meshlets_filter_two_way.js +6 -5
- package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.d.ts +21 -10
- package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_meshlets_rasterize.js +10 -9
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.d.ts +13 -6
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_by_material_side.js +6 -5
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.d.ts +17 -8
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_one_way.js +8 -7
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.d.ts +13 -6
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/graph_triangles_filter_two_way.js +6 -5
- package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.d.ts +15 -7
- package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/expand/mesh/graph_expand_meshes_to_meshlets.js +7 -6
- package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.d.ts +11 -5
- package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/fast/graph_extract_meshes_from_bucket.js +5 -4
- package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.d.ts +9 -4
- package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/fast/graph_rasterize_scene_fast.js +4 -3
- package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts +80 -37
- package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.js +37 -33
- package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.d.ts +28 -13
- package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/native/graph_rasterize_meshes_alpha_tested.js +13 -12
- package/src/shade/renderer/rasterize/native/oit/graph_rasterize_meshes_transparent_oit.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/native/oit/graph_rasterize_meshes_transparent_oit.js +12 -11
- package/src/shade/renderer/rasterize/standard/graph_rasterize_remaining_opaque.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/standard/graph_rasterize_remaining_opaque.js +5 -4
- package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.d.ts +9 -4
- package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/standard/graph_rasterize_scene.js +4 -3
- package/src/shade/renderer/restir/di/ReSTIRDI.d.ts +10 -0
- package/src/shade/renderer/restir/di/ReSTIRDI.d.ts.map +1 -1
- package/src/shade/renderer/restir/di/ReSTIRDI.js +7 -0
- package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.d.ts +2 -0
- package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.d.ts.map +1 -1
- package/src/shade/renderer/scene/GPUInstancesAccelerationStructure.js +5 -0
- package/src/shade/renderer/scene/GPUSceneContext.d.ts +4 -0
- package/src/shade/renderer/scene/GPUSceneContext.d.ts.map +1 -1
- package/src/shade/renderer/scene/GPUSceneContext.js +15 -0
- package/src/shade/renderer/scene/InstanceBatch.d.ts +11 -3
- package/src/shade/renderer/scene/InstanceBatch.d.ts.map +1 -1
- package/src/shade/renderer/scene/InstanceBatch.js +6 -0
- package/src/shade/renderer/scene/Mesh.d.ts +8 -2
- package/src/shade/renderer/scene/Mesh.d.ts.map +1 -1
- package/src/shade/renderer/scene/Mesh.js +6 -1
- package/src/shade/renderer/scene/SceneManager.d.ts +6 -0
- package/src/shade/renderer/scene/SceneManager.d.ts.map +1 -1
- package/src/shade/renderer/scene/SceneManager.js +5 -0
- package/src/shade/renderer/scene/SkinnedMesh.d.ts +4 -0
- package/src/shade/renderer/scene/SkinnedMesh.d.ts.map +1 -1
- package/src/shade/renderer/scene/SkinnedMesh.js +4 -0
- package/src/shade/renderer/scene/serialization/serialize_scene.d.ts +7 -3
- package/src/shade/renderer/scene/serialization/serialize_scene.d.ts.map +1 -1
- package/src/shade/renderer/scene/serialization/serialize_scene.js +3 -2
- package/src/shade/renderer/shader/ComputeShader.d.ts +64 -29
- package/src/shade/renderer/shader/ComputeShader.d.ts.map +1 -1
- package/src/shade/renderer/shader/ComputeShader.js +29 -23
- package/src/shade/renderer/shader/ImageShader.d.ts +9 -4
- package/src/shade/renderer/shader/ImageShader.d.ts.map +1 -1
- package/src/shade/renderer/shader/ImageShader.js +4 -3
- package/src/shade/renderer/shader/ShaderDescriptor.d.ts +10 -4
- package/src/shade/renderer/shader/ShaderDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/ShaderDescriptor.js +4 -3
- package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.d.ts +7 -3
- package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.d.ts.map +1 -1
- package/src/shade/renderer/shader/chunk/brdf/dfg/generate_dfg_texture.js +6 -4
- package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.d.ts +13 -6
- package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/fullscreen/create_full_quad_pipeline_descriptor.js +6 -5
- package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.d.ts +13 -6
- package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.d.ts.map +1 -1
- package/src/shade/renderer/shader/graph/compute/graph_compute_indirect_pass.js +6 -5
- package/src/shade/renderer/shader/graph/compute/graph_compute_pass.d.ts +13 -6
- package/src/shade/renderer/shader/graph/compute/graph_compute_pass.d.ts.map +1 -1
- package/src/shade/renderer/shader/graph/compute/graph_compute_pass.js +6 -5
- package/src/shade/renderer/shader/graph/graph_image_pass.d.ts +27 -13
- package/src/shade/renderer/shader/graph/graph_image_pass.d.ts.map +1 -1
- package/src/shade/renderer/shader/graph/graph_image_pass.js +13 -12
- package/src/shade/renderer/shader/graph/graph_import_raw_buffer.d.ts +15 -7
- package/src/shade/renderer/shader/graph/graph_import_raw_buffer.d.ts.map +1 -1
- package/src/shade/renderer/shader/graph/graph_import_raw_buffer.js +7 -6
- package/src/shade/renderer/shader/graph/graph_import_typed_buffer.d.ts +13 -6
- package/src/shade/renderer/shader/graph/graph_import_typed_buffer.d.ts.map +1 -1
- package/src/shade/renderer/shader/graph/graph_import_typed_buffer.js +6 -5
- package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.d.ts +7 -3
- package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/pass/RenderPassColorAttachmentDescriptor.js +3 -2
- package/src/shade/renderer/shader/pass/RenderPassDescriptor.d.ts +49 -23
- package/src/shade/renderer/shader/pass/RenderPassDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/pass/RenderPassDescriptor.js +23 -20
- package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.d.ts +6 -0
- package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/resource/ShaderResourceDescriptor.js +9 -0
- package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.d.ts +11 -2
- package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/resource/ShaderResourceGroupDescriptor.js +7 -1
- package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts +10 -3
- package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.d.ts.map +1 -1
- package/src/shade/renderer/shader/resource/ShaderResourceSetDescriptor.js +9 -2
- package/src/shade/renderer/shader/type/WGSLAttribute.d.ts +2 -2
- package/src/shade/renderer/shader/type/WGSLAttribute.d.ts.map +1 -1
- package/src/shade/renderer/shader/type/WGSLAttribute.js +1 -1
- package/src/shade/renderer/shader/type/WGSLStructField.d.ts +6 -2
- package/src/shade/renderer/shader/type/WGSLStructField.d.ts.map +1 -1
- package/src/shade/renderer/shader/type/WGSLStructField.js +5 -1
- package/src/shade/renderer/shader/type/WebGPUArray.d.ts +0 -2
- package/src/shade/renderer/shader/type/WebGPUArray.d.ts.map +1 -1
- package/src/shade/renderer/shader/type/WebGPUStruct.d.ts +2 -4
- package/src/shade/renderer/shader/type/WebGPUStruct.d.ts.map +1 -1
- package/src/shade/renderer/shader/type/WebGPUStruct.js +1 -1
- package/src/shade/renderer/shader/type/WebGPUType.d.ts +5 -1
- package/src/shade/renderer/shader/type/WebGPUType.d.ts.map +1 -1
- package/src/shade/renderer/shader/type/WebGPUType.js +4 -0
- package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.d.ts +7 -3
- package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.d.ts.map +1 -1
- package/src/shade/renderer/shadow/evsm/graph_evsm_render_cascade.js +3 -2
- package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.d.ts +7 -0
- package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.d.ts.map +1 -1
- package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.js +10 -0
- package/src/shade/renderer/shadow/map/Shadowmap.d.ts +12 -0
- package/src/shade/renderer/shadow/map/Shadowmap.d.ts.map +1 -1
- package/src/shade/renderer/shadow/map/Shadowmap.js +8 -0
- package/src/shade/renderer/shadow/map/SpotLightShadowmap.d.ts +2 -2
- package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.d.ts +7 -3
- package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.d.ts.map +1 -1
- package/src/shade/renderer/shadow/map/csm/graph_csm_setup_cascades.js +3 -2
- package/src/shade/renderer/shadow/map/csm_debug_draw_preview.d.ts +11 -5
- package/src/shade/renderer/shadow/map/csm_debug_draw_preview.d.ts.map +1 -1
- package/src/shade/renderer/shadow/map/csm_debug_draw_preview.js +5 -4
- package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.d.ts +13 -6
- package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.d.ts.map +1 -1
- package/src/shade/renderer/shadow/ray/staged/gen/graph_gen_rays.js +6 -5
- package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.d.ts +9 -4
- package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.d.ts.map +1 -1
- package/src/shade/renderer/shadow/ray/staged/trace/graph_trace_rays.js +4 -3
- package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.d.ts +11 -5
- package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.d.ts.map +1 -1
- package/src/shade/renderer/shadow/sdf/brixelizer/Brixelizer.js +5 -4
- package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.d.ts +1 -0
- package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.d.ts.map +1 -1
- package/src/shade/renderer/shadow/sdf/cascade/CascadedSceneSDF.js +4 -0
- package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.d.ts +13 -6
- package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.d.ts.map +1 -1
- package/src/shade/renderer/shadow/sdf/graph_draw_sdf_shadows.js +6 -5
- package/src/shade/renderer/texture/GPUTextureAllocator.d.ts +4 -0
- package/src/shade/renderer/texture/GPUTextureAllocator.d.ts.map +1 -1
- package/src/shade/renderer/texture/GPUTextureAllocator.js +4 -0
- package/src/shade/renderer/texture/GPUTextureContext.d.ts +1 -0
- package/src/shade/renderer/texture/GPUTextureContext.d.ts.map +1 -1
- package/src/shade/renderer/texture/GPUTextureContext.js +4 -0
- package/src/shade/renderer/texture/RenderTarget.d.ts +7 -3
- package/src/shade/renderer/texture/RenderTarget.d.ts.map +1 -1
- package/src/shade/renderer/texture/RenderTarget.js +3 -2
- package/src/shade/renderer/texture/ShadeTexture.d.ts +2 -1
- package/src/shade/renderer/texture/ShadeTexture.d.ts.map +1 -1
- package/src/shade/renderer/texture/ShadeTexture.js +4 -0
- package/src/shade/renderer/texture/TextureManager.d.ts +1 -0
- package/src/shade/renderer/texture/TextureManager.d.ts.map +1 -1
- package/src/shade/renderer/texture/TextureManager.js +4 -0
- package/src/shade/renderer/texture/debug_draw_texture.d.ts +9 -4
- package/src/shade/renderer/texture/debug_draw_texture.d.ts.map +1 -1
- package/src/shade/renderer/texture/debug_draw_texture.js +4 -3
- package/src/shade/renderer/texture/download_texture_data.d.ts +17 -6
- package/src/shade/renderer/texture/download_texture_data.d.ts.map +1 -1
- package/src/shade/renderer/texture/download_texture_data.js +10 -5
- package/src/shade/renderer/texture/draw_texture_as_rgba.d.ts +26 -12
- package/src/shade/renderer/texture/draw_texture_as_rgba.d.ts.map +1 -1
- package/src/shade/renderer/texture/draw_texture_as_rgba.js +12 -10
- package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.d.ts.map +1 -1
- package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.js +5 -4
- package/src/shade/renderer/texture/source/ShadeImage.d.ts +4 -2
- package/src/shade/renderer/texture/source/ShadeImage.d.ts.map +1 -1
- package/src/shade/renderer/texture/source/ShadeImage.js +5 -0
- package/src/shade/renderer/texture/source/ShadeImageSerializationAdapter.d.ts +12 -0
- package/src/shade/renderer/texture/source/ShadeImageSerializationAdapter.d.ts.map +1 -1
- package/src/shade/renderer/texture/util/make_checkers_texture.d.ts +12 -5
- package/src/shade/renderer/texture/util/make_checkers_texture.d.ts.map +1 -1
- package/src/shade/renderer/texture/util/make_checkers_texture.js +5 -4
- package/src/shade/renderer/texture/virtual/VirtualTextureManager.d.ts +7 -2
- package/src/shade/renderer/texture/virtual/VirtualTextureManager.d.ts.map +1 -1
- package/src/shade/renderer/texture/virtual/VirtualTextureManager.js +8 -0
- package/src/shade/renderer/util/Uint32BufferSamplingStats.d.ts +2 -0
- package/src/shade/renderer/util/Uint32BufferSamplingStats.d.ts.map +1 -1
- package/src/shade/renderer/util/Uint32BufferSamplingStats.js +5 -0
- package/src/shade/renderer/view/GPUViewContext.d.ts +4 -1
- package/src/shade/renderer/view/GPUViewContext.d.ts.map +1 -1
- package/src/shade/renderer/view/GPUViewContext.js +11 -5
- package/src/shade/renderer/view/View.d.ts +6 -0
- package/src/shade/renderer/view/View.d.ts.map +1 -1
- package/src/shade/renderer/view/View.js +5 -0
- package/src/shade/renderer/view/ViewManager.d.ts +11 -1
- package/src/shade/renderer/view/ViewManager.d.ts.map +1 -1
- package/src/shade/renderer/view/ViewManager.js +7 -0
- package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.d.ts +6 -0
- package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.d.ts.map +1 -1
- package/src/shade/renderer/volumetrics/GPUSceneVolumetrics.js +5 -0
- package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts +15 -6
- package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts.map +1 -1
- package/src/shade/renderer/volumetrics/GPUViewVolumetrics.js +11 -5
- package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts +5 -5
- package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.d.ts.map +1 -1
- package/src/shade/renderer/volumetrics/ParticipatingMediaVolume.js +1 -1
- package/src/shade/renderer/volumetrics/SceneVolumetrics.d.ts +4 -0
- package/src/shade/renderer/volumetrics/SceneVolumetrics.d.ts.map +1 -1
- package/src/shade/renderer/volumetrics/SceneVolumetrics.js +4 -0
- package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.d.ts +23 -11
- package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.d.ts.map +1 -1
- package/src/shade/renderer/volumetrics/build_volumetrics_sun_shadow_transform.js +11 -10
- package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts +37 -18
- package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts.map +1 -1
- package/src/shade/renderer/volumetrics/graph_build_volumetrics.js +30 -26
- package/src/view/View.d.ts +8 -3
- package/src/view/View.d.ts.map +1 -1
- package/src/view/View.js +7 -2
- package/src/view/asset/AssetLoaderStatusView.d.ts +7 -3
- package/src/view/asset/AssetLoaderStatusView.d.ts.map +1 -1
- package/src/view/asset/AssetLoaderStatusView.js +3 -2
- package/src/view/common/ListView.d.ts +21 -15
- package/src/view/common/ListView.d.ts.map +1 -1
- package/src/view/common/ListView.js +8 -7
- package/src/view/common/LocalizedLabelView.d.ts +15 -7
- package/src/view/common/LocalizedLabelView.d.ts.map +1 -1
- package/src/view/common/LocalizedLabelView.js +7 -6
- package/src/view/common/TabbedView.d.ts +14 -6
- package/src/view/common/TabbedView.d.ts.map +1 -1
- package/src/view/common/TabbedView.js +6 -4
- package/src/view/controller/controls/BooleanVector3Control.d.ts +1 -1
- package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
- package/src/view/controller/controls/GuiControl.d.ts +1 -1
- package/src/view/controller/controls/GuiControl.d.ts.map +1 -1
- package/src/view/controller/controls/NativeListController.d.ts +15 -7
- package/src/view/controller/controls/NativeListController.d.ts.map +1 -1
- package/src/view/controller/controls/NativeListController.js +7 -6
- package/src/view/controller/controls/Vector1Control.d.ts +1 -1
- package/src/view/controller/controls/Vector1Control.d.ts.map +1 -1
- package/src/view/currency/CompositeCurrencyLabelView.d.ts +10 -5
- package/src/view/currency/CompositeCurrencyLabelView.d.ts.map +1 -1
- package/src/view/currency/CompositeCurrencyLabelView.js +4 -3
- package/src/view/currency/CurrencyDenominationLabelView.d.ts +7 -3
- package/src/view/currency/CurrencyDenominationLabelView.d.ts.map +1 -1
- package/src/view/currency/CurrencyDenominationLabelView.js +3 -2
- package/src/view/elements/CheckboxView.d.ts +7 -3
- package/src/view/elements/CheckboxView.d.ts.map +1 -1
- package/src/view/elements/CheckboxView.js +3 -2
- package/src/view/elements/DropDownSelectionView.d.ts +9 -4
- package/src/view/elements/DropDownSelectionView.d.ts.map +1 -1
- package/src/view/elements/DropDownSelectionView.js +3 -2
- package/src/view/elements/EmptyView.d.ts +29 -13
- package/src/view/elements/EmptyView.d.ts.map +1 -1
- package/src/view/elements/EmptyView.js +13 -11
- package/src/view/elements/SimpleWindow.d.ts +1 -1
- package/src/view/elements/SimpleWindow.d.ts.map +1 -1
- package/src/view/elements/button/ButtonView.d.ts +15 -7
- package/src/view/elements/button/ButtonView.d.ts.map +1 -1
- package/src/view/elements/button/ButtonView.js +7 -6
- package/src/view/elements/image/ImageView.d.ts +7 -3
- package/src/view/elements/image/ImageView.d.ts.map +1 -1
- package/src/view/elements/image/ImageView.js +3 -2
- package/src/view/elements/image/SvgImageView.d.ts +5 -2
- package/src/view/elements/image/SvgImageView.d.ts.map +1 -1
- package/src/view/elements/image/SvgImageView.js +2 -1
- package/src/view/elements/label/LabeledValueView.d.ts +14 -7
- package/src/view/elements/label/LabeledValueView.d.ts.map +1 -1
- package/src/view/elements/label/LabeledValueView.js +6 -5
- package/src/view/elements/progress/SmoothProgressBar.d.ts +14 -7
- package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -1
- package/src/view/elements/progress/SmoothProgressBar.js +6 -5
- package/src/view/elements/progress/segmented/SegmentedResourceBarView.d.ts +9 -4
- package/src/view/elements/progress/segmented/SegmentedResourceBarView.d.ts.map +1 -1
- package/src/view/elements/progress/segmented/SegmentedResourceBarView.js +4 -3
- package/src/view/elements/radial/RadialMenu.d.ts +19 -9
- package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
- package/src/view/elements/radial/RadialMenu.js +9 -8
- package/src/view/elements/radial/RadialMenuElementDefinition.d.ts +63 -31
- package/src/view/elements/radial/RadialMenuElementDefinition.d.ts.map +1 -1
- package/src/view/elements/radial/RadialMenuElementDefinition.js +30 -28
- package/src/view/elements/radial/RadialProgressView.d.ts +1 -1
- package/src/view/elements/radial/RadialProgressView.d.ts.map +1 -1
- package/src/view/elements/radial/RadialText.d.ts +18 -10
- package/src/view/elements/radial/RadialText.d.ts.map +1 -1
- package/src/view/elements/radial/RadialText.js +7 -6
- package/src/view/elements/tiles2d/Tile.d.ts +12 -6
- package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
- package/src/view/elements/tiles2d/Tile.js +4 -3
- package/src/view/elements/tiles2d/TileGrid.d.ts +23 -10
- package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
- package/src/view/elements/tiles2d/TileGrid.js +10 -9
- package/src/view/elements/video/VideoView.d.ts +7 -3
- package/src/view/elements/video/VideoView.d.ts.map +1 -1
- package/src/view/elements/video/VideoView.js +3 -2
- package/src/view/game/achievements/AchievementNotificationView.d.ts +7 -3
- package/src/view/game/achievements/AchievementNotificationView.d.ts.map +1 -1
- package/src/view/game/achievements/AchievementNotificationView.js +3 -2
- package/src/view/graphics/GraphicsContextFailureView.d.ts +11 -5
- package/src/view/graphics/GraphicsContextFailureView.d.ts.map +1 -1
- package/src/view/graphics/GraphicsContextFailureView.js +5 -4
- package/src/view/interaction/InteractionCommand.d.ts +11 -5
- package/src/view/interaction/InteractionCommand.d.ts.map +1 -1
- package/src/view/interaction/InteractionCommand.js +5 -4
- package/src/view/interaction/InterfaceCommand.d.ts +32 -15
- package/src/view/interaction/InterfaceCommand.d.ts.map +1 -1
- package/src/view/interaction/InterfaceCommand.js +15 -13
- package/src/view/interaction/createInterfaceCommandButton.d.ts +9 -4
- package/src/view/interaction/createInterfaceCommandButton.d.ts.map +1 -1
- package/src/view/interaction/createInterfaceCommandButton.js +4 -3
- package/src/view/layout/DockPanel.d.ts +11 -5
- package/src/view/layout/DockPanel.d.ts.map +1 -1
- package/src/view/layout/DockPanel.js +5 -4
- package/src/view/layout/DrawerView.d.ts +7 -3
- package/src/view/layout/DrawerView.d.ts.map +1 -1
- package/src/view/layout/DrawerView.js +3 -2
- package/src/view/layout/FloatingPanelView.d.ts +7 -3
- package/src/view/layout/FloatingPanelView.d.ts.map +1 -1
- package/src/view/layout/FloatingPanelView.js +3 -2
- package/src/view/layout/SplitView.d.ts +11 -5
- package/src/view/layout/SplitView.d.ts.map +1 -1
- package/src/view/layout/SplitView.js +5 -4
- package/src/view/math/FunctionGraphView.d.ts +8 -4
- package/src/view/math/FunctionGraphView.d.ts.map +1 -1
- package/src/view/math/FunctionGraphView.js +3 -2
- package/src/view/minimap/MinimapCanvasView.d.ts +10 -4
- package/src/view/minimap/MinimapCanvasView.d.ts.map +1 -1
- package/src/view/minimap/MinimapCanvasView.js +4 -3
- package/src/view/minimap/dom/MinimapCameraView.d.ts +2 -1
- package/src/view/minimap/dom/MinimapCameraView.d.ts.map +1 -1
- package/src/view/minimap/dom/MinimapMarkerView.d.ts +31 -9
- package/src/view/minimap/dom/MinimapMarkerView.d.ts.map +1 -1
- package/src/view/minimap/dom/MinimapTerrainView.d.ts +9 -4
- package/src/view/minimap/dom/MinimapTerrainView.d.ts.map +1 -1
- package/src/view/minimap/dom/MinimapTerrainView.js +3 -2
- package/src/view/task/TaskProgressView.d.ts +7 -3
- package/src/view/task/TaskProgressView.d.ts.map +1 -1
- package/src/view/task/TaskProgressView.js +3 -2
- package/src/view/tooltip/DomTooltipManager.d.ts +6 -0
- package/src/view/tooltip/DomTooltipManager.d.ts.map +1 -1
- package/src/view/tooltip/DomTooltipManager.js +5 -0
- package/src/view/tooltip/DomTooltipObserver.d.ts +4 -0
- package/src/view/tooltip/DomTooltipObserver.d.ts.map +1 -1
- package/src/view/tooltip/DomTooltipObserver.js +4 -0
- package/src/view/tooltip/TooltipManager.d.ts +6 -0
- package/src/view/tooltip/TooltipManager.d.ts.map +1 -1
- package/src/view/tooltip/TooltipManager.js +5 -0
- package/src/view/tooltip/TooltipView.d.ts +7 -3
- package/src/view/tooltip/TooltipView.d.ts.map +1 -1
- package/src/view/tooltip/TooltipView.js +5 -1
- package/src/view/tooltip/VisualTip.d.ts +6 -0
- package/src/view/tooltip/VisualTip.d.ts.map +1 -1
- package/src/view/tooltip/VisualTip.js +5 -0
- package/src/view/tooltip/gml/GMLEngine.d.ts +14 -2
- package/src/view/tooltip/gml/GMLEngine.d.ts.map +1 -1
- package/src/view/tooltip/gml/GMLEngine.js +8 -0
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts +10 -0
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts.map +1 -1
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.js +7 -0
- package/src/view/util/DomSizeObserver.d.ts +9 -2
- package/src/view/util/DomSizeObserver.d.ts.map +1 -1
- package/src/view/util/DomSizeObserver.js +6 -1
- package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.d.ts +0 -395
- package/src/shade/renderer/geometry/virtual/format/prototypeVGEOFormatViewer.d.ts.map +0 -1
- package/src/shade/renderer/particles/ParticleRenderMode.d.ts +0 -19
- package/src/shade/renderer/particles/ParticleRenderMode.d.ts.map +0 -1
- package/src/shade/renderer/particles/ParticleRenderMode.js +0 -33
- package/src/shade/renderer/particles/graph_particles_billboard.d.ts +0 -37
- package/src/shade/renderer/particles/graph_particles_billboard.d.ts.map +0 -1
- package/src/shade/renderer/particles/graph_particles_billboard.js +0 -93
- package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts +0 -55
- package/src/shade/renderer/particles/sort/graph_particle_sort.d.ts.map +0 -1
- package/src/shade/renderer/particles/sort/graph_particle_sort.js +0 -130
- package/src/shade/renderer/particles/sort/particle_counting_sort.d.ts +0 -26
- package/src/shade/renderer/particles/sort/particle_counting_sort.d.ts.map +0 -1
- package/src/shade/renderer/particles/sort/particle_counting_sort.js +0 -51
- package/src/shade/renderer/particles/sort/shader_particle_sort.d.ts +0 -14
- package/src/shade/renderer/particles/sort/shader_particle_sort.d.ts.map +0 -1
- package/src/shade/renderer/particles/sort/shader_particle_sort.js +0 -223
|
@@ -0,0 +1,645 @@
|
|
|
1
|
+
import { assert } from "../../../../core/assert.js";
|
|
2
|
+
import { quat3_multiply } from "../../../../core/geom/3d/quaternion/quat3_multiply.js";
|
|
3
|
+
import { v3_quaternion_apply } from "../../../../core/geom/vec3/v3_quaternion_apply.js";
|
|
4
|
+
import { TransformAttachment } from "../../../ecs/transform-attachment/TransformAttachment.js";
|
|
5
|
+
import {
|
|
6
|
+
TRANSFORM64_ROTATION_OFFSET,
|
|
7
|
+
TRANSFORM64_TRANSLATION_OFFSET,
|
|
8
|
+
Transform64
|
|
9
|
+
} from "../../../ecs/transform/Transform64.js";
|
|
10
|
+
import { ClothState } from "../solver/ClothState.js";
|
|
11
|
+
import { Cloth } from "./Cloth.js";
|
|
12
|
+
import { ClothDynamicsFlags } from "./ClothDynamicsFlags.js";
|
|
13
|
+
import { ClothExclude } from "./ClothExclude.js";
|
|
14
|
+
import { ClothInstance } from "./ClothInstance.js";
|
|
15
|
+
import { cloth_bend_ratio, cloth_strain_allowance } from "./cloth_dynamics_map.js";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* # Seeding a cloth from an entity subtree — §11.1
|
|
19
|
+
*
|
|
20
|
+
* One particle per entity in the transform subtree of the entity the
|
|
21
|
+
* {@link Cloth} is on, walked breadth-first through
|
|
22
|
+
* `TransformAttachmentSystem#findChildrenOf`, stopping at a nested `Cloth` or a
|
|
23
|
+
* {@link ClothExclude}. Stretch rows along the parent-child links, a bending
|
|
24
|
+
* model along each chain, and the anchor itself as the fixed set — so `d_geo`
|
|
25
|
+
* is distance along the chain from the anchor and every derived quantity in
|
|
26
|
+
* §3.4 works unchanged.
|
|
27
|
+
*
|
|
28
|
+
* ## What "bend rows along each chain" turned out to mean
|
|
29
|
+
*
|
|
30
|
+
* §11.1 asks for bend rows and the row model has one — the quadratic hinge of
|
|
31
|
+
* §6, four particles across the diamond either side of a shared edge. **A chain
|
|
32
|
+
* has no diamond.** `bt_edge_read_diamond` declines a wire edge for exactly
|
|
33
|
+
* that reason, and it is right to: the stencil is a discrete mean curvature over
|
|
34
|
+
* a surface and a rope is not one.
|
|
35
|
+
*
|
|
36
|
+
* The bending model here is instead a **skip row** — an ordinary stretch row
|
|
37
|
+
* between a node and its grandparent, at whatever distance the authored pose
|
|
38
|
+
* puts them. It is §6's own doctrine applied once more ("one row model,
|
|
39
|
+
* parameterised by mode"), it costs no new row kind, and it has the two
|
|
40
|
+
* properties §6 wanted from quadratic bending: there is no normal, no angle and
|
|
41
|
+
* no sign, so nothing degenerates at 0° or 180°, and a fold is high energy
|
|
42
|
+
* rather than a singular configuration. It also does something the quadratic
|
|
43
|
+
* stencil explicitly cannot (§18): because its rest length is read from the
|
|
44
|
+
* authored pose rather than assumed flat, **it holds a curved rest shape**.
|
|
45
|
+
*
|
|
46
|
+
* The row is soft, so its stiffness has to stay inside the dissipative band
|
|
47
|
+
* M0 measured; `cloth_dynamics_map.js` is where that is arranged and why.
|
|
48
|
+
*
|
|
49
|
+
* ## Mass is uniform, and the answer does not depend on it
|
|
50
|
+
*
|
|
51
|
+
* {@link ClothDynamics} carries no mass or density, and it does not need to.
|
|
52
|
+
* Every row scale in this system is a **ratio** of the row's own `m/h²` — the
|
|
53
|
+
* hard rows through the penalty band (`MEASUREMENTS.md` §4 held a chain at a
|
|
54
|
+
* fixed ratio across five decades of particle mass and got the same residual
|
|
55
|
+
* column every time), the soft ones through `cloth_bend_ratio` — and gravity is
|
|
56
|
+
* an acceleration. So the constant below is arbitrary in the strict sense that
|
|
57
|
+
* changing it changes no trajectory, and what matters about it is only that it
|
|
58
|
+
* is the same for every particle.
|
|
59
|
+
*
|
|
60
|
+
* @author Alex Goldring
|
|
61
|
+
* @copyright Company Named Limited (c) 2026
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Mass of one particle, kg. Arbitrary and uniform — see the module docblock for
|
|
66
|
+
* why "arbitrary" is a statement about the solver rather than a shrug.
|
|
67
|
+
* @type {number}
|
|
68
|
+
*/
|
|
69
|
+
export const CLOTH_PARTICLE_MASS = 0.02;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Slack radius at `ClothDynamics#slack = 1`, as a multiple of `d_geo`.
|
|
73
|
+
*
|
|
74
|
+
* It is **2**, and that is a derivation rather than a taste. The tether row
|
|
75
|
+
* already holds every particle within `d_geo` of the anchor, and the animated
|
|
76
|
+
* position it is leashed to is itself within `d_geo` of the anchor — a chord is
|
|
77
|
+
* never longer than the arc it subtends. By the triangle inequality the two can
|
|
78
|
+
* therefore never be more than `2·d_geo` apart, so a slack radius of `2·d_geo`
|
|
79
|
+
* is **provably inactive** and `slack = 1` means exactly "no leash" with no
|
|
80
|
+
* sentinel value and no discontinuity to code around.
|
|
81
|
+
*
|
|
82
|
+
* §3.4 writes `r_i = slack · d_geo,i`, which makes `slack = 1` a real and
|
|
83
|
+
* fairly tight constraint instead: a rope hanging straight down cannot swing
|
|
84
|
+
* through 90°, because its tip would move `√2·d_geo` to get there. That is a
|
|
85
|
+
* bound nobody asked for at the setting that is supposed to ask for none.
|
|
86
|
+
* @type {number}
|
|
87
|
+
*/
|
|
88
|
+
export const CLOTH_SLACK_REACH = 2;
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Walk the subtree and build everything {@link ClothSystem} needs to step it.
|
|
92
|
+
*
|
|
93
|
+
* @param {ClothInstance} instance seeded in place
|
|
94
|
+
* @param {EntityComponentDataset} ecd
|
|
95
|
+
* @param {TransformAttachmentSystem} attachments
|
|
96
|
+
* @param {number} dt fixed step, seconds — the bend row's scale is a ratio of
|
|
97
|
+
* `m/dt²`, so the step length is part of the rest data
|
|
98
|
+
* @returns {void}
|
|
99
|
+
*/
|
|
100
|
+
export function cloth_seed_subtree(instance, ecd, attachments, dt) {
|
|
101
|
+
const remembered = remember_rest_pose(instance);
|
|
102
|
+
|
|
103
|
+
const anchor = instance.entity;
|
|
104
|
+
|
|
105
|
+
const node_entity = [anchor];
|
|
106
|
+
const node_parent = [-1];
|
|
107
|
+
|
|
108
|
+
const pruned_entity = [];
|
|
109
|
+
const pruned_parent = [];
|
|
110
|
+
|
|
111
|
+
const scratch = [];
|
|
112
|
+
|
|
113
|
+
// Breadth-first, so a node's parent is always already numbered and the
|
|
114
|
+
// write-back can walk forwards.
|
|
115
|
+
for (let node = 0; node < node_entity.length; node++) {
|
|
116
|
+
const entity = node_entity[node];
|
|
117
|
+
|
|
118
|
+
const child_count = attachments.countChildrenOf(entity);
|
|
119
|
+
|
|
120
|
+
if (child_count === 0) {
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
scratch.length = child_count;
|
|
125
|
+
|
|
126
|
+
attachments.findChildrenOf(scratch, 0, entity);
|
|
127
|
+
|
|
128
|
+
for (let i = 0; i < child_count; i++) {
|
|
129
|
+
const child = scratch[i];
|
|
130
|
+
|
|
131
|
+
const excluded = ecd.getComponent(child, ClothExclude) !== undefined
|
|
132
|
+
|| ecd.getComponent(child, Cloth) !== undefined;
|
|
133
|
+
|
|
134
|
+
if (excluded) {
|
|
135
|
+
pruned_entity.push(child);
|
|
136
|
+
pruned_parent.push(node);
|
|
137
|
+
|
|
138
|
+
continue;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
if (ecd.getComponent(child, Transform64) === undefined) {
|
|
142
|
+
// Not in the transform hierarchy in any usable sense. Its own
|
|
143
|
+
// children are unreachable too, so it is a prune rather than a
|
|
144
|
+
// skip — and it is not posed by the write-back either, because
|
|
145
|
+
// there is nothing to pose.
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
node_entity.push(child);
|
|
150
|
+
node_parent.push(node);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
const node_count = node_entity.length;
|
|
155
|
+
|
|
156
|
+
instance.node_count = node_count;
|
|
157
|
+
instance.node_entity = Int32Array.from(node_entity);
|
|
158
|
+
instance.node_parent = Int32Array.from(node_parent);
|
|
159
|
+
|
|
160
|
+
instance.pruned_count = pruned_entity.length;
|
|
161
|
+
instance.pruned_entity = Int32Array.from(pruned_entity);
|
|
162
|
+
instance.pruned_parent = Int32Array.from(pruned_parent);
|
|
163
|
+
|
|
164
|
+
instance.pruned_transform = new Array(instance.pruned_count);
|
|
165
|
+
instance.pruned_attachment = new Array(instance.pruned_count);
|
|
166
|
+
|
|
167
|
+
for (let i = 0; i < instance.pruned_count; i++) {
|
|
168
|
+
const entity = instance.pruned_entity[i];
|
|
169
|
+
|
|
170
|
+
instance.pruned_transform[i] = ecd.getComponent(entity, Transform64);
|
|
171
|
+
instance.pruned_attachment[i] = ecd.getComponent(entity, TransformAttachment);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
instance.node_transform = new Array(node_count);
|
|
175
|
+
instance.node_attachment = new Array(node_count);
|
|
176
|
+
|
|
177
|
+
for (let node = 0; node < node_count; node++) {
|
|
178
|
+
const entity = instance.node_entity[node];
|
|
179
|
+
|
|
180
|
+
const transform = ecd.getComponent(entity, Transform64);
|
|
181
|
+
|
|
182
|
+
assert.defined(transform, `Transform64 of cloth node ${node} (entity ${entity})`);
|
|
183
|
+
|
|
184
|
+
instance.node_transform[node] = transform;
|
|
185
|
+
instance.node_attachment[node] = node === 0
|
|
186
|
+
? null
|
|
187
|
+
: ecd.getComponent(entity, TransformAttachment);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
build_children(instance);
|
|
191
|
+
read_rest_pose(instance, remembered);
|
|
192
|
+
|
|
193
|
+
instance.dynamics_seen.copy(instance.cloth.dynamics);
|
|
194
|
+
|
|
195
|
+
build_state(instance, dt);
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* CSR children per node, from the parent array.
|
|
200
|
+
* @param {ClothInstance} instance
|
|
201
|
+
* @private
|
|
202
|
+
*/
|
|
203
|
+
function build_children(instance) {
|
|
204
|
+
const node_count = instance.node_count;
|
|
205
|
+
const parent = instance.node_parent;
|
|
206
|
+
|
|
207
|
+
const offset = new Int32Array(node_count + 1);
|
|
208
|
+
|
|
209
|
+
for (let node = 1; node < node_count; node++) {
|
|
210
|
+
offset[parent[node] + 1]++;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
for (let node = 0; node < node_count; node++) {
|
|
214
|
+
offset[node + 1] += offset[node];
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
const child = new Int32Array(node_count > 0 ? node_count - 1 : 0);
|
|
218
|
+
const cursor = offset.slice(0, node_count);
|
|
219
|
+
|
|
220
|
+
for (let node = 1; node < node_count; node++) {
|
|
221
|
+
child[cursor[parent[node]]++] = node;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
instance.node_child_offset = offset;
|
|
225
|
+
instance.node_child = child;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* Capture the authored pose, and compose it into the anchor's frame.
|
|
230
|
+
*
|
|
231
|
+
* The **local** transforms are the source, not the world ones. That is not a
|
|
232
|
+
* preference: the write-back takes ownership of `TransformAttachment#transform`
|
|
233
|
+
* (§11.1), so this is the one moment the authored pose is still readable, and
|
|
234
|
+
* reading the world transforms instead would give the same answer now and the
|
|
235
|
+
* *simulated* pose on any later re-seed.
|
|
236
|
+
*
|
|
237
|
+
* `remembered` carries a previous seeding's capture across a re-seed, keyed by
|
|
238
|
+
* entity, so a structural change to a live cloth keeps the authored pose of
|
|
239
|
+
* every node that was already in it.
|
|
240
|
+
*
|
|
241
|
+
* The composed result is constant — the subtree's authored pose is rigid
|
|
242
|
+
* relative to its anchor, so in the anchor's own frame it does not move — which
|
|
243
|
+
* is why nothing recomposes it per step.
|
|
244
|
+
*
|
|
245
|
+
* @param {ClothInstance} instance
|
|
246
|
+
* @param {Map<number, {position: number[], rotation: number[]}>} remembered
|
|
247
|
+
* @private
|
|
248
|
+
*/
|
|
249
|
+
function read_rest_pose(instance, remembered) {
|
|
250
|
+
const node_count = instance.node_count;
|
|
251
|
+
|
|
252
|
+
const local_position = new Float32Array(node_count * 3);
|
|
253
|
+
const local_rotation = new Float32Array(node_count * 4);
|
|
254
|
+
|
|
255
|
+
const position = new Float32Array(node_count * 3);
|
|
256
|
+
const rotation = new Float32Array(node_count * 4);
|
|
257
|
+
|
|
258
|
+
// The anchor is the origin of the frame it anchors: no offset, no rotation.
|
|
259
|
+
local_rotation[3] = 1;
|
|
260
|
+
rotation[3] = 1;
|
|
261
|
+
|
|
262
|
+
const parent = instance.node_parent;
|
|
263
|
+
|
|
264
|
+
for (let node = 1; node < node_count; node++) {
|
|
265
|
+
const captured = remembered.get(instance.node_entity[node]);
|
|
266
|
+
|
|
267
|
+
if (captured !== undefined) {
|
|
268
|
+
local_position[node * 3] = captured.position[0];
|
|
269
|
+
local_position[node * 3 + 1] = captured.position[1];
|
|
270
|
+
local_position[node * 3 + 2] = captured.position[2];
|
|
271
|
+
|
|
272
|
+
local_rotation[node * 4] = captured.rotation[0];
|
|
273
|
+
local_rotation[node * 4 + 1] = captured.rotation[1];
|
|
274
|
+
local_rotation[node * 4 + 2] = captured.rotation[2];
|
|
275
|
+
local_rotation[node * 4 + 3] = captured.rotation[3];
|
|
276
|
+
} else {
|
|
277
|
+
const attachment = instance.node_attachment[node];
|
|
278
|
+
|
|
279
|
+
const local = attachment === undefined || attachment === null
|
|
280
|
+
? null
|
|
281
|
+
: attachment.transform;
|
|
282
|
+
|
|
283
|
+
if (local === null) {
|
|
284
|
+
// In the walk because something said it was a child, but with no
|
|
285
|
+
// local transform to compose. Its authored pose is its parent's,
|
|
286
|
+
// which is the only answer available and is at least inside the
|
|
287
|
+
// reachable set.
|
|
288
|
+
local_rotation[node * 4 + 3] = 1;
|
|
289
|
+
} else {
|
|
290
|
+
local_position[node * 3] = local[TRANSFORM64_TRANSLATION_OFFSET];
|
|
291
|
+
local_position[node * 3 + 1] = local[TRANSFORM64_TRANSLATION_OFFSET + 1];
|
|
292
|
+
local_position[node * 3 + 2] = local[TRANSFORM64_TRANSLATION_OFFSET + 2];
|
|
293
|
+
|
|
294
|
+
local_rotation[node * 4] = local[TRANSFORM64_ROTATION_OFFSET];
|
|
295
|
+
local_rotation[node * 4 + 1] = local[TRANSFORM64_ROTATION_OFFSET + 1];
|
|
296
|
+
local_rotation[node * 4 + 2] = local[TRANSFORM64_ROTATION_OFFSET + 2];
|
|
297
|
+
local_rotation[node * 4 + 3] = local[TRANSFORM64_ROTATION_OFFSET + 3];
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
// Compose down the walk. Breadth-first numbering means the parent is
|
|
302
|
+
// always already done, so one forward pass is the whole hierarchy.
|
|
303
|
+
const p = parent[node];
|
|
304
|
+
|
|
305
|
+
const pqx = rotation[p * 4];
|
|
306
|
+
const pqy = rotation[p * 4 + 1];
|
|
307
|
+
const pqz = rotation[p * 4 + 2];
|
|
308
|
+
const pqw = rotation[p * 4 + 3];
|
|
309
|
+
|
|
310
|
+
v3_quaternion_apply(
|
|
311
|
+
COMPOSE, 0,
|
|
312
|
+
local_position[node * 3], local_position[node * 3 + 1], local_position[node * 3 + 2],
|
|
313
|
+
pqx, pqy, pqz, pqw
|
|
314
|
+
);
|
|
315
|
+
|
|
316
|
+
position[node * 3] = position[p * 3] + COMPOSE[0];
|
|
317
|
+
position[node * 3 + 1] = position[p * 3 + 1] + COMPOSE[1];
|
|
318
|
+
position[node * 3 + 2] = position[p * 3 + 2] + COMPOSE[2];
|
|
319
|
+
|
|
320
|
+
quat3_multiply(
|
|
321
|
+
rotation, node * 4,
|
|
322
|
+
pqx, pqy, pqz, pqw,
|
|
323
|
+
local_rotation[node * 4], local_rotation[node * 4 + 1],
|
|
324
|
+
local_rotation[node * 4 + 2], local_rotation[node * 4 + 3]
|
|
325
|
+
);
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
instance.rest_local_position = local_position;
|
|
329
|
+
instance.rest_local_rotation = local_rotation;
|
|
330
|
+
|
|
331
|
+
instance.animated_position = position;
|
|
332
|
+
instance.animated_rotation = rotation;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
/**
|
|
336
|
+
* @type {Float64Array}
|
|
337
|
+
* @private
|
|
338
|
+
*/
|
|
339
|
+
const COMPOSE = new Float64Array(3);
|
|
340
|
+
|
|
341
|
+
/**
|
|
342
|
+
* The authored pose a previous seeding captured, keyed by entity, so a re-seed
|
|
343
|
+
* of a live cloth does not mistake the shape the solver left behind for the
|
|
344
|
+
* shape the author authored.
|
|
345
|
+
*
|
|
346
|
+
* @param {ClothInstance} instance
|
|
347
|
+
* @returns {Map<number, {position: number[], rotation: number[]}>}
|
|
348
|
+
* @private
|
|
349
|
+
*/
|
|
350
|
+
function remember_rest_pose(instance) {
|
|
351
|
+
const remembered = new Map();
|
|
352
|
+
|
|
353
|
+
if (!instance.seeded || instance.rest_local_position === null) {
|
|
354
|
+
return remembered;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
for (let node = 1; node < instance.node_count; node++) {
|
|
358
|
+
remembered.set(instance.node_entity[node], {
|
|
359
|
+
position: [
|
|
360
|
+
instance.rest_local_position[node * 3],
|
|
361
|
+
instance.rest_local_position[node * 3 + 1],
|
|
362
|
+
instance.rest_local_position[node * 3 + 2]
|
|
363
|
+
],
|
|
364
|
+
rotation: [
|
|
365
|
+
instance.rest_local_rotation[node * 4],
|
|
366
|
+
instance.rest_local_rotation[node * 4 + 1],
|
|
367
|
+
instance.rest_local_rotation[node * 4 + 2],
|
|
368
|
+
instance.rest_local_rotation[node * 4 + 3]
|
|
369
|
+
]
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
return remembered;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* Rows, geodesics and the `ClothState` itself.
|
|
378
|
+
*
|
|
379
|
+
* @param {ClothInstance} instance
|
|
380
|
+
* @param {number} dt
|
|
381
|
+
* @private
|
|
382
|
+
*/
|
|
383
|
+
function build_state(instance, dt) {
|
|
384
|
+
const node_count = instance.node_count;
|
|
385
|
+
|
|
386
|
+
const parent = instance.node_parent;
|
|
387
|
+
const rest = instance.animated_position;
|
|
388
|
+
|
|
389
|
+
const dynamics = instance.cloth.dynamics;
|
|
390
|
+
|
|
391
|
+
const strain_limited = (dynamics.flags & ClothDynamicsFlags.StrainLimit) !== 0;
|
|
392
|
+
|
|
393
|
+
const geodesic = new Float32Array(node_count);
|
|
394
|
+
|
|
395
|
+
const mass_inverse = new Float32Array(node_count);
|
|
396
|
+
|
|
397
|
+
// The anchor is the fixed set: zero inverse mass, and a geodesic of zero,
|
|
398
|
+
// which is what makes every derived radius collapse onto it correctly.
|
|
399
|
+
for (let node = 1; node < node_count; node++) {
|
|
400
|
+
mass_inverse[node] = 1 / CLOTH_PARTICLE_MASS;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
const stretch_particle = [];
|
|
404
|
+
const stretch_rest = [];
|
|
405
|
+
const stretch_stiffness = [];
|
|
406
|
+
const stretch_force_min = [];
|
|
407
|
+
const stretch_force_max = [];
|
|
408
|
+
|
|
409
|
+
const link_row = new Int32Array(node_count).fill(-1);
|
|
410
|
+
const strain_row = new Int32Array(node_count).fill(-1);
|
|
411
|
+
const skip_row = new Int32Array(node_count).fill(-1);
|
|
412
|
+
|
|
413
|
+
const strain = cloth_strain_allowance(dynamics.stretch);
|
|
414
|
+
|
|
415
|
+
// A skip row spans two links and both of its ends are free, so its
|
|
416
|
+
// effective inertia along the constraint is half a particle's.
|
|
417
|
+
const bend_stiffness = cloth_bend_ratio(dynamics.bend)
|
|
418
|
+
* (CLOTH_PARTICLE_MASS * 0.5) / (dt * dt);
|
|
419
|
+
|
|
420
|
+
let reach = 0;
|
|
421
|
+
|
|
422
|
+
for (let node = 1; node < node_count; node++) {
|
|
423
|
+
const p = parent[node];
|
|
424
|
+
|
|
425
|
+
const length = Math.hypot(
|
|
426
|
+
rest[node * 3] - rest[p * 3],
|
|
427
|
+
rest[node * 3 + 1] - rest[p * 3 + 1],
|
|
428
|
+
rest[node * 3 + 2] - rest[p * 3 + 2]
|
|
429
|
+
);
|
|
430
|
+
|
|
431
|
+
geodesic[node] = geodesic[p] + length;
|
|
432
|
+
|
|
433
|
+
if (geodesic[node] > reach) {
|
|
434
|
+
reach = geodesic[node];
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
link_row[node] = stretch_rest.length;
|
|
438
|
+
|
|
439
|
+
// Hard, bilateral: the fabric row. It is hard because a *penalty* stiff
|
|
440
|
+
// enough to be fabric adds energy rather than dissipating it — see
|
|
441
|
+
// `cloth_dynamics_map.js`, and `MEASUREMENTS.md` §6 for the +6.8 J.
|
|
442
|
+
stretch_particle.push(p, node);
|
|
443
|
+
stretch_rest.push(length);
|
|
444
|
+
stretch_stiffness.push(Infinity);
|
|
445
|
+
stretch_force_min.push(-Infinity);
|
|
446
|
+
stretch_force_max.push(Infinity);
|
|
447
|
+
|
|
448
|
+
if (strain_limited) {
|
|
449
|
+
strain_row[node] = stretch_rest.length;
|
|
450
|
+
|
|
451
|
+
// Hard, one-sided: §6's strain limit, and note the clamp. A row
|
|
452
|
+
// that bounds a distance from ABOVE may only apply force that
|
|
453
|
+
// reduces `C`, which for a distance row is the positive half —
|
|
454
|
+
// `[0, +∞)`. §6's table has this row at `(−∞, 0]`, which is the
|
|
455
|
+
// force that pushes the two ends apart; `cloth_leash_row.js`
|
|
456
|
+
// carries the derivation and a spec that shows it directly.
|
|
457
|
+
stretch_particle.push(p, node);
|
|
458
|
+
stretch_rest.push(length * (1 + strain));
|
|
459
|
+
stretch_stiffness.push(Infinity);
|
|
460
|
+
stretch_force_min.push(0);
|
|
461
|
+
stretch_force_max.push(Infinity);
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
const grandparent = parent[p];
|
|
465
|
+
|
|
466
|
+
if (grandparent >= 0 && bend_stiffness > 0) {
|
|
467
|
+
const span = Math.hypot(
|
|
468
|
+
rest[node * 3] - rest[grandparent * 3],
|
|
469
|
+
rest[node * 3 + 1] - rest[grandparent * 3 + 1],
|
|
470
|
+
rest[node * 3 + 2] - rest[grandparent * 3 + 2]
|
|
471
|
+
);
|
|
472
|
+
|
|
473
|
+
skip_row[node] = stretch_rest.length;
|
|
474
|
+
|
|
475
|
+
// Soft, bilateral: the bending model. Its rest length is read from
|
|
476
|
+
// the authored pose, so a chain authored with a curve holds it.
|
|
477
|
+
stretch_particle.push(grandparent, node);
|
|
478
|
+
stretch_rest.push(span);
|
|
479
|
+
stretch_stiffness.push(bend_stiffness);
|
|
480
|
+
stretch_force_min.push(-Infinity);
|
|
481
|
+
stretch_force_max.push(Infinity);
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
const leash_particle = [];
|
|
486
|
+
const leash_radius = [];
|
|
487
|
+
|
|
488
|
+
const slack_row = new Int32Array(node_count).fill(-1);
|
|
489
|
+
const tether_row = new Int32Array(node_count).fill(-1);
|
|
490
|
+
|
|
491
|
+
const slack_scale = CLOTH_SLACK_REACH * clamp01(dynamics.slack);
|
|
492
|
+
|
|
493
|
+
for (let node = 1; node < node_count; node++) {
|
|
494
|
+
// Tether first: §7 P2's long-range attachment, and the row that makes a
|
|
495
|
+
// low iteration budget viable at all, because being hard it is enforced
|
|
496
|
+
// almost exactly in one iteration however deep the chain is.
|
|
497
|
+
tether_row[node] = leash_radius.length;
|
|
498
|
+
|
|
499
|
+
leash_particle.push(node);
|
|
500
|
+
leash_radius.push(geodesic[node]);
|
|
501
|
+
|
|
502
|
+
if (slack_scale < CLOTH_SLACK_REACH) {
|
|
503
|
+
slack_row[node] = leash_radius.length;
|
|
504
|
+
|
|
505
|
+
leash_particle.push(node);
|
|
506
|
+
leash_radius.push(slack_scale * geodesic[node]);
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
let shortest_row = Infinity;
|
|
511
|
+
|
|
512
|
+
for (let row = 0; row < stretch_rest.length; row++) {
|
|
513
|
+
if (stretch_rest[row] > 0 && stretch_rest[row] < shortest_row) {
|
|
514
|
+
shortest_row = stretch_rest[row];
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
// A cloth of one particle has no rows at all, so it has no correction
|
|
519
|
+
// authority to speak of and its reach is the only length it carries.
|
|
520
|
+
instance.shortest_row = shortest_row < Infinity ? shortest_row : reach;
|
|
521
|
+
|
|
522
|
+
instance.geodesic = geodesic;
|
|
523
|
+
instance.reach = reach;
|
|
524
|
+
instance.link_row = link_row;
|
|
525
|
+
instance.strain_row = strain_row;
|
|
526
|
+
instance.skip_row = skip_row;
|
|
527
|
+
instance.slack_row = slack_row;
|
|
528
|
+
instance.tether_row = tether_row;
|
|
529
|
+
|
|
530
|
+
const state = ClothState.from({
|
|
531
|
+
position: rest,
|
|
532
|
+
mass_inverse,
|
|
533
|
+
stretch_particle: Int32Array.from(stretch_particle),
|
|
534
|
+
stretch_rest: Float32Array.from(stretch_rest),
|
|
535
|
+
stretch_stiffness: Float32Array.from(stretch_stiffness),
|
|
536
|
+
stretch_force_min: Float32Array.from(stretch_force_min),
|
|
537
|
+
stretch_force_max: Float32Array.from(stretch_force_max),
|
|
538
|
+
leash_particle: Int32Array.from(leash_particle),
|
|
539
|
+
leash_radius: Float32Array.from(leash_radius)
|
|
540
|
+
});
|
|
541
|
+
|
|
542
|
+
const particle_of_node = new Int32Array(node_count);
|
|
543
|
+
|
|
544
|
+
for (let particle = 0; particle < node_count; particle++) {
|
|
545
|
+
particle_of_node[state.source_of_particle[particle]] = particle;
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
instance.particle_of_node = particle_of_node;
|
|
549
|
+
instance.blended_position = new Float64Array(node_count * 3);
|
|
550
|
+
instance.blended_rotation = new Float64Array(node_count * 4);
|
|
551
|
+
instance.state = state;
|
|
552
|
+
instance.seeded = true;
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* @param {number} v
|
|
557
|
+
* @returns {number}
|
|
558
|
+
* @private
|
|
559
|
+
*/
|
|
560
|
+
function clamp01(v) {
|
|
561
|
+
return v < 0 ? 0 : (v > 1 ? 1 : v);
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* Re-parameterise the rows of an already-seeded cloth from its current
|
|
566
|
+
* {@link ClothDynamics}, without walking the subtree again.
|
|
567
|
+
*
|
|
568
|
+
* This is what makes `cloth.dynamics.slack = 0.2` work live: the topology, the
|
|
569
|
+
* rest lengths and the geodesics are properties of the authored pose and do not
|
|
570
|
+
* move, and everything that does move is a number in a row table.
|
|
571
|
+
*
|
|
572
|
+
* The multipliers are **not** reset. A row whose radius has just changed is
|
|
573
|
+
* carrying a force appropriate to the radius it had, and it is one warm start
|
|
574
|
+
* away from carrying the right one; zeroing them would put a visible jolt into
|
|
575
|
+
* every parameter change instead.
|
|
576
|
+
*
|
|
577
|
+
* @param {ClothInstance} instance
|
|
578
|
+
* @param {number} dt
|
|
579
|
+
* @returns {void}
|
|
580
|
+
*/
|
|
581
|
+
export function cloth_reparameterise(instance, dt) {
|
|
582
|
+
const dynamics = instance.cloth.dynamics;
|
|
583
|
+
|
|
584
|
+
const state = instance.state;
|
|
585
|
+
|
|
586
|
+
const node_count = instance.node_count;
|
|
587
|
+
|
|
588
|
+
const strain = cloth_strain_allowance(dynamics.stretch);
|
|
589
|
+
|
|
590
|
+
const bend_stiffness = cloth_bend_ratio(dynamics.bend)
|
|
591
|
+
* (CLOTH_PARTICLE_MASS * 0.5) / (dt * dt);
|
|
592
|
+
|
|
593
|
+
const slack_scale = CLOTH_SLACK_REACH * clamp01(dynamics.slack);
|
|
594
|
+
|
|
595
|
+
for (let node = 1; node < node_count; node++) {
|
|
596
|
+
const link = instance.link_row[node];
|
|
597
|
+
const strain_limit = instance.strain_row[node];
|
|
598
|
+
const skip = instance.skip_row[node];
|
|
599
|
+
const slack = instance.slack_row[node];
|
|
600
|
+
|
|
601
|
+
if (strain_limit >= 0) {
|
|
602
|
+
state.stretch_rest[strain_limit] = state.stretch_rest[link] * (1 + strain);
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
if (skip >= 0) {
|
|
606
|
+
state.stretch_stiffness[skip] = bend_stiffness;
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
if (slack >= 0) {
|
|
610
|
+
state.leash_radius[slack] = slack_scale * instance.geodesic[node];
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
instance.dynamics_seen.copy(dynamics);
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
/**
|
|
618
|
+
* Whether a dynamics change needs the subtree walked again rather than merely
|
|
619
|
+
* re-parameterised.
|
|
620
|
+
*
|
|
621
|
+
* Two fields do: turning the strain limit on or off adds or removes rows, and
|
|
622
|
+
* so does moving `slack` across the bound at which its row is provably
|
|
623
|
+
* inactive. Everything else is a number in a table that already exists.
|
|
624
|
+
*
|
|
625
|
+
* @param {ClothDynamics} before
|
|
626
|
+
* @param {ClothDynamics} after
|
|
627
|
+
* @returns {boolean}
|
|
628
|
+
*/
|
|
629
|
+
export function cloth_dynamics_change_needs_reseed(before, after) {
|
|
630
|
+
const strain_before = (before.flags & ClothDynamicsFlags.StrainLimit) !== 0;
|
|
631
|
+
const strain_after = (after.flags & ClothDynamicsFlags.StrainLimit) !== 0;
|
|
632
|
+
|
|
633
|
+
if (strain_before !== strain_after) {
|
|
634
|
+
return true;
|
|
635
|
+
}
|
|
636
|
+
|
|
637
|
+
const leashed_before = clamp01(before.slack) < 1;
|
|
638
|
+
const leashed_after = clamp01(after.slack) < 1;
|
|
639
|
+
|
|
640
|
+
if (leashed_before !== leashed_after) {
|
|
641
|
+
return true;
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
return (before.bend > 0) !== (after.bend > 0);
|
|
645
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Write one cloth's solved pose onto its subtree.
|
|
3
|
+
*
|
|
4
|
+
* @param {ClothInstance} instance
|
|
5
|
+
* @param {EntityComponentDataset} ecd
|
|
6
|
+
* @returns {void}
|
|
7
|
+
*/
|
|
8
|
+
export function cloth_write_back(instance: ClothInstance, ecd: EntityComponentDataset): void;
|
|
9
|
+
//# sourceMappingURL=cloth_write_back.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloth_write_back.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/physics/cloth/ecs/cloth_write_back.js"],"names":[],"mappings":"AAwGA;;;;;;GAMG;AACH,wFAFa,IAAI,CA+GhB"}
|