@woosh/meep-engine 2.169.6 → 2.170.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/bundle-worker-terrain.js +1 -1
- package/editor/Editor.d.ts +161 -65
- package/editor/Editor.d.ts.map +1 -1
- package/editor/Editor.js +669 -794
- package/editor/EditorCameraNavigation.d.ts +21 -0
- package/editor/EditorCameraNavigation.d.ts.map +1 -0
- package/editor/EditorCameraNavigation.js +191 -0
- package/editor/EditorKeyMap.d.ts +28 -0
- package/editor/EditorKeyMap.d.ts.map +1 -0
- package/editor/EditorKeyMap.js +182 -0
- package/editor/REWORK_PLAN_2026_08.md +692 -0
- package/editor/SelectionVisualizer.d.ts +48 -19
- package/editor/SelectionVisualizer.d.ts.map +1 -1
- package/editor/SelectionVisualizer.js +163 -156
- package/editor/actions/concrete/ActionUpdateTexture.d.ts +11 -11
- package/editor/actions/concrete/ArrayCopyAction.d.ts +19 -19
- package/editor/actions/concrete/ArrayCopyAction.d.ts.map +1 -1
- package/editor/actions/concrete/ArrayCopyAction.js +7 -7
- package/editor/actions/concrete/ComponentAddAction.d.ts +14 -14
- package/editor/actions/concrete/ComponentAddAction.d.ts.map +1 -1
- package/editor/actions/concrete/ComponentAddAction.js +6 -5
- package/editor/actions/concrete/ComponentRemoveAction.d.ts +10 -10
- package/editor/actions/concrete/ComponentRemoveAction.d.ts.map +1 -1
- package/editor/actions/concrete/ComponentRemoveAction.js +10 -12
- package/editor/actions/concrete/EntityCreateAction.d.ts +17 -17
- package/editor/actions/concrete/EntityCreateAction.d.ts.map +1 -1
- package/editor/actions/concrete/EntityCreateAction.js +11 -14
- package/editor/actions/concrete/EntityRemoveAction.d.ts +10 -10
- package/editor/actions/concrete/EntityRemoveAction.d.ts.map +1 -1
- package/editor/actions/concrete/EntityRemoveAction.js +2 -1
- package/editor/actions/concrete/ModifyPatchSampler2DAction.d.ts +46 -46
- package/editor/actions/concrete/ModifyPatchTextureArray2DAction.d.ts +37 -37
- package/editor/actions/concrete/ModifyPatchTextureArray2DAction.d.ts.map +1 -1
- package/editor/actions/concrete/ModifyPatchTextureArray2DAction.js +3 -1
- package/editor/actions/concrete/PaintTerrainOverlayAction.d.ts +22 -22
- package/editor/actions/concrete/PaintTerrainOverlayAction.d.ts.map +1 -1
- package/editor/actions/concrete/PaintTerrainOverlayAction.js +3 -3
- package/editor/actions/concrete/PatchTerrainHeightAction.d.ts +31 -18
- package/editor/actions/concrete/PatchTerrainHeightAction.d.ts.map +1 -1
- package/editor/actions/concrete/PatchTerrainHeightAction.js +28 -9
- package/editor/actions/concrete/SelectionAddAction.d.ts +18 -18
- package/editor/actions/concrete/SelectionAddAction.d.ts.map +1 -1
- package/editor/actions/concrete/SelectionAddAction.js +2 -1
- package/editor/actions/concrete/SelectionClearAction.d.ts +8 -8
- package/editor/actions/concrete/SelectionClearAction.d.ts.map +1 -1
- package/editor/actions/concrete/SelectionClearAction.js +1 -4
- package/editor/actions/concrete/SelectionRemoveAction.d.ts +9 -9
- package/editor/actions/concrete/SelectionRemoveAction.d.ts.map +1 -1
- package/editor/actions/concrete/SelectionRemoveAction.js +2 -1
- package/editor/actions/concrete/TransformModifyAction.d.ts +16 -16
- package/editor/actions/concrete/TransformModifyAction.d.ts.map +1 -1
- package/editor/actions/concrete/TransformModifyAction.js +8 -8
- package/editor/actions/concrete/WriteGridValueAction.d.ts +13 -14
- package/editor/actions/concrete/WriteGridValueAction.d.ts.map +1 -1
- package/editor/actions/concrete/WriteGridValueAction.js +3 -3
- package/editor/camera/camera_framing.d.ts +30 -0
- package/editor/camera/camera_framing.d.ts.map +1 -0
- package/editor/camera/camera_framing.js +98 -0
- package/editor/clipboard.d.ts +19 -0
- package/editor/clipboard.d.ts.map +1 -0
- package/editor/clipboard.js +184 -0
- package/editor/ecs/EditorEntity.d.ts +15 -15
- package/editor/ecs/EditorEntitySystem.d.ts +7 -7
- package/editor/ecs/EditorEntitySystem.d.ts.map +1 -1
- package/editor/ecs/EditorEntitySystem.js +1 -6
- package/editor/ecs/component/FieldDescriptor.d.ts +26 -26
- package/editor/ecs/component/FieldDescriptor.d.ts.map +1 -1
- package/editor/ecs/component/FieldDescriptor.js +20 -22
- package/editor/ecs/component/FieldValueAdapter.d.ts +6 -6
- package/editor/ecs/component/FieldValueAdapter.d.ts.map +1 -1
- package/editor/ecs/component/FieldValueAdapter.js +2 -5
- package/editor/ecs/component/TypeEditor.d.ts +24 -24
- package/editor/ecs/component/createFieldEditor.d.ts +8 -8
- package/editor/ecs/component/createObjectEditor.d.ts +13 -13
- package/editor/ecs/component/editors/ColorEditor.d.ts +6 -6
- package/editor/ecs/component/editors/HTMLElementEditor.d.ts +6 -6
- package/editor/ecs/component/editors/HTMLElementEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/ImagePathEditor.d.ts +6 -6
- package/editor/ecs/component/editors/LargeStringEditor.d.ts +15 -15
- package/editor/ecs/component/editors/NumericIntervalEditor.d.ts +6 -6
- package/editor/ecs/component/editors/NumericIntervalEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/ObservedBooleanEditor.d.ts +6 -6
- package/editor/ecs/component/editors/ObservedEnumEditor.d.ts +6 -6
- package/editor/ecs/component/editors/ObservedIntegerEditor.d.ts +6 -6
- package/editor/ecs/component/editors/ObservedIntegerEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/ObservedStringEditor.d.ts +6 -6
- package/editor/ecs/component/editors/ObservedStringEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/Sampler2DEditor.d.ts +6 -6
- package/editor/ecs/component/editors/collection/ListEditor.d.ts +7 -7
- package/editor/ecs/component/editors/common/BitFlagsEditor.d.ts +11 -11
- package/editor/ecs/component/editors/common/EnumEditor.d.ts +7 -7
- package/editor/ecs/component/editors/common/makeV3_editor.d.ts +14 -14
- package/editor/ecs/component/editors/common/makeV3_editor.d.ts.map +1 -1
- package/editor/ecs/component/editors/common/noEditor.d.ts +2 -2
- package/editor/ecs/component/editors/common/two_way_sync.d.ts +22 -0
- package/editor/ecs/component/editors/common/two_way_sync.d.ts.map +1 -0
- package/editor/ecs/component/editors/ecs/GridObstacleEditor.d.ts +6 -6
- package/editor/ecs/component/editors/ecs/GridObstacleEditor.js +1 -1
- package/editor/ecs/component/editors/ecs/ParameterLookupTableEditor.d.ts +19 -66
- package/editor/ecs/component/editors/ecs/ParameterLookupTableEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/ecs/ParameterLookupTableEditor.js +35 -239
- package/editor/ecs/component/editors/ecs/ParameterTrackEditor.d.ts +11 -11
- package/editor/ecs/component/editors/ecs/ParameterTrackEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/ecs/ParameterTrackEditor.js +17 -17
- package/editor/ecs/component/editors/ecs/ParameterTrackSetEditor.d.ts +13 -13
- package/editor/ecs/component/editors/ecs/ParticleEmitterEditor.d.ts +51 -51
- package/editor/ecs/component/editors/ecs/ParticleEmitterEditor.js +1 -1
- package/editor/ecs/component/editors/ecs/ParticleEmitterLayerEditor.d.ts +46 -47
- package/editor/ecs/component/editors/ecs/ParticleEmitterLayerEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/ecs/SimulationStepDefinitionEditor.d.ts +15 -15
- package/editor/ecs/component/editors/ecs/Trail2DEditor.d.ts +29 -29
- package/editor/ecs/component/editors/ecs/Trail3DEditor.d.ts +42 -0
- package/editor/ecs/component/editors/ecs/Trail3DEditor.d.ts.map +1 -0
- package/editor/ecs/component/editors/ecs/TransformEditor.d.ts +19 -19
- package/editor/ecs/component/editors/ecs/buildGridObstaclePreview.d.ts +8 -0
- package/editor/ecs/component/editors/ecs/buildGridObstaclePreview.d.ts.map +1 -0
- package/editor/ecs/component/editors/ecs/buildGridObstaclePreview.js +19 -0
- package/editor/ecs/component/editors/ecs/terrain/SplatMappingEditor.d.ts +18 -18
- package/editor/ecs/component/editors/ecs/terrain/TerrainEditor.d.ts +38 -38
- package/editor/ecs/component/editors/ecs/terrain/TerrainLayerEditor.d.ts +15 -15
- package/editor/ecs/component/editors/ecs/terrain/TerrainLayersEditor.d.ts +18 -18
- package/editor/ecs/component/editors/ecs/terrain/TerrainOverlayEditor.d.ts +17 -17
- package/editor/ecs/component/editors/geom/QuaternionEditor.d.ts +5 -5
- package/editor/ecs/component/editors/geom/QuaternionEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/geom/Vector1Editor.d.ts +6 -6
- package/editor/ecs/component/editors/geom/Vector1Editor.d.ts.map +1 -1
- package/editor/ecs/component/editors/geom/Vector2Editor.d.ts +5 -5
- package/editor/ecs/component/editors/geom/Vector3Editor.d.ts +5 -5
- package/editor/ecs/component/editors/geom/Vector4Editor.d.ts +5 -5
- package/editor/ecs/component/editors/primitive/ArrayEditor.d.ts +7 -7
- package/editor/ecs/component/editors/primitive/BooleanEditor.d.ts +6 -6
- package/editor/ecs/component/editors/primitive/FunctionEditor.d.ts +6 -6
- package/editor/ecs/component/editors/primitive/NumberEditor.d.ts +7 -7
- package/editor/ecs/component/editors/primitive/NumberEditor.d.ts.map +1 -1
- package/editor/ecs/component/editors/primitive/ObjectEditor.d.ts +5 -5
- package/editor/ecs/component/editors/primitive/StringEditor.d.ts +6 -6
- package/editor/ecs/component/editors/three/BufferGeometryEditor.d.ts +6 -6
- package/editor/ecs/component/editors/three/MaterialEditor.d.ts +6 -6
- package/editor/ecs/component/editors/three/MeshEditor.d.ts +6 -6
- package/editor/ecs/component/editors/three/TextureEditor.d.ts +6 -6
- package/editor/ecs/component/findNearestRegisteredType.d.ts +7 -7
- package/editor/ecs/component/registerEngineComponentEditors.d.ts +8 -0
- package/editor/ecs/component/registerEngineComponentEditors.d.ts.map +1 -0
- package/editor/ecs/component/registerEngineComponentEditors.js +85 -0
- package/editor/enableEditor.d.ts +13 -13
- package/editor/enableEditor.d.ts.map +1 -1
- package/editor/enableEditor.js +14 -4
- package/editor/library/MeshLibrary.d.ts +12 -12
- package/editor/library/MeshLibrary.d.ts.map +1 -1
- package/editor/library/MeshLibrary.js +4 -7
- package/editor/particles/lut_ops.d.ts +34 -0
- package/editor/particles/lut_ops.d.ts.map +1 -0
- package/editor/particles/lut_ops.js +148 -0
- package/editor/particles/particleEditEvents.d.ts +11 -0
- package/editor/particles/particleEditEvents.d.ts.map +1 -0
- package/editor/particles/particleEditEvents.js +12 -0
- package/editor/particles/rebuildParticleEmitter.d.ts +11 -0
- package/editor/particles/rebuildParticleEmitter.d.ts.map +1 -0
- package/editor/particles/rebuildParticleEmitter.js +49 -0
- package/editor/persistence/EditorLayoutStore.d.ts +30 -0
- package/editor/persistence/EditorLayoutStore.d.ts.map +1 -0
- package/editor/persistence/EditorLayoutStore.js +71 -0
- package/editor/persistence/SceneMetadata.d.ts +38 -0
- package/editor/persistence/SceneMetadata.d.ts.map +1 -0
- package/editor/persistence/SceneMetadata.js +52 -0
- package/editor/persistence/SceneSlotManager.d.ts +40 -0
- package/editor/persistence/SceneSlotManager.d.ts.map +1 -0
- package/editor/persistence/SceneSlotManager.js +144 -0
- package/editor/persistence/buildNewSceneDataset.d.ts +10 -0
- package/editor/persistence/buildNewSceneDataset.d.ts.map +1 -0
- package/editor/persistence/buildNewSceneDataset.js +67 -0
- package/editor/persistence/files.d.ts +24 -0
- package/editor/persistence/files.d.ts.map +1 -0
- package/editor/persistence/files.js +68 -0
- package/editor/persistence/scene_import.d.ts +45 -0
- package/editor/persistence/scene_import.d.ts.map +1 -0
- package/editor/persistence/scene_import.js +143 -0
- package/editor/persistence/scene_serialization.d.ts +36 -0
- package/editor/persistence/scene_serialization.d.ts.map +1 -0
- package/editor/persistence/scene_serialization.js +79 -0
- package/editor/persistence/string_buffer_codec.d.ts +20 -0
- package/editor/persistence/string_buffer_codec.d.ts.map +1 -0
- package/editor/persistence/string_buffer_codec.js +41 -0
- package/editor/process/DisableGameUIProcess.d.ts +7 -7
- package/editor/process/DisableGameUIProcess.d.ts.map +1 -1
- package/editor/process/DisableGameUIProcess.js +1 -5
- package/editor/process/EditorProcess.d.ts +18 -18
- package/editor/process/GridDisplayProcess.d.ts +16 -0
- package/editor/process/GridDisplayProcess.d.ts.map +1 -0
- package/editor/process/GridDisplayProcess.js +53 -0
- package/editor/process/ObstacleGridDisplayProcess.d.ts +12 -12
- package/editor/process/ObstacleGridDisplayProcess.d.ts.map +1 -1
- package/editor/process/ObstacleGridDisplayProcess.js +7 -9
- package/editor/process/ParticleEmitterRebuildProcess.d.ts +66 -0
- package/editor/process/ParticleEmitterRebuildProcess.d.ts.map +1 -0
- package/editor/process/ParticleEmitterRebuildProcess.js +217 -0
- package/editor/process/ProcessEngine.d.ts +29 -29
- package/editor/process/ProcessEngine.d.ts.map +1 -1
- package/editor/process/ProcessEngine.js +11 -4
- package/editor/process/SymbolicDisplayProcess.d.ts +18 -18
- package/editor/process/SymbolicDisplayProcess.js +2 -2
- package/editor/process/symbolic/ComponentSymbolicDisplay.d.ts +10 -10
- package/editor/process/symbolic/SymbolicDisplayInternalAPI.d.ts +67 -64
- package/editor/process/symbolic/SymbolicDisplayInternalAPI.d.ts.map +1 -1
- package/editor/process/symbolic/SymbolicDisplayInternalAPI.js +42 -45
- package/editor/process/symbolic/buildThreeJSHelperEntity.d.ts +8 -8
- package/editor/process/symbolic/make3DSymbolicDisplay.d.ts +9 -9
- package/editor/process/symbolic/makeCameraSymbolicDisplay.d.ts +6 -6
- package/editor/process/symbolic/makeGridPositionSymbolDisplay.d.ts +5 -5
- package/editor/process/symbolic/makeHelperBoxGeometry.d.ts +2 -2
- package/editor/process/symbolic/makeHelperSphereGeometry.d.ts +8 -8
- package/editor/process/symbolic/makeLightSymbolicDisplay.d.ts +6 -6
- package/editor/process/symbolic/makeParticleEmitterSymbolicDisplay.d.ts +5 -5
- package/editor/process/symbolic/makeParticleEmitterSymbolicDisplay.d.ts.map +1 -1
- package/editor/process/symbolic/makeParticleEmitterSymbolicDisplay.js +21 -1
- package/editor/process/symbolic/makePathSymbolicDisplay.d.ts +6 -6
- package/editor/process/symbolic/makePositionedIconDisplaySymbol.d.ts +8 -8
- package/editor/process/symbolic/makePositionedIconDisplaySymbol.d.ts.map +1 -1
- package/editor/process/symbolic/makePositionedIconDisplaySymbol.js +3 -0
- package/editor/process/symbolic/makeSocketsSymbolicDisplay.d.ts +6 -6
- package/editor/process/symbolic/makeSolidArrowGeometry.d.ts +25 -25
- package/editor/process/symbolic/makeSoundEmitterSymbolicDisplay.d.ts +5 -5
- package/editor/process/symbolic/synchronizeTransform.d.ts +11 -11
- package/editor/prototypeEditorShell.js +102 -0
- package/editor/style/controls.scss +168 -0
- package/editor/style/editor.scss +313 -0
- package/editor/style/inspector.scss +223 -0
- package/editor/templates/entity_templates.d.ts +19 -0
- package/editor/templates/entity_templates.d.ts.map +1 -0
- package/editor/templates/entity_templates.js +167 -0
- package/editor/tools/GridPaintTool.d.ts +17 -16
- package/editor/tools/GridPaintTool.d.ts.map +1 -1
- package/editor/tools/GridPaintTool.js +13 -14
- package/editor/tools/SelectionTool.d.ts +25 -26
- package/editor/tools/SelectionTool.d.ts.map +1 -1
- package/editor/tools/SelectionTool.js +46 -13
- package/editor/tools/TransformToolV2.d.ts +76 -0
- package/editor/tools/TransformToolV2.d.ts.map +1 -0
- package/editor/tools/TransformToolV2.js +396 -0
- package/editor/tools/engine/Tool.d.ts +87 -63
- package/editor/tools/engine/Tool.d.ts.map +1 -1
- package/editor/tools/engine/Tool.js +72 -28
- package/editor/tools/engine/ToolEngine.d.ts +21 -22
- package/editor/tools/engine/ToolEngine.d.ts.map +1 -1
- package/editor/tools/engine/ToolEngine.js +52 -54
- package/editor/tools/engine/ToolState.d.ts +6 -6
- package/editor/tools/paint/TerrainHeightPaintTool.d.ts +17 -17
- package/editor/tools/paint/TerrainHeightPaintTool.d.ts.map +1 -1
- package/editor/tools/paint/TerrainHeightPaintTool.js +12 -7
- package/editor/tools/paint/TerrainPaintTool.d.ts +81 -30
- package/editor/tools/paint/TerrainPaintTool.d.ts.map +1 -1
- package/editor/tools/paint/TerrainPaintTool.js +58 -21
- package/editor/tools/paint/TerrainTexturePaintTool.d.ts +18 -17
- package/editor/tools/paint/TerrainTexturePaintTool.d.ts.map +1 -1
- package/editor/tools/paint/TerrainTexturePaintTool.js +75 -12
- package/editor/tools/v2/BlenderCameraOrientationGizmo.js +24 -26
- package/editor/tools/v2/GizmoNode.d.ts.map +1 -1
- package/editor/tools/v2/GizmoNode.js +14 -13
- package/editor/tools/v2/TransformControls.d.ts.map +1 -1
- package/editor/tools/v2/TransformControls.js +18 -45
- package/editor/tools/v2/TransformControlsGizmo.d.ts.map +1 -1
- package/editor/tools/v2/TransformControlsGizmo.js +3 -6
- package/editor/tools/v2/TransformControlsPlane.d.ts.map +1 -1
- package/editor/tools/v2/TransformControlsPlane.js +3 -5
- package/editor/tools/v2/TransformMode.d.ts +6 -6
- package/editor/view/ecs/ComponentControlView.d.ts +23 -23
- package/editor/view/ecs/ComponentControlView.d.ts.map +1 -1
- package/editor/view/ecs/ComponentControlView.js +4 -4
- package/editor/view/ecs/EntityEditor.d.ts +24 -29
- package/editor/view/ecs/EntityEditor.d.ts.map +1 -1
- package/editor/view/ecs/EntityEditor.js +34 -10
- package/editor/view/ecs/EntityList.js +2 -3
- package/editor/view/ecs/HierarchicalEntityListView.d.ts +24 -7
- package/editor/view/ecs/HierarchicalEntityListView.d.ts.map +1 -1
- package/editor/view/ecs/HierarchicalEntityListView.js +339 -191
- package/editor/view/ecs/components/DatGuiController.js +2 -216
- package/editor/view/ecs/components/color/GaugeView.d.ts +12 -12
- package/editor/view/ecs/components/common/AutoCanvasView.d.ts +29 -19
- package/editor/view/ecs/components/common/AutoCanvasView.d.ts.map +1 -1
- package/editor/view/ecs/components/common/LineView.d.ts +11 -11
- package/editor/view/ecs/components/common/LineView.d.ts.map +1 -1
- package/editor/view/ecs/components/common/LineView.js +2 -1
- package/editor/view/ecs/components/common/NumberController.d.ts +17 -17
- package/editor/view/ecs/components/common/TextController.d.ts +21 -0
- package/editor/view/ecs/components/common/TextController.d.ts.map +1 -0
- package/editor/view/library/MeshLibraryView.d.ts +17 -0
- package/editor/view/library/MeshLibraryView.d.ts.map +1 -0
- package/editor/view/library/MeshLibraryView.js +35 -20
- package/editor/view/node-graph/NodeGraphCamera.d.ts +48 -0
- package/editor/view/node-graph/NodeGraphCamera.d.ts.map +1 -0
- package/editor/view/node-graph/NodeGraphCamera.js +88 -90
- package/editor/view/node-graph/NodeGraphEditorView.d.ts +25 -2
- package/editor/view/node-graph/NodeGraphEditorView.d.ts.map +1 -1
- package/editor/view/node-graph/NodeGraphSelection.d.ts +56 -0
- package/editor/view/node-graph/NodeGraphSelection.d.ts.map +1 -0
- package/editor/view/node-graph/NodeGraphView.d.ts +35 -18
- package/editor/view/node-graph/NodeGraphView.d.ts.map +1 -1
- package/editor/view/node-graph/NodeGraphView.js +666 -669
- package/editor/view/node-graph/NodeView.d.ts +3 -2
- package/editor/view/node-graph/NodeView.d.ts.map +1 -1
- package/editor/view/node-graph/PortView.d.ts +2 -2
- package/editor/view/node-graph/PortView.d.ts.map +1 -1
- package/editor/view/node-graph/PortView.js +2 -2
- package/editor/view/node-graph/actions/ConnectionCreateAction.d.ts +34 -0
- package/editor/view/node-graph/actions/ConnectionCreateAction.d.ts.map +1 -0
- package/editor/view/node-graph/actions/ConnectionCreateAction.js +53 -53
- package/editor/view/node-graph/actions/ConnectionDeleteAction.d.ts +26 -0
- package/editor/view/node-graph/actions/ConnectionDeleteAction.d.ts.map +1 -0
- package/editor/view/node-graph/actions/NodeDeleteAction.d.ts +47 -0
- package/editor/view/node-graph/actions/NodeDeleteAction.d.ts.map +1 -0
- package/editor/view/node-graph/actions/NodeDeleteAction.js +88 -88
- package/editor/view/node-graph/actions/NodeParameterSetAction.d.ts +34 -0
- package/editor/view/node-graph/actions/NodeParameterSetAction.d.ts.map +1 -0
- package/editor/view/node-graph/actions/NodeParameterSetAction.js +52 -52
- package/editor/view/node-graph/actions/NodesMoveAction.d.ts +38 -0
- package/editor/view/node-graph/actions/NodesMoveAction.d.ts.map +1 -0
- package/editor/view/node-graph/actions/SelectionSetAction.d.ts +38 -0
- package/editor/view/node-graph/actions/SelectionSetAction.d.ts.map +1 -0
- package/editor/view/node-graph/actions/SelectionSetAction.js +60 -60
- package/editor/view/node-graph/connection_wire_geometry.d.ts +46 -0
- package/editor/view/node-graph/connection_wire_geometry.d.ts.map +1 -0
- package/editor/view/particles/ColorLutGradientView.d.ts +19 -0
- package/editor/view/particles/ColorLutGradientView.d.ts.map +1 -0
- package/editor/view/particles/ColorLutGradientView.js +291 -0
- package/editor/view/particles/ScalarLutCurveView.d.ts +19 -0
- package/editor/view/particles/ScalarLutCurveView.d.ts.map +1 -0
- package/editor/view/particles/ScalarLutCurveView.js +279 -0
- package/editor/view/prepareMeshLibrary.d.ts +7 -0
- package/editor/view/prepareMeshLibrary.d.ts.map +1 -0
- package/editor/view/prepareMeshLibrary.js +34 -14
- package/editor/view/shell/EditorShellView.d.ts +18 -0
- package/editor/view/shell/EditorShellView.d.ts.map +1 -0
- package/editor/view/shell/EditorShellView.js +442 -0
- package/editor/view/shell/SceneTreePanelView.d.ts +17 -0
- package/editor/view/shell/SceneTreePanelView.d.ts.map +1 -0
- package/editor/view/shell/SceneTreePanelView.js +119 -0
- package/editor/view/shell/ViewportPanelView.d.ts +18 -0
- package/editor/view/shell/ViewportPanelView.d.ts.map +1 -0
- package/editor/view/shell/ViewportPanelView.js +64 -0
- package/editor/view/tools/ToolSettingsView.d.ts +21 -10
- package/editor/view/tools/ToolSettingsView.d.ts.map +1 -1
- package/editor/view/tools/ToolSettingsView.js +114 -100
- package/editor/view/tools/ToolView.d.ts +12 -12
- package/editor/view/v2/SplitView.js +2 -104
- package/package.json +7 -1
- package/samples/terrain/editor.js +9 -13
- package/src/core/binary/BitSet.d.ts.map +1 -1
- package/src/core/binary/BitSet.js +7 -7
- package/src/core/binary/type/Field.d.ts +2 -2
- package/src/core/binary/type/Field.d.ts.map +1 -1
- package/src/core/binary/type/Field.js +3 -2
- package/src/core/binary/type/Type.d.ts +5 -5
- package/src/core/binary/type/Type.d.ts.map +1 -1
- package/src/core/binary/type/Type.js +18 -15
- package/src/core/binary/type/TypeBuilder.d.ts +1 -1
- package/src/core/binary/type/TypeBuilder.d.ts.map +1 -1
- package/src/core/binary/type/TypeBuilder.js +2 -1
- package/src/core/binary/type/TypeRegistry.d.ts.map +1 -1
- package/src/core/binary/type/TypeRegistry.js +1 -3
- package/src/core/cache/Cache.d.ts +8 -8
- package/src/core/cache/Cache.d.ts.map +1 -1
- package/src/core/cache/Cache.js +14 -15
- package/src/core/cache/CacheV2.d.ts.map +1 -1
- package/src/core/cache/CacheV2.js +15 -20
- package/src/core/cache/LoadingCache.d.ts.map +1 -1
- package/src/core/cache/LoadingCache.js +3 -2
- package/src/core/collection/CuckooFilter.d.ts +23 -23
- package/src/core/collection/CuckooFilter.d.ts.map +1 -1
- package/src/core/collection/CuckooFilter.js +27 -26
- package/src/core/collection/PairUint32Map.d.ts +1 -1
- package/src/core/collection/PairUint32Map.d.ts.map +1 -1
- package/src/core/collection/PairUint32Map.js +322 -321
- package/src/core/collection/RingBuffer.d.ts +5 -5
- package/src/core/collection/RingBuffer.d.ts.map +1 -1
- package/src/core/collection/RingBuffer.js +18 -18
- package/src/core/collection/Uint32Map.d.ts +5 -5
- package/src/core/collection/Uint32Map.d.ts.map +1 -1
- package/src/core/collection/Uint32Map.js +346 -345
- package/src/core/collection/Uint32MinHeap.d.ts +4 -4
- package/src/core/collection/Uint32MinHeap.d.ts.map +1 -1
- package/src/core/collection/Uint32MinHeap.js +109 -109
- package/src/core/collection/array/iterator/ArrayIteratorRandom.d.ts.map +1 -1
- package/src/core/collection/array/iterator/ArrayIteratorRandom.js +3 -8
- package/src/core/collection/heap/FibonacciHeap.d.ts +6 -6
- package/src/core/collection/heap/FibonacciHeap.d.ts.map +1 -1
- package/src/core/collection/heap/FibonacciHeap.js +586 -586
- package/src/core/collection/heap/IndexedFloatMaxHeap.d.ts +1 -1
- package/src/core/collection/heap/IndexedFloatMaxHeap.d.ts.map +1 -1
- package/src/core/collection/heap/IndexedFloatMaxHeap.js +261 -261
- package/src/core/collection/heap/IndexedFloatMinHeap.d.ts +1 -1
- package/src/core/collection/heap/IndexedFloatMinHeap.d.ts.map +1 -1
- package/src/core/collection/heap/IndexedFloatMinHeap.js +268 -268
- package/src/core/collection/heap/Uint32Heap.d.ts +6 -6
- package/src/core/collection/heap/Uint32Heap.d.ts.map +1 -1
- package/src/core/collection/heap/Uint32Heap.js +7 -7
- package/src/core/collection/heap/Uint32Heap4.d.ts +6 -6
- package/src/core/collection/heap/Uint32Heap4.d.ts.map +1 -1
- package/src/core/collection/heap/Uint32Heap4.js +490 -490
- package/src/core/collection/list/FilteredListProjection.d.ts +7 -7
- package/src/core/collection/list/FilteredListProjection.d.ts.map +1 -1
- package/src/core/collection/list/FilteredListProjection.js +12 -12
- package/src/core/collection/list/SortedListProjection.d.ts +2 -2
- package/src/core/collection/list/SortedListProjection.d.ts.map +1 -1
- package/src/core/collection/list/SortedListProjection.js +6 -6
- package/src/core/collection/table/RowFirstTable.d.ts +5 -5
- package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
- package/src/core/collection/table/RowFirstTable.js +6 -7
- package/src/core/collection/table/RowFirstTableSpec.d.ts +10 -2
- package/src/core/collection/table/RowFirstTableSpec.d.ts.map +1 -1
- package/src/core/collection/table/RowFirstTableSpec.js +10 -1
- package/src/core/function/FunctionCompiler.d.ts.map +1 -1
- package/src/core/function/FunctionCompiler.js +13 -15
- package/src/core/geom/3d/shape/BoxShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/BoxShape3D.js +171 -175
- package/src/core/geom/3d/shape/CapsuleShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/CapsuleShape3D.js +238 -242
- package/src/core/geom/3d/shape/ConvexHullShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/ConvexHullShape3D.js +43 -44
- package/src/core/geom/3d/shape/CylinderShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/CylinderShape3D.js +220 -224
- package/src/core/geom/3d/shape/HeightMapShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/HeightMapShape3D.js +58 -61
- package/src/core/geom/3d/shape/MeshShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/MeshShape3D.js +76 -80
- package/src/core/geom/3d/shape/PosedShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/PosedShape3D.js +160 -159
- package/src/core/geom/3d/shape/SphereShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/SphereShape3D.js +143 -146
- package/src/core/geom/3d/shape/TransformedShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/TransformedShape3D.js +20 -24
- package/src/core/geom/3d/shape/Triangle3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/Triangle3D.js +293 -297
- package/src/core/geom/3d/shape/UnionShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/UnionShape3D.js +15 -19
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts +15 -15
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.js +21 -21
- package/src/core/geom/3d/topology/simplify/EdgeCollapseCandidate.d.ts.map +1 -1
- package/src/core/geom/3d/topology/simplify/EdgeCollapseCandidate.js +36 -36
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts +6 -6
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.js +8 -8
- package/src/core/graph/layout/Connection.d.ts +2 -2
- package/src/core/graph/layout/Connection.d.ts.map +1 -1
- package/src/core/graph/layout/Connection.js +6 -6
- package/src/core/graph/metis/native/MetisGraph.d.ts.map +1 -1
- package/src/core/graph/metis/native/MetisGraph.js +232 -231
- package/src/core/graph/metis/native/bisection/BisectionScratch.d.ts +3 -3
- package/src/core/graph/metis/native/bisection/BisectionScratch.d.ts.map +1 -1
- package/src/core/graph/metis/native/bisection/BisectionScratch.js +104 -103
- package/src/core/localization/Localization.d.ts.map +1 -1
- package/src/core/localization/Localization.js +35 -37
- package/src/core/model/BooleanVector3.d.ts +1 -1
- package/src/core/model/BooleanVector3.d.ts.map +1 -1
- package/src/core/model/BooleanVector3.js +2 -2
- package/src/core/model/ObservedValue.d.ts +2 -2
- package/src/core/model/ObservedValue.d.ts.map +1 -1
- package/src/core/model/ObservedValue.js +8 -6
- package/src/core/model/object/ImmutableObjectPool.d.ts +5 -5
- package/src/core/model/object/ImmutableObjectPool.d.ts.map +1 -1
- package/src/core/model/object/ImmutableObjectPool.js +6 -7
- package/src/core/model/reactive/evaluation/MultiPredicateEvaluator.d.ts +5 -5
- package/src/core/model/reactive/evaluation/MultiPredicateEvaluator.d.ts.map +1 -1
- package/src/core/model/reactive/evaluation/MultiPredicateEvaluator.js +93 -96
- package/src/core/model/reactive/model/terminal/ReactiveReference.d.ts +4 -4
- package/src/core/model/reactive/model/terminal/ReactiveReference.d.ts.map +1 -1
- package/src/core/model/reactive/model/terminal/ReactiveReference.js +6 -6
- package/src/core/model/stat/LinearModifier.d.ts +10 -10
- package/src/core/model/stat/LinearModifier.d.ts.map +1 -1
- package/src/core/model/stat/LinearModifier.js +12 -12
- package/src/core/process/Future.d.ts +1 -1
- package/src/core/process/Future.d.ts.map +1 -1
- package/src/core/process/Future.js +6 -7
- package/src/core/process/action/AsynchronousActionSequence.d.ts +5 -5
- package/src/core/process/action/AsynchronousActionSequence.d.ts.map +1 -1
- package/src/core/process/action/AsynchronousActionSequence.js +9 -9
- package/src/core/process/executor/profile/ConcurrentExecutorProfiler.d.ts.map +1 -1
- package/src/core/process/executor/profile/ConcurrentExecutorProfiler.js +19 -20
- package/src/core/process/filter/MutableFilter.d.ts.map +1 -1
- package/src/core/process/filter/MutableFilter.js +1 -6
- package/src/core/process/task/RemainingTimeEstimator.d.ts +1 -1
- package/src/core/process/task/RemainingTimeEstimator.d.ts.map +1 -1
- package/src/core/process/task/RemainingTimeEstimator.js +2 -1
- package/src/core/process/undo/ActionProcessor.d.ts +36 -17
- package/src/core/process/undo/ActionProcessor.d.ts.map +1 -1
- package/src/core/process/undo/ActionProcessor.js +131 -136
- package/src/core/science/units/UnitMatrix.d.ts.map +1 -1
- package/src/core/science/units/UnitMatrix.js +249 -251
- package/src/engine/EngineHarness.d.ts +5 -5
- package/src/engine/EngineHarness.d.ts.map +1 -1
- package/src/engine/EngineHarness.js +6 -6
- package/src/engine/achievements/Achievement.d.ts.map +1 -1
- package/src/engine/achievements/Achievement.js +35 -35
- package/src/engine/achievements/AchievementManager.d.ts.map +1 -1
- package/src/engine/achievements/AchievementManager.js +33 -35
- package/src/engine/achievements/gateway/StorageAchievementGateway.d.ts +1 -1
- package/src/engine/achievements/gateway/StorageAchievementGateway.d.ts.map +1 -1
- package/src/engine/achievements/gateway/StorageAchievementGateway.js +2 -2
- package/src/engine/animation/EntityAnimation.d.ts +5 -5
- package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
- package/src/engine/animation/EntityAnimation.js +6 -6
- package/src/engine/animation/curve/editor/CurveEditorView.d.ts +2 -2
- package/src/engine/animation/curve/editor/CurveEditorView.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/CurveEditorView.js +3 -3
- package/src/engine/animation/curve/editor/DragHandler.d.ts +1 -1
- package/src/engine/animation/curve/editor/DragHandler.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/DragHandler.js +2 -2
- package/src/engine/animation/curve/editor/OperationRouter.d.ts +1 -1
- package/src/engine/animation/curve/editor/OperationRouter.d.ts.map +1 -1
- package/src/engine/animation/curve/editor/OperationRouter.js +2 -2
- package/src/engine/animation/keyed2/AnimationTrack.d.ts +10 -10
- package/src/engine/animation/keyed2/AnimationTrack.d.ts.map +1 -1
- package/src/engine/animation/keyed2/AnimationTrack.js +27 -27
- package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +4 -4
- package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
- package/src/engine/animation/keyed2/AnimationTrackPlayback.js +6 -9
- package/src/engine/asset/Asset.d.ts +10 -10
- package/src/engine/asset/Asset.d.ts.map +1 -1
- package/src/engine/asset/Asset.js +13 -14
- package/src/engine/asset/AssetRequest.d.ts +14 -14
- package/src/engine/asset/AssetRequest.d.ts.map +1 -1
- package/src/engine/asset/AssetRequest.js +18 -18
- package/src/engine/asset/PendingAsset.d.ts +5 -5
- package/src/engine/asset/PendingAsset.d.ts.map +1 -1
- package/src/engine/asset/PendingAsset.js +108 -108
- package/src/engine/asset/loaders/GLTFAssetLoader.d.ts +2 -2
- package/src/engine/asset/loaders/GLTFAssetLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/GLTFAssetLoader.js +16 -18
- package/src/engine/asset/loaders/JavascriptAssetLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/JavascriptAssetLoader.js +30 -31
- package/src/engine/asset/loaders/gltf/extensions/MSFT_texture_dds.d.ts.map +1 -1
- package/src/engine/asset/loaders/gltf/extensions/MSFT_texture_dds.js +2 -2
- package/src/engine/asset/loaders/material/StaticMaterialCache.d.ts.map +1 -1
- package/src/engine/asset/loaders/material/StaticMaterialCache.js +9 -12
- package/src/engine/control/StatefulController.d.ts +4 -4
- package/src/engine/control/StatefulController.d.ts.map +1 -1
- package/src/engine/control/StatefulController.js +6 -6
- package/src/engine/control/first-person/FirstPersonPlayerController.d.ts.map +1 -1
- package/src/engine/control/first-person/FirstPersonPlayerController.js +31 -33
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts.map +1 -1
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.js +2052 -2028
- package/src/engine/control/first-person/abilities/Ability.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/Ability.js +117 -119
- package/src/engine/control/first-person/abilities/AbilitySet.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/AbilitySet.js +183 -185
- package/src/engine/control/first-person/abilities/LedgeGrab.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/LedgeGrab.js +404 -405
- package/src/engine/control/first-person/abilities/Mantle.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/Mantle.js +24 -23
- package/src/engine/control/first-person/abilities/ScrambleUp.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/ScrambleUp.js +181 -182
- package/src/engine/control/first-person/abilities/Slide.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/Slide.js +164 -166
- package/src/engine/control/first-person/abilities/WallJump.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/WallJump.js +136 -139
- package/src/engine/control/first-person/abilities/WallRun.d.ts.map +1 -1
- package/src/engine/control/first-person/abilities/WallRun.js +7 -9
- package/src/engine/control/first-person/collision/KinematicMover.d.ts +7 -13
- package/src/engine/control/first-person/collision/KinematicMover.d.ts.map +1 -1
- package/src/engine/control/first-person/collision/KinematicMover.js +11 -10
- package/src/engine/control/first-person/composer/EyeOffsetStack.d.ts.map +1 -1
- package/src/engine/control/first-person/composer/EyeOffsetStack.js +58 -60
- package/src/engine/control/first-person/mastery/BreathRhythmEvaluator.d.ts +2 -2
- package/src/engine/control/first-person/mastery/BreathRhythmEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/BreathRhythmEvaluator.js +133 -133
- package/src/engine/control/first-person/mastery/FootAsymmetryTurnEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/FootAsymmetryTurnEvaluator.js +106 -109
- package/src/engine/control/first-person/mastery/MasteryEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/MasteryEvaluator.js +43 -45
- package/src/engine/control/first-person/mastery/MasteryScore.d.ts +6 -6
- package/src/engine/control/first-person/mastery/MasteryScore.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/MasteryScore.js +100 -100
- package/src/engine/control/first-person/mastery/MasterySet.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/MasterySet.js +84 -86
- package/src/engine/control/first-person/mastery/SlideInitiationTimingEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/SlideInitiationTimingEvaluator.js +80 -83
- package/src/engine/control/first-person/mastery/StrideTimingJumpEvaluator.d.ts.map +1 -1
- package/src/engine/control/first-person/mastery/StrideTimingJumpEvaluator.js +106 -109
- package/src/engine/control/first-person/sensors/FirstPersonSensors.d.ts.map +1 -1
- package/src/engine/control/first-person/sensors/FirstPersonSensors.js +45 -40
- package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.d.ts.map +1 -1
- package/src/engine/control/first-person/sensors/FirstPersonSensorsSystem.js +35 -39
- package/src/engine/development/performance/monitor/PeriodicConsolePrinter.d.ts +1 -1
- package/src/engine/development/performance/monitor/PeriodicConsolePrinter.d.ts.map +1 -1
- package/src/engine/development/performance/monitor/PeriodicConsolePrinter.js +2 -2
- package/src/engine/ecs/ASYNC_SYSTEMS_PROPOSAL.md +531 -0
- package/src/engine/ecs/EntityManager.d.ts +16 -0
- package/src/engine/ecs/EntityManager.d.ts.map +1 -1
- package/src/engine/ecs/EntityManager.js +81 -0
- package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
- package/src/engine/ecs/animation/Animation.js +8 -8
- package/src/engine/ecs/async/SystemWorkerHost.d.ts +98 -0
- package/src/engine/ecs/async/SystemWorkerHost.d.ts.map +1 -0
- package/src/engine/ecs/async/SystemWorkerHost.js +329 -0
- package/src/engine/ecs/async/SystemWorkerLoopback.d.ts +80 -0
- package/src/engine/ecs/async/SystemWorkerLoopback.d.ts.map +1 -0
- package/src/engine/ecs/async/SystemWorkerLoopback.js +143 -0
- package/src/engine/ecs/async/WORKER_SYSTEM_PLAN.md +246 -0
- package/src/engine/ecs/async/WorkerSystem.d.ts +173 -0
- package/src/engine/ecs/async/WorkerSystem.d.ts.map +1 -0
- package/src/engine/ecs/async/WorkerSystem.js +702 -0
- package/src/engine/ecs/async/WorkerSystemProtocol.d.ts +62 -0
- package/src/engine/ecs/async/WorkerSystemProtocol.d.ts.map +1 -0
- package/src/engine/ecs/async/WorkerSystemProtocol.js +150 -0
- package/src/engine/ecs/binding/EntityProxyScope.d.ts.map +1 -1
- package/src/engine/ecs/binding/EntityProxyScope.js +11 -12
- package/src/engine/ecs/components/PropertySet.d.ts.map +1 -1
- package/src/engine/ecs/components/PropertySet.js +2 -2
- package/src/engine/ecs/components/TagSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/ecs/components/TagSerializationUpgrader_0_1.js +2 -6
- package/src/engine/ecs/components/Timer.d.ts +7 -7
- package/src/engine/ecs/components/Timer.d.ts.map +1 -1
- package/src/engine/ecs/components/Timer.js +18 -18
- package/src/engine/ecs/dynamic_actions/DataScope.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/DataScope.js +6 -8
- package/src/engine/ecs/evaluation/PointFitnessBinary.d.ts.map +1 -1
- package/src/engine/ecs/evaluation/PointFitnessBinary.js +10 -13
- package/src/engine/ecs/evaluation/PointFitnessConstant.d.ts.map +1 -1
- package/src/engine/ecs/evaluation/PointFitnessConstant.js +5 -9
- package/src/engine/ecs/evaluation/world/ReadTerrainLayerWeightPointFitness.d.ts.map +1 -1
- package/src/engine/ecs/evaluation/world/ReadTerrainLayerWeightPointFitness.js +5 -9
- package/src/engine/ecs/fow/FogOfWarRevealerSystem.d.ts.map +1 -1
- package/src/engine/ecs/fow/FogOfWarRevealerSystem.js +6 -8
- package/src/engine/ecs/fow/FogOfWarSystem.d.ts +2 -2
- package/src/engine/ecs/fow/FogOfWarSystem.d.ts.map +1 -1
- package/src/engine/ecs/fow/FogOfWarSystem.js +5 -6
- package/src/engine/ecs/fow/FogOfWarVisibilityPredicate.d.ts.map +1 -1
- package/src/engine/ecs/fow/FogOfWarVisibilityPredicate.js +11 -14
- package/src/engine/ecs/fow/serialization/FogOfWarSerializationUpdater_0_1.d.ts.map +1 -1
- package/src/engine/ecs/fow/serialization/FogOfWarSerializationUpdater_0_1.js +2 -6
- package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts.map +1 -1
- package/src/engine/ecs/gui/position/ViewportPositionSystem.js +5 -6
- package/src/engine/ecs/gui/view/LocalizedLabelViewEntity.d.ts.map +1 -1
- package/src/engine/ecs/gui/view/LocalizedLabelViewEntity.js +2 -2
- package/src/engine/ecs/parent/ChildEntities.d.ts.map +1 -1
- package/src/engine/ecs/parent/ChildEntities.js +6 -8
- package/src/engine/ecs/parent/FaceEditor.d.ts.map +1 -1
- package/src/engine/ecs/parent/FaceEditor.js +42 -41
- package/src/engine/ecs/parent/ParentEntity.d.ts.map +1 -1
- package/src/engine/ecs/parent/ParentEntity.js +4 -9
- package/src/engine/ecs/parent/ParentEntitySystem.d.ts.map +1 -1
- package/src/engine/ecs/parent/ParentEntitySystem.js +2 -2
- package/src/engine/ecs/sockets/AttachmentSocket.d.ts.map +1 -1
- package/src/engine/ecs/sockets/AttachmentSocket.js +12 -14
- package/src/engine/ecs/sockets/AttachmentSockets.d.ts.map +1 -1
- package/src/engine/ecs/sockets/AttachmentSockets.js +5 -7
- package/src/engine/ecs/sockets/BoneAttachmentSocket.d.ts.map +1 -1
- package/src/engine/ecs/sockets/BoneAttachmentSocket.js +1 -5
- package/src/engine/ecs/speaker/VoiceSystem.d.ts +5 -5
- package/src/engine/ecs/speaker/VoiceSystem.d.ts.map +1 -1
- package/src/engine/ecs/speaker/VoiceSystem.js +42 -45
- package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/object/BinaryObjectSerializationAdapter.js +17 -19
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.d.ts +11 -0
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.d.ts.map +1 -0
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.js +260 -0
- package/src/engine/ecs/system/AbstractContextSystem.d.ts +8 -8
- package/src/engine/ecs/system/AbstractContextSystem.d.ts.map +1 -1
- package/src/engine/ecs/system/AbstractContextSystem.js +14 -14
- package/src/engine/ecs/systems/AnimationSystem.d.ts.map +1 -1
- package/src/engine/ecs/systems/AnimationSystem.js +2 -2
- package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
- package/src/engine/ecs/systems/ScriptSystem.js +3 -6
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts +27 -27
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/Terrain.js +35 -38
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.js +11 -13
- package/src/engine/ecs/terrain/ecs/makeTerrainWorkerProxy.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/makeTerrainWorkerProxy.js +4 -2
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts +5 -5
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/splat/SplatMapping.js +6 -7
- package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts +9 -9
- package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts.map +1 -1
- package/src/engine/ecs/terrain/overlay/TerrainOverlay.js +13 -12
- package/src/engine/ecs/terrain/serialization/TerrainSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/ecs/terrain/serialization/TerrainSerializationUpgrader_0_1.js +2 -6
- package/src/engine/ecs/terrain/serialization/TerrainSerializationUpgrader_1_2.d.ts.map +1 -1
- package/src/engine/ecs/terrain/serialization/TerrainSerializationUpgrader_1_2.js +2 -6
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +44 -3
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +81 -17
- package/src/engine/ecs/terrain/util/obtainTerrain.d.ts.map +1 -1
- package/src/engine/ecs/terrain/util/obtainTerrain.js +2 -0
- package/src/engine/ecs/tooltip/TooltipComponentSystem.d.ts +20 -20
- package/src/engine/ecs/tooltip/TooltipComponentSystem.d.ts.map +1 -1
- package/src/engine/ecs/tooltip/TooltipComponentSystem.js +36 -38
- package/src/engine/ecs/transform/TransformSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/ecs/transform/TransformSerializationUpgrader_0_1.js +2 -6
- package/src/engine/ecs/transform-attachment/TransformAttachmentSystem.d.ts.map +1 -1
- package/src/engine/ecs/transform-attachment/TransformAttachmentSystem.js +34 -41
- package/src/engine/graphics/camera/CameraShake.d.ts.map +1 -1
- package/src/engine/graphics/camera/CameraShake.js +12 -16
- package/src/engine/graphics/camera/CameraShakeBehavior.d.ts +2 -2
- package/src/engine/graphics/camera/CameraShakeBehavior.d.ts.map +1 -1
- package/src/engine/graphics/camera/CameraShakeBehavior.js +3 -4
- package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts +2 -2
- package/src/engine/graphics/camera/CameraShakeTraumaBehavior.d.ts.map +1 -1
- package/src/engine/graphics/camera/CameraShakeTraumaBehavior.js +3 -5
- package/src/engine/graphics/composit/CompositLayer.d.ts.map +1 -1
- package/src/engine/graphics/composit/CompositLayer.js +6 -6
- package/src/engine/graphics/composit/LayerCompositer.d.ts.map +1 -1
- package/src/engine/graphics/composit/LayerCompositer.js +17 -19
- package/src/engine/graphics/debug/VisualSymbolLine.d.ts.map +1 -1
- package/src/engine/graphics/debug/VisualSymbolLine.js +11 -13
- package/src/engine/graphics/ecs/animation/AnimationControllerSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/AnimationControllerSystem.js +2 -5
- package/src/engine/graphics/ecs/animation/AnimationRule.d.ts +2 -2
- package/src/engine/graphics/ecs/animation/AnimationRule.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/AnimationRule.js +3 -2
- package/src/engine/graphics/ecs/animation/animator/AnimationClip.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/AnimationClip.js +20 -22
- package/src/engine/graphics/ecs/animation/animator/AnimationClipDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/AnimationClipDefinition.js +23 -25
- package/src/engine/graphics/ecs/animation/animator/AnimationGraphSystem.d.ts +4 -4
- package/src/engine/graphics/ecs/animation/animator/AnimationGraphSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/AnimationGraphSystem.js +32 -33
- package/src/engine/graphics/ecs/animation/animator/AnimationNotification.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/AnimationNotification.js +10 -12
- package/src/engine/graphics/ecs/animation/animator/AnimationNotificationDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/AnimationNotificationDefinition.js +10 -12
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpace.d.ts +1 -1
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpace.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpace.js +10 -12
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpaceDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpaceDefinition.js +5 -7
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpacePoint.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/blending/BlendSpacePoint.js +10 -12
- package/src/engine/graphics/ecs/animation/animator/blending/BlendState.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/blending/BlendState.js +5 -7
- package/src/engine/graphics/ecs/animation/animator/blending/BlendStateDatabase.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/blending/BlendStateDatabase.js +18 -21
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraph.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraph.js +75 -77
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationState.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationState.js +35 -38
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationTransition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationTransition.js +30 -32
- package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationStateDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationStateDefinition.js +31 -33
- package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationTransitionDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationTransitionDefinition.js +20 -23
- package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/Camera.js +45 -47
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts +1 -1
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/CameraSystem.js +8 -9
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/serialization/CameraSerializationUpgrader_0_1.js +37 -41
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.js +8 -10
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSerializationUpgrader_0_1.js +2 -6
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.js +5 -10
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraLanderSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraLanderSystem.js +20 -25
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.js +2 -2
- package/src/engine/graphics/ecs/highlight/HighlightSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/graphics/ecs/highlight/HighlightSerializationUpgrader_0_1.js +2 -6
- package/src/engine/graphics/ecs/highlight/plugin/OutlineRenderPlugin.d.ts.map +1 -1
- package/src/engine/graphics/ecs/highlight/plugin/OutlineRenderPlugin.js +23 -25
- package/src/engine/graphics/ecs/highlight/renderer/HighlightRenderElement.d.ts.map +1 -1
- package/src/engine/graphics/ecs/highlight/renderer/HighlightRenderElement.js +13 -16
- package/src/engine/graphics/ecs/highlight/renderer/HighlightRenderGroup.d.ts.map +1 -1
- package/src/engine/graphics/ecs/highlight/renderer/HighlightRenderGroup.js +5 -7
- package/src/engine/graphics/ecs/highlight/renderer/OutlineRenderer.d.ts +12 -12
- package/src/engine/graphics/ecs/highlight/renderer/OutlineRenderer.d.ts.map +1 -1
- package/src/engine/graphics/ecs/highlight/renderer/OutlineRenderer.js +54 -57
- package/src/engine/graphics/ecs/highlight/system/HighlightSystemBase.js +205 -205
- package/src/engine/graphics/ecs/light/Light.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/Light.js +59 -65
- package/src/engine/graphics/ecs/light/LightSystem.d.ts +16 -16
- package/src/engine/graphics/ecs/light/LightSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/LightSystem.js +23 -25
- package/src/engine/graphics/ecs/light/binding/LightBinding.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/binding/LightBinding.js +13 -14
- package/src/engine/graphics/ecs/light/binding/fp/FPLightBinding.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/binding/fp/FPLightBinding.js +11 -15
- package/src/engine/graphics/ecs/light/shadow/ShadowMap.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/shadow/ShadowMap.js +5 -9
- package/src/engine/graphics/ecs/light/three/ThreeLightCache.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/three/ThreeLightCache.js +20 -22
- package/src/engine/graphics/ecs/mesh/Mesh.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh/Mesh.js +35 -37
- package/src/engine/graphics/ecs/mesh/MeshSystem.d.ts +15 -15
- package/src/engine/graphics/ecs/mesh/MeshSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh/MeshSystem.js +21 -22
- package/src/engine/graphics/ecs/mesh/skeleton/BoneMapping.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh/skeleton/BoneMapping.js +1 -3
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometry.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometry.js +51 -52
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.d.ts +6 -6
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.js +37 -37
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshAnimationControllerSystem.d.ts +1 -1
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshAnimationControllerSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshAnimationControllerSystem.js +9 -11
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshHighlightSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshHighlightSystem.js +1 -5
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshSystem.d.ts +10 -10
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMeshSystem.js +22 -22
- package/src/engine/graphics/ecs/mesh-v2/render/SGThreeObjectCache.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/render/SGThreeObjectCache.js +6 -8
- package/src/engine/graphics/ecs/mesh-v2/render/ShadedGeometryRendererContext.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/render/ShadedGeometryRendererContext.js +8 -10
- package/src/engine/graphics/ecs/mesh-v2/render/adapters/AbstractRenderAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/render/adapters/AbstractRenderAdapter.js +12 -15
- package/src/engine/graphics/ecs/mesh-v2/render/adapters/GenericRendererAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/render/adapters/GenericRendererAdapter.js +6 -10
- package/src/engine/graphics/ecs/mesh-v2/render/optimization/RuntimeDrawMethodOptimizer.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/render/optimization/RuntimeDrawMethodOptimizer.js +12 -15
- package/src/engine/graphics/ecs/path/PathDisplay.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/PathDisplay.js +5 -7
- package/src/engine/graphics/ecs/path/PathDisplaySpec.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/PathDisplaySpec.js +10 -12
- package/src/engine/graphics/ecs/path/PathDisplaySystem.d.ts +6 -6
- package/src/engine/graphics/ecs/path/PathDisplaySystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/PathDisplaySystem.js +12 -17
- package/src/engine/graphics/ecs/path/entity/EntityPath.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/entity/EntityPath.js +15 -17
- package/src/engine/graphics/ecs/path/entity/EntityPathMarker.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/entity/EntityPathMarker.js +15 -17
- package/src/engine/graphics/ecs/path/entity/EntityPathMarkerDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/entity/EntityPathMarkerDefinition.js +15 -17
- package/src/engine/graphics/ecs/path/entity/EntityPathStyle.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/entity/EntityPathStyle.js +20 -23
- package/src/engine/graphics/ecs/path/highlight/PathDisplayHighlightSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/highlight/PathDisplayHighlightSystem.js +1 -5
- package/src/engine/graphics/ecs/path/ribbon/RibbonPathBuilder.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/ribbon/RibbonPathBuilder.js +15 -17
- package/src/engine/graphics/ecs/path/ribbon/RibbonPathStyle.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/ribbon/RibbonPathStyle.js +15 -17
- package/src/engine/graphics/ecs/path/tube/MatcapMaterialDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/tube/MatcapMaterialDefinition.js +5 -7
- package/src/engine/graphics/ecs/path/tube/StandardMaterialDefinition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/tube/StandardMaterialDefinition.js +2 -4
- package/src/engine/graphics/ecs/path/tube/TubePathStyle.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/tube/TubePathStyle.js +84 -86
- package/src/engine/graphics/ecs/path/tube/build/StreamGeometryBuilder.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/tube/build/StreamGeometryBuilder.js +37 -36
- package/src/engine/graphics/ecs/path/tube/build/TubePathBuilder.d.ts.map +1 -1
- package/src/engine/graphics/ecs/path/tube/build/TubePathBuilder.js +23 -25
- package/src/engine/graphics/ecs/sprite/SpriteSystemPE.d.ts.map +1 -1
- package/src/engine/graphics/ecs/sprite/SpriteSystemPE.js +2 -3
- package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts +5 -5
- package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/trail2d/Trail2DSystem.js +6 -9
- package/src/engine/graphics/ecs/trail3d/Trail3DSystem.d.ts +4 -4
- package/src/engine/graphics/ecs/trail3d/Trail3DSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/trail3d/Trail3DSystem.js +5 -5
- package/src/engine/graphics/ecs/water/WaterSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/WaterSerializationUpgrader_0_1.js +2 -6
- package/src/engine/graphics/ecs/water/WaterSystem.d.ts +1 -1
- package/src/engine/graphics/ecs/water/WaterSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/WaterSystem.js +13 -15
- package/src/engine/graphics/geometry/MikkT/MikkTSpace.d.ts.map +1 -1
- package/src/engine/graphics/geometry/MikkT/MikkTSpace.js +97 -95
- package/src/engine/graphics/geometry/MikkT/SSubGroup.d.ts.map +1 -1
- package/src/engine/graphics/geometry/MikkT/SSubGroup.js +10 -12
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.d.ts.map +1 -1
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.js +103 -110
- package/src/engine/graphics/geometry/optimization/geometry_optimize_uv_tension.d.ts +18 -3
- package/src/engine/graphics/geometry/optimization/geometry_optimize_uv_tension.d.ts.map +1 -1
- package/src/engine/graphics/geometry/optimization/geometry_optimize_uv_tension.js +135 -85
- package/src/engine/graphics/geometry/optimization/merge/merge_geometry_hierarchy.d.ts.map +1 -1
- package/src/engine/graphics/geometry/optimization/merge/merge_geometry_hierarchy.js +3 -5
- package/src/engine/graphics/geometry/ribbon/Quad.d.ts +2 -2
- package/src/engine/graphics/geometry/ribbon/Quad.d.ts.map +1 -1
- package/src/engine/graphics/geometry/ribbon/Quad.js +17 -17
- package/src/engine/graphics/material/manager/ManagedMaterial.d.ts +6 -6
- package/src/engine/graphics/material/manager/ManagedMaterial.d.ts.map +1 -1
- package/src/engine/graphics/material/manager/ManagedMaterial.js +20 -20
- package/src/engine/graphics/material/optimization/MaterialDescriptor.d.ts.map +1 -1
- package/src/engine/graphics/material/optimization/MaterialDescriptor.js +11 -14
- package/src/engine/graphics/material/optimization/MaterialOptimizationContext.d.ts.map +1 -1
- package/src/engine/graphics/material/optimization/MaterialOptimizationContext.js +20 -23
- package/src/engine/graphics/material/optimization/UvContext.d.ts.map +1 -1
- package/src/engine/graphics/material/optimization/UvContext.js +10 -12
- package/src/engine/graphics/particles/node-based/editor/ParticleSpecificationEditorView.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/editor/ParticleSpecificationEditorView.js +23 -23
- package/src/engine/graphics/particles/node-based/rendering/AbstractParticleRenderer.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/rendering/AbstractParticleRenderer.js +5 -7
- package/src/engine/graphics/particles/node-based/rendering/billboard/BillboardParticleRenderer.d.ts +11 -11
- package/src/engine/graphics/particles/node-based/rendering/billboard/BillboardParticleRenderer.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/rendering/billboard/BillboardParticleRenderer.js +21 -23
- package/src/engine/graphics/particles/node-based/simulation/EmitterAttributeData.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/simulation/EmitterAttributeData.js +17 -19
- package/src/engine/graphics/particles/node-based/simulation/GLDataBuffer.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/simulation/GLDataBuffer.js +25 -27
- package/src/engine/graphics/particles/node-based/simulation/GLSLSimulationShader.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/simulation/GLSLSimulationShader.js +12 -16
- package/src/engine/graphics/particles/node-based/simulation/TransformFeedback.d.ts.map +1 -1
- package/src/engine/graphics/particles/node-based/simulation/TransformFeedback.js +64 -67
- package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts +3 -0
- package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.js +36 -39
- package/src/engine/graphics/particles/particular/engine/emitter/serde/ParticleEmitterSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/serde/ParticleEmitterSerializationUpgrader_0_1.js +2 -6
- package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.js +5 -7
- package/src/engine/graphics/particles/particular/engine/shader/ShaderManager.d.ts +10 -10
- package/src/engine/graphics/particles/particular/engine/shader/ShaderManager.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/shader/ShaderManager.js +12 -12
- package/src/engine/graphics/particles/particular/engine/simulator/AbstractSimulationStep.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/simulator/AbstractSimulationStep.js +35 -37
- package/src/engine/graphics/particles/particular/engine/simulator/SimulationStepCurlNoiseVelocity.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/simulator/SimulationStepCurlNoiseVelocity.js +1 -5
- package/src/engine/graphics/particles/particular/engine/simulator/SimulationStepDefinition.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/simulator/SimulationStepDefinition.js +11 -12
- 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 +199 -201
- package/src/engine/graphics/particles/particular/engine/utils/volume/ParticleVolume.d.ts +11 -11
- package/src/engine/graphics/particles/particular/engine/utils/volume/ParticleVolume.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/volume/ParticleVolume.js +13 -13
- package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts +6 -6
- package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/group/ParticleGroup.js +33 -34
- package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/group/ParticleSpecification.js +2 -8
- package/src/engine/graphics/render/Lines.d.ts.map +1 -1
- package/src/engine/graphics/render/Lines.js +2 -2
- package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/FrameBufferManager.js +20 -22
- package/src/engine/graphics/render/buffer/simple-fx/DepthLimitedBlur.d.ts +2 -2
- package/src/engine/graphics/render/buffer/simple-fx/DepthLimitedBlur.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/simple-fx/DepthLimitedBlur.js +16 -19
- package/src/engine/graphics/render/buffer/simple-fx/SimplePostProcessEffect.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/simple-fx/SimplePostProcessEffect.js +5 -8
- package/src/engine/graphics/render/buffer/simple-fx/ao/AmbientOcclusionPostProcessEffect.d.ts +2 -2
- package/src/engine/graphics/render/buffer/simple-fx/ao/AmbientOcclusionPostProcessEffect.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/simple-fx/ao/AmbientOcclusionPostProcessEffect.js +37 -38
- package/src/engine/graphics/render/buffer/slot/ProgramSlotValue.d.ts +5 -5
- package/src/engine/graphics/render/buffer/slot/ProgramSlotValue.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/slot/ProgramSlotValue.js +8 -6
- package/src/engine/graphics/render/buffer/slot/ProgramValueSlotDefinition.d.ts +5 -5
- package/src/engine/graphics/render/buffer/slot/ProgramValueSlotDefinition.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/slot/ProgramValueSlotDefinition.js +6 -6
- package/src/engine/graphics/render/buffer/slot/parameter/ProgramValueSlotParameterSet.d.ts.map +1 -1
- package/src/engine/graphics/render/buffer/slot/parameter/ProgramValueSlotParameterSet.js +11 -13
- package/src/engine/graphics/render/forward_plus/LightManager.d.ts +6 -6
- package/src/engine/graphics/render/forward_plus/LightManager.d.ts.map +1 -1
- package/src/engine/graphics/render/forward_plus/LightManager.js +15 -18
- package/src/engine/graphics/render/forward_plus/LightRenderMetadata.d.ts +5 -5
- package/src/engine/graphics/render/forward_plus/LightRenderMetadata.d.ts.map +1 -1
- package/src/engine/graphics/render/forward_plus/LightRenderMetadata.js +7 -8
- package/src/engine/graphics/render/forward_plus/model/Decal.d.ts +1 -1
- package/src/engine/graphics/render/forward_plus/model/Decal.d.ts.map +1 -1
- package/src/engine/graphics/render/forward_plus/model/Decal.js +22 -22
- package/src/engine/graphics/render/gizmo/GizmoShapeRenderingInterface.d.ts.map +1 -1
- package/src/engine/graphics/render/gizmo/GizmoShapeRenderingInterface.js +8 -8
- package/src/engine/graphics/render/layers/RenderLayerManager.d.ts.map +1 -1
- package/src/engine/graphics/render/layers/RenderLayerManager.js +10 -12
- package/src/engine/graphics/render/layers/RenderLayerManagerState.d.ts.map +1 -1
- package/src/engine/graphics/render/layers/RenderLayerManagerState.js +5 -9
- package/src/engine/graphics/render/layers/RenderLayerState.d.ts.map +1 -1
- package/src/engine/graphics/render/layers/RenderLayerState.js +5 -7
- package/src/engine/graphics/render/utils/ThreeBypassRenderer.d.ts.map +1 -1
- package/src/engine/graphics/render/utils/ThreeBypassRenderer.js +6 -9
- package/src/engine/graphics/render/view/CameraView.d.ts.map +1 -1
- package/src/engine/graphics/render/view/CameraView.js +56 -59
- package/src/engine/graphics/render/view/CameraViewManager.d.ts.map +1 -1
- package/src/engine/graphics/render/view/CameraViewManager.js +18 -20
- package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts +6 -6
- package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts.map +1 -1
- package/src/engine/graphics/render/visibility/IncrementalDeltaSet.js +40 -39
- package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts.map +1 -1
- package/src/engine/graphics/render/visibility/VisibilityComputer.js +19 -22
- package/src/engine/graphics/render/visibility/VisibilityFilter.d.ts +5 -5
- package/src/engine/graphics/render/visibility/VisibilityFilter.d.ts.map +1 -1
- package/src/engine/graphics/render/visibility/VisibilityFilter.js +6 -6
- package/src/engine/graphics/render/visibility/hiz/buffer/HierarchicalZBuffer.d.ts.map +1 -1
- package/src/engine/graphics/render/visibility/hiz/buffer/HierarchicalZBuffer.js +40 -43
- package/src/engine/graphics/render/visibility/hiz/query/BatchOcclusionQuery.d.ts +1 -1
- package/src/engine/graphics/render/visibility/hiz/query/BatchOcclusionQuery.d.ts.map +1 -1
- package/src/engine/graphics/render/visibility/hiz/query/BatchOcclusionQuery.js +2 -2
- package/src/engine/graphics/sh3/lpv/WebGLCubeProbeRenderer.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lpv/WebGLCubeProbeRenderer.js +7 -9
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.js +24 -28
- package/src/engine/graphics/shadows/ShadowMapRenderer.d.ts.map +1 -1
- package/src/engine/graphics/shadows/ShadowMapRenderer.js +11 -15
- package/src/engine/graphics/texture/AttributeDataTexture.d.ts +11 -11
- package/src/engine/graphics/texture/AttributeDataTexture.d.ts.map +1 -1
- package/src/engine/graphics/texture/AttributeDataTexture.js +14 -14
- package/src/engine/graphics/texture/TextureBackedMemoryRegion.d.ts +6 -6
- package/src/engine/graphics/texture/TextureBackedMemoryRegion.d.ts.map +1 -1
- package/src/engine/graphics/texture/TextureBackedMemoryRegion.js +33 -32
- package/src/engine/graphics/texture/atlas/AtlasLookupTexture.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/AtlasLookupTexture.js +12 -12
- package/src/engine/graphics/texture/atlas/CachingTextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/CachingTextureAtlas.js +17 -20
- package/src/engine/graphics/texture/atlas/ReferencedTextureAtlas.d.ts +1 -1
- package/src/engine/graphics/texture/atlas/ReferencedTextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/ReferencedTextureAtlas.js +14 -14
- package/src/engine/graphics/texture/atlas/TextureAtlas.d.ts +10 -10
- package/src/engine/graphics/texture/atlas/TextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/TextureAtlas.js +13 -14
- package/src/engine/graphics/texture/atlas/gpu/WebGLTextureAtlas.d.ts.map +1 -1
- package/src/engine/graphics/texture/atlas/gpu/WebGLTextureAtlas.js +49 -49
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +5 -5
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.js +6 -6
- package/src/engine/graphics/trail/tube/TubeX.d.ts +6 -6
- package/src/engine/graphics/trail/tube/TubeX.d.ts.map +1 -1
- package/src/engine/graphics/trail/tube/TubeX.js +3 -3
- package/src/engine/graphics/trail/x/RibbonX.d.ts.map +1 -1
- package/src/engine/graphics/trail/x/RibbonX.js +36 -39
- package/src/engine/grid/area/AreaTrigger.d.ts +1 -1
- package/src/engine/grid/area/AreaTrigger.d.ts.map +1 -1
- package/src/engine/grid/area/AreaTrigger.js +8 -7
- package/src/engine/grid/area/TriggerAction.d.ts.map +1 -1
- package/src/engine/grid/area/TriggerAction.js +2 -4
- package/src/engine/grid/grid2transform/GridPosition2TransformSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/grid/grid2transform/GridPosition2TransformSerializationUpgrader_0_1.js +3 -6
- package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts +3 -3
- package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts.map +1 -1
- package/src/engine/grid/grid2transform/GridPosition2TransformSystem.js +6 -9
- package/src/engine/grid/position/GridPositionSerializationUpdater_0_1.d.ts.map +1 -1
- package/src/engine/grid/position/GridPositionSerializationUpdater_0_1.js +2 -6
- package/src/engine/grid/position/GridPositionSystem.d.ts.map +1 -1
- package/src/engine/grid/position/GridPositionSystem.js +7 -11
- package/src/engine/grid/transform2grid/Transform2GridPositionSystem.d.ts.map +1 -1
- package/src/engine/grid/transform2grid/Transform2GridPositionSystem.js +32 -40
- package/src/engine/input/devices/PointerDevice.d.ts +8 -0
- package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
- package/src/engine/input/devices/PointerDevice.js +10 -4
- package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
- package/src/engine/input/ecs/systems/InputControllerSystem.js +9 -13
- package/src/engine/input/ecs/systems/InputSystem.d.ts +1 -1
- package/src/engine/input/ecs/systems/InputSystem.d.ts.map +1 -1
- package/src/engine/input/ecs/systems/InputSystem.js +8 -8
- package/src/engine/intelligence/behavior/SelectorBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/SelectorBehavior.js +13 -17
- package/src/engine/intelligence/behavior/composite/ParallelBehavior.d.ts +10 -10
- package/src/engine/intelligence/behavior/composite/ParallelBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/ParallelBehavior.js +12 -11
- package/src/engine/intelligence/behavior/composite/ParallelBehaviorSerializationAdapter.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/ParallelBehaviorSerializationAdapter.js +2 -6
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.js +19 -22
- package/src/engine/intelligence/behavior/composite/SequenceBehaviorSerializationAdapter.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/SequenceBehaviorSerializationAdapter.js +2 -6
- package/src/engine/intelligence/behavior/decorator/AbstractDecoratorBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/AbstractDecoratorBehavior.js +6 -10
- package/src/engine/intelligence/behavior/decorator/InvertStatusBehaviorSerializationAdapter.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/InvertStatusBehaviorSerializationAdapter.js +2 -6
- package/src/engine/intelligence/behavior/decorator/RepeatBehavior.d.ts +5 -5
- package/src/engine/intelligence/behavior/decorator/RepeatBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/RepeatBehavior.js +7 -7
- package/src/engine/intelligence/behavior/decorator/RepeatBehaviorSerializationAdapter.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/RepeatBehaviorSerializationAdapter.js +2 -6
- package/src/engine/intelligence/behavior/decorator/RepeatUntilSuccessBehavior.d.ts +2 -2
- package/src/engine/intelligence/behavior/decorator/RepeatUntilSuccessBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/decorator/RepeatUntilSuccessBehavior.js +7 -7
- package/src/engine/intelligence/behavior/ecs/BehaviorSystem.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorSystem.js +3 -5
- package/src/engine/intelligence/behavior/primitive/PromiseBehavior.d.ts +2 -2
- package/src/engine/intelligence/behavior/primitive/PromiseBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/PromiseBehavior.js +3 -4
- package/src/engine/intelligence/behavior/util/RotationBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/util/RotationBehavior.js +8 -13
- package/src/engine/intelligence/blackboard/Blackboard.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/Blackboard.js +14 -14
- package/src/engine/intelligence/blackboard/BlackboardDynamicStorageAdapter.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/BlackboardDynamicStorageAdapter.js +52 -55
- package/src/engine/intelligence/blackboard/BlackboardStack.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/BlackboardStack.js +12 -16
- package/src/engine/intelligence/blackboard/BlackboardValue.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/BlackboardValue.js +6 -5
- package/src/engine/intelligence/controller/graph/StateGraph.d.ts +1 -1
- package/src/engine/intelligence/controller/graph/StateGraph.d.ts.map +1 -1
- package/src/engine/intelligence/controller/graph/StateGraph.js +2 -2
- package/src/engine/intelligence/controller/graph/StateGraphDescription.js +6 -8
- package/src/engine/intelligence/controller/graph/StateGraphSystem.d.ts.map +1 -1
- package/src/engine/intelligence/controller/graph/StateGraphSystem.js +1 -5
- package/src/engine/intelligence/mcts/MoveEdge.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/MoveEdge.js +5 -8
- package/src/engine/intelligence/resource/ResourceAllocationBid.d.ts +5 -5
- package/src/engine/intelligence/resource/ResourceAllocationBid.d.ts.map +1 -1
- package/src/engine/intelligence/resource/ResourceAllocationBid.js +6 -6
- package/src/engine/interpolation/InterpolationLog.d.ts.map +1 -1
- package/src/engine/interpolation/InterpolationLog.js +564 -583
- package/src/engine/interpolation/InterpolationSystem.d.ts.map +1 -1
- package/src/engine/interpolation/InterpolationSystem.js +232 -233
- package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTableDescriptor.js +17 -20
- package/src/engine/logging/elastic/ElasticSearchLogger.d.ts +6 -6
- package/src/engine/logging/elastic/ElasticSearchLogger.d.ts.map +1 -1
- package/src/engine/logging/elastic/ElasticSearchLogger.js +31 -32
- package/src/engine/metrics/ProxyMetricsGateway.d.ts.map +1 -1
- package/src/engine/metrics/ProxyMetricsGateway.js +5 -9
- package/src/engine/navigation/ecs/components/Path.d.ts.map +1 -1
- package/src/engine/navigation/ecs/components/Path.js +30 -32
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_0_1.js +2 -6
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_1_2.d.ts.map +1 -1
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_1_2.js +2 -6
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_2_3.d.ts.map +1 -1
- package/src/engine/navigation/ecs/components/PathSerializationUpgrader_2_3.js +34 -38
- package/src/engine/navigation/ecs/path_following/PathFollowerSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/navigation/ecs/path_following/PathFollowerSerializationUpgrader_0_1.js +2 -6
- package/src/engine/navigation/ecs/path_following/PathFollowerSerializationUpgrader_1_2.d.ts.map +1 -1
- package/src/engine/navigation/ecs/path_following/PathFollowerSerializationUpgrader_1_2.js +2 -6
- package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts.map +1 -1
- package/src/engine/navigation/ecs/path_following/PathFollowingSystem.js +12 -17
- package/src/engine/network/NetworkSession.d.ts.map +1 -1
- package/src/engine/network/NetworkSession.js +2037 -2036
- package/src/engine/network/PriorityFetch.d.ts +6 -6
- package/src/engine/network/PriorityFetch.d.ts.map +1 -1
- package/src/engine/network/PriorityFetch.js +14 -14
- package/src/engine/network/diagnostics/BandwidthMeter.d.ts.map +1 -1
- package/src/engine/network/diagnostics/BandwidthMeter.js +150 -155
- package/src/engine/network/diagnostics/ReplayLog.d.ts +2 -2
- package/src/engine/network/diagnostics/ReplayLog.d.ts.map +1 -1
- package/src/engine/network/diagnostics/ReplayLog.js +132 -137
- package/src/engine/network/diagnostics/SyncTest.d.ts.map +1 -1
- package/src/engine/network/diagnostics/SyncTest.js +146 -151
- package/src/engine/network/orchestrator/NetworkPeer.d.ts.map +1 -1
- package/src/engine/network/orchestrator/NetworkPeer.js +1202 -1209
- package/src/engine/network/orchestrator/ServerAuthoritativeClient.d.ts +4 -4
- package/src/engine/network/orchestrator/ServerAuthoritativeClient.d.ts.map +1 -1
- package/src/engine/network/orchestrator/ServerAuthoritativeClient.js +8 -10
- package/src/engine/network/orchestrator/ServerAuthoritativeServer.d.ts +7 -7
- package/src/engine/network/orchestrator/ServerAuthoritativeServer.d.ts.map +1 -1
- package/src/engine/network/orchestrator/ServerAuthoritativeServer.js +643 -654
- package/src/engine/network/replication/Replicator.d.ts +24 -24
- package/src/engine/network/replication/Replicator.d.ts.map +1 -1
- package/src/engine/network/replication/Replicator.js +405 -410
- package/src/engine/network/sim/ReplicatedComponentRegistry.d.ts.map +1 -1
- package/src/engine/network/sim/ReplicatedComponentRegistry.js +133 -140
- package/src/engine/network/sim/RewindEngine.d.ts.map +1 -1
- package/src/engine/network/sim/RewindEngine.js +179 -182
- package/src/engine/network/sim/SimActionExecutor.d.ts +34 -34
- package/src/engine/network/sim/SimActionExecutor.d.ts.map +1 -1
- package/src/engine/network/sim/SimActionExecutor.js +305 -306
- package/src/engine/network/sim/SimActionRegistry.d.ts.map +1 -1
- package/src/engine/network/sim/SimActionRegistry.js +121 -128
- package/src/engine/network/sim/SmoothingState.d.ts.map +1 -1
- package/src/engine/network/sim/SmoothingState.js +220 -222
- package/src/engine/network/sim/SpeculationLog.d.ts.map +1 -1
- package/src/engine/network/sim/SpeculationLog.js +79 -84
- package/src/engine/network/state/Baseline.d.ts.map +1 -1
- package/src/engine/network/state/Baseline.js +78 -83
- package/src/engine/network/state/ChangedEntitySet.d.ts.map +1 -1
- package/src/engine/network/state/ChangedEntitySet.js +253 -256
- package/src/engine/network/state/MutationLedger.d.ts.map +1 -1
- package/src/engine/network/state/MutationLedger.js +179 -182
- package/src/engine/network/state/ReplicationSlotTable.d.ts.map +1 -1
- package/src/engine/network/state/ReplicationSlotTable.js +206 -211
- package/src/engine/network/time/AdaptiveRenderDelay.d.ts.map +1 -1
- package/src/engine/network/time/AdaptiveRenderDelay.js +250 -258
- package/src/engine/network/time/JitterBuffer.d.ts.map +1 -1
- package/src/engine/network/time/JitterBuffer.js +113 -116
- package/src/engine/network/time/TimeSync.d.ts.map +1 -1
- package/src/engine/network/time/TimeSync.js +145 -152
- package/src/engine/network/transport/LoopbackTransport.d.ts.map +1 -1
- package/src/engine/network/transport/LoopbackTransport.js +165 -173
- package/src/engine/network/transport/ReliableCommandPipeline.d.ts.map +1 -1
- package/src/engine/network/transport/ReliableCommandPipeline.js +315 -320
- package/src/engine/network/transport/adapters/SimulatedTransport.d.ts.map +1 -1
- package/src/engine/network/transport/adapters/SimulatedTransport.js +235 -241
- package/src/engine/network/transport/adapters/WebSocketTransport.d.ts.map +1 -1
- package/src/engine/network/transport/adapters/WebSocketTransport.js +154 -154
- package/src/engine/network/transport/adapters/WebTransportTransport.d.ts.map +1 -1
- package/src/engine/network/transport/adapters/WebTransportTransport.js +195 -199
- package/src/engine/network/transport/fragments/FragmentAssembler.d.ts.map +1 -1
- package/src/engine/network/transport/fragments/FragmentAssembler.js +286 -291
- package/src/engine/network/transport/fragments/FragmentRetention.d.ts.map +1 -1
- package/src/engine/network/transport/fragments/FragmentRetention.js +191 -194
- package/src/engine/physics/body/BodyStorage.d.ts +2 -2
- package/src/engine/physics/body/BodyStorage.d.ts.map +1 -1
- package/src/engine/physics/body/BodyStorage.js +406 -406
- package/src/engine/physics/body/SolverBodyState.d.ts +8 -8
- package/src/engine/physics/body/SolverBodyState.d.ts.map +1 -1
- package/src/engine/physics/body/SolverBodyState.js +10 -10
- package/src/engine/physics/broadphase/PairList.d.ts +1 -1
- package/src/engine/physics/broadphase/PairList.d.ts.map +1 -1
- package/src/engine/physics/broadphase/PairList.js +98 -97
- package/src/engine/physics/contact/ManifoldStore.d.ts +2 -2
- package/src/engine/physics/contact/ManifoldStore.d.ts.map +1 -1
- package/src/engine/physics/contact/ManifoldStore.js +3 -4
- package/src/engine/physics/ecs/ColliderObserverSystem.d.ts +2 -2
- package/src/engine/physics/ecs/ColliderObserverSystem.d.ts.map +1 -1
- package/src/engine/physics/ecs/ColliderObserverSystem.js +102 -103
- package/src/engine/physics/ecs/PhysicsSystem.d.ts +2 -2
- package/src/engine/physics/ecs/PhysicsSystem.d.ts.map +1 -1
- package/src/engine/physics/ecs/PhysicsSystem.js +248 -249
- package/src/engine/physics/events/ContactEventBuffer.d.ts +1 -1
- package/src/engine/physics/events/ContactEventBuffer.d.ts.map +1 -1
- package/src/engine/physics/events/ContactEventBuffer.js +2 -1
- package/src/engine/physics/fluid/FluidField.d.ts +54 -0
- package/src/engine/physics/fluid/FluidField.d.ts.map +1 -1
- package/src/engine/physics/fluid/FluidField.js +198 -15
- package/src/engine/physics/fluid/FluidSimulator.d.ts.map +1 -1
- package/src/engine/physics/fluid/FluidSimulator.js +14 -4
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
- package/src/engine/physics/fluid/ecs/FluidSystem.d.ts +0 -45
- package/src/engine/physics/fluid/ecs/FluidSystem.d.ts.map +1 -1
- package/src/engine/physics/fluid/ecs/FluidSystem.js +8 -144
- package/src/engine/physics/fluid/ecs/FluidWorkerCore.d.ts +43 -0
- package/src/engine/physics/fluid/ecs/FluidWorkerCore.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/FluidWorkerCore.js +123 -0
- package/src/engine/physics/fluid/ecs/WorkerFluidSystem.d.ts +119 -0
- package/src/engine/physics/fluid/ecs/WorkerFluidSystem.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/WorkerFluidSystem.js +395 -0
- package/src/engine/physics/fluid/ecs/fluid.worker.d.ts +2 -0
- package/src/engine/physics/fluid/ecs/fluid.worker.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/fluid.worker.js +12 -0
- package/src/engine/physics/fluid/ecs/fluid_build_world_to_grid.d.ts +20 -0
- package/src/engine/physics/fluid/ecs/fluid_build_world_to_grid.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/fluid_build_world_to_grid.js +32 -0
- package/src/engine/physics/fluid/ecs/fluid_gather_visible_effectors.d.ts +22 -0
- package/src/engine/physics/fluid/ecs/fluid_gather_visible_effectors.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/fluid_gather_visible_effectors.js +47 -0
- package/src/engine/physics/fluid/ecs/fluid_reanchor_field.d.ts +28 -0
- package/src/engine/physics/fluid/ecs/fluid_reanchor_field.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/fluid_reanchor_field.js +85 -0
- package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.d.ts +11 -0
- package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/fluid_sync_effectors_from_transform.js +16 -0
- package/src/engine/physics/fluid/ecs/fluid_worker_protocol.d.ts +51 -0
- package/src/engine/physics/fluid/ecs/fluid_worker_protocol.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/fluid_worker_protocol.js +111 -0
- package/src/engine/physics/fluid/ecs/makeFluidWorker.d.ts +17 -0
- package/src/engine/physics/fluid/ecs/makeFluidWorker.d.ts.map +1 -0
- package/src/engine/physics/fluid/ecs/makeFluidWorker.js +18 -0
- package/src/engine/physics/island/IslandBuilder.d.ts.map +1 -1
- package/src/engine/physics/island/IslandBuilder.js +84 -86
- package/src/engine/physics/mls-mpm/MLS_MPM.d.ts.map +1 -1
- package/src/engine/physics/mls-mpm/MLS_MPM.js +24 -26
- package/src/engine/physics/queries/PhysicsSurfacePoint.d.ts.map +1 -1
- package/src/engine/physics/queries/PhysicsSurfacePoint.js +98 -100
- package/src/engine/physics/vehicle/RaycastVehicle.d.ts +6 -6
- package/src/engine/physics/vehicle/RaycastVehicle.d.ts.map +1 -1
- package/src/engine/physics/vehicle/RaycastVehicle.js +357 -344
- package/src/engine/plugin/PluginReferenceContext.d.ts +12 -12
- package/src/engine/plugin/PluginReferenceContext.d.ts.map +1 -1
- package/src/engine/plugin/PluginReferenceContext.js +24 -25
- package/src/engine/scene/Scene.d.ts +5 -5
- package/src/engine/scene/Scene.d.ts.map +1 -1
- package/src/engine/scene/Scene.js +24 -23
- package/src/engine/scene/SceneManager.d.ts +5 -5
- package/src/engine/scene/SceneManager.d.ts.map +1 -1
- package/src/engine/scene/SceneManager.js +13 -14
- package/src/engine/sound/SoundEngine.d.ts +2 -2
- package/src/engine/sound/SoundEngine.d.ts.map +1 -1
- package/src/engine/sound/SoundEngine.js +7 -8
- package/src/engine/sound/asset/SoundAssetPlaybackSpec.d.ts.map +1 -1
- package/src/engine/sound/asset/SoundAssetPlaybackSpec.js +16 -20
- package/src/engine/sound/ecs/SoundController.d.ts.map +1 -1
- package/src/engine/sound/ecs/SoundController.js +37 -33
- package/src/engine/sound/ecs/SoundControllerSystem.d.ts.map +1 -1
- package/src/engine/sound/ecs/SoundControllerSystem.js +5 -11
- package/src/engine/sound/ecs/SoundListener.d.ts.map +1 -1
- package/src/engine/sound/ecs/SoundListener.js +4 -6
- package/src/engine/sound/ecs/SoundListenerSystem.d.ts +6 -6
- package/src/engine/sound/ecs/SoundListenerSystem.d.ts.map +1 -1
- package/src/engine/sound/ecs/SoundListenerSystem.js +22 -23
- package/src/engine/sound/ecs/audio/AudioEmitter.d.ts +10 -4
- package/src/engine/sound/ecs/audio/AudioEmitter.d.ts.map +1 -1
- package/src/engine/sound/ecs/audio/AudioEmitter.js +131 -122
- package/src/engine/sound/ecs/audio/AudioEmitterSerializationAdapter.d.ts +34 -0
- package/src/engine/sound/ecs/audio/AudioEmitterSerializationAdapter.d.ts.map +1 -0
- package/src/engine/sound/ecs/audio/AudioEmitterSerializationAdapter.js +68 -0
- package/src/engine/sound/ecs/audio/AudioEmitterSystem.d.ts +6 -6
- package/src/engine/sound/ecs/audio/AudioEmitterSystem.d.ts.map +1 -1
- package/src/engine/sound/ecs/audio/AudioEmitterSystem.js +314 -316
- package/src/engine/sound/ecs/emitter/SoundEmitterComponentContext.d.ts.map +1 -1
- package/src/engine/sound/ecs/emitter/SoundEmitterComponentContext.js +31 -1
- package/src/engine/sound/ecs/emitter/SoundEmitterSerializationUpgrader_0_1.d.ts.map +1 -1
- package/src/engine/sound/ecs/emitter/SoundEmitterSerializationUpgrader_0_1.js +2 -6
- package/src/engine/sound/ecs/emitter/SoundEmitterSerializationUpgrader_1_2.d.ts.map +1 -1
- package/src/engine/sound/ecs/emitter/SoundEmitterSerializationUpgrader_1_2.js +2 -6
- package/src/engine/sound/ecs/emitter/SoundEmitterSystem.d.ts +5 -5
- package/src/engine/sound/ecs/emitter/SoundEmitterSystem.d.ts.map +1 -1
- package/src/engine/sound/ecs/emitter/SoundEmitterSystem.js +159 -159
- package/src/engine/sound/material/concrete/RandomSoundMaterial.d.ts.map +1 -1
- package/src/engine/sound/material/concrete/RandomSoundMaterial.js +5 -9
- package/src/engine/sound/material/concrete/SingleSoundMaterial.d.ts.map +1 -1
- package/src/engine/sound/material/concrete/SingleSoundMaterial.js +1 -6
- package/src/engine/sound/material/concrete/SoundMaterialComposition.d.ts.map +1 -1
- package/src/engine/sound/material/concrete/SoundMaterialComposition.js +18 -21
- package/src/engine/sound/material/detector/terrain/TerrainSoundMaterialSurfaceDetector.d.ts.map +1 -1
- package/src/engine/sound/material/detector/terrain/TerrainSoundMaterialSurfaceDetector.js +13 -15
- package/src/engine/sound/simulation/core/OccluderBody.d.ts +12 -12
- package/src/engine/sound/simulation/core/OccluderBody.d.ts.map +1 -1
- package/src/engine/sound/simulation/core/OccluderBody.js +74 -74
- package/src/engine/sound/simulation/prototypeAcousticSolver.js +5 -4
- package/src/engine/sound/sopra/definition/SopraPanningModel.d.ts +7 -3
- package/src/engine/sound/sopra/definition/SopraPanningModel.d.ts.map +1 -1
- package/src/engine/sound/sopra/definition/SopraPanningModel.js +34 -20
- package/src/engine/sound/sopra/legacy/soundEmitterToEventDescription.d.ts +15 -0
- package/src/engine/sound/sopra/legacy/soundEmitterToEventDescription.d.ts.map +1 -1
- package/src/engine/sound/sopra/legacy/soundEmitterToEventDescription.js +122 -106
- package/src/engine/sound/sopra/runtime/EventInstance.d.ts.map +1 -1
- package/src/engine/sound/sopra/runtime/EventInstance.js +852 -815
- package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts +20 -6
- package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts.map +1 -1
- package/src/engine/sound/sopra/util/buildAttenuationCurve.js +56 -21
- package/src/engine/ui/bindings/DomElementBinding.d.ts.map +1 -1
- package/src/engine/ui/bindings/DomElementBinding.js +15 -18
- package/src/engine/ui/bindings/DomElementBindingDescription.d.ts.map +1 -1
- package/src/engine/ui/bindings/DomElementBindingDescription.js +10 -14
- package/src/engine/ui/bindings/DomElementProcessor.d.ts.map +1 -1
- package/src/engine/ui/bindings/DomElementProcessor.js +5 -7
- package/src/engine/ui/bindings/DomElementProcessorManager.d.ts.map +1 -1
- package/src/engine/ui/bindings/DomElementProcessorManager.js +26 -26
- package/src/engine/ui/bindings/processors/DomElementProcessorTilt3D.d.ts.map +1 -1
- package/src/engine/ui/bindings/processors/DomElementProcessorTilt3D.js +15 -19
- package/src/engine/ui/cursor/CursorCoalescence.d.ts.map +1 -1
- package/src/engine/ui/cursor/CursorCoalescence.js +11 -14
- package/src/engine/ui/modal/ModalStack.d.ts.map +1 -1
- package/src/engine/ui/modal/ModalStack.js +19 -22
- package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts +4 -4
- package/src/engine/ui/notification/AnimatedObjectEmitter.d.ts.map +1 -1
- package/src/engine/ui/notification/AnimatedObjectEmitter.js +68 -70
- package/src/engine/ui/notification/NotificationManager.d.ts +4 -4
- package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
- package/src/engine/ui/notification/NotificationManager.js +27 -29
- package/src/engine/ui/notification/ViewEmitter.d.ts.map +1 -1
- package/src/engine/ui/notification/ViewEmitter.js +2 -2
- package/src/engine/ui/scene/SceneGUIContext.d.ts.map +1 -1
- package/src/engine/ui/scene/SceneGUIContext.js +20 -22
- package/src/engine/ui/tiles2d/TileMoveProgram.d.ts.map +1 -1
- package/src/engine/ui/tiles2d/TileMoveProgram.js +5 -7
- package/src/generation/GraphGenerationRule.d.ts.map +1 -1
- package/src/generation/GraphGenerationRule.js +10 -14
- package/src/generation/GridGeneratorConfig.d.ts.map +1 -1
- package/src/generation/GridGeneratorConfig.js +15 -19
- package/src/generation/filtering/CellFilterCellMatcher.d.ts.map +1 -1
- package/src/generation/filtering/CellFilterCellMatcher.js +5 -9
- package/src/generation/filtering/numeric/complex/CellFilterAngleToNormal.d.ts.map +1 -1
- package/src/generation/filtering/numeric/complex/CellFilterAngleToNormal.js +11 -15
- package/src/generation/grid/actions/ContinuousGridCellActionSetTerrainObstacle.d.ts.map +1 -1
- package/src/generation/grid/actions/ContinuousGridCellActionSetTerrainObstacle.js +11 -15
- package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts +10 -10
- package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.d.ts.map +1 -1
- package/src/generation/grid/actions/ContinuousGridCellActionWriteObstacle.js +20 -19
- package/src/generation/markers/matcher/MarkerNodeMatcherByType.d.ts.map +1 -1
- package/src/generation/markers/matcher/MarkerNodeMatcherByType.js +5 -9
- package/src/generation/placement/action/random/CellActionSelectRandom.d.ts.map +1 -1
- package/src/generation/placement/action/random/CellActionSelectRandom.js +11 -16
- package/src/view/ViewGroup.d.ts.map +1 -1
- package/src/view/ViewGroup.js +11 -14
- package/src/view/common/HTMLElementCacheKey.d.ts.map +1 -1
- package/src/view/common/HTMLElementCacheKey.js +21 -24
- package/src/view/common/TabbedView.d.ts +56 -26
- package/src/view/common/TabbedView.d.ts.map +1 -1
- package/src/view/common/TabbedView.js +128 -30
- package/src/view/common/dnd/DragAndDropContext.d.ts.map +1 -1
- package/src/view/common/dnd/DragAndDropContext.js +11 -12
- package/src/view/common/dnd/Draggable.d.ts +5 -5
- package/src/view/common/dnd/Draggable.d.ts.map +1 -1
- package/src/view/common/dnd/Draggable.js +6 -6
- package/src/view/controller/GuiController.d.ts +1 -1
- package/src/view/controller/GuiController.d.ts.map +1 -1
- package/src/view/controller/GuiController.js +3 -3
- package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
- package/src/view/controller/controls/BooleanVector3Control.js +2 -2
- package/src/view/controller/controls/NumericIntervalControl.d.ts +1 -1
- package/src/view/controller/controls/NumericIntervalControl.d.ts.map +1 -1
- package/src/view/controller/controls/NumericIntervalControl.js +90 -90
- package/src/view/controller/controls/Vector2Control.d.ts +1 -1
- package/src/view/controller/controls/Vector2Control.d.ts.map +1 -1
- package/src/view/controller/controls/Vector2Control.js +83 -83
- package/src/view/controller/controls/Vector3Control.d.ts +1 -1
- package/src/view/controller/controls/Vector3Control.d.ts.map +1 -1
- package/src/view/controller/controls/Vector3Control.js +90 -90
- package/{editor/view/ecs/components → src/view/controller/dat}/DatGuiController.d.ts +45 -45
- package/src/view/controller/dat/DatGuiController.d.ts.map +1 -0
- package/src/view/controller/dat/DatGuiController.js +216 -0
- package/src/view/currency/CompositeCurrencyLabelView.d.ts.map +1 -1
- package/src/view/currency/CompositeCurrencyLabelView.js +2 -2
- package/src/view/currency/CurrencyDenominationLabelView.d.ts.map +1 -1
- package/src/view/currency/CurrencyDenominationLabelView.js +2 -3
- package/src/view/currency/CurrencyDenominationSpec.d.ts.map +1 -1
- package/src/view/currency/CurrencyDenominationSpec.js +11 -12
- package/src/view/currency/CurrencyDisplaySpec.d.ts.map +1 -1
- package/src/view/currency/CurrencyDisplaySpec.js +5 -9
- package/src/view/elements/ColorPickerView.js +1 -1
- package/src/view/elements/EmptyView.js +1 -1
- package/src/view/elements/MeshPreview.d.ts +1 -1
- package/src/view/elements/MeshPreview.d.ts.map +1 -1
- package/src/view/elements/MeshPreview.js +4 -10
- package/{editor/view/ecs/components/particles/ColorParameterLUTController.d.ts → src/view/elements/drawCheckers.d.ts} +13 -14
- package/src/view/elements/drawCheckers.d.ts.map +1 -0
- package/src/view/elements/drawCheckers.js +33 -0
- package/src/view/elements/progress/segmented/SegmentDefinition.d.ts.map +1 -1
- package/src/view/elements/progress/segmented/SegmentDefinition.js +1 -3
- package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
- package/src/view/elements/radial/RadialMenu.js +18 -19
- package/src/view/elements/radial/RadialMenuElementDefinition.d.ts.map +1 -1
- package/src/view/elements/radial/RadialMenuElementDefinition.js +95 -87
- package/src/view/elements/radial/RadialText.d.ts +3 -3
- package/src/view/elements/radial/RadialText.d.ts.map +1 -1
- package/src/view/elements/radial/RadialText.js +19 -22
- package/src/view/elements/tiles2d/Tile.d.ts +1 -1
- package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
- package/src/view/elements/tiles2d/Tile.js +2 -2
- package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
- package/src/view/elements/tiles2d/TileGrid.js +1 -4
- package/src/view/game/achievements/AchievementNotificationView.d.ts.map +1 -1
- package/src/view/game/achievements/AchievementNotificationView.js +2 -3
- package/src/view/interaction/InteractionCommandSet.d.ts.map +1 -1
- package/src/view/interaction/InteractionCommandSet.js +5 -7
- package/src/view/layout/DockDragOverlayView.d.ts +24 -0
- package/src/view/layout/DockDragOverlayView.d.ts.map +1 -0
- package/src/view/layout/DockDragOverlayView.js +63 -0
- package/src/view/layout/DockDropPlan.d.ts +46 -0
- package/src/view/layout/DockDropPlan.d.ts.map +1 -0
- package/src/view/layout/DockDropPlan.js +53 -0
- package/src/view/layout/DockGroupNode.d.ts +29 -0
- package/src/view/layout/DockGroupNode.d.ts.map +1 -0
- package/src/view/layout/DockGroupNode.js +38 -0
- package/src/view/layout/DockLayoutView.d.ts +125 -0
- package/src/view/layout/DockLayoutView.d.ts.map +1 -0
- package/src/view/layout/DockLayoutView.js +1193 -0
- package/src/view/layout/DockPanel.d.ts +38 -0
- package/src/view/layout/DockPanel.d.ts.map +1 -0
- package/src/view/layout/DockPanel.js +51 -0
- package/src/view/layout/DockSide.d.ts +48 -0
- package/src/view/layout/DockSide.d.ts.map +1 -0
- package/src/view/layout/DockSide.js +88 -0
- package/src/view/layout/DockSplitNode.d.ts +59 -0
- package/src/view/layout/DockSplitNode.d.ts.map +1 -0
- package/src/view/layout/DockSplitNode.js +78 -0
- package/src/view/layout/DrawerView.d.ts +53 -0
- package/src/view/layout/DrawerView.d.ts.map +1 -0
- package/src/view/layout/DrawerView.js +163 -0
- package/src/view/layout/FloatingPanelView.d.ts +38 -0
- package/src/view/layout/FloatingPanelView.d.ts.map +1 -0
- package/src/view/layout/FloatingPanelView.js +251 -0
- package/src/view/layout/SplitView.d.ts +73 -0
- package/src/view/layout/SplitView.d.ts.map +1 -0
- package/src/view/layout/SplitView.js +365 -0
- package/src/view/layout/layout.scss +236 -0
- package/src/view/layout/show_popup_menu.d.ts +19 -0
- package/src/view/layout/show_popup_menu.d.ts.map +1 -0
- package/src/view/layout/show_popup_menu.js +81 -0
- package/src/view/minimap/Minimap.d.ts.map +1 -1
- package/src/view/minimap/Minimap.js +2 -6
- package/src/view/minimap/dom/MinimapMarkerView.d.ts.map +1 -1
- package/src/view/minimap/dom/MinimapMarkerView.js +2 -3
- package/src/view/minimap/gl/MarkerGL.d.ts +6 -6
- package/src/view/minimap/gl/MarkerGL.d.ts.map +1 -1
- package/src/view/minimap/gl/MarkerGL.js +8 -9
- package/src/view/minimap/gl/MinimapFogOfWar.d.ts +7 -7
- package/src/view/minimap/gl/MinimapFogOfWar.d.ts.map +1 -1
- package/src/view/minimap/gl/MinimapFogOfWar.js +10 -12
- package/src/view/minimap/gl/MinimapWorldGL.d.ts +15 -15
- package/src/view/minimap/gl/MinimapWorldGL.d.ts.map +1 -1
- package/src/view/minimap/gl/MinimapWorldGL.js +18 -16
- package/src/view/minimap/gl/MinimapWorldLayer.d.ts.map +1 -1
- package/src/view/minimap/gl/MinimapWorldLayer.js +4 -8
- package/src/view/tooltip/DomTooltipManager.d.ts +6 -6
- package/src/view/tooltip/DomTooltipManager.d.ts.map +1 -1
- package/src/view/tooltip/DomTooltipManager.js +21 -22
- package/src/view/tooltip/TooltipManager.d.ts.map +1 -1
- package/src/view/tooltip/TooltipManager.js +6 -8
- package/src/view/tooltip/TooltipView.d.ts +1 -1
- package/src/view/tooltip/TooltipView.d.ts.map +1 -1
- package/src/view/tooltip/TooltipView.js +3 -4
- package/src/view/tooltip/VisualTip.d.ts +5 -5
- package/src/view/tooltip/VisualTip.d.ts.map +1 -1
- package/src/view/tooltip/VisualTip.js +6 -7
- package/src/view/tooltip/gml/GMLEngine.d.ts.map +1 -1
- package/src/view/tooltip/gml/GMLEngine.js +57 -63
- package/src/view/util/DomSizeObserver.d.ts +6 -6
- package/src/view/util/DomSizeObserver.d.ts.map +1 -1
- package/src/view/util/DomSizeObserver.js +27 -20
- package/editor/actions/concrete/PatchTerrainTextureAction.js +0 -153
- package/editor/ecs/component/editors/ecs/MinimapMarkerEditor.d.ts +0 -14
- package/editor/ecs/component/editors/ecs/MinimapMarkerEditor.d.ts.map +0 -1
- package/editor/process/symbolic/makeStoryTriggerSetAreaDisplay.js +0 -114
- package/editor/tools/TopDownCameraControlTool.d.ts +0 -13
- package/editor/tools/TopDownCameraControlTool.d.ts.map +0 -1
- package/editor/tools/TopDownCameraControlTool.js +0 -56
- package/editor/tools/TransformTool.js +0 -385
- package/editor/tools/paint/prototypeTerrainEditor.js +0 -135
- package/editor/view/EditorView.d.ts +0 -39
- package/editor/view/EditorView.d.ts.map +0 -1
- package/editor/view/EditorView.js +0 -304
- package/editor/view/ecs/ComponentControlFactory.d.ts +0 -19
- package/editor/view/ecs/ComponentControlFactory.d.ts.map +0 -1
- package/editor/view/ecs/ComponentControlFactory.js +0 -45
- package/editor/view/ecs/EntityList.d.ts +0 -22
- package/editor/view/ecs/EntityList.d.ts.map +0 -1
- package/editor/view/ecs/HierarchicalEntityListView.module.scss +0 -13
- package/editor/view/ecs/components/BlackboardController.js +0 -50
- package/editor/view/ecs/components/DatGuiController.d.ts.map +0 -1
- package/editor/view/ecs/components/FogOfWarController.js +0 -78
- package/editor/view/ecs/components/FogOfWarRevealerController.js +0 -44
- package/editor/view/ecs/components/GeneratedArmyController.js +0 -42
- package/editor/view/ecs/components/GridObstacleController.d.ts +0 -14
- package/editor/view/ecs/components/GridObstacleController.d.ts.map +0 -1
- package/editor/view/ecs/components/GridObstacleController.js +0 -72
- package/editor/view/ecs/components/GridPositionController.js +0 -40
- package/editor/view/ecs/components/HeadsUpDisplayController.js +0 -30
- package/editor/view/ecs/components/HighlightController.js +0 -47
- package/editor/view/ecs/components/MeshController.js +0 -122
- package/editor/view/ecs/components/PathFollowerController.js +0 -87
- package/editor/view/ecs/components/TagController.js +0 -80
- package/editor/view/ecs/components/TerrainController.js +0 -215
- package/editor/view/ecs/components/TransformController.js +0 -97
- package/editor/view/ecs/components/UnitShopController.js +0 -112
- package/editor/view/ecs/components/army/ArmyController.js +0 -130
- package/editor/view/ecs/components/gui/GUIElementController.js +0 -117
- package/editor/view/ecs/components/items/ItemContainerController.js +0 -132
- package/editor/view/ecs/components/items/ItemContainerController.stories.js +0 -50
- package/editor/view/ecs/components/items/ItemController.js +0 -52
- package/editor/view/ecs/components/particles/ColorParameterLUTController.d.ts.map +0 -1
- package/editor/view/ecs/components/particles/ColorParameterLUTController.js +0 -444
- package/editor/view/ecs/components/particles/ParameterTrackController.js +0 -51
- package/editor/view/ecs/components/particles/ParticleEmitterController.js +0 -213
- package/editor/view/ecs/components/particles/ParticleLayerController.js +0 -213
- package/editor/view/ecs/components/particles/ScalarParameterLUTController.js +0 -401
- package/editor/view/ecs/components/sockets/AttachmentSocketsController.js +0 -51
- package/editor/view/ecs/components/sound/SoundEmitterController.js +0 -137
- package/editor/view/ecs/components/story/StoryTriggerSetController.js +0 -214
- package/editor/view/ecs/components/unit/AuraController.js +0 -45
- package/editor/view/makeEntityDecorators.d.ts +0 -6
- package/editor/view/makeEntityDecorators.d.ts.map +0 -1
- package/editor/view/v2/SplitView.d.ts +0 -17
- package/editor/view/v2/SplitView.d.ts.map +0 -1
- package/editor/view/v2/ViewManagementSystem.js +0 -0
- package/editor/view/v2/prototypeEditor.js +0 -127
- package/src/engine/graphics/ecs/sprite/prototypeSpriteSystem.d.ts +0 -2
- package/src/engine/graphics/ecs/sprite/prototypeSpriteSystem.d.ts.map +0 -1
- package/src/engine/graphics/ecs/sprite/prototypeSpriteSystem.js +0 -1570
- package/src/engine/graphics/three/TransfromControls.js +0 -1495
- package/src/view/controller/controls_v2/AbstractPropertyBinding.d.ts +0 -8
- package/src/view/controller/controls_v2/AbstractPropertyBinding.d.ts.map +0 -1
- package/src/view/controller/controls_v2/AbstractPropertyBinding.ts +0 -10
- package/src/view/controller/controls_v2/Controller.d.ts +0 -21
- package/src/view/controller/controls_v2/Controller.d.ts.map +0 -1
- package/src/view/controller/controls_v2/Controller.ts +0 -32
- package/src/view/controller/controls_v2/IPropertyBinding.d.ts +0 -5
- package/src/view/controller/controls_v2/IPropertyBinding.d.ts.map +0 -1
- package/src/view/controller/controls_v2/IPropertyBinding.ts +0 -6
- package/src/view/controller/controls_v2/PrimitivePropertyBinding.d.ts +0 -6
- package/src/view/controller/controls_v2/PrimitivePropertyBinding.d.ts.map +0 -1
- package/src/view/controller/controls_v2/PrimitivePropertyBinding.ts +0 -12
- package/src/view/controller/controls_v2/SliderController.d.ts +0 -6
- package/src/view/controller/controls_v2/SliderController.d.ts.map +0 -1
- package/src/view/controller/controls_v2/SliderController.ts +0 -10
- package/src/view/elements/button/ButtonView.stories.d.ts +0 -2
- package/src/view/elements/button/ButtonView.stories.d.ts.map +0 -1
- package/src/view/elements/button/ButtonView.stories.js +0 -14
|
@@ -0,0 +1,692 @@
|
|
|
1
|
+
# Editor Rework Plan — 2026-08 (rev 2, post adversarial review)
|
|
2
|
+
|
|
3
|
+
> **Status — as built, 2026-08-15.** P0–P7 landed, including both features P7
|
|
4
|
+
> demoted (layout persistence, tab-drag docking), and are shipped through the
|
|
5
|
+
> submodule chain. Automated verification: the full suite is green — 1601 jest
|
|
6
|
+
> suites / 9899 tests from `H:/git/moh`. Hands-on verification: three of the four
|
|
7
|
+
> §4 acceptance stories walked end to end through the editor's own menus, the
|
|
8
|
+
> fourth partly; what remains of them needs a *displayed* browser pane rather than
|
|
9
|
+
> the headless one available here. Results and the one defect the walkthrough
|
|
10
|
+
> found are in **§8**, which is now the live inventory — the follow-up notes below
|
|
11
|
+
> are kept as history, and where they say something is open, §8 is authoritative.
|
|
12
|
+
>
|
|
13
|
+
> Deviations from the plan below:
|
|
14
|
+
> the tick-driven gizmo tool tracks drag transitions instead of per-entity gizmo
|
|
15
|
+
> events (the gizmo entity is destroyed/rebuilt on every attach, so entity
|
|
16
|
+
> listeners cannot hold); the rendering camera resolves from the active Camera
|
|
17
|
+
> component (not `graphics.camera`); LUT edits reach the emitter through a
|
|
18
|
+
> module-static `onParameterLutEdited` signal consumed by a default-on
|
|
19
|
+
> `ParticleEmitterRebuildProcess` (debounced) — plain-data tables carry no
|
|
20
|
+
> signals; `DatGuiController` was relocated to the dat.gui vendor boundary
|
|
21
|
+
> (`src/view/controller/dat/`) instead of deleted — library widgets and test
|
|
22
|
+
> harnesses consume it; `EntityList`/`makeEntityDecorators` were kept (recently
|
|
23
|
+
> maintained, resolvable surface); drag-a-tab docking overlay and layout
|
|
24
|
+
> persistence remain future polish, panels move between zones via the tab menu.
|
|
25
|
+
>
|
|
26
|
+
> **Follow-up, 2026-08-15** — first hands-on session against the harness surfaced
|
|
27
|
+
> four defects the phase specs could not see, all now fixed with specs
|
|
28
|
+
> (`EditorCameraNavigation.spec.js`, `MeshLibraryView.spec.js`,
|
|
29
|
+
> `ToolEngine.spec.js`):
|
|
30
|
+
>
|
|
31
|
+
> - *Nothing in the shell was clickable.* `ViewStack`'s root carries
|
|
32
|
+
> `pointer-events: none` (a game HUD lets clicks through to the 3D scene) and
|
|
33
|
+
> the shell inherited it. Only `.meep-entity-tree` had a local override, which
|
|
34
|
+
> is why the scene tree alone responded. The shell root now opts back in, and
|
|
35
|
+
> the two local overrides are gone. §D2's "no app-side stylesheets" goal makes
|
|
36
|
+
> the shell root the only place this can live.
|
|
37
|
+
> - *The asset grid rendered as a diagonal staircase.* `MeshLibraryView` places
|
|
38
|
+
> cells itself and `View.position` is a transform, so in-flow cells were nudged
|
|
39
|
+
> sideways while still consuming a flow row each. Its stylesheet
|
|
40
|
+
> (`app/css/editor/MeshLibraryView.scss`) was the one editor sheet §D2's move
|
|
41
|
+
> missed. Ported into `editor/style/editor.scss`; cells are out of flow, the
|
|
42
|
+
> thumbnail has a sized placeholder so a cell claims its extent before the
|
|
43
|
+
> render lands, and the grid reflows when the library grows.
|
|
44
|
+
> - *Camera navigation (§D4).* Wheel deltas arrive sign-normalized from
|
|
45
|
+
> `PointerDevice`, so a step scaled by the raw delta moved the distance 0.1% per
|
|
46
|
+
> notch; pan was unconstrained and lifted the orbit pivot off the ground, so
|
|
47
|
+
> later orbits swung about a point in the air (the strategy camera's existing
|
|
48
|
+
> `(1,0,1)` pan axis is the precedent); and the pitch clamp was symmetric,
|
|
49
|
+
> letting the camera swing under the ground plane where the scene is backfacing.
|
|
50
|
+
> - *Navigation destroyed the selection.* `ToolEngine` called `tool.stop()` on
|
|
51
|
+
> every pointer release, including the right/middle buttons it deliberately
|
|
52
|
+
> withholds from tools — so ending an orbit ran `SelectionTool.stop()` and
|
|
53
|
+
> committed a marquee that never started. Release is now paired with the press
|
|
54
|
+
> that actually handed the gesture over. This is what §4 story (b), "move a tree
|
|
55
|
+
> with the gizmo while orbiting mid-edit", needed.
|
|
56
|
+
>
|
|
57
|
+
> Two gaps found in the same pass and **left open**, both pre-existing and outside
|
|
58
|
+
> the reported scope: `focusEntity` recentres in XZ only and never derives a
|
|
59
|
+
> distance, so `F` is a recentre rather than the frame-from-AABB §D4 specifies;
|
|
60
|
+
> and `ToolEngine` listens for pointer-up on the canvas only, so a primary-button
|
|
61
|
+
> drag released outside the viewport leaves the tool running.
|
|
62
|
+
>
|
|
63
|
+
> **Follow-up, 2026-08-15 (docking, rev 2)** — the fixed zones are gone. Four notes on
|
|
64
|
+
> the first cut asked for things zones cannot express, so the dock is now a **tree of tab
|
|
65
|
+
> groups** divided by splitters, with no privileged left/right/bottom/centre at all:
|
|
66
|
+
>
|
|
67
|
+
> - *Undocking was nearly impossible* — the zones tiled the dock, so every point in it was
|
|
68
|
+
> a placement. Every group now keeps a **margin** around itself (26px, capped at a fifth
|
|
69
|
+
> of the group so a small one stays droppable) where a drop leaves the layout instead.
|
|
70
|
+
> The seams between groups and the outside edge of the dock are the way out.
|
|
71
|
+
> - *A floating window snapped while being moved.* Its title bar now carries two gestures,
|
|
72
|
+
> because it answers two questions: the **tab** at the left asks where the panel should
|
|
73
|
+
> go and the dock takes that over, previews and all; the **bar beside it** asks nothing
|
|
74
|
+
> and simply moves the window, live, with no docking.
|
|
75
|
+
> - *An emptied section stayed.* A group that loses its last panel is **folded away** and
|
|
76
|
+
> its other half takes the room back — except the last group in the dock, which stays,
|
|
77
|
+
> empty, so there is always somewhere to drop. This replaced the "collapse the zone to
|
|
78
|
+
> zero and re-open it for the duration of a drag" of rev 1, which existed only because
|
|
79
|
+
> zones could not be created or destroyed.
|
|
80
|
+
> - *Panels could not be split apart.* Dropping near one of a group's four **cardinal
|
|
81
|
+
> edges** splits it and takes that side, previewed as the half it will take, VSCode
|
|
82
|
+
> style; the middle and the tab strip dock as a tab as before. `DockSide`, and the four
|
|
83
|
+
> verbs `addPanel` / `tabPanel` / `splitPanel` / `floatPanel` — the host builds its
|
|
84
|
+
> default arrangement with the same verbs an author's drags use, so a sidebar is a group
|
|
85
|
+
> split off one side rather than a zone the layout was built around.
|
|
86
|
+
>
|
|
87
|
+
> The bottom `DrawerView` went with the zones: a collapsible bottom is a fixed zone by
|
|
88
|
+
> another name, and what it did for the author — get a panel out of the way — is what
|
|
89
|
+
> floating and folding do now. The construct itself stays in the library.
|
|
90
|
+
>
|
|
91
|
+
> Verified against the running editor as well as in jest (33 layout specs): the default
|
|
92
|
+
> arrangement lays out to the same geometry the zones did (300 / 320 / 968×592 / 968×266);
|
|
93
|
+
> all four cardinal previews are exact halves and a drop lands at exactly the previewed
|
|
94
|
+
> size; a drop four pixels inside a group's edge reads "floating window" while one forty
|
|
95
|
+
> pixels in reads "split right"; emptying the right-hand group folded it and gave its
|
|
96
|
+
> 320+6 back to the middle; the title bar moved a window across the layout with the drag
|
|
97
|
+
> overlay never appearing; a drag-created split's own divider resizes and persists; and a
|
|
98
|
+
> nested tree came back byte-identical after a full page reload. An arrangement saved by
|
|
99
|
+
> the zone-era build is recognised as another shape and left alone, so the editor opens on
|
|
100
|
+
> the host's defaults rather than on a mistranslation.
|
|
101
|
+
>
|
|
102
|
+
> **Follow-up, 2026-08-15 (docking, rev 1)** — a second hands-on session found the docking
|
|
103
|
+
> surface itself wanting on three counts, all now fixed. Where this note describes zones,
|
|
104
|
+
> rev 2 above is what shipped:
|
|
105
|
+
>
|
|
106
|
+
> - *Dragging a panel showed nothing.* The drop feedback was painted on the zone views
|
|
107
|
+
> themselves — and a zone's box is covered by its own opaque tab strip and panel
|
|
108
|
+
> content, so every bit of it was underneath what the author was looking at. The
|
|
109
|
+
> earlier note below arguing an overlay would be "a second geometry to keep in step
|
|
110
|
+
> with the splitters" was wrong twice over: the feedback it defended was invisible, and
|
|
111
|
+
> the overlay does not track the splitters at all — it is handed the rectangle by the
|
|
112
|
+
> same `#planDrop` that performs the drop. Preview and outcome are now one computation,
|
|
113
|
+
> so they cannot disagree; the rectangle is exactly the space the panel will occupy,
|
|
114
|
+
> labelled with where that is (`DockDragOverlayView`, `DockDropPlan`).
|
|
115
|
+
> - *Panels could not be undocked.* There was no placement outside the three zones.
|
|
116
|
+
> `DockZoneId.Float` and `FloatingPanelView` add one: released over no zone, a panel
|
|
117
|
+
> stands in a window of its own, and because that window's title bar **is** the tab it
|
|
118
|
+
> wore, dragging it back over a zone re-docks it through the very same gesture. Windows
|
|
119
|
+
> resize by a grip, come forward when reached into, and are recorded in the layout.
|
|
120
|
+
> Zones that end up holding nothing collapse, and open back up for the duration of a
|
|
121
|
+
> drag — a zone the author cannot see is a zone they cannot drop into.
|
|
122
|
+
> - *The scene view was not a panel.* The dock's centre was a raw view slot the layout was
|
|
123
|
+
> built around. It is a zone like the others now, and the viewport is `DockPanel`
|
|
124
|
+
> `'viewport'` inside it: it wears a tab, it moves, it floats.
|
|
125
|
+
>
|
|
126
|
+
> Verified in the harness as well as in jest (34 layout specs): the preview rectangle over
|
|
127
|
+
> the right zone measured 320×864 at x=1280 and the window that a drop produced measured
|
|
128
|
+
> the same 360×300 at x=680 the preview had shown; the viewport floated with its live
|
|
129
|
+
> canvas and came back to the centre at 968×564; a collapsed left zone opened to 300 the
|
|
130
|
+
> moment a drag began; and a floating Inspector came back floating at the same place after
|
|
131
|
+
> a full page reload. That reload is what turned up the one defect this pass introduced and
|
|
132
|
+
> fixed — `fromJSON` can land before the host has sized the dock, and squaring a window up
|
|
133
|
+
> against a dock with no extent would have destroyed where it goes.
|
|
134
|
+
>
|
|
135
|
+
> **Follow-up, 2026-08-15 (later)** — both of those gaps are now closed.
|
|
136
|
+
> `focusEntity` frames from bounds (`editor/camera/camera_framing.js`, specced
|
|
137
|
+
> pure plus through the editor), and `PointerDevice` exposes its window-level
|
|
138
|
+
> release as `on.globalUp` for `ToolEngine` to pair gestures with. §8 carries
|
|
139
|
+
> what is still open.
|
|
140
|
+
|
|
141
|
+
Goal: bring `meep/editor` from its current broken state to a usable scene editor, scoped
|
|
142
|
+
entirely to the meep package. Deliverables, in the user's words: decent UI layout
|
|
143
|
+
constructs (drawers, dockable panels), the ability to **load/store and compose scenes**,
|
|
144
|
+
**terrain editing**, **standard TRS via gizmos**, and **competent ParticleEmitter editing**.
|
|
145
|
+
|
|
146
|
+
The Askara game layer is out of scope; the broader repo is used only for testing and
|
|
147
|
+
prototyping (webpack harness entries, dev-server middleware, jest run from the moh root).
|
|
148
|
+
Where a meep API change requires a matching one-line adjustment in a game-side consumer
|
|
149
|
+
(`initializeEditor.js`, `GameBinarySerializationRegistry.js`, `GameBootstrap.js`), that
|
|
150
|
+
adjustment is in scope as integration maintenance.
|
|
151
|
+
|
|
152
|
+
> Rev 2 incorporates a three-lens adversarial review (feasibility vs codebase, scope vs
|
|
153
|
+
> mandate, API design vs house style). Major corrections from rev 1: the transform model
|
|
154
|
+
> (world-space `Transform`, no parent-chain math), persistent camera navigation, meep-side
|
|
155
|
+
> registration of component editors and default processes (not just serialization
|
|
156
|
+
> adapters), empty-scene authoring (templates, ground fallback, grid), reactive scene
|
|
157
|
+
> tree, additive scene import ("compose"), save-back-to-source, repair-not-replace for
|
|
158
|
+
> `TabbedView`/`SplitView`, uniform multi-select gizmo semantics, and a keymap without
|
|
159
|
+
> the X-key conflict. Drag-docking and layout persistence are demoted to final polish.
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## 1. Current state (condensed; full receipts in recon)
|
|
164
|
+
|
|
165
|
+
The editor last saw structural work in early 2024. Since then the ECS API moved under it
|
|
166
|
+
(`EntityManager.getComponent` no longer exists — component access lives on
|
|
167
|
+
`EntityComponentDataset`) and the `ActionProcessor` became async. Nothing was migrated.
|
|
168
|
+
Concretely, today:
|
|
169
|
+
|
|
170
|
+
**Hard-broken, user-visible** (all line refs verified)
|
|
171
|
+
|
|
172
|
+
| What | Where | Why |
|
|
173
|
+
|---|---|---|
|
|
174
|
+
| Transform gizmo throws on every drag | `tools/TransformTool.js:339,355` | calls `entityManager.getComponent` (removed) |
|
|
175
|
+
| Transform undo/redo throws | `actions/concrete/TransformModifyAction.js:30,40` | same |
|
|
176
|
+
| Component-remove undo broken twice | `actions/concrete/ComponentRemoveAction.js:25,30` | `apply` stores void return of `removeComponentFromEntity`; revert calls removed API |
|
|
177
|
+
| Grid paint tool dead | `tools/GridPaintTool.js:37,104,110` | undefined `self`, removed API |
|
|
178
|
+
| Box-select selects nothing | `tools/SelectionTool.js:286-310` | returns a never-populated array |
|
|
179
|
+
| Click-pick ray malformed | `tools/SelectionTool.js:266` | passes `ray_origin.y` twice, never `.z` |
|
|
180
|
+
| Paste / duplicate create components on `null` | `Editor.js:218-231` | `actions.do()` is async, never awaited |
|
|
181
|
+
| Ctrl+S depends on `window.engine`, swallows errors, mutates the live scene | `Editor.js:481,485,490-495` | bare global; try/catch then downloads truncated buffer; `resetSoundEmitterTracks` runs on shared component instances (`maskedCopy` shares, not clones) |
|
|
182
|
+
| Paint-tool deactivation throws | `tools/paint/TerrainPaintTool.js:280` | bare global `engine` in `finalize()` |
|
|
183
|
+
| Camera navigation is modal | `ToolEngine.js:23` single active tool; `TopDownCameraControlTool` | can't orbit/pan while any editing tool is active; RMB/MMB unused (`ToolEngine.js:130-140`) |
|
|
184
|
+
|
|
185
|
+
**Architectural rot**
|
|
186
|
+
|
|
187
|
+
- 69 of 187 JS files (37%) unreachable from the live editor. Orphaned: the
|
|
188
|
+
`ComponentControlFactory` controller tree (31 files, includes the *good* interactive
|
|
189
|
+
particle curve/gradient editors), the `tools/v2` ECS-native gizmo port (8 files),
|
|
190
|
+
`view/node-graph` (17 files, separately alive via its own harness).
|
|
191
|
+
- Two generations of everything; nothing deleted when superseded.
|
|
192
|
+
- `Editor.js` imports `app/css/**` and game code, so the published `./editor/*` export
|
|
193
|
+
cannot resolve outside this repo — and `Editor.js` cannot even be imported under jest
|
|
194
|
+
(no scss handling in `jest.conf.json`). All editor styling lives in `app/css/editor/**`.
|
|
195
|
+
`dat.gui` is imported by meep but not declared in meep's package.json.
|
|
196
|
+
- Three independent RAF loops outside the engine tick (`ToolEngine.js:106-122`, one per
|
|
197
|
+
selected entity in `SelectionVisualizer.js:47-53`, plus the engine's).
|
|
198
|
+
- `ActionProcessor` does not serialize concurrent callers: `do()`/`doMany()`/`navigateTo()`
|
|
199
|
+
assign `__last_promise` only after awaiting the barrier; `mark()` never joins the chain;
|
|
200
|
+
`doMany`'s executor never rejects (wedges the chain on a failing action).
|
|
201
|
+
- Registrations that belong to meep live game-side: serialization adapters
|
|
202
|
+
(`GameBinarySerializationRegistry.js` — ~40 of its adapters import purely from meep),
|
|
203
|
+
component type-editors (`initializeEditor.js:90-109` — `TerrainEditor`,
|
|
204
|
+
`ParticleEmitterEditor`, `MeshEditor`… are meep classes), and the three default editor
|
|
205
|
+
processes. Standalone meep gets a reflection-only inspector, invisible
|
|
206
|
+
lights/emitters/cameras, and no scene round-trip.
|
|
207
|
+
|
|
208
|
+
**The transform model (established during review — implementation contract)**
|
|
209
|
+
|
|
210
|
+
`Transform` components are **world-space by contract**. `ParentEntity` is a *lifecycle*
|
|
211
|
+
tree only (`ParentEntity.js:2`, `serializable = false`); the spatial hierarchy is
|
|
212
|
+
`TransformAttachment`, whose system composes parent × local and **writes the result into
|
|
213
|
+
the child's `Transform`** (`TransformAttachmentSystem.js:51-56`). Consequences:
|
|
214
|
+
|
|
215
|
+
- A gizmo places itself at, and writes to, the entity's own `Transform`. No parent-chain
|
|
216
|
+
composition exists or is needed. The v2 gizmo's identity-parent assumption is correct.
|
|
217
|
+
- Editing an entity that carries a `TransformAttachment` must write through to
|
|
218
|
+
`attachment.transform` (world delta converted by the parent's world `Transform`),
|
|
219
|
+
otherwise the attachment system snaps it back.
|
|
220
|
+
- `TransformAttachment` has no registered serialization adapter — serialized scenes
|
|
221
|
+
contain plain world transforms.
|
|
222
|
+
|
|
223
|
+
**Solid, to build on** — `View` lifecycle (`link`/`unlink`, `bindSignal`, observable px
|
|
224
|
+
`size`/`position` — layout fully computable in jsdom; `addChild` asserts unlinked child,
|
|
225
|
+
`removeChild` unlinks, and asserts are LIVE under jest), `EmptyView`, `ListView`,
|
|
226
|
+
`VirtualListView`, `LabelView`/`ButtonView`/`CheckboxView`/`NumberController`/
|
|
227
|
+
`DropDownSelectionView`/`CanvasView`, tooltip manager, `DraggableAspect` (+spec, the
|
|
228
|
+
jsdom drive pattern), `DomSizeObserver`, `ActionProcessor` + marks, `BaseProcess`/
|
|
229
|
+
`ProcessEngine` lifecycle, `type_editor_registry` + `createObjectEditor` pipeline,
|
|
230
|
+
symbolic displays (`EditorEntity.referenceEntity` dereferencing), terrain brush math +
|
|
231
|
+
`ModifyPatchSampler2DAction` family, `tools/v2/TransformControls` (needs snap fix +
|
|
232
|
+
consumer; `dispose()` is fine — rev 1's "listener leak" item was wrong), binary scene
|
|
233
|
+
format + `engine.storage`, `EngineHarness`, `ViewStack` push/pop hand-over (verified
|
|
234
|
+
mechanically sound for the shell).
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
## 2. Design decisions
|
|
239
|
+
|
|
240
|
+
**D1 — Repair first, then rebuild on top.** Phase 0 makes the existing editor
|
|
241
|
+
functional and testable; later phases replace layers. No big-bang rewrite.
|
|
242
|
+
|
|
243
|
+
**D2 — Self-contained editor.** No `app/**` or `model/game/**` imports in the **live
|
|
244
|
+
editor import closure** (pre-existing `meep/src` offenders like `SerializedScene.js:1`
|
|
245
|
+
are out of scope but must not be pulled into editor code — editor persistence gets its
|
|
246
|
+
own load path and never imports from `SerializedScene.js`). All editor CSS moves to
|
|
247
|
+
`meep/editor/style/` — global partials with semantic class names, one `editor.scss`
|
|
248
|
+
entry; **logic modules never import styles** (jest has no scss handling);
|
|
249
|
+
`HierarchicalEntityListView` migrates off its `.module.scss` (the only one in meep) so
|
|
250
|
+
one pattern remains. Theming via CSS custom properties: framework tokens (`--meep-*`)
|
|
251
|
+
declared with fallbacks in `src/view/layout/layout.scss` (self-contained), editor theme
|
|
252
|
+
overrides them in `editor.scss`. `dat.gui` leaves live editor paths. Meep-side
|
|
253
|
+
registration hoists (mirroring the serialization one):
|
|
254
|
+
`registerEngineComponentEditors(registry)` and default-process registration in
|
|
255
|
+
`Editor.initialize()`; `initializeEditor.js` keeps only game components (pruned as
|
|
256
|
+
integration maintenance).
|
|
257
|
+
|
|
258
|
+
**D3 — Layout library at `src/view/layout/`** (framework surface, editor is first
|
|
259
|
+
consumer). House style: typed classes, class fields, `#private`, `List`-driven children,
|
|
260
|
+
`Observed*` state, `-View` suffix for views.
|
|
261
|
+
|
|
262
|
+
- `SplitView` — **repaired and relocated** (`editor/view/v2/SplitView.js` becomes a
|
|
263
|
+
re-export shim; the `:95` vertical-split bug is fixed in P0 before relocation).
|
|
264
|
+
Enhanced: draggable 6px divider (`DraggableAspect`), sizing model = **divider offset
|
|
265
|
+
in px anchored to one side** with min/max clamps (fraction accepted as initializer
|
|
266
|
+
only — dock zones keep px width while the center flexes; no dual fraction/px model).
|
|
267
|
+
Back-compatible `from({a,b,type,fraction})` and setters.
|
|
268
|
+
- `TabbedView` — **repaired in place** (`src/view/common/TabbedView.js` constructs its
|
|
269
|
+
containers but never adds them — two-line fix), extended with closable tabs. No new
|
|
270
|
+
near-duplicate widget. `TabDefinition` stays the typed item class.
|
|
271
|
+
- `DrawerView` — edge-anchored collapsible container, `ObservedBoolean` open state,
|
|
272
|
+
header toggle. **Instant toggle** (no CSS transitions — they'd desync the DOM from
|
|
273
|
+
the px model; model-driven animation is later polish).
|
|
274
|
+
- `DockPanel` (model class: `id`, `title: ObservedString`, `view`, `closable`) and
|
|
275
|
+
`DockLayoutView` — center view + left/right/bottom zones, each zone a `TabbedView`
|
|
276
|
+
of panels, zone sizes via internal `SplitView`s. Panel moves between zones via a
|
|
277
|
+
typed API (`movePanel(panel, zone)`) surfaced as a per-tab menu. Panel ids exist
|
|
278
|
+
**solely** for layout persistence matching; no id→factory map, no `getPanel(string)`
|
|
279
|
+
lookup API. Moving a panel is an unlink→relink cycle (enforced by `View` asserts);
|
|
280
|
+
panels hold models, not DOM state.
|
|
281
|
+
- **Deferred to P7 polish:** drag-a-tab-between-zones with drop-zone overlay, and
|
|
282
|
+
layout persistence (`DockLayoutView.toJSON/fromJSON` via `engine.storage` under a
|
|
283
|
+
host-supplied key — not raw localStorage). Fixed zones + menu moves carry the
|
|
284
|
+
mandate's daily workflow.
|
|
285
|
+
|
|
286
|
+
**D4 — Shell.** `EditorShellView` (`editor/view/shell/`) on `DockLayoutView`:
|
|
287
|
+
|
|
288
|
+
- center: viewport panel hosting `engine.gameView` (`ViewStack` hand-over as today,
|
|
289
|
+
formalized in `link`/`unlink`);
|
|
290
|
+
- left: Scene panel — `HierarchicalEntityListView` made **reactive** (subscribes to
|
|
291
|
+
dataset entity/component events, patches via its existing diff; `#child_map` cleared
|
|
292
|
+
on dataset swap) and **wired to selection** (click → `Selection*Action`s, ctrl-click
|
|
293
|
+
multi-select, double-click → frame), plus a filter box and an entity **template
|
|
294
|
+
menu**: Empty, Mesh, Light, Camera, ParticleEmitter (one default layer), Terrain —
|
|
295
|
+
every template attaches `Transform` + `Name`;
|
|
296
|
+
- right: Inspector (`EntityEditor`, kept);
|
|
297
|
+
- bottom drawer: Assets panel (revived `MeshLibraryView`, drag-to-place with **y=0
|
|
298
|
+
ground-plane fallback** when the scene has no terrain — `prepareMeshLibrary.js:88`
|
|
299
|
+
currently dereferences `obtainTerrain` unguarded) and Processes panel;
|
|
300
|
+
- top strip: tool buttons, undo/redo, scene menu, native `ToolSettingsView` (rewritten
|
|
301
|
+
— the dat.gui one's `typeof x === object` bug means settings were never editable).
|
|
302
|
+
|
|
303
|
+
`Editor.js` becomes an ES class; keymap → `EditorKeyMap.js`; clipboard →
|
|
304
|
+
`editor/clipboard.js`; persistence → `editor/persistence/`. **Preserved public
|
|
305
|
+
surface** (inventoried from real consumers): `enableEditor`, `editor.engine`,
|
|
306
|
+
`editor.actions`, `editor.selection`, `editor.toolEngine`, `editor.processEngine`,
|
|
307
|
+
`editor.type_editor_registry`, `editor.meshLibrary`, `editor.cameraEntity`,
|
|
308
|
+
`initialize/attach/detach`, `isEditorEntity`-equivalent filtering. NumLock toggle stays.
|
|
309
|
+
|
|
310
|
+
**Camera navigation becomes persistent** (this was the largest usability defect):
|
|
311
|
+
while the editor is attached, an always-on editor camera controller handles RMB-orbit,
|
|
312
|
+
MMB-pan, wheel-zoom; tools own LMB only (`ToolEngine` already filters primary-button).
|
|
313
|
+
The modal `camera_control` tool is retired; `G` is freed. Brush size moves off the
|
|
314
|
+
wheel to `[`/`]` + settings. A ground **grid display process** (default-on) gives empty
|
|
315
|
+
scenes a spatial reference. `F` / tree-double-click frames the selection (camera target
|
|
316
|
+
+ distance from selection AABB).
|
|
317
|
+
|
|
318
|
+
Final keymap (spec'd; X-delete conflict from rev 1 resolved): `W/E/R` gizmo mode,
|
|
319
|
+
`Q` world/local toggle, `F` frame selection, `X`/`Delete` delete selection,
|
|
320
|
+
`Ctrl+Z/Y` undo/redo, `Ctrl+C/V` copy/paste, `Shift+D` duplicate, `[`/`]` brush size,
|
|
321
|
+
`Ctrl+S` save. Marquee-vs-transform switching lives on the toolbar (`1`/`2` keys).
|
|
322
|
+
|
|
323
|
+
**Headless tolerance:** `Editor.attach()`/`ToolEngine.startup()` must run under jsdom
|
|
324
|
+
(guard the pointer device and viewport wiring on `engine.graphics` availability) so
|
|
325
|
+
editor-level specs are possible. `ToolEngine`'s RAF loop and `SelectionVisualizer`'s
|
|
326
|
+
per-entity RAFs are replaced by engine-tick-driven updates.
|
|
327
|
+
|
|
328
|
+
**D5 — Scene I/O** (`editor/persistence/` + one engine-side registration module).
|
|
329
|
+
|
|
330
|
+
- `populateEngineSerializationRegistry(registry)` (new, `src/engine/ecs/storage/`;
|
|
331
|
+
name follows `populateSopraSerializationRegistry` precedent) — registers the
|
|
332
|
+
engine-side adapters **and upgraders** that today only the game list carries
|
|
333
|
+
(verified assemblable purely from meep imports). Registry semantics are first-wins
|
|
334
|
+
(`BinarySerializationRegistry.js:71-77` warns and keeps the first; upgraders dedup
|
|
335
|
+
by instance identity), so `GameBinarySerializationRegistry` is **pruned to delegate**
|
|
336
|
+
to this function for engine types (integration maintenance) — no double
|
|
337
|
+
registration, no warn-spam, no divergent duplicate upgrader nodes.
|
|
338
|
+
- Export, uniform-flow (no hook arrays): `buildExportDataset(engine) → ecd` (masked
|
|
339
|
+
copy; strip `EditorEntity`-marked entities; **clone** the camera component to set
|
|
340
|
+
`active=true` — never mutate shared instances) and `serializeDataset(engine, ecd) →
|
|
341
|
+
EncodingBinaryBuffer` (big-endian; **rethrows** on failure). `exportSceneToBuffer(engine)`
|
|
342
|
+
composes the two. A host wanting extra scrubbing (e.g. the game's sound-track reset)
|
|
343
|
+
calls the primitives around its own step.
|
|
344
|
+
- `importSceneFromBuffer(engine, arrayBuffer)` — fresh dataset with the engine's
|
|
345
|
+
component type map, executor-driven deserialization task, then scene swap with the
|
|
346
|
+
explicit `SceneManager` discipline (remove-then-recreate the editing scene; unique
|
|
347
|
+
name; editor detaches before the swap and reattaches after).
|
|
348
|
+
- `importSceneAdditive(engine, arrayBuffer)` — **"compose scenes"**: deserialize into
|
|
349
|
+
a scratch dataset, then copy into the live scene with **fresh entity ids** (raw ids
|
|
350
|
+
from the file would graft components onto existing entities —
|
|
351
|
+
`BinaryBufferDeSerializer.js:170-179`). Undoable as one mark.
|
|
352
|
+
- `SceneSlotManager` — named slots over `engine.storage` (IndexedDB in browser;
|
|
353
|
+
`InMemoryStorage` in specs) with a typed `SceneMetadata` class (`toJSON/fromJSON`),
|
|
354
|
+
following the `GameSaveStateManager` shape without its game-isms. Plus: file export
|
|
355
|
+
(`downloadAsFile`), file import (`<input type=file>` → ArrayBuffer), URL load, and
|
|
356
|
+
**save-to-URL** via a dev-server PUT endpoint (a small `devServer.setupMiddlewares`
|
|
357
|
+
addition in moh's `webpack.config.js` writing under `app/data/levels/**` — dev-only
|
|
358
|
+
repo tooling, explicitly permitted) so the load→edit→save-back loop closes.
|
|
359
|
+
- Scene panel UI: New (template scene: camera + sun + ambient — a fresh dataset would
|
|
360
|
+
otherwise export camera-less), Open (slot / file / URL), Save / Save As, Export,
|
|
361
|
+
Import, Merge.
|
|
362
|
+
|
|
363
|
+
**D6 — Gizmos: adopt `tools/v2`, retire the surrogate bridge.**
|
|
364
|
+
|
|
365
|
+
- Fix v2 translation snap (operates on `_tempTransform`, never on the entity-id
|
|
366
|
+
`object` — `TransformControls.js:361-409`); reset `dragging` on `detach()`.
|
|
367
|
+
- `TransformToolV2` (registered as `spatial_transform`): gizmo attaches at the primary
|
|
368
|
+
(last) selection's `Transform` (world by contract, no conversion). **Uniform
|
|
369
|
+
multi-select semantics across all modes**: per-entity snapshot on drag start;
|
|
370
|
+
translate applies the shared world delta to every selected entity; rotate/scale
|
|
371
|
+
apply the same delta about **each entity's own pivot in its own frame** (matches the
|
|
372
|
+
node-graph precedent of dragging whole selections; no mode asymmetry). Drag end
|
|
373
|
+
emits one mark + per-entity `TransformModifyAction`s (fixed: dataset API, no
|
|
374
|
+
`oldState` re-capture in `apply`). Entities carrying `TransformAttachment` get
|
|
375
|
+
write-through to `attachment.transform`; if that proves deep, they are excluded from
|
|
376
|
+
gizmo editing with a visible notice — never silently wrong.
|
|
377
|
+
- Snapping (translate increment, rotate degrees) + space toggle in tool settings/keymap.
|
|
378
|
+
- Delete legacy `TransformTool.js` + vendored `three/TransfromControls.js` after the
|
|
379
|
+
keymap switches to v2 `TransformMode` (legacy `TransformerMode` import at
|
|
380
|
+
`Editor.js:70` dies with the keymap extraction).
|
|
381
|
+
|
|
382
|
+
**D7 — Terrain.**
|
|
383
|
+
|
|
384
|
+
- P0 one-liners: `finalize()` bare global; bicubic `(tY,tY)`→`(tX,tY)`; splat
|
|
385
|
+
`depth===1` handled as "no redistribution targets" (uniform branch, not a guard);
|
|
386
|
+
the `u1` width/height mixup — the UV-rect computation is **extracted as a pure
|
|
387
|
+
function** and specced directly (black-box through live terrain machinery would
|
|
388
|
+
need the tile worker; the pure function is the honest test seam).
|
|
389
|
+
- One `TerrainTexturePaintTool` with `settings.layer` + swatch picker rendered from
|
|
390
|
+
`TerrainLayers` (count/get/diffuse verified present); delete the four hardcoded
|
|
391
|
+
instances. Brush radius/strength editable via the native settings view; `[`/`]`.
|
|
392
|
+
- Per-stroke QuadTree rebuild for entity height-follow (index is stale today).
|
|
393
|
+
- "New terrain" template (allocated height sampler, one layer, splat filled) — a bare
|
|
394
|
+
`new Terrain()` from the add-component dropdown is not a functioning terrain.
|
|
395
|
+
- Delete dead-and-broken `PatchTerrainTextureAction.js`.
|
|
396
|
+
|
|
397
|
+
**D8 — Particles: revive the good editors into the live pipeline.**
|
|
398
|
+
|
|
399
|
+
- `ScalarParameterLUTController` / `ColorParameterLUTController` move to
|
|
400
|
+
`editor/view/particles/` and become the guts of `ParameterLookupTableEditor`
|
|
401
|
+
(which keeps its trackName gate: scale/color get editors, other names stay hidden).
|
|
402
|
+
Canvas 2d context acquired **lazily at `link()`** (jsdom-tolerant); LUT mutation
|
|
403
|
+
logic extracted into plain functions over `ParameterLookupTable` (spec'd without
|
|
404
|
+
canvas).
|
|
405
|
+
- `rebuildParticleEmitter(ecd, entity)` — the remove→clear-flags→
|
|
406
|
+
`registerLayerParameters`→`build`→`initialize`→`computeBoundingBox` dance from the
|
|
407
|
+
orphaned controller — invoked on structural edits (layer add/remove, `imageURL`
|
|
408
|
+
change) and exposed as a Rebuild button.
|
|
409
|
+
- Fixes: `emisionBounds`→`emissionBounds` transient typo; `ParameterTrackEditor`
|
|
410
|
+
imports real `ParticleParameters`; symbolic-display `removeLayer` implemented
|
|
411
|
+
(currently orphans gizmo geometry).
|
|
412
|
+
- Non-goals: sprite-atlas picker, velocity-cone handles, parameters beyond
|
|
413
|
+
scale/color (engine has exactly those two).
|
|
414
|
+
|
|
415
|
+
**D9 — Cleanup.** Delete: `ComponentControlFactory` + dead controller tree (minus
|
|
416
|
+
revived pieces; `buildGridObstaclePreview` moves next to its consumer), 0-byte
|
|
417
|
+
`ViewManagementSystem.js`, old `EditorView` + `ViewManager` (superseded by the shell),
|
|
418
|
+
legacy `TransformTool` + vendored three controls, `PatchTerrainTextureAction`,
|
|
419
|
+
`makeStoryTriggerSetAreaDisplay` (game-coupled, unresolvable import), the
|
|
420
|
+
`.stories.js` + `@storybook` import, `controls_v2` TS stubs — **plus each deleted
|
|
421
|
+
module's committed `.d.ts`/`.d.ts.map`**. These removals are acknowledged as breaking
|
|
422
|
+
for the published `./editor/*` surface; that is the rework mandate (the game-coupled
|
|
423
|
+
files never resolved outside this repo anyway). Truly generic widgets are repaired,
|
|
424
|
+
not removed (`SplitView`, `TabbedView`). `view/node-graph/**` untouched. GridPaintTool
|
|
425
|
+
is **kept and fixed** (exported, referenced, trivial fixes). `OptionsView`'s dat.gui
|
|
426
|
+
is game-facing — out of scope.
|
|
427
|
+
|
|
428
|
+
**D10 — Launch.** `editor/prototypeEditorShell.js`: `EngineHarness` bootstrap +
|
|
429
|
+
`ShadedGeometrySystem`, `TransformAttachmentSystem`, `ParentEntitySystem` (the v2
|
|
430
|
+
gizmo builds entities carrying those components — `EngineHarness` does not register
|
|
431
|
+
them), `populateEngineSerializationRegistry`, seeded mesh library + demo emitter +
|
|
432
|
+
terrain, editor enabled. Webpack entry line added per repo convention.
|
|
433
|
+
|
|
434
|
+
---
|
|
435
|
+
|
|
436
|
+
## 3. Phases
|
|
437
|
+
|
|
438
|
+
Each phase: jest green from `H:/git/moh`, then a meep commit. Submodule bumps
|
|
439
|
+
(meep → mir-engine → moh) at milestones or at the end.
|
|
440
|
+
|
|
441
|
+
**P0 — Repairs + foundations** (existing editor functional; `Editor.js` importable)
|
|
442
|
+
1. `Editor.js` de-coupling: the two scss imports and `resetSoundEmitterTracks` move
|
|
443
|
+
game-side (`initializeEditor.js` / bootstrap — integration maintenance); the
|
|
444
|
+
Ctrl+S sound reset is dropped (it mutates the live scene); bare-global fix;
|
|
445
|
+
rethrow on serialize failure; await the action sequences in paste/duplicate/
|
|
446
|
+
delete; `disabledSystems` `window.name` bug; `lastTool` null crash.
|
|
447
|
+
2. `ActionProcessor`: serialize **all** entry points (`do`/`doMany`/`undo`/`redo`/
|
|
448
|
+
`navigateTo`/`mark`) through one rejection-tolerant promise chain (tail
|
|
449
|
+
swallowed-on-await, never wedged; `doMany` rejects on action failure); clear
|
|
450
|
+
future marks on divergence. Specs: sync back-to-back ordering, failing action
|
|
451
|
+
doesn't wedge, marks consistent after divergence.
|
|
452
|
+
3. Dataset-API migration: `TransformModifyAction` (+ no `oldState` re-capture),
|
|
453
|
+
`ComponentRemoveAction` (capture component before remove; revert via dataset),
|
|
454
|
+
`TransformTool` minimal fix (functional until P4), `GridPaintTool` (+`self`).
|
|
455
|
+
4. `SelectionTool`: marquee population (frustum test over dataset), ray typo.
|
|
456
|
+
5. Terrain one-liners + pure UV-rect extraction (D7).
|
|
457
|
+
6. `SplitView.js:95` fix (pre-relocation).
|
|
458
|
+
7. `populateEngineSerializationRegistry` + round-trip spec (dataset with Transform/
|
|
459
|
+
Mesh/Terrain/Light/Camera/Name/Tag/ParticleEmitter/SoundEmitter/Water…); game
|
|
460
|
+
registry delegates (prune engine entries).
|
|
461
|
+
8. Specs: transform action round-trip on real dataset, component remove/undo, paste
|
|
462
|
+
creates components on real entities, patch-rect regression, splat depth-1.
|
|
463
|
+
|
|
464
|
+
**P1 — Layout library** (`src/view/layout/`)
|
|
465
|
+
- `SplitView` (relocated + divider + px-anchor model + shim), `TabbedView` repair
|
|
466
|
+
(+closable), `DrawerView`, `DockPanel` + `DockLayoutView` (fixed zones, typed move
|
|
467
|
+
API + menu), `layout.scss` (self-contained, `--meep-*` tokens; imported by the P2
|
|
468
|
+
editor entry — unverifiable visually until P2, accepted).
|
|
469
|
+
- Specs (jsdom): divider drag via synthetic events (DraggableAspect pattern), min/max
|
|
470
|
+
clamps, anchor-side px retention on resize, TabbedView activate/close/reorder,
|
|
471
|
+
DockLayout move-between-zones with unlink/relink verified, Drawer state, SplitView
|
|
472
|
+
back-compat (`from({fraction})`).
|
|
473
|
+
|
|
474
|
+
**P2 — Editor core modernization + shell** (two commits)
|
|
475
|
+
- *P2a — core*: `Editor` ES class + extraction (keymap with the final table above,
|
|
476
|
+
clipboard, persistence seam); persistent camera navigation (RMB/MMB/wheel,
|
|
477
|
+
`camera_control` retired); `ToolEngine` tick-driven (no own RAF; headless guards on
|
|
478
|
+
`engine.graphics`); `SelectionVisualizer` single tick-driven update;
|
|
479
|
+
`registerEngineComponentEditors` + default processes registered meep-side
|
|
480
|
+
(`initializeEditor.js` pruned to game components).
|
|
481
|
+
- *P2b — shell*: `EditorShellView` on `DockLayoutView` (viewport/Scene/Inspector/
|
|
482
|
+
Assets-drawer/Processes/top strip); reactive + selection-wired
|
|
483
|
+
`HierarchicalEntityListView` (+filter, off module.scss); entity template menu;
|
|
484
|
+
native `ToolSettingsView`; `editor/style/editor.scss` + partials (app-css editor
|
|
485
|
+
styles obsolete); grid display process; frame-selected (F / double-click);
|
|
486
|
+
y=0 mesh-drop fallback; `prototypeEditorShell.js` harness + webpack entry.
|
|
487
|
+
- Specs: keymap dispatch, camera-controller attach/detach symmetry, tree reacts to
|
|
488
|
+
dataset create/remove and drives selection actions, templates build the advertised
|
|
489
|
+
components, `Editor.attach()`/`detach()` round-trip headless (graphics-less).
|
|
490
|
+
- Browser: shell renders; dock/resize/collapse; viewport live; tree↔selection↔
|
|
491
|
+
inspector loop; place mesh on empty scene.
|
|
492
|
+
|
|
493
|
+
**P3 — Scene I/O**
|
|
494
|
+
- Export primitives + `importSceneFromBuffer` (scene-swap discipline) +
|
|
495
|
+
`importSceneAdditive` (scratch dataset + id remap) + `SceneSlotManager`/
|
|
496
|
+
`SceneMetadata` + file/URL/save-to-URL endpoints + dev-server PUT middleware
|
|
497
|
+
(moh webpack, dev-only) + Scene panel UI (New-template/Open/Save/Save As/Export/
|
|
498
|
+
Import/Merge).
|
|
499
|
+
- Specs: export strips editor entities + activates a cloned camera without touching
|
|
500
|
+
the live dataset; import swap at dataset level + editor detach/reattach; additive
|
|
501
|
+
import remaps colliding ids (verified against a populated dataset); slot round-trip
|
|
502
|
+
over `InMemoryStorage`; New-template contents (camera + lights present).
|
|
503
|
+
- Browser: load `data/levels/first/level.bin` (2.4 MB), edit, save to URL, reload,
|
|
504
|
+
verify; merge a second scene additively.
|
|
505
|
+
|
|
506
|
+
**P4 — Gizmos**
|
|
507
|
+
- v2 snap fix + `detach()` drag-state fix; `TransformToolV2` with uniform
|
|
508
|
+
multi-select semantics + undo marks; `TransformAttachment` write-through (or
|
|
509
|
+
explicit exclusion with notice); settings (snap, space); delete legacy tool +
|
|
510
|
+
vendored controls; keymap on v2 `TransformMode`.
|
|
511
|
+
- Specs (jsdom — constructor needs a DOM element; drive via pointer structs,
|
|
512
|
+
`button === -1` for moves): translate/rotate/scale on a real dataset with
|
|
513
|
+
`ShadedGeometry`/`TransformAttachment`/`ParentEntity` types registered; undo
|
|
514
|
+
restores; multi-entity translate + per-pivot rotate; snapped translate lands on
|
|
515
|
+
increments.
|
|
516
|
+
- Browser: handle drags, W/E/R/Q, snapping.
|
|
517
|
+
|
|
518
|
+
**P5 — Terrain tools**
|
|
519
|
+
- Single splat tool + layer swatch picker; brush settings live (native view from
|
|
520
|
+
P2); `[`/`]`; per-stroke QuadTree rebuild; "New terrain" template.
|
|
521
|
+
- Specs: weight-stamp partition preserved across layers (incl. depth 1), layer-picker
|
|
522
|
+
model, height-follow samples `(tX,tY)`, template terrain is functional
|
|
523
|
+
(sampler allocated, layer present).
|
|
524
|
+
- Browser: sculpt + paint on harness terrain; undo/redo strokes; create terrain from
|
|
525
|
+
template in an empty scene and paint it.
|
|
526
|
+
|
|
527
|
+
**P6 — Particle editing**
|
|
528
|
+
- LUT ops module + revived controllers (lazy 2d context) wired into
|
|
529
|
+
`ParameterLookupTableEditor` (trackName gate kept); `rebuildParticleEmitter`
|
|
530
|
+
auto-invocation + button; the three small fixes (D8).
|
|
531
|
+
- Specs: LUT mutation ops; rebuild leaves a live emitter (flags/bounds sane);
|
|
532
|
+
`emissionBounds` hidden; non-scale/color tracks stay hidden (no crash).
|
|
533
|
+
- Browser: author a campfire from scratch — create emitter entity from template,
|
|
534
|
+
set texture, shape curve + gradient, watch the live system change on rebuild.
|
|
535
|
+
|
|
536
|
+
**P7 — Polish + cleanup**
|
|
537
|
+
- D9 deletion list (+ their committed `.d.ts`); dat.gui out of live paths; RAF
|
|
538
|
+
audit (none outside engine tick); *optional if pillars are done:* drag-docking
|
|
539
|
+
overlay + layout persistence via `engine.storage`; update this doc to as-built;
|
|
540
|
+
full-suite jest; final browser walkthrough of the four acceptance stories; final
|
|
541
|
+
commits + bumps.
|
|
542
|
+
|
|
543
|
+
## 4. Acceptance stories (exit criteria, run in the browser before "done")
|
|
544
|
+
|
|
545
|
+
(a) Start the harness with an **empty scene**: place 5 meshes (drag from Assets onto
|
|
546
|
+
the y=0 grid), arrange with gizmos, save to a slot, reload the page, reopen, continue.
|
|
547
|
+
(b) Open `data/levels/first/level.bin`, move a tree with the gizmo while orbiting the
|
|
548
|
+
camera mid-edit, repaint a hill (height + splat), save back to the same URL, reload,
|
|
549
|
+
verify.
|
|
550
|
+
(c) Author a campfire emitter from scratch on a fresh scene (template entity → texture
|
|
551
|
+
→ curve → gradient → rebuild) with the emission-shape symbolic display visible.
|
|
552
|
+
(d) Build a small diorama: terrain from template, water, two lights, meshes; arrange
|
|
553
|
+
using panels/drawers as needed; undo/redo mixed edits across tools survives.
|
|
554
|
+
|
|
555
|
+
## 5. Testing rules
|
|
556
|
+
|
|
557
|
+
Jest from `H:/git/moh` (root `jest.conf.json`; jsdom for view/editor specs; asserts
|
|
558
|
+
are live). Real objects only (real datasets, components, `ActionProcessor`;
|
|
559
|
+
`InMemoryStorage` is a real engine class, not a mock); black-box assertions;
|
|
560
|
+
no call-count/private-path assertions. Canvas rendering is not asserted in jest —
|
|
561
|
+
mutation logic is factored out; rendering verified in-browser via the harness.
|
|
562
|
+
|
|
563
|
+
## 6. Risks
|
|
564
|
+
|
|
565
|
+
| Risk | Mitigation |
|
|
566
|
+
|---|---|
|
|
567
|
+
| P2 is the biggest phase and could stall | split into P2a/P2b commits; the old shell remains functional until P2b lands |
|
|
568
|
+
| Dock complexity balloons | fixed zones + menu moves first; drag overlay demoted to P7 optional |
|
|
569
|
+
| v2 gizmo hides more unknowns | legacy tool stays functional (P0-fixed) until P4 specs pass |
|
|
570
|
+
| Engine/game registry divergence | single engine list, game delegates; spec asserts every serializable harness component has an adapter |
|
|
571
|
+
| `TransformAttachment` write-through is deeper than expected | fallback: exclude attached entities from gizmo editing with a visible notice |
|
|
572
|
+
| Scene-swap leaves editor bound to a dead dataset | editor detach/reattach around swaps; headless attach makes this spec-able |
|
|
573
|
+
| Dev-server PUT middleware is repo-side | dev-only, guarded to `data/levels/**`; documented as testing infrastructure |
|
|
574
|
+
|
|
575
|
+
## 7. Out of scope (this pass)
|
|
576
|
+
|
|
577
|
+
Node-graph integration; stroke coalescing; free-floating windows; nested docks;
|
|
578
|
+
group-pivot rotate/scale about a common center; Transform64; sprite-atlas picker;
|
|
579
|
+
velocity-cone handles; simulation-step authoring UI; mesh-library categories/search;
|
|
580
|
+
object-v2 serializer adoption; `OptionsView` dat.gui migration; compiled editor.css
|
|
581
|
+
in `build/` for no-sass consumers (release-tooling note: worth adding to `release.sh`
|
|
582
|
+
later); pre-existing `meep/src` → game imports outside the editor closure
|
|
583
|
+
(`SerializedScene.js`, `hideEntityGracefully.js`, …).
|
|
584
|
+
|
|
585
|
+
## 8. Outstanding work (inventory, 2026-08-15)
|
|
586
|
+
|
|
587
|
+
Everything the plan calls a pillar is built, specced and shipped; so are both P7
|
|
588
|
+
features it demoted, and so are the sweepings. Three of the four acceptance stories
|
|
589
|
+
are walked and the fourth is partly done — what remains of them needs a displayed
|
|
590
|
+
browser pane rather than a headless one.
|
|
591
|
+
|
|
592
|
+
> An earlier revision of this section claimed the terrain paint tools "latch Running
|
|
593
|
+
> forever" for want of a `super.stop()`. That was wrong — neither overrides `stop()`, so
|
|
594
|
+
> both inherit `Tool.stop()` and reset correctly. The real defect was narrower and worse,
|
|
595
|
+
> and is recorded under "closed" below.
|
|
596
|
+
|
|
597
|
+
**(1) Acceptance stories — three of four walked, one partly.** Driven through the
|
|
598
|
+
editor's own menus in the browser harness on 2026-08-15, not through internals:
|
|
599
|
+
|
|
600
|
+
- **(a) PASS.** New scene, five entities placed from the `+ Entity` template menu
|
|
601
|
+
(3 meshes, light, emitter), arranged, `Scene ▸ Save to slot`, **full page reload**,
|
|
602
|
+
`Scene ▸ Open slot`. All eight entities and every position returned exactly; editor
|
|
603
|
+
stayed attached, one shell.
|
|
604
|
+
- **(b) PASS.** `Scene ▸ Open URL` on `data/levels/first/level.bin` (2.4 MB) → 68
|
|
605
|
+
entities, editor attached. Moved a prop to a marker position, `Scene ▸ Save to URL`
|
|
606
|
+
over the dev-server PUT endpoint (2 381 217 bytes written), **page reload**, reopened:
|
|
607
|
+
68 entities, prop still at the marker. Written to `data/levels/dev/` rather than over
|
|
608
|
+
the project's own level — the loop is identical and the real asset is left alone.
|
|
609
|
+
- **(c) PARTLY.** The authoring surface is verified: the emitter template builds a
|
|
610
|
+
live one-layer emitter, and its inspector exposes the whole parameter set (Image URL,
|
|
611
|
+
Particle Life/Size/Rotation, Emission Shape/From/Rate, Parameter Tracks) with **both
|
|
612
|
+
revived LUT editors rendering** — a 220×90 curve canvas and a 220×40 gradient canvas.
|
|
613
|
+
What is *not* verified is dragging curve and gradient control points and watching the
|
|
614
|
+
live system change: that needs eyes on a displayed pane, not a headless one.
|
|
615
|
+
- **(d) PASS (core).** Mixed-tool undo/redo over a scene built from the terrain, light
|
|
616
|
+
and mesh templates: undo peels the sequence back in order (mesh, then light), redo
|
|
617
|
+
restores both, and undoing past the terrain returns exactly to the `newScene` baseline.
|
|
618
|
+
Terrain *painting* strokes were not exercised — same headless limitation as (c).
|
|
619
|
+
|
|
620
|
+
The walkthrough earned its place: it found one real defect, now fixed — the **inspector
|
|
621
|
+
came up blank when its tab was brought forward** with an entity already selected, because
|
|
622
|
+
the component rows were only built on `model.onChanged` and a background tab is unlinked.
|
|
623
|
+
|
|
624
|
+
**(2) Repo-side sweepings** (none affect the running editor):
|
|
625
|
+
|
|
626
|
+
- `src/view/elements/button/ButtonView.stories.js` still imports `@storybook/html` and
|
|
627
|
+
`@storybook/addon-actions`. D9 listed it for deletion; it is the only storybook consumer
|
|
628
|
+
left in meep, and `@storybook/*` is in neither `dependencies` nor `devDependencies`.
|
|
629
|
+
**Done** — deleted; the host has no storybook config either, so nothing could render it.
|
|
630
|
+
- `dat.gui` is imported by meep (`src/view/controller/dat/**`, `src/view/controller/controls/**`,
|
|
631
|
+
`src/engine/options/OptionsView.js`, several `prototype*.js`) but was declared nowhere.
|
|
632
|
+
**Done** — declared as an *optional* peer dependency alongside `three`. Optional because
|
|
633
|
+
D9's goal is met: no editor or engine path touches dat.gui, so a consumer that never
|
|
634
|
+
imports those view modules should not be told to install it.
|
|
635
|
+
- Orphaned app-side stylesheets in moh now that §D2's move landed. **Done** — every editor
|
|
636
|
+
sheet under `app/css/editor/` is gone: the 14 nothing imported (`MeshLibraryView.scss`,
|
|
637
|
+
`tools/ToolView.scss`, `controllers/**`), plus `EditorView.scss` and the
|
|
638
|
+
`EntityListView.scss` it `@import`ed, once their last consumer went. That consumer was
|
|
639
|
+
`prototypeSpriteSystem.js` — itself an unreferenced prototype that reached across the
|
|
640
|
+
package boundary for `model/game/initializeEditor.js` — deleted on the owner's call.
|
|
641
|
+
**No meep module imports `app/css/editor` any more, which closes §D2's styling goal.**
|
|
642
|
+
`app/css/editor/node-graph/**` stays: the node-graph harness imports it, and node-graph
|
|
643
|
+
is untouched by this rework.
|
|
644
|
+
|
|
645
|
+
**Closed since this inventory was written:** `F` frames the selection from its world
|
|
646
|
+
bounds instead of recentring on it (`editor/camera/camera_framing.js`; bounds are
|
|
647
|
+
geometry unioned with the entity origin, distance fits the circumscribed sphere, and
|
|
648
|
+
an entity with no geometry frames its symbolic-display helper rather than collapsing
|
|
649
|
+
onto the pivot, and a terrain frames the extent of its grid rather than its corner), and
|
|
650
|
+
a gesture released outside the viewport now ends — `PointerDevice` publishes its
|
|
651
|
+
window-level release as `on.globalUp` and `ToolEngine` pairs releases with that instead
|
|
652
|
+
of the element-scoped `up`.
|
|
653
|
+
|
|
654
|
+
Also closed: **both P7 features.** The dock arrangement now survives a reload —
|
|
655
|
+
`DockLayoutView.toJSON`/`fromJSON`, matched by `DockPanel#id` and tolerant of ids the
|
|
656
|
+
running build no longer has (or never had), saved through `EditorLayoutStore` over
|
|
657
|
+
`engine.storage` under a per-host key on a new `rearranged` signal, debounced. And a
|
|
658
|
+
panel is docked by dragging its tab, with the per-tab menu kept for anyone who would
|
|
659
|
+
rather not drag. Both verified in the harness, not only in jest: a divider dragged to 460
|
|
660
|
+
reopens at 460 after a page reload, and the Scene tab dragged into the right zone lands
|
|
661
|
+
there and is in storage 400ms later.
|
|
662
|
+
|
|
663
|
+
> The first cut of the drag drew its feedback on the zones themselves, where their own
|
|
664
|
+
> opaque content covered it; see the docking follow-up in the header for what replaced it.
|
|
665
|
+
|
|
666
|
+
Also closed: **`GridPaintTool` could never paint.** Its `update()` gates on `isRunning()`
|
|
667
|
+
while its `start()` override never called `super.start()`, so the state never left Ready
|
|
668
|
+
and the paint branch was dead on every tick — a registered, toolbar-reachable tool that
|
|
669
|
+
did nothing. `TerrainPaintTool` gates on the same predicate and worked only because its
|
|
670
|
+
subclasses remembered the super call. Since two of five tools got it wrong, the missing
|
|
671
|
+
calls were not added back: `Tool` now owns the transition and subclasses implement
|
|
672
|
+
`handleStart`/`handleStop`, so the state cannot be stranded. Hook ordering is specced —
|
|
673
|
+
`handleStart` runs already-Running (that is what makes the first tile land), `handleStop`
|
|
674
|
+
runs still-Running (the marquee it commits belongs to the closing gesture), and `stop()`
|
|
675
|
+
restores Ready from a `finally` so a failed commit cannot poison later gestures. Verified
|
|
676
|
+
live as well as in jest: in the harness the marquee tool now reports Running only for the
|
|
677
|
+
duration of its own gesture, including one released over a panel and one whose stop hook
|
|
678
|
+
throws.
|
|
679
|
+
|
|
680
|
+
Both camera/gesture fixes were verified against the running harness, not only in jest: framing the harness
|
|
681
|
+
terrain targets its middle at the distance that fits its circumscribed sphere to the
|
|
682
|
+
camera's field of view, framing a light lands on the light at symbol distance, and a
|
|
683
|
+
marquee begun in the viewport and released over the scene-tree panel closes instead of
|
|
684
|
+
staying open into the next press.
|
|
685
|
+
|
|
686
|
+
**Not outstanding, recorded so it is not re-litigated:** the D9 deletion list is fully
|
|
687
|
+
executed (`ComponentControlFactory` tree, `ViewManagementSystem.js`, `EditorView`/`ViewManager`,
|
|
688
|
+
legacy `TransformTool` + vendored three controls, `PatchTerrainTextureAction`, and every
|
|
689
|
+
committed `.d.ts`/`.d.ts.map`); the only `.module.scss` in meep is gone; no `requestAnimationFrame`
|
|
690
|
+
survives in the editor outside `prototypeObjectEditor.js` (a standalone prototype);
|
|
691
|
+
`populateEngineSerializationRegistry` is registered meep-side and `GameBinarySerializationRegistry.js:53`
|
|
692
|
+
delegates to it; the dev-server PUT endpoint is in place and path-confined to `app/data/levels/**`.
|