@babylonjs/core 7.16.0 → 7.17.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 (213) hide show
  1. package/Animations/animationGroup.d.ts +1 -0
  2. package/Animations/animationGroup.js +4 -1
  3. package/Animations/animationGroup.js.map +1 -1
  4. package/Collisions/gpuPicker.js +1 -1
  5. package/Collisions/gpuPicker.js.map +1 -1
  6. package/Compute/computeEffect.js +1 -1
  7. package/Compute/computeEffect.js.map +1 -1
  8. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.d.ts +32 -0
  9. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +32 -0
  10. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  11. package/Engines/abstractEngine.js +2 -2
  12. package/Engines/abstractEngine.js.map +1 -1
  13. package/Engines/engine.d.ts +1993 -1993
  14. package/Engines/nativeEngine.d.ts +7 -0
  15. package/Engines/nativeEngine.js +24 -1
  16. package/Engines/nativeEngine.js.map +1 -1
  17. package/Engines/thinEngine.js +2 -2
  18. package/Engines/thinEngine.js.map +1 -1
  19. package/Engines/webgpuEngine.js +5 -3
  20. package/Engines/webgpuEngine.js.map +1 -1
  21. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js +6 -6
  22. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js.map +1 -1
  23. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +4 -7
  24. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  25. package/Materials/Node/Blocks/Dual/textureBlock.js +1 -1
  26. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  27. package/Materials/Node/Blocks/Input/inputBlock.js +8 -11
  28. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  29. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +4 -4
  30. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  31. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +46 -40
  32. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  33. package/Materials/Node/Blocks/PBR/iridescenceBlock.d.ts +2 -1
  34. package/Materials/Node/Blocks/PBR/iridescenceBlock.js +10 -9
  35. package/Materials/Node/Blocks/PBR/iridescenceBlock.js.map +1 -1
  36. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.d.ts +1 -0
  37. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +85 -69
  38. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  39. package/Materials/Node/Blocks/PBR/reflectionBlock.js +54 -38
  40. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  41. package/Materials/Node/Blocks/PBR/refractionBlock.js +8 -5
  42. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  43. package/Materials/Node/Blocks/PBR/sheenBlock.d.ts +2 -1
  44. package/Materials/Node/Blocks/PBR/sheenBlock.js +40 -32
  45. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  46. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +53 -45
  47. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  48. package/Materials/Node/nodeMaterial.d.ts +2 -1
  49. package/Materials/Node/nodeMaterial.js +4 -1
  50. package/Materials/Node/nodeMaterial.js.map +1 -1
  51. package/Materials/Node/nodeMaterialBuildState.d.ts +1 -0
  52. package/Materials/Node/nodeMaterialBuildState.js +12 -3
  53. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  54. package/Materials/effect.js +2 -2
  55. package/Materials/effect.js.map +1 -1
  56. package/Meshes/Builders/decalBuilder.js +14 -20
  57. package/Meshes/Builders/decalBuilder.js.map +1 -1
  58. package/Meshes/GaussianSplatting/gaussianSplattingMesh.d.ts +10 -1
  59. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +50 -11
  60. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
  61. package/Meshes/Node/nodeGeometry.d.ts +6 -0
  62. package/Meshes/Node/nodeGeometry.js +7 -0
  63. package/Meshes/Node/nodeGeometry.js.map +1 -1
  64. package/Meshes/mesh.d.ts +1 -0
  65. package/Meshes/mesh.js +138 -134
  66. package/Meshes/mesh.js.map +1 -1
  67. package/Meshes/subMesh.js +1 -1
  68. package/Meshes/subMesh.js.map +1 -1
  69. package/Misc/khronosTextureContainer2.js +1 -1
  70. package/Misc/khronosTextureContainer2.js.map +1 -1
  71. package/Rendering/GlobalIllumination/giRSMManager.js +1 -1
  72. package/Rendering/GlobalIllumination/giRSMManager.js.map +1 -1
  73. package/Rendering/edgesRenderer.js +1 -1
  74. package/Rendering/edgesRenderer.js.map +1 -1
  75. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js +1 -1
  76. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js.map +1 -1
  77. package/Shaders/ShadersInclude/lightFragment.js +3 -3
  78. package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
  79. package/Shaders/ShadersInclude/lightsFragmentFunctions.js +1 -1
  80. package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  81. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +13 -14
  82. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  83. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +4 -5
  84. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  85. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +4 -5
  86. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  87. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +4 -5
  88. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  89. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +34 -35
  90. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  91. package/Shaders/ShadersInclude/pbrBlockIridescence.js +10 -11
  92. package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  93. package/Shaders/ShadersInclude/pbrBlockReflection.js +23 -24
  94. package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
  95. package/Shaders/ShadersInclude/pbrBlockReflectivity.js +12 -13
  96. package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  97. package/Shaders/ShadersInclude/pbrBlockSheen.js +31 -32
  98. package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
  99. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +43 -44
  100. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  101. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +1 -1
  102. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  103. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +1 -1
  104. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  105. package/Shaders/pbr.fragment.js +143 -153
  106. package/Shaders/pbr.fragment.js.map +1 -1
  107. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js +3 -3
  108. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  109. package/ShadersWGSL/ShadersInclude/decalFragment.d.ts +5 -0
  110. package/ShadersWGSL/ShadersInclude/decalFragment.js +18 -0
  111. package/ShadersWGSL/ShadersInclude/decalFragment.js.map +1 -0
  112. package/ShadersWGSL/ShadersInclude/depthPrePass.d.ts +5 -0
  113. package/ShadersWGSL/ShadersInclude/depthPrePass.js +12 -0
  114. package/ShadersWGSL/ShadersInclude/depthPrePass.js.map +1 -0
  115. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.d.ts +5 -0
  116. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js +24 -0
  117. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js.map +1 -0
  118. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.d.ts +5 -0
  119. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js +39 -0
  120. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js.map +1 -0
  121. package/ShadersWGSL/ShadersInclude/helperFunctions.js +6 -2
  122. package/ShadersWGSL/ShadersInclude/helperFunctions.js.map +1 -1
  123. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js +2 -2
  124. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  125. package/ShadersWGSL/ShadersInclude/importanceSampling.d.ts +5 -0
  126. package/ShadersWGSL/ShadersInclude/importanceSampling.js +12 -0
  127. package/ShadersWGSL/ShadersInclude/importanceSampling.js.map +1 -0
  128. package/ShadersWGSL/ShadersInclude/lightFragment.js +3 -3
  129. package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
  130. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +1 -1
  131. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  132. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.d.ts +5 -0
  133. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js +139 -0
  134. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js.map +1 -0
  135. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.d.ts +6 -0
  136. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js +81 -0
  137. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -0
  138. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.d.ts +5 -0
  139. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js +37 -0
  140. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -0
  141. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.d.ts +5 -0
  142. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js +35 -0
  143. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -0
  144. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.d.ts +5 -0
  145. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js +46 -0
  146. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js.map +1 -0
  147. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.d.ts +5 -0
  148. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js +267 -0
  149. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js.map +1 -0
  150. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.d.ts +5 -0
  151. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js +24 -0
  152. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js.map +1 -0
  153. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.d.ts +5 -0
  154. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js +51 -0
  155. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -0
  156. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.d.ts +5 -0
  157. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js +96 -0
  158. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -0
  159. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.d.ts +5 -0
  160. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +26 -0
  161. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -0
  162. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.d.ts +5 -0
  163. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js +33 -0
  164. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -0
  165. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.d.ts +5 -0
  166. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js +20 -0
  167. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js.map +1 -0
  168. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.d.ts +5 -0
  169. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js +51 -0
  170. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js.map +1 -0
  171. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.d.ts +5 -0
  172. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js +19 -0
  173. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js.map +1 -0
  174. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.d.ts +5 -0
  175. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js +19 -0
  176. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js.map +1 -0
  177. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.d.ts +5 -0
  178. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js +30 -0
  179. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js.map +1 -0
  180. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.d.ts +5 -0
  181. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js +18 -0
  182. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js.map +1 -0
  183. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.d.ts +5 -0
  184. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js +277 -0
  185. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js.map +1 -0
  186. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.d.ts +5 -0
  187. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js +120 -0
  188. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js.map +1 -0
  189. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.d.ts +5 -0
  190. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js +195 -0
  191. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js.map +1 -0
  192. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.d.ts +5 -0
  193. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js +425 -0
  194. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js.map +1 -0
  195. package/ShadersWGSL/ShadersInclude/pbrDebug.d.ts +5 -0
  196. package/ShadersWGSL/ShadersInclude/pbrDebug.js +193 -0
  197. package/ShadersWGSL/ShadersInclude/pbrDebug.js.map +1 -0
  198. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.d.ts +5 -0
  199. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js +43 -0
  200. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -0
  201. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.d.ts +5 -0
  202. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +68 -0
  203. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -0
  204. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.d.ts +5 -0
  205. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js +30 -0
  206. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -0
  207. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.d.ts +5 -0
  208. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js +41 -0
  209. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js.map +1 -0
  210. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.d.ts +5 -0
  211. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js +23 -0
  212. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js.map +1 -0
  213. package/package.json +1 -1
@@ -330,7 +330,7 @@ export class WebGPUEngine extends AbstractEngine {
330
330
  this._forceEnableEffect = false;
331
331
  // TODO WEBGPU remove those variables when code stabilized
332
332
  /** @internal */
333
- this.dbgShowShaderCode = false;
333
+ this.dbgShowShaderCode = true;
334
334
  /** @internal */
335
335
  this.dbgSanityChecks = true;
336
336
  /** @internal */
@@ -1514,12 +1514,14 @@ export class WebGPUEngine extends AbstractEngine {
1514
1514
  return {
1515
1515
  vertexStage: {
1516
1516
  module: this._device.createShaderModule({
1517
+ label: "vertex",
1517
1518
  code: vertexShader,
1518
1519
  }),
1519
1520
  entryPoint: "main",
1520
1521
  },
1521
1522
  fragmentStage: {
1522
1523
  module: this._device.createShaderModule({
1524
+ label: "fragment",
1523
1525
  code: fragmentShader,
1524
1526
  }),
1525
1527
  entryPoint: "main",
@@ -1842,7 +1844,7 @@ export class WebGPUEngine extends AbstractEngine {
1842
1844
  texture.baseHeight = imageBitmap.height;
1843
1845
  texture.width = imageBitmap.width;
1844
1846
  texture.height = imageBitmap.height;
1845
- texture.format = texture.format !== -1 ? texture.format : format ?? 5;
1847
+ texture.format = texture.format !== -1 ? texture.format : (format ?? 5);
1846
1848
  texture.type = texture.type !== -1 ? texture.type : 0;
1847
1849
  texture._creationFlags = creationFlags ?? 0;
1848
1850
  processFunction(texture.width, texture.height, imageBitmap, extension, texture, () => { });
@@ -2798,7 +2800,7 @@ export class WebGPUEngine extends AbstractEngine {
2798
2800
  this._depthCullingState.cull = culling;
2799
2801
  }
2800
2802
  // Cull face
2801
- const cullFace = this.cullBackFaces ?? cullBackFaces ?? true ? 1 : 2;
2803
+ const cullFace = (this.cullBackFaces ?? cullBackFaces ?? true) ? 1 : 2;
2802
2804
  if (this._depthCullingState.cullFace !== cullFace || force) {
2803
2805
  this._depthCullingState.cullFace = cullFace;
2804
2806
  }