@woosh/meep-engine 3.45.0 → 3.46.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.
Files changed (216) hide show
  1. package/build/bundle-worker-terrain.js +1 -1
  2. package/package.json +1 -1
  3. package/src/core/assert.d.ts.map +1 -1
  4. package/src/core/assert.js +5 -1
  5. package/src/core/binary/hash/XXH128Hash.d.ts +1 -37
  6. package/src/core/binary/hash/XXH128Hash.d.ts.map +1 -1
  7. package/src/core/binary/hash/XXH128Hash.js +4 -55
  8. package/src/core/binary/hash/XXH3_SECRET.d.ts +1 -12
  9. package/src/core/binary/hash/XXH3_SECRET.d.ts.map +1 -1
  10. package/src/core/binary/hash/XXH3_SECRET.js +4 -25
  11. package/src/core/binary/hash/crc32.d.ts +1 -15
  12. package/src/core/binary/hash/crc32.d.ts.map +1 -1
  13. package/src/core/binary/hash/crc32.js +4 -96
  14. package/src/core/binary/hash/xxh3_128.d.ts +1 -9
  15. package/src/core/binary/hash/xxh3_128.d.ts.map +1 -1
  16. package/src/core/binary/hash/xxh3_128.js +4 -341
  17. package/src/core/binary/hash/xxh3_64.d.ts +1 -8
  18. package/src/core/binary/hash/xxh3_64.d.ts.map +1 -1
  19. package/src/core/binary/hash/xxh3_64.js +4 -241
  20. package/src/core/binary/hash/xxh3_common.d.ts +1 -223
  21. package/src/core/binary/hash/xxh3_common.d.ts.map +1 -1
  22. package/src/core/binary/hash/xxh3_common.js +90 -476
  23. package/src/core/collection/array/combine_hash.d.ts +6 -0
  24. package/src/core/collection/array/combine_hash.d.ts.map +1 -1
  25. package/src/core/collection/array/combine_hash.js +6 -0
  26. package/src/core/function/FunctionCompiler.js +2 -2
  27. package/src/core/geom/3d/mat4/m4_multiply.d.ts +3 -0
  28. package/src/core/geom/3d/mat4/m4_multiply.d.ts.map +1 -1
  29. package/src/core/geom/3d/mat4/m4_multiply.js +3 -0
  30. package/src/core/geom/3d/mat4/m4_multiply_f64.d.ts +30 -0
  31. package/src/core/geom/3d/mat4/m4_multiply_f64.d.ts.map +1 -0
  32. package/src/core/geom/3d/mat4/m4_multiply_f64.js +106 -0
  33. package/src/core/geom/ConicRay.js +2 -2
  34. package/src/core/geom/Vector4.d.ts.map +1 -1
  35. package/src/core/geom/Vector4.js +8 -5
  36. package/src/core/math/hash/XXH128Hash.d.ts +38 -0
  37. package/src/core/math/hash/XXH128Hash.d.ts.map +1 -0
  38. package/src/core/math/hash/XXH128Hash.js +55 -0
  39. package/src/core/math/hash/XXH3_SECRET.d.ts +13 -0
  40. package/src/core/math/hash/XXH3_SECRET.d.ts.map +1 -0
  41. package/src/core/math/hash/XXH3_SECRET.js +25 -0
  42. package/src/core/math/hash/crc32.d.ts +16 -0
  43. package/src/core/math/hash/crc32.d.ts.map +1 -0
  44. package/src/core/math/hash/crc32.js +96 -0
  45. package/src/core/math/hash/xxh3_128.d.ts +10 -0
  46. package/src/core/math/hash/xxh3_128.d.ts.map +1 -0
  47. package/src/core/math/hash/xxh3_128.js +341 -0
  48. package/src/core/math/hash/xxh3_64.d.ts +9 -0
  49. package/src/core/math/hash/xxh3_64.d.ts.map +1 -0
  50. package/src/core/math/hash/xxh3_64.js +241 -0
  51. package/src/core/math/hash/xxh3_common.d.ts +224 -0
  52. package/src/core/math/hash/xxh3_common.d.ts.map +1 -0
  53. package/src/core/math/hash/xxh3_common.js +476 -0
  54. package/src/core/math/lookup/ParameterLookupTable.js +2 -2
  55. package/src/core/model/node-graph/node/NodeInstancePortReference.js +2 -2
  56. package/src/core/model/reactive/model/ReactiveBinaryExpression.js +2 -2
  57. package/src/core/model/reactive/model/terminal/ReactiveReference.js +2 -2
  58. package/src/engine/asset/AssetDescription.js +2 -2
  59. package/src/engine/ecs/animation/Animation.js +2 -2
  60. package/src/engine/ecs/animation/AnimationClip.d.ts.map +1 -1
  61. package/src/engine/ecs/animation/AnimationClip.js +7 -5
  62. package/src/engine/ecs/gui/GUIElement.d.ts.map +1 -1
  63. package/src/engine/ecs/gui/GUIElement.js +7 -5
  64. package/src/engine/ecs/gui/hud/HeadsUpDisplay.js +2 -2
  65. package/src/engine/ecs/gui/position/ViewportPosition.d.ts.map +1 -1
  66. package/src/engine/ecs/gui/position/ViewportPosition.js +11 -7
  67. package/src/engine/ecs/transform/Transform64.d.ts +1 -1
  68. package/src/engine/ecs/transform/Transform64.d.ts.map +1 -1
  69. package/src/engine/ecs/transform/Transform64.js +5 -4
  70. package/src/engine/graphics/ecs/animation/animator/AnimationClip.d.ts.map +1 -1
  71. package/src/engine/graphics/ecs/animation/animator/AnimationClip.js +8 -5
  72. package/src/engine/graphics/ecs/animation/animator/AnimationClipDefinition.js +2 -2
  73. package/src/engine/graphics/ecs/animation/animator/AnimationNotification.js +2 -2
  74. package/src/engine/graphics/ecs/animation/animator/AnimationNotificationDefinition.js +2 -2
  75. package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationGraphDefinition.js +2 -2
  76. package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationStateDefinition.js +2 -2
  77. package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationTransitionDefinition.d.ts.map +1 -1
  78. package/src/engine/graphics/ecs/animation/animator/graph/definition/AnimationTransitionDefinition.js +8 -5
  79. package/src/engine/graphics/ecs/decal/v2/Decal.d.ts.map +1 -1
  80. package/src/engine/graphics/ecs/decal/v2/Decal.js +9 -8
  81. package/src/engine/graphics/render/frame_graph/resource/TextureResourceDescriptor.d.ts.map +1 -1
  82. package/src/engine/graphics/render/frame_graph/resource/TextureResourceDescriptor.js +9 -6
  83. package/src/engine/graphics3/ParticipatingMedia.js +204 -204
  84. package/src/engine/graphics3/animation/AnimationClips.d.ts +5 -0
  85. package/src/engine/graphics3/animation/AnimationClips.d.ts.map +1 -1
  86. package/src/engine/graphics3/animation/AnimationClips.js +5 -0
  87. package/src/engine/grid/obstacle/GridObstacle.js +2 -2
  88. package/src/engine/intelligence/behavior/selector/WeightedElement.js +2 -2
  89. package/src/engine/interpolation/Interpolated.js +2 -2
  90. package/src/engine/physics/cloth/ecs/Cloth.d.ts.map +1 -1
  91. package/src/engine/physics/cloth/ecs/Cloth.js +7 -5
  92. package/src/engine/physics/cloth/ecs/ClothCollider.d.ts.map +1 -1
  93. package/src/engine/physics/cloth/ecs/ClothCollider.js +7 -5
  94. package/src/engine/physics/cloth/ecs/ClothDynamics.d.ts.map +1 -1
  95. package/src/engine/physics/cloth/ecs/ClothDynamics.js +20 -11
  96. package/src/engine/physics/fluid/FluidField.d.ts.map +1 -1
  97. package/src/engine/physics/fluid/FluidField.js +7 -5
  98. package/src/engine/physics/fluid/ecs/FluidComponent.d.ts.map +1 -1
  99. package/src/engine/physics/fluid/ecs/FluidComponent.js +19 -11
  100. package/src/engine/physics/fluid/effector/AbstractFluidEffector.d.ts +2 -2
  101. package/src/engine/physics/fluid/effector/AbstractFluidEffector.js +2 -2
  102. package/src/engine/physics/fluid/effector/GlobalFluidEffector.d.ts.map +1 -1
  103. package/src/engine/physics/fluid/effector/GlobalFluidEffector.js +11 -7
  104. package/src/engine/physics/fluid/effector/ImpulseFluidEffector.d.ts.map +1 -1
  105. package/src/engine/physics/fluid/effector/ImpulseFluidEffector.js +11 -7
  106. package/src/engine/physics/fluid/effector/WakeFluidEffector.d.ts.map +1 -1
  107. package/src/engine/physics/fluid/effector/WakeFluidEffector.js +16 -9
  108. package/src/engine/sound/ecs/audio/AudioEmitter.d.ts.map +1 -1
  109. package/src/engine/sound/ecs/audio/AudioEmitter.js +12 -7
  110. package/src/engine/sound/ecs/trigger/AudioEventTrigger.d.ts.map +1 -1
  111. package/src/engine/sound/ecs/trigger/AudioEventTrigger.js +192 -191
  112. package/src/engine/sound/simulation/core/AcousticMedium.js +2 -2
  113. package/src/engine/sound/simulation/definition/AcousticDirectivity.js +2 -2
  114. package/src/engine/sound/simulation/definition/AcousticMaterial.d.ts.map +1 -1
  115. package/src/engine/sound/simulation/definition/AcousticMaterial.js +11 -7
  116. package/src/engine/sound/sopra/definition/BusDefinition.d.ts.map +1 -1
  117. package/src/engine/sound/sopra/definition/BusDefinition.js +5 -4
  118. package/src/engine/sound/sopra/definition/DuckingRule.d.ts.map +1 -1
  119. package/src/engine/sound/sopra/definition/DuckingRule.js +7 -5
  120. package/src/engine/sound/sopra/definition/EventDescription.d.ts.map +1 -1
  121. package/src/engine/sound/sopra/definition/EventDescription.js +23 -13
  122. package/src/engine/sound/sopra/definition/MixerSnapshot.js +2 -2
  123. package/src/engine/sound/sopra/definition/ParameterDefinition.d.ts.map +1 -1
  124. package/src/engine/sound/sopra/definition/ParameterDefinition.js +7 -5
  125. package/src/engine/sound/sopra/definition/clip/AbstractAudioClip.js +2 -2
  126. package/src/engine/sound/sopra/definition/clip/BlendContainerAudioClip.d.ts.map +1 -1
  127. package/src/engine/sound/sopra/definition/clip/BlendContainerAudioClip.js +4 -3
  128. package/src/engine/sound/sopra/definition/clip/ContainerAudioClip.js +2 -2
  129. package/src/engine/sound/sopra/definition/clip/RandomContainerAudioClip.js +3 -3
  130. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.d.ts.map +1 -1
  131. package/src/engine/sound/sopra/definition/clip/SampleAudioClip.js +16 -9
  132. package/src/engine/sound/sopra/definition/clip/SilenceAudioClip.js +2 -2
  133. package/src/engine/sound/sopra/definition/clip/SwitchContainerAudioClip.d.ts +1 -1
  134. package/src/engine/sound/sopra/definition/clip/SwitchContainerAudioClip.d.ts.map +1 -1
  135. package/src/engine/sound/sopra/definition/clip/SwitchContainerAudioClip.js +2 -2
  136. package/src/engine/sound/sopra/definition/effect/CompressorEffect.d.ts.map +1 -1
  137. package/src/engine/sound/sopra/definition/effect/CompressorEffect.js +7 -5
  138. package/src/engine/sound/sopra/definition/effect/EqEffect.d.ts.map +1 -1
  139. package/src/engine/sound/sopra/definition/effect/EqEffect.js +8 -5
  140. package/src/engine/sound/sopra/definition/effect/ReverbEffect.js +2 -2
  141. package/src/engine/sound/sopra/legacy/SoundEmitter.d.ts.map +1 -1
  142. package/src/engine/sound/sopra/legacy/SoundEmitter.js +357 -352
  143. package/src/engine/sound/sopra/legacy/SoundTrack.d.ts.map +1 -1
  144. package/src/engine/sound/sopra/legacy/SoundTrack.js +281 -278
  145. package/src/format/image/png/PNGReader.js +644 -644
  146. package/src/format/image/png/crc32.d.ts +1 -1
  147. package/src/format/image/png/crc32.js +7 -8
  148. package/src/shade/descriptor/binding/BindGroupLayoutDescriptor.js +2 -2
  149. package/src/shade/descriptor/binding/BindGroupLayoutEntry.d.ts.map +1 -1
  150. package/src/shade/descriptor/binding/BindGroupLayoutEntry.js +12 -8
  151. package/src/shade/descriptor/binding/StorageTextureBindingLayout.js +2 -2
  152. package/src/shade/descriptor/binding/TextureBindingLayout.js +2 -2
  153. package/src/shade/descriptor/blend/BlendComponent.js +2 -2
  154. package/src/shade/descriptor/pipeline/PipelineDescriptorBase.js +2 -2
  155. package/src/shade/descriptor/pipeline/PipelineLayoutDescriptor.js +2 -2
  156. package/src/shade/descriptor/pipeline/ProgrammableStage.js +2 -2
  157. package/src/shade/descriptor/pipeline/compute/ComputePipelineDescriptor.js +2 -2
  158. package/src/shade/descriptor/pipeline/render/ColorTargetState.js +2 -2
  159. package/src/shade/descriptor/pipeline/render/FragmentState.js +2 -2
  160. package/src/shade/descriptor/pipeline/render/PrimitiveState.js +2 -2
  161. package/src/shade/descriptor/pipeline/render/RenderPipelineDescriptor.d.ts.map +1 -1
  162. package/src/shade/descriptor/pipeline/render/RenderPipelineDescriptor.js +8 -5
  163. package/src/shade/descriptor/pipeline/render/VertexAttribute.js +2 -2
  164. package/src/shade/descriptor/texture/SamplerDescriptor.d.ts.map +1 -1
  165. package/src/shade/descriptor/texture/SamplerDescriptor.js +20 -12
  166. package/src/shade/descriptor/texture/TextureDescriptor.d.ts.map +1 -1
  167. package/src/shade/descriptor/texture/TextureDescriptor.js +11 -7
  168. package/src/shade/device/graph/BufferResourceDescriptor.d.ts.map +1 -1
  169. package/src/shade/device/graph/BufferResourceDescriptor.js +196 -193
  170. package/src/shade/device/graph/TextureResourceDescriptor.d.ts.map +1 -1
  171. package/src/shade/device/graph/TextureResourceDescriptor.js +178 -173
  172. package/src/shade/device/timing/profile/sgpt_read_header.js +1 -1
  173. package/src/shade/device/timing/profile/sgpt_read_records.js +1 -1
  174. package/src/shade/device/timing/profile/sgpt_write_header.js +1 -1
  175. package/src/shade/device/timing/profile/sgpt_write_record.js +1 -1
  176. package/src/shade/renderer/binding/BufferBinding.js +2 -2
  177. package/src/shade/renderer/camera/Camera.js +2 -2
  178. package/src/shade/renderer/geometry/Attribute.js +2 -2
  179. package/src/shade/renderer/geometry/Geometry.js +2 -2
  180. package/src/shade/renderer/geometry/geometry_deduplicate_vertices.js +2 -2
  181. package/src/shade/renderer/geometry/meshlet/MeshletBatch.js +2 -2
  182. package/src/shade/renderer/geometry/virtual/format/checksum/vgeo_compute_asset_id.js +13 -13
  183. package/src/shade/renderer/geometry/virtual/format/checksum/vgeo_compute_directory_block_checksum.js +41 -41
  184. package/src/shade/renderer/geometry/virtual/format/checksum/vgeo_compute_frame_checksum.js +41 -41
  185. package/src/shade/renderer/geometry/virtual/format/checksum/vgeo_compute_header_checksum.js +25 -25
  186. package/src/shade/renderer/material/StandardShadeMaterial.d.ts.map +1 -1
  187. package/src/shade/renderer/material/StandardShadeMaterial.js +13 -8
  188. package/src/shade/renderer/scene/optimization/geometry/internal/triangle_fingerprint_stream.d.ts.map +1 -1
  189. package/src/shade/renderer/scene/optimization/geometry/internal/triangle_fingerprint_stream.js +14 -5
  190. package/src/shade/renderer/scene/optimization/sampler2d_from_image_bitmap.js +1 -1
  191. package/src/shade/renderer/shader/type/WGSLStructField.js +2 -2
  192. package/src/shade/renderer/shader/type/WebGPUArray.js +2 -2
  193. package/src/shade/renderer/shader/type/WebGPUStruct.d.ts.map +1 -1
  194. package/src/shade/renderer/shader/type/WebGPUStruct.js +9 -6
  195. package/src/shade/renderer/texture/ShadeTexture.d.ts.map +1 -1
  196. package/src/shade/renderer/texture/ShadeTexture.js +17 -10
  197. package/src/shade/renderer/texture/mipmaps/WebGPUMipmapGenerator.js +2 -2
  198. package/src/shade/renderer/water/surface/chunk_water_surface_sample.d.ts +4 -4
  199. package/src/shade/renderer/water/surface/chunk_water_surface_sample.js +6 -6
  200. package/src/shade/renderer/water/surface/particles/GPUWaterParticles.d.ts.map +1 -1
  201. package/src/shade/renderer/water/surface/particles/GPUWaterParticles.js +46 -55
  202. package/src/shade/renderer/water/surface/particles/WATER_PARTICLE_STRUCT.d.ts +3 -3
  203. package/src/shade/renderer/water/surface/particles/WATER_PARTICLE_STRUCT.d.ts.map +1 -1
  204. package/src/shade/renderer/water/surface/particles/WATER_PARTICLE_STRUCT.js +14 -4
  205. package/src/shade/renderer/water/surface/particles/chunk_water_particle.d.ts +10 -1
  206. package/src/shade/renderer/water/surface/particles/chunk_water_particle.d.ts.map +1 -1
  207. package/src/shade/renderer/water/surface/particles/chunk_water_particle.js +82 -40
  208. package/src/shade/renderer/water/surface/particles/chunk_water_particle_step.d.ts +4 -1
  209. package/src/shade/renderer/water/surface/particles/chunk_water_particle_step.d.ts.map +1 -1
  210. package/src/shade/renderer/water/surface/particles/chunk_water_particle_step.js +8 -4
  211. package/src/shade/renderer/water/surface/particles/shader_water_particles.d.ts +98 -86
  212. package/src/shade/renderer/water/surface/particles/shader_water_particles.d.ts.map +1 -1
  213. package/src/shade/renderer/water/surface/particles/shader_water_particles.js +440 -298
  214. package/src/view/common/HTMLElementCacheKey.d.ts.map +1 -1
  215. package/src/view/common/HTMLElementCacheKey.js +4 -3
  216. package/src/view/minimap/MinimapMarker.js +2 -2
@@ -1,2 +1,2 @@
1
- export { crc32 } from "../../../core/binary/hash/crc32.js";
1
+ export { crc32 } from "../../../core/math/hash/crc32.js";
2
2
  //# sourceMappingURL=crc32.d.ts.map
@@ -1,8 +1,7 @@
1
- /**
2
- * @deprecated Moved to `core/binary/hash/crc32.js`. CRC-32/ISO-3309 is not a PNG algorithm — PNG
3
- * merely happens to be the first thing in the tree that needed it.
4
- *
5
- * Kept as a re-export rather than removed: this is a library, and an import path is as much a
6
- * published interface as a function signature.
7
- */
8
- export { crc32 } from "../../../core/binary/hash/crc32.js";
1
+ // CRC-32/ISO-3309 is not a PNG algorithm — PNG merely happens to be the first thing in the tree that
2
+ // needed it. Kept as a re-export rather than removed: this is a library, and an import path is as much
3
+ // a published interface as a function signature.
4
+ export {
5
+ /** @deprecated moved to core/math/hash/crc32.js; import it from there */
6
+ crc32
7
+ } from "../../../core/math/hash/crc32.js";
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../core/assert.js";
2
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix2 } from "../../../core/math/hash/hash_mix2.js";
3
3
  import { computeHashArray } from "../../../core/collection/array/computeHashArray.js";
4
4
  import { isArrayEqual } from "../../../core/collection/array/isArrayEqual.js";
5
5
  import { invokeObjectHash } from "../../../core/model/object/invokeObjectHash.js";
@@ -120,7 +120,7 @@ export class BindGroupLayoutDescriptor extends ObjectDescriptorBase {
120
120
  }
121
121
 
122
122
  hash() {
123
- return combine_hash(
123
+ return hash_mix2(
124
124
  super.hash(),
125
125
  computeHashArray(this.entries, invokeObjectHash),
126
126
  );
@@ -1 +1 @@
1
- {"version":3,"file":"BindGroupLayoutEntry.d.ts","sourceRoot":"","sources":["../../../../../src/shade/descriptor/binding/BindGroupLayoutEntry.js"],"names":[],"mappings":"AAWA;;GAEG;AACH,6CAFgB,uBAAuB;IA8CnC;;;;;OAKG;IACH,2BAJW,oBAAoB,KACpB,oBAAoB,GAClB,MAAM,CAIlB;IAED,iDAMC;IA3DD;;;OAGG;IACH,SAFU,MAAM,CAEL;IAEX;;;OAGG;IACH,YAFU,MAAM,sBAAoB,CAEtB;IAEd;;;OAGG;IACH,QAFU,mBAAmB,CAEvB;IAEN;;;OAGG;IACH,SAFU,oBAAoB,CAEvB;IAEP;;;OAGG;IACH,SAFU,oBAAoB,CAEvB;IAEP;;;OAGG;IACH,gBAFU,2BAA2B,CAEvB;IAGd;;;OAGG;IACH,iBAFU,4BAA4B,CAEvB;IAoBf;;;OAGG;IACH,oBAFW,mBAAmB,GAAC,oBAAoB,GAAC,oBAAoB,GAAC,2BAA2B,GAAC,4BAA4B,QAmBhI;IAGD;;;;;;;;aA6CC;IAED,eAUC;IAED;;;;OAIG;IACH,cAHW,oBAAoB,GAClB,OAAO,CAanB;IAED;;;OAGG;IACH,YAFW,oBAAoB,QAU9B;IAED;;;OAGG;IACH,SAFY,oBAAoB,CAQ/B;CACJ;oCArMmC,0BAA0B;qCAEzB,2BAA2B;qCAE3B,2BAA2B;4CADpB,kCAAkC;6CAFjC,mCAAmC"}
1
+ {"version":3,"file":"BindGroupLayoutEntry.d.ts","sourceRoot":"","sources":["../../../../../src/shade/descriptor/binding/BindGroupLayoutEntry.js"],"names":[],"mappings":"AAWA;;GAEG;AACH,6CAFgB,uBAAuB;IA8CnC;;;;;OAKG;IACH,2BAJW,oBAAoB,KACpB,oBAAoB,GAClB,MAAM,CAIlB;IAED,iDAMC;IA3DD;;;OAGG;IACH,SAFU,MAAM,CAEL;IAEX;;;OAGG;IACH,YAFU,MAAM,sBAAoB,CAEtB;IAEd;;;OAGG;IACH,QAFU,mBAAmB,CAEvB;IAEN;;;OAGG;IACH,SAFU,oBAAoB,CAEvB;IAEP;;;OAGG;IACH,SAFU,oBAAoB,CAEvB;IAEP;;;OAGG;IACH,gBAFU,2BAA2B,CAEvB;IAGd;;;OAGG;IACH,iBAFU,4BAA4B,CAEvB;IAoBf;;;OAGG;IACH,oBAFW,mBAAmB,GAAC,oBAAoB,GAAC,oBAAoB,GAAC,2BAA2B,GAAC,4BAA4B,QAmBhI;IAGD;;;;;;;;aA6CC;IAED,eAcC;IAED;;;;OAIG;IACH,cAHW,oBAAoB,GAClB,OAAO,CAanB;IAED;;;OAGG;IACH,YAFW,oBAAoB,QAU9B;IAED;;;OAGG;IACH,SAFY,oBAAoB,CAQ/B;CACJ;oCAzMmC,0BAA0B;qCAEzB,2BAA2B;qCAE3B,2BAA2B;4CADpB,kCAAkC;6CAFjC,mCAAmC"}
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../core/assert.js";
2
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
3
3
  import { optional_clone } from "../../../core/model/object/optional_clone.js";
4
4
  import { optional_equality } from "../../../core/model/object/optional_equality.js";
5
5
  import { optional_hash } from "../../../core/model/object/optional_hash.js";
@@ -146,14 +146,18 @@ export class BindGroupLayoutEntry {
146
146
  }
147
147
 
148
148
  hash() {
149
- return combine_hash(
150
- this.binding,
151
- this.visibility,
152
- optional_hash(this.buffer),
153
- optional_hash(this.sampler),
154
- optional_hash(this.texture),
149
+ return hash_mix3(
150
+ hash_mix3(
151
+ hash_mix3(
152
+ this.binding,
153
+ this.visibility,
154
+ optional_hash(this.buffer)
155
+ ),
156
+ optional_hash(this.sampler),
157
+ optional_hash(this.texture)
158
+ ),
155
159
  optional_hash(this.storageTexture),
156
- optional_hash(this.externalTexture),
160
+ optional_hash(this.externalTexture)
157
161
  )
158
162
  }
159
163
 
@@ -1,4 +1,4 @@
1
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
1
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
2
2
  import { computeStringHash } from "../../../core/primitives/strings/computeStringHash.js";
3
3
 
4
4
  export class StorageTextureBindingLayout {
@@ -45,7 +45,7 @@ export class StorageTextureBindingLayout {
45
45
 
46
46
 
47
47
  hash() {
48
- return combine_hash(
48
+ return hash_mix3(
49
49
  computeStringHash(this.access),
50
50
  computeStringHash(this.format),
51
51
  computeStringHash(this.viewDimension),
@@ -1,4 +1,4 @@
1
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
1
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
2
2
  import { computeStringHash } from "../../../core/primitives/strings/computeStringHash.js";
3
3
 
4
4
  export class TextureBindingLayout {
@@ -47,7 +47,7 @@ export class TextureBindingLayout {
47
47
  }
48
48
 
49
49
  hash() {
50
- return combine_hash(
50
+ return hash_mix3(
51
51
  computeStringHash(this.sampleType),
52
52
  computeStringHash(this.viewDimension),
53
53
  this.multisampled ? 1 : 0
@@ -1,4 +1,4 @@
1
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
1
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
2
2
  import { computeStringHash } from "../../../core/primitives/strings/computeStringHash.js";
3
3
 
4
4
  /**
@@ -41,7 +41,7 @@ export class BlendComponent {
41
41
  }
42
42
 
43
43
  hash() {
44
- return combine_hash(
44
+ return hash_mix3(
45
45
  computeStringHash(this.operation),
46
46
  computeStringHash(this.srcFactor),
47
47
  computeStringHash(this.dstFactor),
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../core/assert.js";
2
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix2 } from "../../../core/math/hash/hash_mix2.js";
3
3
  import { optional_clone } from "../../../core/model/object/optional_clone.js";
4
4
  import { ObjectDescriptorBase } from "../ObjectDescriptorBase.js";
5
5
  import { PipelineLayoutDescriptor } from "./PipelineLayoutDescriptor.js";
@@ -30,7 +30,7 @@ export class PipelineDescriptorBase extends ObjectDescriptorBase {
30
30
 
31
31
 
32
32
  hash() {
33
- return combine_hash(
33
+ return hash_mix2(
34
34
  super.hash(),
35
35
  this.layout.hash()
36
36
  );
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../core/assert.js";
2
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
3
3
  import { computeHashArray } from "../../../core/collection/array/computeHashArray.js";
4
4
  import { isArrayEqual } from "../../../core/collection/array/isArrayEqual.js";
5
5
  import { invokeObjectHash } from "../../../core/model/object/invokeObjectHash.js";
@@ -128,7 +128,7 @@ export class PipelineLayoutDescriptor extends ObjectDescriptorBase {
128
128
  }
129
129
 
130
130
  hash() {
131
- return combine_hash(
131
+ return hash_mix3(
132
132
  super.hash(),
133
133
  computeHashArray(this.bindGroupLayouts, invokeObjectHash),
134
134
  // two layouts that differ only in immediate size are different layouts; leaving this out
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../core/assert.js";
2
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix2 } from "../../../core/math/hash/hash_mix2.js";
3
3
  import { isArrayEqualStrict } from "../../../core/collection/array/isArrayEqualStrict.js";
4
4
  import { computeStringHash } from "../../../core/primitives/strings/computeStringHash.js";
5
5
  import { ShaderModuleDescriptor } from "./ShaderModuleDescriptor.js";
@@ -55,7 +55,7 @@ export class ProgrammableStage {
55
55
 
56
56
 
57
57
  hash() {
58
- return combine_hash(
58
+ return hash_mix2(
59
59
  this.module.hash(),
60
60
  computeStringHash(this.entryPoint)
61
61
  );
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../../core/assert.js";
2
- import { combine_hash } from "../../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix2 } from "../../../../core/math/hash/hash_mix2.js";
3
3
  import {
4
4
  compute_infer_workgroup_size_from_source
5
5
  } from "../../../renderer/shader/util/compute_infer_workgroup_size_from_source.js";
@@ -175,7 +175,7 @@ export class ComputePipelineDescriptor extends PipelineDescriptorBase {
175
175
  }
176
176
 
177
177
  hash() {
178
- return combine_hash(
178
+ return hash_mix2(
179
179
  super.hash(),
180
180
  this.compute.hash()
181
181
  );
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../../core/assert.js";
2
- import { combine_hash } from "../../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix3 } from "../../../../core/math/hash/hash_mix3.js";
3
3
  import { computeStringHash } from "../../../../core/primitives/strings/computeStringHash.js";
4
4
  import { optional_clone } from "../../../../core/model/object/optional_clone.js";
5
5
  import { optional_equality } from "../../../../core/model/object/optional_equality.js";
@@ -96,7 +96,7 @@ export class ColorTargetState {
96
96
  }
97
97
 
98
98
  hash() {
99
- return combine_hash(
99
+ return hash_mix3(
100
100
  computeStringHash(this.format),
101
101
  this.writeMask,
102
102
  optional_hash(this.blend)
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../../core/assert.js";
2
- import { combine_hash } from "../../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix2 } from "../../../../core/math/hash/hash_mix2.js";
3
3
  import { computeHashArray } from "../../../../core/collection/array/computeHashArray.js";
4
4
  import { isArrayEqual } from "../../../../core/collection/array/isArrayEqual.js";
5
5
  import { invokeObjectHash } from "../../../../core/model/object/invokeObjectHash.js";
@@ -78,7 +78,7 @@ export class FragmentState extends ProgrammableStage {
78
78
  }
79
79
 
80
80
  hash() {
81
- return combine_hash(
81
+ return hash_mix2(
82
82
  super.hash(),
83
83
  computeHashArray(this.targets, invokeObjectHash)
84
84
  );
@@ -1,4 +1,4 @@
1
- import { combine_hash } from "../../../../core/collection/array/combine_hash.js";
1
+ import { hash_mix3 } from "../../../../core/math/hash/hash_mix3.js";
2
2
  import { computeStringHash } from "../../../../core/primitives/strings/computeStringHash.js";
3
3
 
4
4
  const DEFAULT_TOPOLOGY = "triangle-list";
@@ -101,7 +101,7 @@ export class PrimitiveState {
101
101
  }
102
102
 
103
103
  hash() {
104
- return combine_hash(
104
+ return hash_mix3(
105
105
  computeStringHash(this.topology),
106
106
  computeStringHash(this.frontFace),
107
107
  computeStringHash(this.cullMode),
@@ -1 +1 @@
1
- {"version":3,"file":"RenderPipelineDescriptor.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/descriptor/pipeline/render/RenderPipelineDescriptor.js"],"names":[],"mappings":"AAaA;;;;;;GAMG;AACH;IA6BI;;;OAGG;IACH,iDAMC;IAtCD;;;OAGG;IACH,QAFU,WAAW,CAEM;IAE3B;;OAEG;IACH,WAFU,cAAc,CAES;IAEjC;;OAEG;IACH,cAFU,iBAAiB,GAAC,SAAS,CAExB;IAEb;;OAEG;IACH,aAFU,gBAAgB,CAEW;IAErC;;;OAGG;IACH,UAFU,aAAa,GAAC,SAAS,CAExB;IAeT;;;OAGG;IACH,kDA4BC;IAED;;;;OAIG;IACH,cAHW,wBAAwB,GACvB,OAAO,CA4BlB;IAeD;;;OAGG;IACH,YAFW,wBAAwB,QAUlC;IAED;;;OAGG;IACH,SAFY,wBAAwB,CAQnC;IAGL,oCAA6D;CAF5D;uCAjKsC,8BAA8B;4BAKzC,kBAAkB;+BADf,qBAAqB;kCAHlB,wBAAwB;iCAEzB,uBAAuB;8BAD1B,oBAAoB"}
1
+ {"version":3,"file":"RenderPipelineDescriptor.d.ts","sourceRoot":"","sources":["../../../../../../src/shade/descriptor/pipeline/render/RenderPipelineDescriptor.js"],"names":[],"mappings":"AAcA;;;;;;GAMG;AACH;IA6BI;;;OAGG;IACH,iDAMC;IAtCD;;;OAGG;IACH,QAFU,WAAW,CAEM;IAE3B;;OAEG;IACH,WAFU,cAAc,CAES;IAEjC;;OAEG;IACH,cAFU,iBAAiB,GAAC,SAAS,CAExB;IAEb;;OAEG;IACH,aAFU,gBAAgB,CAEW;IAErC;;;OAGG;IACH,UAFU,aAAa,GAAC,SAAS,CAExB;IAeT;;;OAGG;IACH,kDA4BC;IAED;;;;OAIG;IACH,cAHW,wBAAwB,GACvB,OAAO,CA4BlB;IAiBD;;;OAGG;IACH,YAFW,wBAAwB,QAUlC;IAED;;;OAGG;IACH,SAFY,wBAAwB,CAQnC;IAGL,oCAA6D;CAF5D;uCAnKsC,8BAA8B;4BAKzC,kBAAkB;+BADf,qBAAqB;kCAHlB,wBAAwB;iCAEzB,uBAAuB;8BAD1B,oBAAoB"}
@@ -1,5 +1,6 @@
1
1
  import { assert } from "../../../../core/assert.js";
2
- import { combine_hash } from "../../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix2 } from "../../../../core/math/hash/hash_mix2.js";
3
+ import { hash_mix3 } from "../../../../core/math/hash/hash_mix3.js";
3
4
  import { optional_clone } from "../../../../core/model/object/optional_clone.js";
4
5
  import { optional_equality } from "../../../../core/model/object/optional_equality.js";
5
6
  import { optional_hash } from "../../../../core/model/object/optional_hash.js";
@@ -131,10 +132,12 @@ export class RenderPipelineDescriptor extends PipelineDescriptorBase {
131
132
  * @returns {number}
132
133
  */
133
134
  hash() {
134
- return combine_hash(
135
- super.hash(),
136
- this.vertex.hash(),
137
- this.primitive.hash(),
135
+ return hash_mix2(
136
+ hash_mix3(
137
+ super.hash(),
138
+ this.vertex.hash(),
139
+ this.primitive.hash()
140
+ ),
138
141
  optional_hash(this.fragment)
139
142
  );
140
143
  }
@@ -1,4 +1,4 @@
1
- import { combine_hash } from "../../../../core/collection/array/combine_hash.js";
1
+ import { hash_mix3 } from "../../../../core/math/hash/hash_mix3.js";
2
2
  import { computeStringHash } from "../../../../core/primitives/strings/computeStringHash.js";
3
3
 
4
4
  /**
@@ -50,7 +50,7 @@ export class VertexAttribute {
50
50
  }
51
51
 
52
52
  hash() {
53
- return combine_hash(
53
+ return hash_mix3(
54
54
  computeStringHash(this.format),
55
55
  this.offset,
56
56
  this.shaderLocation
@@ -1 +1 @@
1
- {"version":3,"file":"SamplerDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/descriptor/texture/SamplerDescriptor.js"],"names":[],"mappings":"AAIA;;GAEG;AACH,uEAFe,oBAAoB;IAyE/B;;;OAGG;IACH,wDAOC;IAjFD;;OAEG;IACH,6BAA8B;IAC9B;;OAEG;IACH,6BAA8B;IAC9B;;OAEG;IACH,6BAA8B;IAE9B;;OAEG;IACH,yBAAqB;IACrB;;OAEG;IACH,yBAAqB;IACrB;;OAEG;IACH,kCAAwB;IAExB,oBAAgB;IAChB,oBAAiB;IAEjB,sBAAiB;IAEjB;;;OAGG;IACH,4BAAQ;IAIR;;;;;;;;;;;;aA6BC;IAeD,4BAgBC;IAmCL;;;OAGG;IACH,8BAFU,OAAO,CAE8B;;CAN9C;qCA1IoC,4BAA4B"}
1
+ {"version":3,"file":"SamplerDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/descriptor/texture/SamplerDescriptor.js"],"names":[],"mappings":"AAIA;;GAEG;AACH,uEAFe,oBAAoB;IAyE/B;;;OAGG;IACH,wDAOC;IAjFD;;OAEG;IACH,6BAA8B;IAC9B;;OAEG;IACH,6BAA8B;IAC9B;;OAEG;IACH,6BAA8B;IAE9B;;OAEG;IACH,yBAAqB;IACrB;;OAEG;IACH,yBAAqB;IACrB;;OAEG;IACH,kCAAwB;IAExB,oBAAgB;IAChB,oBAAiB;IAEjB,sBAAiB;IAEjB;;;OAGG;IACH,4BAAQ;IAIR;;;;;;;;;;;;aA6BC;IAeD,4BAgBC;IA2CL;;;OAGG;IACH,8BAFU,OAAO,CAE8B;;CAN9C;qCAlJoC,4BAA4B"}
@@ -1,4 +1,4 @@
1
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
1
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
2
2
  import { computeStringHash } from "../../../core/primitives/strings/computeStringHash.js";
3
3
  import { ObjectDescriptorBase } from "../ObjectDescriptorBase.js";
4
4
 
@@ -108,18 +108,26 @@ export class SamplerDescriptor extends ObjectDescriptorBase {
108
108
  }
109
109
 
110
110
  #compute_hash(){
111
- let h = combine_hash(
112
- super.hash(),
113
- computeStringHash(this.addressModeU),
114
- computeStringHash(this.addressModeV),
115
- computeStringHash(this.addressModeW),
116
- computeStringHash(this.magFilter),
117
- computeStringHash(this.minFilter),
118
- computeStringHash(this.mipmapFilter),
119
- this.lodMinClamp,
120
- this.lodMaxClamp,
111
+ let h = hash_mix3(
112
+ hash_mix3(
113
+ hash_mix3(
114
+ hash_mix3(
115
+ hash_mix3(
116
+ super.hash(),
117
+ computeStringHash(this.addressModeU),
118
+ computeStringHash(this.addressModeV)
119
+ ),
120
+ computeStringHash(this.addressModeW),
121
+ computeStringHash(this.magFilter)
122
+ ),
123
+ computeStringHash(this.minFilter),
124
+ computeStringHash(this.mipmapFilter)
125
+ ),
126
+ this.lodMinClamp,
127
+ this.lodMaxClamp
128
+ ),
121
129
  this.maxAnisotropy,
122
- computeStringHash(this.compare),
130
+ computeStringHash(this.compare)
123
131
  );
124
132
 
125
133
  if(h === -1){
@@ -1 +1 @@
1
- {"version":3,"file":"TextureDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/descriptor/texture/TextureDescriptor.js"],"names":[],"mappings":"AAgCA;;;GAGG;AACH,uEAFe,oBAAoB;IA6J/B;;;;OAIG;IACH,yCAFY,iBAAiB,CAQ5B;IA9JD,sBAAkB;IAClB,oBAAgB;IAEhB;;;OAGG;IACH,+BAAiB;IAEjB;;OAEG;IACH,yBAAsB;IAEtB;;OAEG;IACH,OAFU,MAAM,uBAAqB,CAEG;IAExC;;;OAGG;IACH,aAFU,kBAAkB,CAEX;IAEjB;;;OAGG;IACH,eAAyB;IAEzB;;;OAGG;IACH;eAU4B,MAAM;gBAAS,MAAM;4BAAqB,MAAM;OAJ3E;IAED;;;OAGG;IACH;eAF4B,MAAM;gBAAS,MAAM;4BAAqB,MAAM;MAI3E;IAGD;;;;;OAKG;IACH,+BAuBC;IAED;;;;OAIG;IACH,cAHW,iBAAiB,GAChB,OAAO,CAelB;IAED;;;OAGG;IACH,YAFW,iBAAiB,QAa3B;IAcD;;;OAGG;IACH,uCASC;IAeD;;;OAGG;IACH,2CAwCC;IAIL;;;OAGG;IACH,8BAFU,OAAO,CAE8B;;CAP9C;qCAjPoC,4BAA4B"}
1
+ {"version":3,"file":"TextureDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/descriptor/texture/TextureDescriptor.js"],"names":[],"mappings":"AAgCA;;;GAGG;AACH,uEAFe,oBAAoB;IAiK/B;;;;OAIG;IACH,yCAFY,iBAAiB,CAQ5B;IAlKD,sBAAkB;IAClB,oBAAgB;IAEhB;;;OAGG;IACH,+BAAiB;IAEjB;;OAEG;IACH,yBAAsB;IAEtB;;OAEG;IACH,OAFU,MAAM,uBAAqB,CAEG;IAExC;;;OAGG;IACH,aAFU,kBAAkB,CAEX;IAEjB;;;OAGG;IACH,eAAyB;IAEzB;;;OAGG;IACH;eAU4B,MAAM;gBAAS,MAAM;4BAAqB,MAAM;OAJ3E;IAED;;;OAGG;IACH;eAF4B,MAAM;gBAAS,MAAM;4BAAqB,MAAM;MAI3E;IAGD;;;;;OAKG;IACH,+BAuBC;IAED;;;;OAIG;IACH,cAHW,iBAAiB,GAChB,OAAO,CAelB;IAED;;;OAGG;IACH,YAFW,iBAAiB,QAa3B;IAkBD;;;OAGG;IACH,uCASC;IAeD;;;OAGG;IACH,2CAwCC;IAIL;;;OAGG;IACH,8BAFU,OAAO,CAE8B;;CAP9C;qCArPoC,4BAA4B"}
@@ -1,5 +1,5 @@
1
1
  import { assert } from "../../../core/assert.js";
2
- import { combine_hash } from "../../../core/collection/array/combine_hash.js";
2
+ import { hash_mix3 } from "../../../core/math/hash/hash_mix3.js";
3
3
  import { computeIntegerArrayHash } from "../../../core/collection/array/computeIntegerArrayHash.js";
4
4
  import { isArrayEqualStrict } from "../../../core/collection/array/isArrayEqualStrict.js";
5
5
  import Signal from "../../../core/events/signal/Signal.js";
@@ -163,12 +163,16 @@ export class TextureDescriptor extends ObjectDescriptorBase {
163
163
  }
164
164
 
165
165
  hash() {
166
- return combine_hash(
167
- computeIntegerArrayHash(this.#size, 0, this.#size.length),
168
- this.mipLevelCount,
169
- this.sampleCount,
170
- computeStringHash(this.dimension),
171
- computeStringHash(this.format),
166
+ return hash_mix3(
167
+ hash_mix3(
168
+ hash_mix3(
169
+ computeIntegerArrayHash(this.#size, 0, this.#size.length),
170
+ this.mipLevelCount,
171
+ this.sampleCount
172
+ ),
173
+ computeStringHash(this.dimension),
174
+ computeStringHash(this.format)
175
+ ),
172
176
  this.usage,
173
177
  super.hash()
174
178
  )
@@ -1 +1 @@
1
- {"version":3,"file":"BufferResourceDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/device/graph/BufferResourceDescriptor.js"],"names":[],"mappings":"AAUA;IAkGI;;;;OAIG;IACH,0CAFa,wBAAwB,CAWpC;IAED;;;;;;;;OAQG;IACH,mBAJW,MAAM,SACN,iBAAe,MAAM,GACnB,wBAAwB,CASpC;IAED;;;;;;;OAOG;IACH,kBANW,MAAM,SACN,iBAAe,MAAM,iBACrB,MAAM,eACN,MAAM,GACJ,wBAAwB,CAsCpC;IA/KD;;;OAGG;IACH,MAFU,MAAM,CAEP;IAET;;;;;;OAMG;IACH,OAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,4BAAoC;IAUpC;;;OAGG;IACH,YAFW,wBAAwB,QAOlC;IAED;;;OAGG;IACH,SAFY,wBAAwB,CAQnC;IAcD,4BAMC;IAED;;;;OAIG;IACH,eAHW,wBAAwB,GACvB,MAAM,CAoBjB;IAmFL;;;OAGG;IACH,4BAFU,OAAO,CAE4C;CAN5D;mCArLM,4EAA4E"}
1
+ {"version":3,"file":"BufferResourceDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/shade/device/graph/BufferResourceDescriptor.js"],"names":[],"mappings":"AAWA;IAoGI;;;;OAIG;IACH,0CAFa,wBAAwB,CAWpC;IAED;;;;;;;;OAQG;IACH,mBAJW,MAAM,SACN,iBAAe,MAAM,GACnB,wBAAwB,CASpC;IAED;;;;;;;OAOG;IACH,kBANW,MAAM,SACN,iBAAe,MAAM,iBACrB,MAAM,eACN,MAAM,GACJ,wBAAwB,CAsCpC;IAjLD;;;OAGG;IACH,MAFU,MAAM,CAEP;IAET;;;;;;OAMG;IACH,OAFU,MAAM,CAEN;IAEV;;;OAGG;IACH,4BAAoC;IAUpC;;;OAGG;IACH,YAFW,wBAAwB,QAOlC;IAED;;;OAGG;IACH,SAFY,wBAAwB,CAQnC;IAgBD,4BAMC;IAED;;;;OAIG;IACH,eAHW,wBAAwB,GACvB,MAAM,CAoBjB;IAmFL;;;OAGG;IACH,4BAFU,OAAO,CAE4C;CAN5D;mCAvLM,4EAA4E"}