@babylonjs/core 8.44.0 → 8.45.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 (137) hide show
  1. package/Cameras/Inputs/geospatialCameraKeyboardInput.js +6 -10
  2. package/Cameras/Inputs/geospatialCameraKeyboardInput.js.map +1 -1
  3. package/Cameras/Inputs/geospatialCameraMouseWheelInput.js +1 -1
  4. package/Cameras/Inputs/geospatialCameraMouseWheelInput.js.map +1 -1
  5. package/Cameras/Limits/geospatialLimits.d.ts +4 -22
  6. package/Cameras/Limits/geospatialLimits.js +4 -36
  7. package/Cameras/Limits/geospatialLimits.js.map +1 -1
  8. package/Cameras/geospatialCamera.d.ts +15 -4
  9. package/Cameras/geospatialCamera.js +90 -37
  10. package/Cameras/geospatialCamera.js.map +1 -1
  11. package/Cameras/geospatialCameraMovement.d.ts +1 -3
  12. package/Cameras/geospatialCameraMovement.js +15 -51
  13. package/Cameras/geospatialCameraMovement.js.map +1 -1
  14. package/Collisions/collisionCoordinator.d.ts +2 -2
  15. package/Collisions/collisionCoordinator.js +1 -0
  16. package/Collisions/collisionCoordinator.js.map +1 -1
  17. package/Engines/Extensions/engine.debugging.d.ts +3 -5
  18. package/Engines/Extensions/engine.debugging.js +3 -4
  19. package/Engines/Extensions/engine.debugging.js.map +1 -1
  20. package/Engines/WebGPU/Extensions/engine.debugging.js +15 -65
  21. package/Engines/WebGPU/Extensions/engine.debugging.js.map +1 -1
  22. package/Engines/WebGPU/webgpuTextureManager.js +9 -9
  23. package/Engines/WebGPU/webgpuTextureManager.js.map +1 -1
  24. package/Engines/abstractEngine.d.ts +2 -0
  25. package/Engines/abstractEngine.js +4 -2
  26. package/Engines/abstractEngine.js.map +1 -1
  27. package/Engines/thinWebGPUEngine.d.ts +0 -2
  28. package/Engines/thinWebGPUEngine.js +0 -8
  29. package/Engines/thinWebGPUEngine.js.map +1 -1
  30. package/Engines/webgpuEngine.d.ts +1 -3
  31. package/Engines/webgpuEngine.js +4 -10
  32. package/Engines/webgpuEngine.js.map +1 -1
  33. package/FrameGraph/Passes/renderPass.js +4 -9
  34. package/FrameGraph/Passes/renderPass.js.map +1 -1
  35. package/FrameGraph/Tasks/PostProcesses/postProcessTask.js +3 -0
  36. package/FrameGraph/Tasks/PostProcesses/postProcessTask.js.map +1 -1
  37. package/FrameGraph/Tasks/Rendering/geometryRendererTask.d.ts +1 -1
  38. package/FrameGraph/Tasks/Rendering/geometryRendererTask.js +4 -1
  39. package/FrameGraph/Tasks/Rendering/geometryRendererTask.js.map +1 -1
  40. package/FrameGraph/Tasks/Rendering/objectRendererTask.d.ts +2 -1
  41. package/FrameGraph/Tasks/Rendering/objectRendererTask.js +31 -7
  42. package/FrameGraph/Tasks/Rendering/objectRendererTask.js.map +1 -1
  43. package/FrameGraph/frameGraph.js +2 -2
  44. package/FrameGraph/frameGraph.js.map +1 -1
  45. package/FrameGraph/frameGraphContext.d.ts +9 -0
  46. package/FrameGraph/frameGraphContext.js +13 -2
  47. package/FrameGraph/frameGraphContext.js.map +1 -1
  48. package/FrameGraph/frameGraphObjectList.js.map +1 -1
  49. package/FrameGraph/frameGraphRenderContext.d.ts +9 -8
  50. package/FrameGraph/frameGraphRenderContext.js +23 -20
  51. package/FrameGraph/frameGraphRenderContext.js.map +1 -1
  52. package/FrameGraph/frameGraphTask.d.ts +2 -0
  53. package/FrameGraph/frameGraphTask.js +14 -4
  54. package/FrameGraph/frameGraphTask.js.map +1 -1
  55. package/Lights/Shadows/cascadedShadowGenerator.js +4 -1
  56. package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
  57. package/Lights/Shadows/shadowGenerator.js +8 -3
  58. package/Lights/Shadows/shadowGenerator.js.map +1 -1
  59. package/Lights/areaLight.d.ts +2 -1
  60. package/Lights/areaLight.js +3 -2
  61. package/Lights/areaLight.js.map +1 -1
  62. package/Lights/directionalLight.d.ts +2 -1
  63. package/Lights/directionalLight.js +3 -2
  64. package/Lights/directionalLight.js.map +1 -1
  65. package/Lights/hemisphericLight.d.ts +2 -1
  66. package/Lights/hemisphericLight.js +3 -2
  67. package/Lights/hemisphericLight.js.map +1 -1
  68. package/Lights/light.d.ts +2 -1
  69. package/Lights/light.js +8 -3
  70. package/Lights/light.js.map +1 -1
  71. package/Lights/lightingVolume.js +11 -6
  72. package/Lights/lightingVolume.js.map +1 -1
  73. package/Lights/pointLight.d.ts +2 -1
  74. package/Lights/pointLight.js +3 -2
  75. package/Lights/pointLight.js.map +1 -1
  76. package/Lights/rectAreaLight.d.ts +2 -1
  77. package/Lights/rectAreaLight.js +3 -2
  78. package/Lights/rectAreaLight.js.map +1 -1
  79. package/Lights/spotLight.d.ts +2 -1
  80. package/Lights/spotLight.js +3 -2
  81. package/Lights/spotLight.js.map +1 -1
  82. package/Materials/Node/Blocks/Input/inputBlock.js +3 -0
  83. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  84. package/Materials/Node/nodeMaterial.d.ts +1 -0
  85. package/Materials/Node/nodeMaterial.js +4 -0
  86. package/Materials/Node/nodeMaterial.js.map +1 -1
  87. package/Materials/Node/nodeMaterialBuildStateSharedData.d.ts +6 -0
  88. package/Materials/Node/nodeMaterialBuildStateSharedData.js +4 -0
  89. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  90. package/Materials/Textures/Loaders/iesTextureLoader.js +1 -1
  91. package/Materials/Textures/Loaders/iesTextureLoader.js.map +1 -1
  92. package/Materials/Textures/Procedurals/proceduralTexture.js +7 -2
  93. package/Materials/Textures/Procedurals/proceduralTexture.js.map +1 -1
  94. package/Materials/Textures/dynamicTexture.d.ts +2 -2
  95. package/Materials/Textures/dynamicTexture.js +1 -1
  96. package/Materials/Textures/dynamicTexture.js.map +1 -1
  97. package/Materials/Textures/internalTexture.d.ts +6 -4
  98. package/Materials/Textures/internalTexture.js +6 -4
  99. package/Materials/Textures/internalTexture.js.map +1 -1
  100. package/Materials/Textures/renderTargetTexture.js +2 -2
  101. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  102. package/Materials/Textures/textureSampler.d.ts +3 -3
  103. package/Materials/Textures/textureSampler.js.map +1 -1
  104. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +4 -0
  105. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
  106. package/Misc/minMaxReducer.js +2 -2
  107. package/Misc/minMaxReducer.js.map +1 -1
  108. package/Misc/screenshotTools.d.ts +3 -1
  109. package/Misc/screenshotTools.js +5 -2
  110. package/Misc/screenshotTools.js.map +1 -1
  111. package/Particles/Node/Blocks/Emitters/setupSpriteSheetBlock.js +3 -0
  112. package/Particles/Node/Blocks/Emitters/setupSpriteSheetBlock.js.map +1 -1
  113. package/Particles/Node/Blocks/index.d.ts +1 -0
  114. package/Particles/Node/Blocks/index.js +1 -0
  115. package/Particles/Node/Blocks/index.js.map +1 -1
  116. package/Particles/Node/Blocks/particleModuloBlock.d.ts +37 -0
  117. package/Particles/Node/Blocks/particleModuloBlock.js +98 -0
  118. package/Particles/Node/Blocks/particleModuloBlock.js.map +1 -0
  119. package/Particles/Node/Blocks/particleSourceTextureBlock.d.ts +22 -1
  120. package/Particles/Node/Blocks/particleSourceTextureBlock.js +83 -9
  121. package/Particles/Node/Blocks/particleSourceTextureBlock.js.map +1 -1
  122. package/Particles/Node/nodeParticleSystemSet.helper.js +94 -66
  123. package/Particles/Node/nodeParticleSystemSet.helper.js.map +1 -1
  124. package/PostProcesses/RenderPipeline/Pipelines/taaMaterialManager.js +4 -1
  125. package/PostProcesses/RenderPipeline/Pipelines/taaMaterialManager.js.map +1 -1
  126. package/Probes/reflectionProbe.js +9 -2
  127. package/Probes/reflectionProbe.js.map +1 -1
  128. package/Rendering/depthRenderer.js +7 -2
  129. package/Rendering/depthRenderer.js.map +1 -1
  130. package/Shaders/particles.vertex.js +8 -1
  131. package/Shaders/particles.vertex.js.map +1 -1
  132. package/ShadersWGSL/particles.vertex.js +6 -0
  133. package/ShadersWGSL/particles.vertex.js.map +1 -1
  134. package/package.json +1 -1
  135. package/scene.d.ts +10 -0
  136. package/scene.js +30 -5
  137. package/scene.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"textureSampler.js","sourceRoot":"","sources":["../../../../../dev/core/src/Materials/Textures/textureSampler.ts"],"names":[],"mappings":"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","sourcesContent":["import { Constants } from \"../../Engines/constants\";\r\nimport type { Nullable } from \"../../types\";\r\n\r\n/**\r\n * Class used to store a texture sampler data\r\n */\r\nexport class TextureSampler {\r\n /**\r\n * Gets the sampling mode of the texture\r\n */\r\n public samplingMode: number = -1;\r\n\r\n /**\r\n * | Value | Type | Description |\r\n * | ----- | ------------------ | ----------- |\r\n * | 0 | CLAMP_ADDRESSMODE | |\r\n * | 1 | WRAP_ADDRESSMODE | |\r\n * | 2 | MIRROR_ADDRESSMODE | |\r\n */\r\n public get wrapU() {\r\n return this._cachedWrapU;\r\n }\r\n\r\n public set wrapU(value: Nullable<number>) {\r\n this._cachedWrapU = value;\r\n }\r\n\r\n /**\r\n * | Value | Type | Description |\r\n * | ----- | ------------------ | ----------- |\r\n * | 0 | CLAMP_ADDRESSMODE | |\r\n * | 1 | WRAP_ADDRESSMODE | |\r\n * | 2 | MIRROR_ADDRESSMODE | |\r\n */\r\n public get wrapV() {\r\n return this._cachedWrapV;\r\n }\r\n\r\n public set wrapV(value: Nullable<number>) {\r\n this._cachedWrapV = value;\r\n }\r\n\r\n /**\r\n * | Value | Type | Description |\r\n * | ----- | ------------------ | ----------- |\r\n * | 0 | CLAMP_ADDRESSMODE | |\r\n * | 1 | WRAP_ADDRESSMODE | |\r\n * | 2 | MIRROR_ADDRESSMODE | |\r\n */\r\n public get wrapR() {\r\n return this._cachedWrapR;\r\n }\r\n\r\n public set wrapR(value: Nullable<number>) {\r\n this._cachedWrapR = value;\r\n }\r\n\r\n /**\r\n * With compliant hardware and browser (supporting anisotropic filtering)\r\n * this defines the level of anisotropic filtering in the texture.\r\n * The higher the better but the slower.\r\n */\r\n public get anisotropicFilteringLevel() {\r\n return this._cachedAnisotropicFilteringLevel;\r\n }\r\n\r\n public set anisotropicFilteringLevel(value: Nullable<number>) {\r\n this._cachedAnisotropicFilteringLevel = value;\r\n }\r\n\r\n /**\r\n * Gets or sets the comparison function (Constants.LESS, Constants.EQUAL, etc). Set 0 to not use a comparison function\r\n */\r\n public get comparisonFunction() {\r\n return this._comparisonFunction;\r\n }\r\n\r\n public set comparisonFunction(value: number) {\r\n this._comparisonFunction = value;\r\n }\r\n\r\n private _useMipMaps = true;\r\n /**\r\n * Indicates to use the mip maps (if available on the texture).\r\n * Thanks to this flag, you can instruct the sampler to not sample the mipmaps even if they exist (and if the sampling mode is set to a value that normally samples the mipmaps!)\r\n */\r\n public get useMipMaps() {\r\n return this._useMipMaps;\r\n }\r\n\r\n public set useMipMaps(value: boolean) {\r\n this._useMipMaps = value;\r\n }\r\n\r\n /** @internal */\r\n public _cachedWrapU: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _cachedWrapV: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _cachedWrapR: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _cachedAnisotropicFilteringLevel: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _comparisonFunction: number = 0;\r\n\r\n /**\r\n * General label used for debugging or storing a name.\r\n */\r\n public label?: string;\r\n\r\n /**\r\n * Creates a Sampler instance\r\n */\r\n constructor() {}\r\n\r\n /**\r\n * Sets all the parameters of the sampler\r\n * @param wrapU u address mode (default: TEXTURE_WRAP_ADDRESSMODE)\r\n * @param wrapV v address mode (default: TEXTURE_WRAP_ADDRESSMODE)\r\n * @param wrapR r address mode (default: TEXTURE_WRAP_ADDRESSMODE)\r\n * @param anisotropicFilteringLevel anisotropic level (default: 1)\r\n * @param samplingMode sampling mode (default: Constants.TEXTURE_BILINEAR_SAMPLINGMODE)\r\n * @param comparisonFunction comparison function (default: 0 - no comparison function)\r\n * @returns the current sampler instance\r\n */\r\n public setParameters(\r\n wrapU = Constants.TEXTURE_WRAP_ADDRESSMODE,\r\n wrapV = Constants.TEXTURE_WRAP_ADDRESSMODE,\r\n wrapR = Constants.TEXTURE_WRAP_ADDRESSMODE,\r\n anisotropicFilteringLevel = 1,\r\n samplingMode = Constants.TEXTURE_BILINEAR_SAMPLINGMODE,\r\n comparisonFunction = 0\r\n ): TextureSampler {\r\n this._cachedWrapU = wrapU;\r\n this._cachedWrapV = wrapV;\r\n this._cachedWrapR = wrapR;\r\n this._cachedAnisotropicFilteringLevel = anisotropicFilteringLevel;\r\n this.samplingMode = samplingMode;\r\n this._comparisonFunction = comparisonFunction;\r\n\r\n return this;\r\n }\r\n\r\n /**\r\n * Compares this sampler with another one\r\n * @param other sampler to compare with\r\n * @returns true if the samplers have the same parametres, else false\r\n */\r\n public compareSampler(other: TextureSampler): boolean {\r\n return (\r\n this._cachedWrapU === other._cachedWrapU &&\r\n this._cachedWrapV === other._cachedWrapV &&\r\n this._cachedWrapR === other._cachedWrapR &&\r\n this._cachedAnisotropicFilteringLevel === other._cachedAnisotropicFilteringLevel &&\r\n this.samplingMode === other.samplingMode &&\r\n this._comparisonFunction === other._comparisonFunction &&\r\n this._useMipMaps === other._useMipMaps\r\n );\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"textureSampler.js","sourceRoot":"","sources":["../../../../../dev/core/src/Materials/Textures/textureSampler.ts"],"names":[],"mappings":"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","sourcesContent":["import { Constants } from \"../../Engines/constants\";\r\nimport type { Nullable } from \"../../types\";\r\n\r\n/**\r\n * Class used to store a texture sampler data\r\n */\r\nexport class TextureSampler {\r\n /**\r\n * Gets the sampling mode of the texture\r\n */\r\n public samplingMode: number = -1;\r\n\r\n /**\r\n * | Value | Type | Description |\r\n * | ----- | ------------------ | ----------- |\r\n * | 0 | CLAMP_ADDRESSMODE | |\r\n * | 1 | WRAP_ADDRESSMODE | |\r\n * | 2 | MIRROR_ADDRESSMODE | |\r\n */\r\n public get wrapU() {\r\n return this._cachedWrapU;\r\n }\r\n\r\n public set wrapU(value: Nullable<number>) {\r\n this._cachedWrapU = value;\r\n }\r\n\r\n /**\r\n * | Value | Type | Description |\r\n * | ----- | ------------------ | ----------- |\r\n * | 0 | CLAMP_ADDRESSMODE | |\r\n * | 1 | WRAP_ADDRESSMODE | |\r\n * | 2 | MIRROR_ADDRESSMODE | |\r\n */\r\n public get wrapV() {\r\n return this._cachedWrapV;\r\n }\r\n\r\n public set wrapV(value: Nullable<number>) {\r\n this._cachedWrapV = value;\r\n }\r\n\r\n /**\r\n * | Value | Type | Description |\r\n * | ----- | ------------------ | ----------- |\r\n * | 0 | CLAMP_ADDRESSMODE | |\r\n * | 1 | WRAP_ADDRESSMODE | |\r\n * | 2 | MIRROR_ADDRESSMODE | |\r\n */\r\n public get wrapR() {\r\n return this._cachedWrapR;\r\n }\r\n\r\n public set wrapR(value: Nullable<number>) {\r\n this._cachedWrapR = value;\r\n }\r\n\r\n /**\r\n * With compliant hardware and browser (supporting anisotropic filtering)\r\n * this defines the level of anisotropic filtering in the texture.\r\n * The higher the better but the slower.\r\n */\r\n public get anisotropicFilteringLevel() {\r\n return this._cachedAnisotropicFilteringLevel;\r\n }\r\n\r\n public set anisotropicFilteringLevel(value: Nullable<number>) {\r\n this._cachedAnisotropicFilteringLevel = value;\r\n }\r\n\r\n /**\r\n * Gets or sets the comparison function (Constants.LESS, Constants.EQUAL, etc). Set 0 to not use a comparison function\r\n */\r\n public get comparisonFunction() {\r\n return this._comparisonFunction;\r\n }\r\n\r\n public set comparisonFunction(value: number) {\r\n this._comparisonFunction = value;\r\n }\r\n\r\n protected _useMipMaps: Nullable<boolean> = true;\r\n /**\r\n * Indicates to use the mip maps (if available on the texture).\r\n * Thanks to this flag, you can instruct the sampler to not sample the mipmaps even if they exist (and if the sampling mode is set to a value that normally samples the mipmaps!)\r\n */\r\n public get useMipMaps() {\r\n return this._useMipMaps;\r\n }\r\n\r\n public set useMipMaps(value: Nullable<boolean>) {\r\n this._useMipMaps = value;\r\n }\r\n\r\n /** @internal */\r\n public _cachedWrapU: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _cachedWrapV: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _cachedWrapR: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _cachedAnisotropicFilteringLevel: Nullable<number> = null;\r\n\r\n /** @internal */\r\n public _comparisonFunction: number = 0;\r\n\r\n /**\r\n * General label used for debugging or storing a name.\r\n */\r\n public label?: string;\r\n\r\n /**\r\n * Creates a Sampler instance\r\n */\r\n constructor() {}\r\n\r\n /**\r\n * Sets all the parameters of the sampler\r\n * @param wrapU u address mode (default: TEXTURE_WRAP_ADDRESSMODE)\r\n * @param wrapV v address mode (default: TEXTURE_WRAP_ADDRESSMODE)\r\n * @param wrapR r address mode (default: TEXTURE_WRAP_ADDRESSMODE)\r\n * @param anisotropicFilteringLevel anisotropic level (default: 1)\r\n * @param samplingMode sampling mode (default: Constants.TEXTURE_BILINEAR_SAMPLINGMODE)\r\n * @param comparisonFunction comparison function (default: 0 - no comparison function)\r\n * @returns the current sampler instance\r\n */\r\n public setParameters(\r\n wrapU = Constants.TEXTURE_WRAP_ADDRESSMODE,\r\n wrapV = Constants.TEXTURE_WRAP_ADDRESSMODE,\r\n wrapR = Constants.TEXTURE_WRAP_ADDRESSMODE,\r\n anisotropicFilteringLevel = 1,\r\n samplingMode = Constants.TEXTURE_BILINEAR_SAMPLINGMODE,\r\n comparisonFunction = 0\r\n ): TextureSampler {\r\n this._cachedWrapU = wrapU;\r\n this._cachedWrapV = wrapV;\r\n this._cachedWrapR = wrapR;\r\n this._cachedAnisotropicFilteringLevel = anisotropicFilteringLevel;\r\n this.samplingMode = samplingMode;\r\n this._comparisonFunction = comparisonFunction;\r\n\r\n return this;\r\n }\r\n\r\n /**\r\n * Compares this sampler with another one\r\n * @param other sampler to compare with\r\n * @returns true if the samplers have the same parametres, else false\r\n */\r\n public compareSampler(other: TextureSampler): boolean {\r\n return (\r\n this._cachedWrapU === other._cachedWrapU &&\r\n this._cachedWrapV === other._cachedWrapV &&\r\n this._cachedWrapR === other._cachedWrapR &&\r\n this._cachedAnisotropicFilteringLevel === other._cachedAnisotropicFilteringLevel &&\r\n this.samplingMode === other.samplingMode &&\r\n this._comparisonFunction === other._comparisonFunction &&\r\n this._useMipMaps === other._useMipMaps\r\n );\r\n }\r\n}\r\n"]}
@@ -682,6 +682,7 @@ export class GaussianSplattingMesh extends Mesh {
682
682
  ElementMode[ElementMode["Vertex"] = 0] = "Vertex";
683
683
  ElementMode[ElementMode["Chunk"] = 1] = "Chunk";
684
684
  ElementMode[ElementMode["SH"] = 2] = "SH";
685
+ ElementMode[ElementMode["Unused"] = 3] = "Unused";
685
686
  })(ElementMode || (ElementMode = {}));
686
687
  let chunkMode = 1 /* ElementMode.Chunk */;
687
688
  const vertexProperties = [];
@@ -732,6 +733,9 @@ export class GaussianSplattingMesh extends Mesh {
732
733
  else if (type == "sh") {
733
734
  chunkMode = 2 /* ElementMode.SH */;
734
735
  }
736
+ else {
737
+ chunkMode = 3 /* ElementMode.Unused */;
738
+ }
735
739
  }
736
740
  }
737
741
  const dataView = new DataView(data, headerEndIndex + headerEnd.length);