@woosh/meep-engine 2.169.0 → 2.169.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/editor/process/symbolic/make3DSymbolicDisplay.js +1 -1
- package/editor/view/ecs/EntityList.js +1 -1
- package/editor/view/ecs/components/particles/ParticleLayerController.js +1 -1
- package/editor/view/makeEntityDecorators.js +1 -1
- package/package.json +1 -1
- package/src/REVIEW_2026_08_06.md +39 -0
- package/src/core/IdPool.d.ts +2 -2
- package/src/core/IdPool.d.ts.map +1 -1
- package/src/core/IdPool.js +1 -1
- package/src/core/binary/32BitEncoder.d.ts +2 -3
- package/src/core/binary/32BitEncoder.d.ts.map +1 -1
- package/src/core/binary/32BitEncoder.js +1 -1
- package/src/core/bvh2/bvh3/BVH.d.ts +2 -2
- package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/BVH.js +1 -1
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.d.ts +2 -2
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/query/bvh_query_user_data_nearest_to_point_filtered.js +86 -86
- package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.d.ts +2 -2
- package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.d.ts.map +1 -1
- package/src/core/bvh2/traversal/aabb3_detailed_volume_intersection_callback_based.js +1 -1
- package/src/core/cache/Cache.d.ts +4 -4
- package/src/core/cache/Cache.d.ts.map +1 -1
- package/src/core/cache/Cache.js +3 -3
- package/src/core/cache/LoadingCache.d.ts +1 -1
- package/src/core/cache/LoadingCache.js +2 -2
- package/src/core/cache/wtinylfu/CacheWTinylfu.d.ts +2 -2
- package/src/core/cache/wtinylfu/CacheWTinylfu.js +2 -2
- package/src/core/collection/array/array_index_by_equality.d.ts +2 -2
- package/src/core/collection/array/array_index_by_equality.d.ts.map +1 -1
- package/src/core/collection/array/array_index_by_equality.js +1 -1
- package/src/core/collection/array/array_pick_best_element.d.ts +2 -2
- package/src/core/collection/array/array_pick_best_element.d.ts.map +1 -1
- package/src/core/collection/array/array_pick_best_element.js +1 -1
- package/src/core/collection/array/array_pick_best_elements.d.ts +2 -2
- package/src/core/collection/array/array_pick_best_elements.d.ts.map +1 -1
- package/src/core/collection/array/array_pick_best_elements.js +1 -1
- package/src/core/collection/array/array_set_diff.d.ts +2 -3
- package/src/core/collection/array/array_set_diff.d.ts.map +1 -1
- package/src/core/collection/array/array_set_diff.js +1 -1
- package/src/core/collection/array/array_set_diff_sorting.d.ts +2 -2
- package/src/core/collection/array/array_set_diff_sorting.d.ts.map +1 -1
- package/src/core/collection/array/array_set_diff_sorting.js +1 -1
- package/src/core/collection/array/iterator/ArrayIteratorRandom.d.ts +2 -1
- package/src/core/collection/array/iterator/ArrayIteratorRandom.d.ts.map +1 -1
- package/src/core/collection/heap/BinaryHeap.d.ts +2 -2
- package/src/core/collection/heap/BinaryHeap.d.ts.map +1 -1
- package/src/core/collection/heap/BinaryHeap.js +1 -1
- package/src/core/collection/list/List.d.ts +19 -19
- package/src/core/collection/list/List.d.ts.map +1 -1
- package/src/core/collection/list/List.js +10 -10
- package/src/core/collection/map/HashMap.d.ts +2 -2
- package/src/core/collection/map/HashMap.d.ts.map +1 -1
- package/src/core/collection/map/HashMap.js +1 -1
- package/src/core/collection/set/ArraySet.d.ts +2 -2
- package/src/core/collection/set/ArraySet.d.ts.map +1 -1
- package/src/core/collection/set/ArraySet.js +1 -1
- package/src/core/collection/table/RowFirstTable.d.ts +2 -2
- package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
- package/src/core/collection/table/RowFirstTable.js +1 -1
- package/src/core/collection/table/RowFirstTableSpec.js +4 -4
- package/src/core/fsm/simple/SimpleStateMachineDescription.d.ts +2 -2
- package/src/core/fsm/simple/SimpleStateMachineDescription.d.ts.map +1 -1
- package/src/core/fsm/simple/SimpleStateMachineDescription.js +1 -1
- package/src/core/geom/2d/bvh/BVH2D.d.ts +2 -2
- package/src/core/geom/2d/bvh/BVH2D.d.ts.map +1 -1
- package/src/core/geom/2d/bvh/BVH2D.js +1 -1
- package/src/core/geom/2d/quad-tree/qt_match_data_by_circle.d.ts +2 -2
- package/src/core/geom/2d/quad-tree/qt_match_data_by_circle.d.ts.map +1 -1
- package/src/core/geom/2d/quad-tree/qt_match_data_by_circle.js +1 -1
- package/src/core/geom/2d/quad-tree/qt_query_data_raycast.d.ts +2 -2
- package/src/core/geom/2d/quad-tree/qt_query_data_raycast.d.ts.map +1 -1
- package/src/core/geom/2d/quad-tree/qt_query_data_raycast.js +1 -1
- package/src/core/geom/3d/aabb/AABB3.d.ts +2 -2
- package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
- package/src/core/geom/3d/aabb/AABB3.js +1 -1
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts +2 -2
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/TetrahedralMesh.js +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.d.ts +2 -5
- package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/push_boundary_with_validation.js +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.d.ts +2 -2
- package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/delaunay/debug/validate_cavity_boundary.js +1 -1
- package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.d.ts +2 -3
- package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/validate_tetrahedral_mesh.js +69 -69
- package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.d.ts +2 -3
- package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.d.ts.map +1 -1
- package/src/core/geom/3d/tetrahedra/validate_tetrahedron_neighbourhood.js +50 -50
- package/src/core/geom/3d/topology/struct/TopoEdge.d.ts +2 -2
- package/src/core/geom/3d/topology/struct/TopoEdge.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoEdge.js +1 -1
- package/src/core/geom/3d/topology/struct/TopoMesh.d.ts +2 -3
- package/src/core/geom/3d/topology/struct/TopoMesh.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoMesh.js +1 -1
- package/src/core/geom/3d/topology/struct/TopoTriangle.d.ts +2 -2
- package/src/core/geom/3d/topology/struct/TopoTriangle.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoTriangle.js +1 -1
- package/src/core/geom/3d/topology/struct/TopoVertex.d.ts +2 -2
- package/src/core/geom/3d/topology/struct/TopoVertex.d.ts.map +1 -1
- package/src/core/geom/3d/topology/struct/TopoVertex.js +1 -1
- package/src/core/geom/3d/topology/util/mesh_flood_fill.d.ts +1 -1
- package/src/core/geom/3d/topology/util/mesh_flood_fill.js +1 -1
- package/src/core/geom/3d/util/aabb3_emit_point_grid.d.ts +2 -2
- package/src/core/geom/3d/util/aabb3_emit_point_grid.d.ts.map +1 -1
- package/src/core/geom/3d/util/aabb3_emit_point_grid.js +1 -1
- package/src/core/geom/Quaternion.d.ts +2 -2
- package/src/core/geom/Quaternion.d.ts.map +1 -1
- package/src/core/geom/Quaternion.js +1 -1
- package/src/core/geom/Vector1.d.ts +2 -2
- package/src/core/geom/Vector1.d.ts.map +1 -1
- package/src/core/geom/Vector1.js +1 -1
- package/src/core/geom/packing/max-rect/find_best_container.d.ts +2 -2
- package/src/core/geom/packing/max-rect/find_best_container.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/find_best_container.js +1 -1
- package/src/core/geom/vec3/v3_lerp.d.ts +1 -1
- package/src/core/geom/vec3/v3_lerp.js +1 -1
- package/src/core/json/abstractJSONSerializer.d.ts +2 -2
- package/src/core/json/abstractJSONSerializer.d.ts.map +1 -1
- package/src/core/json/abstractJSONSerializer.js +1 -1
- package/src/core/lang/reactive/AbstractCachingParser.d.ts +2 -3
- package/src/core/lang/reactive/AbstractCachingParser.d.ts.map +1 -1
- package/src/core/lang/reactive/AbstractCachingParser.js +1 -1
- package/src/core/localization/Localization.d.ts +2 -2
- package/src/core/localization/Localization.d.ts.map +1 -1
- package/src/core/localization/Localization.js +1 -1
- package/src/core/math/noise/create_simplex_noise_2d.d.ts +2 -2
- package/src/core/math/noise/create_simplex_noise_2d.d.ts.map +1 -1
- package/src/core/math/noise/create_simplex_noise_2d.js +1 -1
- package/src/core/math/physics/mie/MIE_PARTICLES_STANDARD.js +1 -1
- package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.d.ts +3 -3
- package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.d.ts.map +1 -1
- package/src/core/math/physics/mie/compute_mie_particle_properties_rgb.js +2 -2
- package/src/core/math/random/seededRandom_Mulberry32.d.ts +3 -2
- package/src/core/math/random/seededRandom_Mulberry32.d.ts.map +1 -1
- package/src/core/math/random/seededRandom_Mulberry32.js +1 -1
- package/src/core/model/ModuleRegistry.d.ts +2 -2
- package/src/core/model/ModuleRegistry.d.ts.map +1 -1
- package/src/core/model/ModuleRegistry.js +1 -1
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.d.ts +1 -1
- package/src/core/model/node-graph/json/serializeNodeGraphToJSON.js +2 -2
- package/src/core/model/object/objectDeepEquals.d.ts +2 -2
- package/src/core/model/object/objectDeepEquals.d.ts.map +1 -1
- package/src/core/model/object/objectDeepEquals.js +1 -1
- package/src/core/model/reactive/model/ReactiveExpression.d.ts +2 -2
- package/src/core/model/reactive/model/ReactiveExpression.d.ts.map +1 -1
- package/src/core/model/reactive/model/ReactiveExpression.js +1 -1
- package/src/core/model/validate_enum_schema.d.ts +2 -3
- package/src/core/model/validate_enum_schema.d.ts.map +1 -1
- package/src/core/model/validate_enum_schema.js +1 -1
- package/src/core/process/Future.d.ts +3 -3
- package/src/core/process/Future.d.ts.map +1 -1
- package/src/core/process/Future.js +1 -1
- package/src/core/process/task/Task.d.ts +3 -3
- package/src/core/process/task/Task.d.ts.map +1 -1
- package/src/core/process/task/Task.js +2 -2
- package/src/core/process/task/util/countTask.d.ts +2 -2
- package/src/core/process/task/util/countTask.d.ts.map +1 -1
- package/src/core/process/task/util/countTask.js +1 -1
- package/src/core/process/task/util/randomCountTask.d.ts +2 -2
- package/src/core/process/task/util/randomCountTask.d.ts.map +1 -1
- package/src/core/process/task/util/randomCountTask.js +1 -1
- package/src/engine/animation/Animations.d.ts +4 -4
- package/src/engine/animation/Animations.d.ts.map +1 -1
- package/src/engine/animation/Animations.js +2 -2
- package/src/engine/animation/EntityAnimation.d.ts +5 -5
- package/src/engine/animation/EntityAnimation.d.ts.map +1 -1
- package/src/engine/animation/EntityAnimation.js +2 -2
- package/src/engine/animation/TransitionFunctions.d.ts +1 -4
- package/src/engine/animation/TransitionFunctions.d.ts.map +1 -1
- package/src/engine/animation/TransitionFunctions.js +1 -1
- package/src/engine/animation/Tween.d.ts +4 -4
- package/src/engine/animation/Tween.d.ts.map +1 -1
- package/src/engine/animation/Tween.js +2 -2
- package/src/engine/asset/AssetManager.d.ts +6 -6
- package/src/engine/asset/AssetManager.d.ts.map +1 -1
- package/src/engine/asset/AssetManager.js +1411 -1411
- package/src/engine/asset/AssetRequest.d.ts +4 -4
- package/src/engine/asset/AssetRequest.d.ts.map +1 -1
- package/src/engine/asset/AssetRequest.js +3 -3
- package/src/engine/asset/loaders/AssetLoader.d.ts +3 -3
- package/src/engine/asset/loaders/AssetLoader.d.ts.map +1 -1
- package/src/engine/asset/loaders/AssetLoader.js +2 -2
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts +0 -10
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.d.ts +6 -6
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +3 -3
- package/src/engine/ecs/EntityManager.d.ts +4 -4
- package/src/engine/ecs/EntityManager.js +4 -4
- package/src/engine/ecs/EntityObserver.d.ts +3 -3
- package/src/engine/ecs/EntityObserver.d.ts.map +1 -1
- package/src/engine/ecs/EntityObserver.js +2 -2
- package/src/engine/ecs/System.d.ts +4 -4
- package/src/engine/ecs/System.d.ts.map +1 -1
- package/src/engine/ecs/System.js +2 -2
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.d.ts +2 -3
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.d.ts.map +1 -1
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.js +1 -1
- package/src/engine/ecs/grid/pick.d.ts +4 -2
- package/src/engine/ecs/grid/pick.d.ts.map +1 -1
- package/src/engine/ecs/grid/pick.js +1 -1
- package/src/engine/ecs/parent/EntityNode.d.ts +4 -4
- package/src/engine/ecs/parent/EntityNode.d.ts.map +1 -1
- package/src/engine/ecs/parent/EntityNode.js +2 -2
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts +2 -2
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.d.ts.map +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionDeSerializer.js +1 -1
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionHeaderCodec.d.ts +1 -2
- package/src/engine/ecs/storage/binary/collection/BinaryCollectionHeaderCodec.d.ts.map +1 -1
- package/src/engine/ecs/systems/AnimationSystem.d.ts +0 -5
- package/src/engine/ecs/systems/AnimationSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts +2 -2
- package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/TerrainSystem.js +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +5 -5
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
- package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +3 -3
- package/src/engine/ecs/terrain/util/obtainTerrain.d.ts +2 -3
- package/src/engine/ecs/terrain/util/obtainTerrain.d.ts.map +1 -1
- package/src/engine/ecs/terrain/util/obtainTerrain.js +1 -1
- package/src/engine/ecs/util/hideEntityGracefully.js +2 -2
- package/src/engine/graphics/FrameRunner.d.ts +2 -2
- package/src/engine/graphics/FrameRunner.d.ts.map +1 -1
- package/src/engine/graphics/FrameRunner.js +1 -1
- package/src/engine/graphics/GraphicsEngine.d.ts +4 -2
- package/src/engine/graphics/GraphicsEngine.d.ts.map +1 -1
- package/src/engine/graphics/GraphicsEngine.js +1 -1
- package/src/engine/graphics/camera/CameraShake.d.ts +6 -6
- package/src/engine/graphics/camera/CameraShake.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts +2 -2
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/CameraSystem.js +1 -1
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.d.ts +2 -3
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/decal/v2/FPDecalSystem.js +1 -1
- package/src/engine/graphics/ecs/light/three/ThreeLightCache.d.ts +1 -1
- package/src/engine/graphics/ecs/light/three/ThreeLightCache.js +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.d.ts +4 -5
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometrySystem.js +2 -2
- package/src/engine/graphics/geometry/computeBoundingSphereFromVertexData.d.ts +2 -2
- package/src/engine/graphics/geometry/computeBoundingSphereFromVertexData.js +1 -1
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.d.ts +2 -2
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.d.ts.map +1 -1
- package/src/engine/graphics/geometry/instancing/InstancedMeshGroup.js +1 -1
- package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts +2 -2
- package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts.map +1 -1
- package/src/engine/graphics/geometry/ribbon/Ribbon.js +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts +2 -2
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.d.ts +2 -2
- package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.js +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.d.ts +2 -2
- package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/distrubuteParticlesOnMesh.js +1 -1
- package/src/engine/graphics/render/RendererPool.d.ts +4 -4
- package/src/engine/graphics/render/RendererPool.d.ts.map +1 -1
- package/src/engine/graphics/render/RendererPool.js +2 -2
- package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts +5 -4
- package/src/engine/graphics/render/frame_graph/FrameGraph.d.ts.map +1 -1
- package/src/engine/graphics/render/frame_graph/FrameGraph.js +2 -2
- package/src/engine/graphics/render/layers/RenderLayer.d.ts +2 -2
- package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
- package/src/engine/graphics/render/layers/RenderLayer.js +1 -1
- package/src/engine/graphics/render/layers/RenderLayerUtils.js +1 -1
- package/src/engine/graphics/sh3/lightmap/bake_lightmap_for_scene.d.ts +3 -1
- package/src/engine/graphics/sh3/lightmap/bake_lightmap_for_scene.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lightmap/bake_lightmap_for_scene.js +681 -681
- package/src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.d.ts +2 -2
- package/src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.d.ts.map +1 -1
- package/src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.js +145 -145
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts +2 -1
- package/src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts +2 -2
- package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/Sampler2D.js +1 -1
- package/src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.d.ts +6 -3
- package/src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.js +6 -16
- package/src/engine/graphics/texture/sampler/sampler2d_combine.d.ts +2 -2
- package/src/engine/graphics/texture/sampler/sampler2d_combine.d.ts.map +1 -1
- package/src/engine/graphics/texture/sampler/sampler2d_combine.js +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.js +2 -2
- package/src/engine/grid/obstacle/GridObstacle.d.ts +2 -2
- package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
- package/src/engine/grid/obstacle/GridObstacle.js +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts +2 -2
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.js +1 -1
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts +3 -3
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.js +1 -1
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.d.ts +2 -1
- package/src/engine/intelligence/behavior/util/RandomDelayBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/Blackboard.d.ts +4 -4
- package/src/engine/intelligence/blackboard/Blackboard.d.ts.map +1 -1
- package/src/engine/intelligence/blackboard/Blackboard.js +2 -2
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts +17 -15
- package/src/engine/intelligence/mcts/MonteCarlo.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/MonteCarlo.js +345 -345
- package/src/engine/intelligence/mcts/StateNode.d.ts +2 -2
- package/src/engine/intelligence/mcts/StateNode.d.ts.map +1 -1
- package/src/engine/intelligence/mcts/StateNode.js +364 -364
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts +3 -3
- package/src/engine/intelligence/optimization/RandomOptimizer.d.ts.map +1 -1
- package/src/engine/intelligence/optimization/RandomOptimizer.js +2 -2
- package/src/engine/intelligence/optimization/optimize_cyclic_sequence_pairwise.d.ts +2 -2
- package/src/engine/intelligence/optimization/optimize_cyclic_sequence_pairwise.d.ts.map +1 -1
- package/src/engine/intelligence/optimization/optimize_cyclic_sequence_pairwise.js +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts +4 -5
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.d.ts.map +1 -1
- package/src/engine/knowledge/database/StaticKnowledgeDataTable.js +2 -2
- package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts +0 -5
- package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts.map +1 -1
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +0 -4
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts.map +1 -1
- package/src/engine/physics/fluid/ecs/FluidSystem.d.ts +0 -4
- package/src/engine/physics/fluid/ecs/FluidSystem.d.ts.map +1 -1
- package/src/engine/save/GameStateLoader.d.ts +2 -2
- package/src/engine/save/GameStateLoader.d.ts.map +1 -1
- package/src/engine/save/GameStateLoader.js +1 -1
- package/src/engine/save/Storage.d.ts +4 -4
- package/src/engine/save/Storage.d.ts.map +1 -1
- package/src/engine/save/Storage.js +2 -2
- package/src/engine/save/storage/IndexedDBStorage.d.ts.map +1 -1
- package/src/engine/save/storage/IndexedDBStorage.js +11 -10
- package/src/engine/sound/simulation/prototypeAcousticSolver.js +1652 -1652
- package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts +2 -2
- package/src/engine/sound/sopra/util/buildAttenuationCurve.d.ts.map +1 -1
- package/src/engine/sound/sopra/util/buildAttenuationCurve.js +40 -40
- package/src/engine/ui/notification/NotificationManager.d.ts +5 -5
- package/src/engine/ui/notification/NotificationManager.d.ts.map +1 -1
- package/src/engine/ui/notification/NotificationManager.js +4 -4
- package/src/engine/ui/tiles2d/TileGrid.d.ts +2 -2
- package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
- package/src/engine/ui/tiles2d/TileGrid.js +1 -1
- package/src/generation/filtering/numeric/complex/CellFilterSimplexNoise.d.ts +1 -1
- package/src/generation/filtering/numeric/complex/CellFilterSimplexNoise.js +1 -1
- package/src/generation/grid/generation/road/GridTaskGenerateRoads.js +2 -2
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.d.ts +1 -1
- package/src/generation/grid/generation/util/buildPathFromDistanceMap.js +1 -1
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorRandomRotation.d.ts +2 -1
- package/src/generation/markers/actions/placement/MarkerNodeEntityProcessorRandomRotation.d.ts.map +1 -1
- package/src/generation/markers/actions/probability/MarkerNodeActionSelectWeighted.d.ts +2 -1
- package/src/generation/markers/actions/probability/MarkerNodeActionSelectWeighted.d.ts.map +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformRotateRandom.d.ts +2 -1
- package/src/generation/markers/transform/MarkerNodeTransformRotateRandom.d.ts.map +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.d.ts +4 -3
- package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.d.ts.map +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordPropertyClosure.js +1 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordUniqueRandomEnum.d.ts +2 -1
- package/src/generation/markers/transform/MarkerNodeTransformerRecordUniqueRandomEnum.d.ts.map +1 -1
- package/src/view/common/VirtualListView.d.ts +1 -1
- package/src/view/common/VirtualListView.js +1 -1
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts +2 -2
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.d.ts.map +1 -1
- package/src/view/tooltip/gml/compiler/GMLReferenceCompiler.js +1 -1
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
* @param {number} cy vertex C y, in pixels
|
|
24
24
|
* @param {number} width raster width (texel centers tested in [0, width))
|
|
25
25
|
* @param {number} height raster height (texel centers tested in [0, height))
|
|
26
|
-
* @param {
|
|
26
|
+
* @param {(px: number, py: number, wA: number, wB: number, wC: number) => void} callback
|
|
27
27
|
* @param {boolean} [conservative] include edge-overlapping texels with a clamped sample (default false)
|
|
28
28
|
*/
|
|
29
|
-
export function lightmap_rasterize_triangle(ax: number, ay: number, bx: number, by: number, cx: number, cy: number, width: number, height: number, callback:
|
|
29
|
+
export function lightmap_rasterize_triangle(ax: number, ay: number, bx: number, by: number, cx: number, cy: number, width: number, height: number, callback: (px: number, py: number, wA: number, wB: number, wC: number) => void, conservative?: boolean): void;
|
|
30
30
|
//# sourceMappingURL=lightmap_rasterize_triangle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lightmap_rasterize_triangle.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.js"],"names":[],"mappings":"AAsDA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,gDAXW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,SACN,MAAM,UACN,MAAM,
|
|
1
|
+
{"version":3,"file":"lightmap_rasterize_triangle.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/sh3/lightmap/lightmap_rasterize_triangle.js"],"names":[],"mappings":"AAsDA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,gDAXW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,SACN,MAAM,UACN,MAAM,iBACD,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,IAAI,iBACpE,OAAO,QAgEjB"}
|
|
@@ -1,145 +1,145 @@
|
|
|
1
|
-
/** Half the diagonal of a unit texel — the conservative overlap reach from a center. */
|
|
2
|
-
const HALF_TEXEL_DIAGONAL = Math.SQRT2 * 0.5;
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Closest point to (px,py) on segment (ax,ay)->(bx,by), written to out[0..1].
|
|
6
|
-
*
|
|
7
|
-
* @param {Float32Array|number[]} out
|
|
8
|
-
* @param {number} px
|
|
9
|
-
* @param {number} py
|
|
10
|
-
* @param {number} ax
|
|
11
|
-
* @param {number} ay
|
|
12
|
-
* @param {number} bx
|
|
13
|
-
* @param {number} by
|
|
14
|
-
*/
|
|
15
|
-
function closest_on_segment(out, px, py, ax, ay, bx, by) {
|
|
16
|
-
const ex = bx - ax;
|
|
17
|
-
const ey = by - ay;
|
|
18
|
-
const len2 = ex * ex + ey * ey;
|
|
19
|
-
let t = len2 > 0 ? ((px - ax) * ex + (py - ay) * ey) / len2 : 0;
|
|
20
|
-
if (t < 0) t = 0; else if (t > 1) t = 1;
|
|
21
|
-
out[0] = ax + t * ex;
|
|
22
|
-
out[1] = ay + t * ey;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
const _q = new Float32Array(2);
|
|
26
|
-
const _e = new Float32Array(2);
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Closest point to (px,py) on the (filled) triangle, written to out[0..1].
|
|
30
|
-
* Assumes the point is outside the triangle (callers test inside first).
|
|
31
|
-
*
|
|
32
|
-
* @param {Float32Array|number[]} out
|
|
33
|
-
*/
|
|
34
|
-
function closest_on_triangle(out, px, py, ax, ay, bx, by, cx, cy) {
|
|
35
|
-
let best_d2 = Infinity;
|
|
36
|
-
|
|
37
|
-
closest_on_segment(_e, px, py, ax, ay, bx, by);
|
|
38
|
-
let dx = px - _e[0], dy = py - _e[1];
|
|
39
|
-
let d2 = dx * dx + dy * dy;
|
|
40
|
-
if (d2 < best_d2) { best_d2 = d2; out[0] = _e[0]; out[1] = _e[1]; }
|
|
41
|
-
|
|
42
|
-
closest_on_segment(_e, px, py, bx, by, cx, cy);
|
|
43
|
-
dx = px - _e[0]; dy = py - _e[1];
|
|
44
|
-
d2 = dx * dx + dy * dy;
|
|
45
|
-
if (d2 < best_d2) { best_d2 = d2; out[0] = _e[0]; out[1] = _e[1]; }
|
|
46
|
-
|
|
47
|
-
closest_on_segment(_e, px, py, cx, cy, ax, ay);
|
|
48
|
-
dx = px - _e[0]; dy = py - _e[1];
|
|
49
|
-
d2 = dx * dx + dy * dy;
|
|
50
|
-
if (d2 < best_d2) { best_d2 = d2; out[0] = _e[0]; out[1] = _e[1]; }
|
|
51
|
-
|
|
52
|
-
return Math.sqrt(best_d2);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Rasterize a 2D triangle in integer pixel space, invoking `callback` once per
|
|
57
|
-
* covered texel with the barycentric weights of the three vertices (A, B, C) at
|
|
58
|
-
* the sampled point. The weights are an exact partition of unity (`wA+wB+wC===1`,
|
|
59
|
-
* all `>=0`), so a caller can interpolate any per-vertex attribute directly.
|
|
60
|
-
*
|
|
61
|
-
* Default (center) mode: a texel is covered iff its CENTER lies inside the
|
|
62
|
-
* triangle, sampled at that center.
|
|
63
|
-
*
|
|
64
|
-
* Conservative mode (`conservative === true`): a texel is also covered if its
|
|
65
|
-
* cell overlaps the triangle even though its center is outside (thin features,
|
|
66
|
-
* chart borders). For those, the sample is **clamped to the closest point on the
|
|
67
|
-
* triangle** so the interpolated position/normal stays on the surface — avoiding
|
|
68
|
-
* the dropped-edge-texel black gutters of center-only coverage.
|
|
69
|
-
*
|
|
70
|
-
* Degenerate (zero-area) triangles produce no callbacks.
|
|
71
|
-
*
|
|
72
|
-
* @param {number} ax vertex A x, in pixels
|
|
73
|
-
* @param {number} ay vertex A y, in pixels
|
|
74
|
-
* @param {number} bx vertex B x, in pixels
|
|
75
|
-
* @param {number} by vertex B y, in pixels
|
|
76
|
-
* @param {number} cx vertex C x, in pixels
|
|
77
|
-
* @param {number} cy vertex C y, in pixels
|
|
78
|
-
* @param {number} width raster width (texel centers tested in [0, width))
|
|
79
|
-
* @param {number} height raster height (texel centers tested in [0, height))
|
|
80
|
-
* @param {
|
|
81
|
-
* @param {boolean} [conservative] include edge-overlapping texels with a clamped sample (default false)
|
|
82
|
-
*/
|
|
83
|
-
export function lightmap_rasterize_triangle(ax, ay, bx, by, cx, cy, width, height, callback, conservative = false) {
|
|
84
|
-
// conservative mode reaches one extra texel of overlap, so widen the scan box
|
|
85
|
-
const margin = conservative ? 1 : 0;
|
|
86
|
-
|
|
87
|
-
const min_x = Math.max(0, Math.floor(Math.min(ax, bx, cx)) - margin);
|
|
88
|
-
const max_x = Math.min(width - 1, Math.floor(Math.max(ax, bx, cx)) + margin);
|
|
89
|
-
const min_y = Math.max(0, Math.floor(Math.min(ay, by, cy)) - margin);
|
|
90
|
-
const max_y = Math.min(height - 1, Math.floor(Math.max(ay, by, cy)) + margin);
|
|
91
|
-
|
|
92
|
-
const d = (by - cy) * (ax - cx) + (cx - bx) * (ay - cy);
|
|
93
|
-
|
|
94
|
-
if (d === 0) {
|
|
95
|
-
// degenerate triangle, no area to cover
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
const inv_d = 1 / d;
|
|
100
|
-
|
|
101
|
-
for (let py = min_y; py <= max_y; py++) {
|
|
102
|
-
const sy = py + 0.5;
|
|
103
|
-
|
|
104
|
-
for (let px = min_x; px <= max_x; px++) {
|
|
105
|
-
const sx = px + 0.5;
|
|
106
|
-
|
|
107
|
-
const wA = ((by - cy) * (sx - cx) + (cx - bx) * (sy - cy)) * inv_d;
|
|
108
|
-
const wB = ((cy - ay) * (sx - cx) + (ax - cx) * (sy - cy)) * inv_d;
|
|
109
|
-
const wC = 1 - wA - wB;
|
|
110
|
-
|
|
111
|
-
if (wA >= 0 && wB >= 0 && wC >= 0) {
|
|
112
|
-
callback(px, py, wA, wB, wC);
|
|
113
|
-
continue;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
if (!conservative) {
|
|
117
|
-
continue;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
// center is outside: keep the texel only if its cell overlaps the
|
|
121
|
-
// triangle, sampling the clamped (on-triangle) closest point
|
|
122
|
-
const dist = closest_on_triangle(_q, sx, sy, ax, ay, bx, by, cx, cy);
|
|
123
|
-
if (dist > HALF_TEXEL_DIAGONAL) {
|
|
124
|
-
continue;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
const qx = _q[0];
|
|
128
|
-
const qy = _q[1];
|
|
129
|
-
let cwA = ((by - cy) * (qx - cx) + (cx - bx) * (qy - cy)) * inv_d;
|
|
130
|
-
let cwB = ((cy - ay) * (qx - cx) + (ax - cx) * (qy - cy)) * inv_d;
|
|
131
|
-
// clamp tiny negative fp drift so the weights stay a valid convex combo
|
|
132
|
-
if (cwA < 0) cwA = 0;
|
|
133
|
-
if (cwB < 0) cwB = 0;
|
|
134
|
-
let cwC = 1 - cwA - cwB;
|
|
135
|
-
if (cwC < 0) {
|
|
136
|
-
cwC = 0;
|
|
137
|
-
const s = cwA + cwB;
|
|
138
|
-
cwA /= s;
|
|
139
|
-
cwB /= s;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
callback(px, py, cwA, cwB, cwC);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
1
|
+
/** Half the diagonal of a unit texel — the conservative overlap reach from a center. */
|
|
2
|
+
const HALF_TEXEL_DIAGONAL = Math.SQRT2 * 0.5;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Closest point to (px,py) on segment (ax,ay)->(bx,by), written to out[0..1].
|
|
6
|
+
*
|
|
7
|
+
* @param {Float32Array|number[]} out
|
|
8
|
+
* @param {number} px
|
|
9
|
+
* @param {number} py
|
|
10
|
+
* @param {number} ax
|
|
11
|
+
* @param {number} ay
|
|
12
|
+
* @param {number} bx
|
|
13
|
+
* @param {number} by
|
|
14
|
+
*/
|
|
15
|
+
function closest_on_segment(out, px, py, ax, ay, bx, by) {
|
|
16
|
+
const ex = bx - ax;
|
|
17
|
+
const ey = by - ay;
|
|
18
|
+
const len2 = ex * ex + ey * ey;
|
|
19
|
+
let t = len2 > 0 ? ((px - ax) * ex + (py - ay) * ey) / len2 : 0;
|
|
20
|
+
if (t < 0) t = 0; else if (t > 1) t = 1;
|
|
21
|
+
out[0] = ax + t * ex;
|
|
22
|
+
out[1] = ay + t * ey;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const _q = new Float32Array(2);
|
|
26
|
+
const _e = new Float32Array(2);
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Closest point to (px,py) on the (filled) triangle, written to out[0..1].
|
|
30
|
+
* Assumes the point is outside the triangle (callers test inside first).
|
|
31
|
+
*
|
|
32
|
+
* @param {Float32Array|number[]} out
|
|
33
|
+
*/
|
|
34
|
+
function closest_on_triangle(out, px, py, ax, ay, bx, by, cx, cy) {
|
|
35
|
+
let best_d2 = Infinity;
|
|
36
|
+
|
|
37
|
+
closest_on_segment(_e, px, py, ax, ay, bx, by);
|
|
38
|
+
let dx = px - _e[0], dy = py - _e[1];
|
|
39
|
+
let d2 = dx * dx + dy * dy;
|
|
40
|
+
if (d2 < best_d2) { best_d2 = d2; out[0] = _e[0]; out[1] = _e[1]; }
|
|
41
|
+
|
|
42
|
+
closest_on_segment(_e, px, py, bx, by, cx, cy);
|
|
43
|
+
dx = px - _e[0]; dy = py - _e[1];
|
|
44
|
+
d2 = dx * dx + dy * dy;
|
|
45
|
+
if (d2 < best_d2) { best_d2 = d2; out[0] = _e[0]; out[1] = _e[1]; }
|
|
46
|
+
|
|
47
|
+
closest_on_segment(_e, px, py, cx, cy, ax, ay);
|
|
48
|
+
dx = px - _e[0]; dy = py - _e[1];
|
|
49
|
+
d2 = dx * dx + dy * dy;
|
|
50
|
+
if (d2 < best_d2) { best_d2 = d2; out[0] = _e[0]; out[1] = _e[1]; }
|
|
51
|
+
|
|
52
|
+
return Math.sqrt(best_d2);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Rasterize a 2D triangle in integer pixel space, invoking `callback` once per
|
|
57
|
+
* covered texel with the barycentric weights of the three vertices (A, B, C) at
|
|
58
|
+
* the sampled point. The weights are an exact partition of unity (`wA+wB+wC===1`,
|
|
59
|
+
* all `>=0`), so a caller can interpolate any per-vertex attribute directly.
|
|
60
|
+
*
|
|
61
|
+
* Default (center) mode: a texel is covered iff its CENTER lies inside the
|
|
62
|
+
* triangle, sampled at that center.
|
|
63
|
+
*
|
|
64
|
+
* Conservative mode (`conservative === true`): a texel is also covered if its
|
|
65
|
+
* cell overlaps the triangle even though its center is outside (thin features,
|
|
66
|
+
* chart borders). For those, the sample is **clamped to the closest point on the
|
|
67
|
+
* triangle** so the interpolated position/normal stays on the surface — avoiding
|
|
68
|
+
* the dropped-edge-texel black gutters of center-only coverage.
|
|
69
|
+
*
|
|
70
|
+
* Degenerate (zero-area) triangles produce no callbacks.
|
|
71
|
+
*
|
|
72
|
+
* @param {number} ax vertex A x, in pixels
|
|
73
|
+
* @param {number} ay vertex A y, in pixels
|
|
74
|
+
* @param {number} bx vertex B x, in pixels
|
|
75
|
+
* @param {number} by vertex B y, in pixels
|
|
76
|
+
* @param {number} cx vertex C x, in pixels
|
|
77
|
+
* @param {number} cy vertex C y, in pixels
|
|
78
|
+
* @param {number} width raster width (texel centers tested in [0, width))
|
|
79
|
+
* @param {number} height raster height (texel centers tested in [0, height))
|
|
80
|
+
* @param {(px: number, py: number, wA: number, wB: number, wC: number) => void} callback
|
|
81
|
+
* @param {boolean} [conservative] include edge-overlapping texels with a clamped sample (default false)
|
|
82
|
+
*/
|
|
83
|
+
export function lightmap_rasterize_triangle(ax, ay, bx, by, cx, cy, width, height, callback, conservative = false) {
|
|
84
|
+
// conservative mode reaches one extra texel of overlap, so widen the scan box
|
|
85
|
+
const margin = conservative ? 1 : 0;
|
|
86
|
+
|
|
87
|
+
const min_x = Math.max(0, Math.floor(Math.min(ax, bx, cx)) - margin);
|
|
88
|
+
const max_x = Math.min(width - 1, Math.floor(Math.max(ax, bx, cx)) + margin);
|
|
89
|
+
const min_y = Math.max(0, Math.floor(Math.min(ay, by, cy)) - margin);
|
|
90
|
+
const max_y = Math.min(height - 1, Math.floor(Math.max(ay, by, cy)) + margin);
|
|
91
|
+
|
|
92
|
+
const d = (by - cy) * (ax - cx) + (cx - bx) * (ay - cy);
|
|
93
|
+
|
|
94
|
+
if (d === 0) {
|
|
95
|
+
// degenerate triangle, no area to cover
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
const inv_d = 1 / d;
|
|
100
|
+
|
|
101
|
+
for (let py = min_y; py <= max_y; py++) {
|
|
102
|
+
const sy = py + 0.5;
|
|
103
|
+
|
|
104
|
+
for (let px = min_x; px <= max_x; px++) {
|
|
105
|
+
const sx = px + 0.5;
|
|
106
|
+
|
|
107
|
+
const wA = ((by - cy) * (sx - cx) + (cx - bx) * (sy - cy)) * inv_d;
|
|
108
|
+
const wB = ((cy - ay) * (sx - cx) + (ax - cx) * (sy - cy)) * inv_d;
|
|
109
|
+
const wC = 1 - wA - wB;
|
|
110
|
+
|
|
111
|
+
if (wA >= 0 && wB >= 0 && wC >= 0) {
|
|
112
|
+
callback(px, py, wA, wB, wC);
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (!conservative) {
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// center is outside: keep the texel only if its cell overlaps the
|
|
121
|
+
// triangle, sampling the clamped (on-triangle) closest point
|
|
122
|
+
const dist = closest_on_triangle(_q, sx, sy, ax, ay, bx, by, cx, cy);
|
|
123
|
+
if (dist > HALF_TEXEL_DIAGONAL) {
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const qx = _q[0];
|
|
128
|
+
const qy = _q[1];
|
|
129
|
+
let cwA = ((by - cy) * (qx - cx) + (cx - bx) * (qy - cy)) * inv_d;
|
|
130
|
+
let cwB = ((cy - ay) * (qx - cx) + (ax - cx) * (qy - cy)) * inv_d;
|
|
131
|
+
// clamp tiny negative fp drift so the weights stay a valid convex combo
|
|
132
|
+
if (cwA < 0) cwA = 0;
|
|
133
|
+
if (cwB < 0) cwB = 0;
|
|
134
|
+
let cwC = 1 - cwA - cwB;
|
|
135
|
+
if (cwC < 0) {
|
|
136
|
+
cwC = 0;
|
|
137
|
+
const s = cwA + cwB;
|
|
138
|
+
cwA /= s;
|
|
139
|
+
cwB /= s;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
callback(px, py, cwA, cwB, cwC);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
@@ -3,7 +3,8 @@ export class PathTracerProbeRenderer extends ProbeRenderer {
|
|
|
3
3
|
max_bounce_count: number;
|
|
4
4
|
sample_count: number;
|
|
5
5
|
random: (() => number) | {
|
|
6
|
-
setCurrentSeed: (
|
|
6
|
+
setCurrentSeed: (v: number) => void;
|
|
7
|
+
getCurrentSeed: () => number;
|
|
7
8
|
};
|
|
8
9
|
scene: PathTracedScene;
|
|
9
10
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PathTracerProbeRenderer.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.js"],"names":[],"mappings":"AAuBA;IACI,mBAA0B;IAC1B,yBAAqB;IAErB,qBAAoB;IAEpB
|
|
1
|
+
{"version":3,"file":"PathTracerProbeRenderer.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/sh3/lpv/PathTracerProbeRenderer.js"],"names":[],"mappings":"AAuBA;IACI,mBAA0B;IAC1B,yBAAqB;IAErB,qBAAoB;IAEpB;;;MAAyB;IAEzB,uBAA6B;IAE7B;;;;;;;;OAQG;IACH,kCAPW,MAAM,aACN,MAAM,YACN,MAAM,EAAE,mBACR,MAAM,UACN,MAAM,EAAE,iBACR,MAAM,QAchB;IAED,iFAuCC;IAKD,mBACC;IAED,4BAKC;CACJ;8BA/F6B,oBAAoB;2BAHvB,8BAA8B;gCADzB,mCAAmC"}
|
|
@@ -299,9 +299,9 @@ export class Sampler2D {
|
|
|
299
299
|
* @param {number} centerX
|
|
300
300
|
* @param {number} centerY
|
|
301
301
|
* @param {number} radius
|
|
302
|
-
* @param {
|
|
302
|
+
* @param {(x: number, y: number, sampler: Sampler2D) => void} visitor
|
|
303
303
|
*/
|
|
304
|
-
traverseCircle(centerX: number, centerY: number, radius: number, visitor:
|
|
304
|
+
traverseCircle(centerX: number, centerY: number, radius: number, visitor: (x: number, y: number, sampler: Sampler2D) => void): void;
|
|
305
305
|
/**
|
|
306
306
|
*
|
|
307
307
|
* @param {number} x
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sampler2D.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/sampler/Sampler2D.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Sampler2D.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/sampler/Sampler2D.js"],"names":[],"mappings":"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"}
|
|
@@ -748,7 +748,7 @@ export class Sampler2D {
|
|
|
748
748
|
* @param {number} centerX
|
|
749
749
|
* @param {number} centerY
|
|
750
750
|
* @param {number} radius
|
|
751
|
-
* @param {
|
|
751
|
+
* @param {(x: number, y: number, sampler: Sampler2D) => void} visitor
|
|
752
752
|
*/
|
|
753
753
|
traverseCircle(centerX, centerY, radius, visitor) {
|
|
754
754
|
let x, y;
|
|
@@ -6,9 +6,12 @@
|
|
|
6
6
|
* scaling ratio, which is what stretches the filter's support to cover the
|
|
7
7
|
* whole footprint being averaged.
|
|
8
8
|
*
|
|
9
|
-
* Negative lobes are kept. They are the entire point of Lanczos
|
|
10
|
-
* them
|
|
11
|
-
*
|
|
9
|
+
* Negative lobes are kept. They are the entire point of Lanczos, and discarding
|
|
10
|
+
* them was what produced NaN: with only the non-negative part of the kernel a
|
|
11
|
+
* footprint could sum to zero, and the normalisation divided by it. Keeping the
|
|
12
|
+
* whole kernel makes the sum the integral of the kernel over the footprint,
|
|
13
|
+
* which stays near 1 -- swept over every downscale ratio from 1 to 40 at 2 and
|
|
14
|
+
* 3 lobes it never fell below 1, was never negative and never zero.
|
|
12
15
|
*
|
|
13
16
|
* @param {Sampler2D} source
|
|
14
17
|
* @param {Sampler2D} destination
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sampler2d_scale_down_lanczos.d.ts","sourceRoot":"","sources":["../../../../../../../src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.js"],"names":[],"mappings":"AAiCA
|
|
1
|
+
{"version":3,"file":"sampler2d_scale_down_lanczos.d.ts","sourceRoot":"","sources":["../../../../../../../src/engine/graphics/texture/sampler/resize/sampler2d_scale_down_lanczos.js"],"names":[],"mappings":"AAiCA;;;;;;;;;;;;;;;;;;GAkBG;AACH,gGAFW,MAAM,QAiGhB"}
|
|
@@ -39,9 +39,12 @@ function lanczos(x, lobes) {
|
|
|
39
39
|
* scaling ratio, which is what stretches the filter's support to cover the
|
|
40
40
|
* whole footprint being averaged.
|
|
41
41
|
*
|
|
42
|
-
* Negative lobes are kept. They are the entire point of Lanczos
|
|
43
|
-
* them
|
|
44
|
-
*
|
|
42
|
+
* Negative lobes are kept. They are the entire point of Lanczos, and discarding
|
|
43
|
+
* them was what produced NaN: with only the non-negative part of the kernel a
|
|
44
|
+
* footprint could sum to zero, and the normalisation divided by it. Keeping the
|
|
45
|
+
* whole kernel makes the sum the integral of the kernel over the footprint,
|
|
46
|
+
* which stays near 1 -- swept over every downscale ratio from 1 to 40 at 2 and
|
|
47
|
+
* 3 lobes it never fell below 1, was never negative and never zero.
|
|
45
48
|
*
|
|
46
49
|
* @param {Sampler2D} source
|
|
47
50
|
* @param {Sampler2D} destination
|
|
@@ -134,19 +137,6 @@ export function sampler2d_scale_down_lanczos(source, destination, lobes = 2) {
|
|
|
134
137
|
|
|
135
138
|
const texel_address = (v * d_w + u) * item_size;
|
|
136
139
|
|
|
137
|
-
if (weight_sum === 0) {
|
|
138
|
-
// the footprint contributed nothing; copy the nearest texel
|
|
139
|
-
// rather than emitting NaN
|
|
140
|
-
const nearest = (min2(Math.floor(center_y), source_height - 1) * source_width
|
|
141
|
-
+ min2(Math.floor(center_x), source_width - 1)) * item_size;
|
|
142
|
-
|
|
143
|
-
for (let i = 0; i < item_size; i++) {
|
|
144
|
-
destination_data[texel_address + i] = source_data[nearest + i];
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
continue;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
140
|
const inv_z = 1 / weight_sum;
|
|
151
141
|
|
|
152
142
|
for (let i = 0; i < item_size; i++) {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @param {Sampler2D} input0
|
|
4
4
|
* @param {Sampler2D} input1
|
|
5
5
|
* @param {Sampler2D} result
|
|
6
|
-
* @param {
|
|
6
|
+
* @param {(value0: number[], value1: number[], result: number[], index: number) => void} operation
|
|
7
7
|
*/
|
|
8
|
-
export function sampler2d_combine(input0: Sampler2D, input1: Sampler2D, result: Sampler2D, operation:
|
|
8
|
+
export function sampler2d_combine(input0: Sampler2D, input1: Sampler2D, result: Sampler2D, operation: (value0: number[], value1: number[], result: number[], index: number) => void): void;
|
|
9
9
|
//# sourceMappingURL=sampler2d_combine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sampler2d_combine.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/sampler/sampler2d_combine.js"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,
|
|
1
|
+
{"version":3,"file":"sampler2d_combine.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/sampler/sampler2d_combine.js"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,+GAFoB,MAAM,EAAE,UAAU,MAAM,EAAE,UAAU,MAAM,EAAE,SAAS,MAAM,KAAK,IAAI,QA0DvF"}
|
|
@@ -6,7 +6,7 @@ import { assert } from "../../../../core/assert.js";
|
|
|
6
6
|
* @param {Sampler2D} input0
|
|
7
7
|
* @param {Sampler2D} input1
|
|
8
8
|
* @param {Sampler2D} result
|
|
9
|
-
* @param {
|
|
9
|
+
* @param {(value0: number[], value1: number[], result: number[], index: number) => void} operation
|
|
10
10
|
*/
|
|
11
11
|
export function sampler2d_combine(input0, input1, result, operation) {
|
|
12
12
|
assert.notEqual(input0, undefined, "input0 is undefined");
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
export class VirtualTextureTileLoader {
|
|
5
5
|
/**
|
|
6
6
|
*
|
|
7
|
-
* @param {
|
|
7
|
+
* @param {(mip: number, x: number, y: number) => string} builder
|
|
8
8
|
*/
|
|
9
9
|
set file_name_builder(arg: (arg0: number, arg1: number, arg2: number) => string);
|
|
10
10
|
/**
|
|
@@ -22,7 +22,7 @@ export class VirtualTextureTileLoader {
|
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* Lets user specify a custom file name template
|
|
25
|
-
* @type {
|
|
25
|
+
* @type {(mip: number, x: number, y: number) => string}
|
|
26
26
|
*/
|
|
27
27
|
#file_name_builder = (mip, x, y) => {
|
|
28
28
|
|
|
@@ -44,7 +44,7 @@ export class VirtualTextureTileLoader {
|
|
|
44
44
|
|
|
45
45
|
/**
|
|
46
46
|
*
|
|
47
|
-
* @param {
|
|
47
|
+
* @param {(mip: number, x: number, y: number) => string} builder
|
|
48
48
|
*/
|
|
49
49
|
set file_name_builder(builder) {
|
|
50
50
|
assert.isFunction(builder, 'builder');
|
|
@@ -17,10 +17,10 @@ declare class GridObstacle {
|
|
|
17
17
|
*
|
|
18
18
|
* @param {number} offsetX
|
|
19
19
|
* @param {number} offsetY
|
|
20
|
-
* @param {
|
|
20
|
+
* @param {(x: number, y: number, value: number, index: number) => void} visitor
|
|
21
21
|
* @param {*} [thisArg]
|
|
22
22
|
*/
|
|
23
|
-
traverseMask(offsetX: number, offsetY: number, visitor:
|
|
23
|
+
traverseMask(offsetX: number, offsetY: number, visitor: (x: number, y: number, value: number, index: number) => void, thisArg?: any): void;
|
|
24
24
|
/**
|
|
25
25
|
*
|
|
26
26
|
* @param {number} x
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridObstacle.d.ts","sourceRoot":"","sources":["../../../../../src/engine/grid/obstacle/GridObstacle.js"],"names":[],"mappings":";AAMA;IA0NI,sCAMC;IA/ND,eAAW;IAEX;;;OAGG;IACH,eAFU,OAAO,CAEQ;IAEzB;;;;OAIG;IACH,UAHW,MAAM,KACN,MAAM,QAiChB;IAED;;;;;;OAMG;IACH,sBALW,MAAM,WACN,MAAM,
|
|
1
|
+
{"version":3,"file":"GridObstacle.d.ts","sourceRoot":"","sources":["../../../../../src/engine/grid/obstacle/GridObstacle.js"],"names":[],"mappings":";AAMA;IA0NI,sCAMC;IA/ND,eAAW;IAEX;;;OAGG;IACH,eAFU,OAAO,CAEQ;IAEzB;;;;OAIG;IACH,UAHW,MAAM,KACN,MAAM,QAiChB;IAED;;;;;;OAMG;IACH,sBALW,MAAM,WACN,MAAM,eACF,MAAM,KAAK,MAAM,SAAS,MAAM,SAAS,MAAM,KAAK,IAAI,uBAkCtE;IAED;;;;;OAKG;IACH,aAJW,MAAM,KACN,MAAM,GACJ,MAAM,CAWlB;IAED;;;;;OAKG;IACH,cAJW,MAAM,KACN,MAAM,SACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,iBAJW,MAAM,KACN,MAAM,GACJ,OAAO,CAYnB;IAED;;;;;;OAMG;IACH,mBALW,MAAM,KACN,MAAM,iBACN,MAAM,EAAE,GACN,OAAO,CAoDnB;IAED;;;;;;MAKC;IAED;;;aAaC;IAUD;;;OAGG;IACH,QAFa,MAAM,CAOlB;IAED;;;;OAIG;IACH,cAHW,YAAY,GACV,OAAO,CAQnB;CACJ;;;;oBA3PmB,+BAA+B"}
|
|
@@ -55,7 +55,7 @@ class GridObstacle {
|
|
|
55
55
|
*
|
|
56
56
|
* @param {number} offsetX
|
|
57
57
|
* @param {number} offsetY
|
|
58
|
-
* @param {
|
|
58
|
+
* @param {(x: number, y: number, value: number, index: number) => void} visitor
|
|
59
59
|
* @param {*} [thisArg]
|
|
60
60
|
*/
|
|
61
61
|
traverseMask(offsetX, offsetY, visitor, thisArg) {
|
|
@@ -19,11 +19,11 @@ export class BehaviorComponent {
|
|
|
19
19
|
/**
|
|
20
20
|
* Executes input function every update cycle.
|
|
21
21
|
* Will run forever, or until function throws.
|
|
22
|
-
* @param {
|
|
22
|
+
* @param {(time_delta_seconds: number) => void} action function to loop over
|
|
23
23
|
* @param {*} [thisArg]
|
|
24
24
|
* @returns {BehaviorComponent}
|
|
25
25
|
*/
|
|
26
|
-
static loop(action:
|
|
26
|
+
static loop(action: (time_delta_seconds: number) => void, thisArg?: any): BehaviorComponent;
|
|
27
27
|
/**
|
|
28
28
|
*
|
|
29
29
|
* @param {Behavior} b
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BehaviorComponent.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/BehaviorComponent.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;GAgBG;AACH;IA8EI;;;;;;OAMG;IACH,
|
|
1
|
+
{"version":3,"file":"BehaviorComponent.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/BehaviorComponent.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;GAgBG;AACH;IA8EI;;;;;;OAMG;IACH,yCAJgC,MAAM,KAAK,IAAI,kBAElC,iBAAiB,CAQ7B;IAED;;;;OAIG;IACH,0BAFa,iBAAiB,CAa7B;IA3GD;;;;OAIG;IACH,OAFU,gBAAgB,GAAC,MAAM,CAEG;IAEpC;;;OAGG;IACH,OAFU,MAAM,CAEN;IAEV;;;;OAIG;IACH,mBAAkB;IAElB;;;;OAIG;IACH,cAHW,MAAM,wBAAsB,GAC1B,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,wBAAsB,GAC1B,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,wBAAsB,SAC5B,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM,wBAAsB,GAC1B,OAAO,CAInB;IAUD;;;OAGG;IACH,uBAEC;IAdD;;;OAGG;IACH,oBAEC;CA0CJ;;sBAIS,OAAO;kBAMP,MAAM;;iCA3IiB,uBAAuB"}
|
|
@@ -101,7 +101,7 @@ export class BehaviorComponent {
|
|
|
101
101
|
/**
|
|
102
102
|
* Executes input function every update cycle.
|
|
103
103
|
* Will run forever, or until function throws.
|
|
104
|
-
* @param {
|
|
104
|
+
* @param {(time_delta_seconds: number) => void} action function to loop over
|
|
105
105
|
* @param {*} [thisArg]
|
|
106
106
|
* @returns {BehaviorComponent}
|
|
107
107
|
*/
|
|
@@ -16,11 +16,11 @@ export class ActionBehavior<CTX> extends Behavior<CTX> {
|
|
|
16
16
|
static from(func: any, thisArg: any): ActionBehavior<any>;
|
|
17
17
|
/**
|
|
18
18
|
*
|
|
19
|
-
* @param {
|
|
19
|
+
* @param {(timeDelta: number, context: CTX) => void} action
|
|
20
20
|
* @param {*} [thisArg=this] defaults to behavior itself if not specified
|
|
21
21
|
*/
|
|
22
|
-
constructor(action:
|
|
23
|
-
__action:
|
|
22
|
+
constructor(action: (timeDelta: number, context: CTX) => void, thisArg?: any);
|
|
23
|
+
__action: (timeDelta: number, context: CTX) => void;
|
|
24
24
|
__context: any;
|
|
25
25
|
tick(timeDelta: any): number;
|
|
26
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/primitive/ActionBehavior.js"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AACH;IAqBI;;;OAGG;IACH,0DAEC;IA1BD;;;;OAIG;IACH,
|
|
1
|
+
{"version":3,"file":"ActionBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/primitive/ActionBehavior.js"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AACH;IAqBI;;;OAGG;IACH,0DAEC;IA1BD;;;;OAIG;IACH,gCAHuB,MAAM,WAAW,GAAG,KAAK,IAAI,iBAgBnD;IARG,sBARmB,MAAM,WAAW,GAAG,KAAK,IAAI,CAQ1B;IAIlB,eAAqB;IAc7B,6BAeC;CACJ;yBA1DwB,gBAAgB"}
|
|
@@ -15,7 +15,7 @@ import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
|
15
15
|
export class ActionBehavior extends Behavior {
|
|
16
16
|
/**
|
|
17
17
|
*
|
|
18
|
-
* @param {
|
|
18
|
+
* @param {(timeDelta: number, context: CTX) => void} action
|
|
19
19
|
* @param {*} [thisArg=this] defaults to behavior itself if not specified
|
|
20
20
|
*/
|
|
21
21
|
constructor(action, thisArg) {
|
|
@@ -35,7 +35,8 @@ export class RandomDelayBehavior extends Behavior<any> {
|
|
|
35
35
|
*/
|
|
36
36
|
private elapsed;
|
|
37
37
|
random: (() => number) | {
|
|
38
|
-
setCurrentSeed: (
|
|
38
|
+
setCurrentSeed: (v: number) => void;
|
|
39
|
+
getCurrentSeed: () => number;
|
|
39
40
|
};
|
|
40
41
|
fromJSON({ limits, elapsed }: {
|
|
41
42
|
limits: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RandomDelayBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/util/RandomDelayBehavior.js"],"names":[],"mappings":"AAWA;;;;GAIG;AACH;IA6BI;;;;OAIG;IACH,4BAFY,mBAAmB,CAM9B;IAED;;;;;OAKG;IACH,iCAJY,mBAAmB,CAU9B;;IAlDD;;;OAGG;IACH,OAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,QAFU,eAAe,CAEU;IAEnC;;;;OAIG;IACH,gBAAY;IAEZ
|
|
1
|
+
{"version":3,"file":"RandomDelayBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/util/RandomDelayBehavior.js"],"names":[],"mappings":"AAWA;;;;GAIG;AACH;IA6BI;;;;OAIG;IACH,4BAFY,mBAAmB,CAM9B;IAED;;;;;OAKG;IACH,iCAJY,mBAAmB,CAU9B;;IAlDD;;;OAGG;IACH,OAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,QAFU,eAAe,CAEU;IAEnC;;;;OAIG;IACH,gBAAY;IAEZ;;;MAAiC;IAGjC;;;aAGC;IAkCD,6BAQC;CACJ;yBAnFwB,gBAAgB;gCAFT,mDAAmD"}
|
|
@@ -34,16 +34,16 @@ export class Blackboard extends AbstractBlackboard {
|
|
|
34
34
|
getValueProxy(): any;
|
|
35
35
|
/**
|
|
36
36
|
*
|
|
37
|
-
* @param {
|
|
37
|
+
* @param {(name: string, value: *, type: DataType) => void} visitor
|
|
38
38
|
* @param {*} [thisArg]
|
|
39
39
|
*/
|
|
40
|
-
traverse(visitor: any, thisArg?: any): void;
|
|
40
|
+
traverse(visitor: (name: string, value: any, type: DataType) => void, thisArg?: any): void;
|
|
41
41
|
/**
|
|
42
42
|
*
|
|
43
|
-
* @param {
|
|
43
|
+
* @param {(name: string, value: *, type: DataType) => void} visitor
|
|
44
44
|
* @param {RegExp} pattern
|
|
45
45
|
*/
|
|
46
|
-
traverseWithPattern(pattern: RegExp, visitor: any): void;
|
|
46
|
+
traverseWithPattern(pattern: RegExp, visitor: (name: string, value: any, type: DataType) => void): void;
|
|
47
47
|
/**
|
|
48
48
|
* @template T
|
|
49
49
|
* @param {string} name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Blackboard.d.ts","sourceRoot":"","sources":["../../../../../src/engine/intelligence/blackboard/Blackboard.js"],"names":[],"mappings":"AAOA;;;;GAIG;AACH;IAoPI;;;;OAIG;IACH,sBAHW,GAAG,GACF,UAAU,CAMrB;IAzPG;QACI;;;WAGG;eADO,MAAM;MAGnB;IAED;;;OAGG;IACH,UAAc;IAEd;;OAEG;IACH,cAAwC;IAG5C,+BAEC;IAED;;;OAGG;IACH,qBAEC;IAyBD;;;;OAIG;IACH,
|
|
1
|
+
{"version":3,"file":"Blackboard.d.ts","sourceRoot":"","sources":["../../../../../src/engine/intelligence/blackboard/Blackboard.js"],"names":[],"mappings":"AAOA;;;;GAIG;AACH;IAoPI;;;;OAIG;IACH,sBAHW,GAAG,GACF,UAAU,CAMrB;IAzPG;QACI;;;WAGG;eADO,MAAM;MAGnB;IAED;;;OAGG;IACH,UAAc;IAEd;;OAEG;IACH,cAAwC;IAG5C,+BAEC;IAED;;;OAGG;IACH,qBAEC;IAyBD;;;;OAIG;IACH,yBAHkB,MAAM,oBAAkB,QAAQ,KAAK,IAAI,uBAe1D;IAED;;;;OAIG;IACH,6BAFW,MAAM,kBADC,MAAM,oBAAkB,QAAQ,KAAK,IAAI,QAY1D;IAED;;;;;;OAMG;IACH,iBALW,MAAM,QACN,QAAQ,iBACR,MAAM,GAAC,OAAO,KAkCxB;IAiBD;;OAEG;IACH,cAEC;IAED;;;;OAIG;IACH,YAFW,UAAU,QAyCpB;IAED;;;OAGG;IACH,SAFa,UAAU,CAQtB;IAGD,aAQC;IAED,0BAiBC;CAYJ;;;;mCAvQkC,yBAAyB;mBAFzC,uCAAuC;qBACrC,yCAAyC"}
|