@woosh/meep-engine 2.33.19 → 2.33.23

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.
Files changed (104) hide show
  1. package/core/assert.js +3 -1
  2. package/core/bvh2/traversal/__detailed_box_volume_intersection.js +11 -8
  3. package/core/collection/HashMap.js +66 -22
  4. package/core/geom/3d/CircleMath.js +4 -4
  5. package/core/geom/3d/cone/computeConeBoundingBox.js +4 -4
  6. package/core/geom/3d/{compute_bounding_cone_of_2_cones.js → cone/compute_bounding_cone_of_2_cones.js} +3 -3
  7. package/core/geom/3d/{compute_bounding_cone_of_2_cones.spec.js → cone/compute_bounding_cone_of_2_cones.spec.js} +1 -1
  8. package/core/geom/3d/frustum/array_setFromProjectionMatrix.js +1 -1
  9. package/core/geom/3d/frustum/frustum3_computeNearestPointToPoint.js +10 -2
  10. package/core/geom/3d/{encode_unit3_hemioct.js → normal/hemioct/encode_unit3_hemioct.js} +0 -0
  11. package/core/geom/3d/{unit_hemioct.spec.js → normal/hemioct/unit_hemioct.spec.js} +1 -1
  12. package/core/geom/3d/normal/lamber_azimuth/transform.js +61 -0
  13. package/core/geom/3d/normal/spherical/sphere_map_transform.js +77 -0
  14. package/core/geom/3d/{lerp_planes_to_array.js → plane/lerp_planes_to_array.js} +1 -3
  15. package/core/geom/3d/plane/plane3_lerp.js +3 -1
  16. package/core/geom/3d/plane/plane3_slerp.js +4 -1
  17. package/core/geom/3d/{plane_computeConvex3PlaneIntersection.js → plane/plane_computeConvex3PlaneIntersection.js} +14 -16
  18. package/core/geom/3d/topology/TopoTriangle.js +1 -1
  19. package/core/geom/3d/topology/TopoVertex.js +1 -1
  20. package/core/geom/3d/topology/bounds/computeTraingleClusterNormalBoundingCone.js +2 -2
  21. package/core/geom/3d/topology/simplify/compute_face_normal_change_dot_product.js +1 -1
  22. package/core/geom/3d/topology/simplify/quadratic/Quadratic3.js +1 -1
  23. package/core/geom/3d/triangle/computeTrianglePlaneSide.js +1 -1
  24. package/core/geom/3d/triangle/computeTriangleRayIntersection.js +1 -1
  25. package/core/geom/3d/voxel/DenseBitVolume3D.js +87 -0
  26. package/core/geom/3d/voxel/buildVolumeFromProjectedGeometry.js +23 -0
  27. package/core/geom/LineSegment.js +3 -1
  28. package/core/geom/Matrix4.js +2 -1
  29. package/core/geom/Plane.js +15 -10
  30. package/core/geom/Quaternion.js +2 -1
  31. package/core/geom/Vector3.d.ts +2 -0
  32. package/core/geom/Vector3.js +33 -158
  33. package/core/geom/Vector3.spec.js +2 -1
  34. package/core/geom/v3_angle_between.js +31 -0
  35. package/core/geom/v3_distance.js +16 -0
  36. package/core/geom/v3_distance_sqr.js +17 -0
  37. package/core/geom/v3_dot.js +13 -0
  38. package/core/geom/v3_length.js +5 -0
  39. package/core/geom/v3_length_sqr.js +10 -0
  40. package/core/geom/v3_lerp.js +21 -0
  41. package/core/geom/v3_slerp.js +48 -0
  42. package/core/primitives/array/computeIntegerArrayHash.js +6 -1
  43. package/engine/asset/loaders/material/computeImageBitmapEquality.js +11 -0
  44. package/engine/asset/loaders/material/computeImageBitmapHash.js +22 -28
  45. package/engine/asset/loaders/material/computeMaterialHash.js +1 -2
  46. package/engine/asset/loaders/material/computeTextureEquality.js +13 -5
  47. package/engine/ecs/animation/OneBoneSurfaceAlignmentSolver.js +3 -1
  48. package/engine/ecs/animation/TwoBoneInverseKinematicsSolver.js +3 -1
  49. package/engine/ecs/fow/FogOfWar.js +2 -3
  50. package/engine/ecs/gui/hud/HeadsUpDisplaySystem.js +1 -1
  51. package/engine/ecs/systems/SteeringSystem.js +2 -1
  52. package/engine/ecs/terrain/ecs/Terrain.js +6 -0
  53. package/engine/ecs/terrain/ecs/layers/TerrainLayers.js +5 -0
  54. package/engine/ecs/terrain/ecs/splat/SplatMapping.js +5 -0
  55. package/engine/ecs/util/hideEntityGracefully.js +18 -0
  56. package/engine/graphics/GraphicsEngine.js +1 -0
  57. package/engine/graphics/camera/testClippingPlaneComputation.js +2 -2
  58. package/engine/graphics/ecs/camera/CameraClippingPlaneComputer.js +1 -1
  59. package/engine/graphics/ecs/highlight/renderer/OutlineRenderer.js +0 -53
  60. package/engine/graphics/ecs/path/testPathDisplaySystem.js +98 -98
  61. package/engine/graphics/ecs/trail2d/Trail2D.js +17 -4
  62. package/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts +2 -3
  63. package/engine/graphics/ecs/trail2d/Trail2DSystem.js +34 -118
  64. package/engine/graphics/geometry/bvh/buffered/BVHGeometryRaycaster.js +2 -1
  65. package/engine/graphics/micron/build/clustering/computeFaceCurvatureScore.js +1 -1
  66. package/engine/graphics/micron/build/clustering/compute_face_connection_weight.js +1 -1
  67. package/engine/graphics/micron/build/hierarchy/computePatchMergeScore.js +1 -1
  68. package/engine/graphics/micron/build/hierarchy/patch_combine.js +1 -1
  69. package/engine/graphics/micron/render/refinement/is_patch_facing_back.js +2 -2
  70. package/engine/graphics/particles/particular/engine/ParticularEngine.js +4 -2
  71. package/engine/graphics/particles/particular/engine/emitter/PARTICULAR_PARTICLE_SPECIFICATION.js +20 -0
  72. package/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +40 -97
  73. package/engine/graphics/particles/particular/engine/emitter/ParticleLayer.js +12 -2
  74. package/engine/graphics/particles/particular/engine/emitter/computeEmissionFunction.js +37 -0
  75. package/engine/graphics/particles/particular/engine/emitter/distance_to_camera.js +25 -0
  76. package/engine/graphics/particles/particular/engine/shader/ShaderManager.js +7 -25
  77. package/engine/graphics/render/buffer/buffers/prototypeNormalFrameBuffer.js +2 -2
  78. package/engine/graphics/render/forward_plus/LightManager.js +10 -2
  79. package/engine/graphics/render/forward_plus/computeFrustumCorners.js +15 -33
  80. package/engine/graphics/render/forward_plus/plugin/MaterialTransformer.js +12 -2
  81. package/engine/graphics/render/forward_plus/plugin/ptototypeFPPlugin.js +1 -1
  82. package/engine/graphics/render/forward_plus/prototypeLightManager.js +96 -95
  83. package/engine/graphics/render/forward_plus/queryBVH_Frustum.js +18 -6
  84. package/engine/graphics/render/layers/RenderLayerUtils.js +8 -5
  85. package/engine/graphics/render/visibility/hiz/prototypeHiZ.js +1 -1
  86. package/engine/graphics/texture/atlas/AtlasPatch.js +7 -2
  87. package/engine/graphics/texture/atlas/TextureAtlas.js +18 -14
  88. package/engine/graphics/texture/sampler/Sampler2D.js +8 -7
  89. package/engine/graphics/texture/sampler/scaleSampler2D.js +7 -10
  90. package/engine/graphics/trail/x/RibbonMaterialX.js +3 -3
  91. package/engine/graphics/trail/x/RibbonX.js +17 -2
  92. package/engine/graphics/trail/x/RibbonXPlugin.js +51 -1
  93. package/engine/graphics/util/projectSphere.js +1 -1
  94. package/engine/grid/components/GridObstacle.js +2 -9
  95. package/engine/navigation/ecs/components/Path.js +2 -1
  96. package/engine/network/convertPathToURL.js +2 -2
  97. package/engine/reference/v2/Reference.js +6 -0
  98. package/generation/filtering/numeric/complex/CellFilterAngleToNormal.js +3 -2
  99. package/generation/markers/GridCellActionPlaceMarker.js +13 -1
  100. package/generation/markers/MarkerNode.js +6 -0
  101. package/generation/theme/ThemeEngine.js +4 -1
  102. package/package.json +3 -3
  103. package/view/View.js +4 -2
  104. package/view/minimap/gl/MinimapMarkersGL.js +13 -1
@@ -297,8 +297,17 @@ export class MinimapMarkersGL extends MinimapWorldLayer {
297
297
  }
298
298
 
299
299
 
300
+ /**
301
+ *
302
+ * @return {DataTexture}
303
+ * @private
304
+ */
305
+ __getAtlasTexture() {
306
+ return this.material.uniforms.atlas.value;
307
+ }
308
+
300
309
  handleAtlasUpdate() {
301
- writeSample2DDataToDataTexture(this.atlasManager.atlas.sampler, this.material.uniforms.atlas.value);
310
+ writeSample2DDataToDataTexture(this.atlasManager.atlas.sampler, this.__getAtlasTexture());
302
311
 
303
312
  this.updateSprites();
304
313
 
@@ -391,6 +400,9 @@ export class MinimapMarkersGL extends MinimapWorldLayer {
391
400
  //clear out data arrays
392
401
  this.particles.reset();
393
402
 
403
+ // release atlas GPU memory
404
+ this.__getAtlasTexture().dispose();
405
+
394
406
  //execute shutdown hooks
395
407
  this.shutdownHooks.forEach(function (hook) {
396
408
  hook();