@babylonjs/core 9.8.0 → 9.9.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.
Files changed (124) hide show
  1. package/Audio/audioSceneComponent.pure.js +17 -9
  2. package/Bones/bone.pure.js +39 -29
  3. package/Cameras/arcRotateCamera.pure.d.ts +0 -8
  4. package/Cameras/arcRotateCamera.pure.js +0 -12
  5. package/Cameras/arcRotateCamera.pure.js.map +1 -1
  6. package/Cameras/inputMapper.d.ts +29 -8
  7. package/Cameras/inputMapper.js +63 -10
  8. package/Cameras/inputMapper.js.map +1 -1
  9. package/Cameras/targetCamera.pure.js +40 -27
  10. package/Culling/Helper/transformFeedbackBoundingHelper.pure.js +17 -23
  11. package/Engines/abstractEngine.pure.js +11 -4
  12. package/Engines/abstractEngine.pure.js.map +1 -1
  13. package/Engines/engine.pure.d.ts +23 -0
  14. package/Engines/engine.pure.js +96 -1
  15. package/Engines/engine.pure.js.map +1 -1
  16. package/Engines/nativeEngine.pure.d.ts +4 -0
  17. package/Engines/nativeEngine.pure.js +6 -0
  18. package/Engines/nativeEngine.pure.js.map +1 -1
  19. package/Engines/thinEngine.pure.js +234 -280
  20. package/Engines/thinNativeEngine.pure.d.ts +21 -0
  21. package/Engines/thinNativeEngine.pure.js +119 -4
  22. package/Engines/thinNativeEngine.pure.js.map +1 -1
  23. package/Engines/webgpuEngine.pure.d.ts +21 -0
  24. package/Engines/webgpuEngine.pure.js +46 -1
  25. package/Engines/webgpuEngine.pure.js.map +1 -1
  26. package/Materials/Background/backgroundMaterial.pure.js +5 -4
  27. package/Materials/Background/backgroundMaterial.pure.js.map +1 -1
  28. package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.d.ts +5 -0
  29. package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.js +8 -0
  30. package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.js.map +1 -0
  31. package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.pure.d.ts +278 -0
  32. package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.pure.js +718 -0
  33. package/Materials/GaussianSplatting/gaussianSplattingDebugMaterialPlugin.pure.js.map +1 -0
  34. package/Materials/GaussianSplatting/pure.d.ts +1 -0
  35. package/Materials/GaussianSplatting/pure.js +1 -0
  36. package/Materials/GaussianSplatting/pure.js.map +1 -1
  37. package/Materials/Node/Blocks/Dual/imageSourceBlock.pure.js +10 -14
  38. package/Materials/Node/Blocks/Dual/index.d.ts +0 -14
  39. package/Materials/Node/Blocks/Dual/index.js +0 -18
  40. package/Materials/Node/Blocks/Dual/index.js.map +1 -1
  41. package/Materials/Node/Blocks/Dual/textureBlock.pure.js +660 -662
  42. package/Materials/Node/Blocks/Fragment/index.d.ts +0 -10
  43. package/Materials/Node/Blocks/Fragment/index.js +0 -13
  44. package/Materials/Node/Blocks/Fragment/index.js.map +1 -1
  45. package/Materials/Node/Blocks/GaussianSplatting/index.d.ts +12 -0
  46. package/Materials/Node/Blocks/GaussianSplatting/index.js +14 -1
  47. package/Materials/Node/Blocks/GaussianSplatting/index.js.map +1 -1
  48. package/Materials/Node/Blocks/Vertex/index.d.ts +0 -8
  49. package/Materials/Node/Blocks/Vertex/index.js +0 -10
  50. package/Materials/Node/Blocks/Vertex/index.js.map +1 -1
  51. package/Materials/PBR/openpbrMaterial.pure.js +6 -5
  52. package/Materials/PBR/openpbrMaterial.pure.js.map +1 -1
  53. package/Materials/PBR/pbrBaseMaterial.pure.js +6 -5
  54. package/Materials/PBR/pbrBaseMaterial.pure.js.map +1 -1
  55. package/Materials/Textures/index.d.ts +1 -0
  56. package/Materials/Textures/index.js +1 -0
  57. package/Materials/Textures/index.js.map +1 -1
  58. package/Materials/Textures/internalTexture.d.ts +11 -1
  59. package/Materials/Textures/internalTexture.js +23 -0
  60. package/Materials/Textures/internalTexture.js.map +1 -1
  61. package/Materials/Textures/texture.pure.js +157 -255
  62. package/Materials/index.d.ts +30 -0
  63. package/Materials/index.js +31 -0
  64. package/Materials/index.js.map +1 -1
  65. package/Materials/material.pure.js +128 -69
  66. package/Materials/pure.d.ts +1 -0
  67. package/Materials/pure.js +1 -0
  68. package/Materials/pure.js.map +1 -1
  69. package/Materials/standardMaterial.pure.js +6 -5
  70. package/Materials/standardMaterial.pure.js.map +1 -1
  71. package/Maths/math.color.pure.js +55 -47
  72. package/Maths/math.vector.pure.js +118 -242
  73. package/Meshes/GaussianSplatting/gaussianSplattingDebugger.d.ts +7 -0
  74. package/Meshes/GaussianSplatting/gaussianSplattingDebugger.js +8 -0
  75. package/Meshes/GaussianSplatting/gaussianSplattingDebugger.js.map +1 -0
  76. package/Meshes/GaussianSplatting/gaussianSplattingDebugger.pure.d.ts +147 -0
  77. package/Meshes/GaussianSplatting/gaussianSplattingDebugger.pure.js +257 -0
  78. package/Meshes/GaussianSplatting/gaussianSplattingDebugger.pure.js.map +1 -0
  79. package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.d.ts +11 -0
  80. package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.js +31 -0
  81. package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.js.map +1 -1
  82. package/Meshes/GaussianSplatting/pure.d.ts +1 -0
  83. package/Meshes/GaussianSplatting/pure.js +1 -0
  84. package/Meshes/GaussianSplatting/pure.js.map +1 -1
  85. package/Meshes/GreasedLine/greasedLineMesh.pure.js +9 -14
  86. package/Meshes/GreasedLine/greasedLineRibbonMesh.pure.js +26 -27
  87. package/Meshes/index.d.ts +1 -0
  88. package/Meshes/index.js +1 -0
  89. package/Meshes/index.js.map +1 -1
  90. package/Meshes/meshSimplification.common.d.ts +53 -0
  91. package/Meshes/meshSimplification.common.js +34 -0
  92. package/Meshes/meshSimplification.common.js.map +1 -0
  93. package/Meshes/meshSimplification.d.ts +3 -53
  94. package/Meshes/meshSimplification.js +1 -33
  95. package/Meshes/meshSimplification.js.map +1 -1
  96. package/Meshes/meshSimplificationSceneComponent.pure.js.map +1 -1
  97. package/Meshes/meshSimplificationSceneComponent.types.d.ts +2 -1
  98. package/Meshes/meshSimplificationSceneComponent.types.js.map +1 -1
  99. package/Meshes/pure.d.ts +1 -0
  100. package/Meshes/pure.js +1 -0
  101. package/Meshes/pure.js.map +1 -1
  102. package/Meshes/transformNode.pure.js +82 -44
  103. package/Misc/tools.pure.js +124 -186
  104. package/Misc/tools.pure.js.map +1 -1
  105. package/Physics/v1/physicsImpostor.pure.js +43 -37
  106. package/Shaders/ShadersInclude/gaussianSplatting.js +33 -10
  107. package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
  108. package/Shaders/gaussianSplatting.vertex.js +20 -1
  109. package/Shaders/gaussianSplatting.vertex.js.map +1 -1
  110. package/Shaders/picking.fragment.js +4 -1
  111. package/Shaders/picking.fragment.js.map +1 -1
  112. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +33 -10
  113. package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
  114. package/ShadersWGSL/gaussianSplatting.vertex.js +21 -2
  115. package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
  116. package/SmartAssets/index.d.ts +2 -2
  117. package/SmartAssets/index.js +2 -1
  118. package/SmartAssets/index.js.map +1 -1
  119. package/SmartAssets/pure.d.ts +1 -1
  120. package/SmartAssets/pure.js +2 -1
  121. package/SmartAssets/pure.js.map +1 -1
  122. package/SmartAssets/smartAssetManager.js +9 -0
  123. package/SmartAssets/smartAssetManager.js.map +1 -1
  124. package/package.json +3 -1
@@ -1567,6 +1567,7 @@ export class PBRBaseMaterial extends PBRBaseMaterialBase {
1567
1567
  this.bindOnlyNormalMatrix(this._normalMatrix);
1568
1568
  }
1569
1569
  const mustRebind = this._mustRebind(scene, effect, subMesh, mesh.visibility);
1570
+ const needToAlwaysBindUniformBuffers = engine._features.needToAlwaysBindUniformBuffers;
1570
1571
  // Bones
1571
1572
  BindBonesParameters(mesh, this._activeEffect, this.prePassConfiguration);
1572
1573
  // Vertex pulling
@@ -1743,14 +1744,14 @@ export class PBRBaseMaterial extends PBRBaseMaterialBase {
1743
1744
  BindClipPlane(this._activeEffect, this, scene);
1744
1745
  this.bindEyePosition(effect);
1745
1746
  }
1746
- else if (scene.getEngine()._features.needToAlwaysBindUniformBuffers) {
1747
+ else if (needToAlwaysBindUniformBuffers) {
1747
1748
  this._needToBindSceneUbo = true;
1748
1749
  }
1750
+ // Lights
1751
+ if ((mustRebind || !this.isFrozen || needToAlwaysBindUniformBuffers) && scene.lightsEnabled && !this._disableLighting) {
1752
+ BindLights(scene, mesh, this._activeEffect, defines, this._maxSimultaneousLights);
1753
+ }
1749
1754
  if (mustRebind || !this.isFrozen) {
1750
- // Lights
1751
- if (scene.lightsEnabled && !this._disableLighting) {
1752
- BindLights(scene, mesh, this._activeEffect, defines, this._maxSimultaneousLights);
1753
- }
1754
1755
  // View
1755
1756
  if ((scene.fogEnabled && mesh.applyFog && scene.fogMode !== Scene.FOGMODE_NONE) ||
1756
1757
  reflectionTexture ||