@babylonjs/core 5.3.0 → 5.5.5

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 (125) hide show
  1. package/Animations/animatable.js +1 -1
  2. package/Animations/animatable.js.map +1 -1
  3. package/Behaviors/Cameras/autoRotationBehavior.d.ts +7 -0
  4. package/Behaviors/Cameras/autoRotationBehavior.js +15 -0
  5. package/Behaviors/Cameras/autoRotationBehavior.js.map +1 -1
  6. package/Cameras/camera.d.ts +2 -1
  7. package/Cameras/camera.js +4 -1
  8. package/Cameras/camera.js.map +1 -1
  9. package/Engines/Extensions/engine.renderTarget.js +4 -2
  10. package/Engines/Extensions/engine.renderTarget.js.map +1 -1
  11. package/Engines/Processors/shaderProcessor.js +1 -1
  12. package/Engines/Processors/shaderProcessor.js.map +1 -1
  13. package/Engines/WebGPU/Extensions/engine.renderTarget.js +13 -9
  14. package/Engines/WebGPU/Extensions/engine.renderTarget.js.map +1 -1
  15. package/Engines/WebGPU/webgpuBundleList.d.ts +1 -1
  16. package/Engines/WebGPU/webgpuBundleList.js.map +1 -1
  17. package/Engines/WebGPU/webgpuCacheRenderPipeline.d.ts +2 -2
  18. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +28 -17
  19. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  20. package/Engines/WebGPU/webgpuClearQuad.d.ts +1 -1
  21. package/Engines/WebGPU/webgpuClearQuad.js +3 -3
  22. package/Engines/WebGPU/webgpuClearQuad.js.map +1 -1
  23. package/Engines/WebGPU/webgpuRenderPassWrapper.d.ts +1 -1
  24. package/Engines/WebGPU/webgpuRenderPassWrapper.js.map +1 -1
  25. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +1 -1
  26. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  27. package/Engines/WebGPU/webgpuTextureHelper.d.ts +1 -0
  28. package/Engines/WebGPU/webgpuTextureHelper.js +16 -3
  29. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  30. package/Engines/constants.d.ts +4 -0
  31. package/Engines/constants.js +4 -0
  32. package/Engines/constants.js.map +1 -1
  33. package/Engines/engine.d.ts +2 -2
  34. package/Engines/thinEngine.js +2 -2
  35. package/Engines/thinEngine.js.map +1 -1
  36. package/Engines/webgpuEngine.js +48 -32
  37. package/Engines/webgpuEngine.js.map +1 -1
  38. package/Gizmos/axisDragGizmo.js +1 -0
  39. package/Gizmos/axisDragGizmo.js.map +1 -1
  40. package/Gizmos/axisScaleGizmo.js +1 -0
  41. package/Gizmos/axisScaleGizmo.js.map +1 -1
  42. package/Layers/effectLayer.js +1 -1
  43. package/Layers/effectLayer.js.map +1 -1
  44. package/Loading/Plugins/babylonFileLoader.js +1 -1
  45. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  46. package/Materials/Background/backgroundMaterial.js +1 -1
  47. package/Materials/Background/backgroundMaterial.js.map +1 -1
  48. package/Materials/Node/Blocks/Dual/TBNBlock.d.ts +47 -0
  49. package/Materials/Node/Blocks/Dual/TBNBlock.js +154 -0
  50. package/Materials/Node/Blocks/Dual/TBNBlock.js.map +1 -0
  51. package/Materials/Node/Blocks/Dual/index.d.ts +1 -0
  52. package/Materials/Node/Blocks/Dual/index.js +1 -0
  53. package/Materials/Node/Blocks/Dual/index.js.map +1 -1
  54. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.d.ts +5 -1
  55. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +20 -1
  56. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  57. package/Materials/Node/Blocks/Input/inputBlock.js +1 -1
  58. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  59. package/Materials/Node/Blocks/PBR/anisotropyBlock.d.ts +4 -0
  60. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +18 -1
  61. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  62. package/Materials/Node/Blocks/PBR/clearCoatBlock.d.ts +4 -0
  63. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +18 -1
  64. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  65. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +2 -1
  66. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
  67. package/Materials/PBR/pbrBaseSimpleMaterial.d.ts +6 -5
  68. package/Materials/PBR/pbrBaseSimpleMaterial.js.map +1 -1
  69. package/Materials/PBR/pbrMaterial.d.ts +9 -9
  70. package/Materials/PBR/pbrMaterial.js.map +1 -1
  71. package/Materials/PBR/pbrMetallicRoughnessMaterial.d.ts +3 -2
  72. package/Materials/PBR/pbrMetallicRoughnessMaterial.js.map +1 -1
  73. package/Materials/PBR/pbrSpecularGlossinessMaterial.d.ts +3 -2
  74. package/Materials/PBR/pbrSpecularGlossinessMaterial.js.map +1 -1
  75. package/Materials/Textures/cubeTexture.js +3 -0
  76. package/Materials/Textures/cubeTexture.js.map +1 -1
  77. package/Materials/Textures/renderTargetTexture.d.ts +2 -1
  78. package/Materials/Textures/renderTargetTexture.js +24 -20
  79. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  80. package/Materials/Textures/textureCreationOptions.d.ts +2 -0
  81. package/Materials/Textures/textureCreationOptions.js.map +1 -1
  82. package/Materials/materialHelper.js +4 -1
  83. package/Materials/materialHelper.js.map +1 -1
  84. package/Materials/shaderMaterial.js +1 -0
  85. package/Materials/shaderMaterial.js.map +1 -1
  86. package/Materials/standardMaterial.js +0 -3
  87. package/Materials/standardMaterial.js.map +1 -1
  88. package/Maths/math.vector.d.ts +4 -0
  89. package/Maths/math.vector.js +12 -0
  90. package/Maths/math.vector.js.map +1 -1
  91. package/Meshes/abstractMesh.d.ts +2 -2
  92. package/Meshes/abstractMesh.js.map +1 -1
  93. package/Meshes/instancedMesh.js +0 -1
  94. package/Meshes/instancedMesh.js.map +1 -1
  95. package/Meshes/subMesh.js +1 -1
  96. package/Meshes/subMesh.js.map +1 -1
  97. package/Meshes/thinInstanceMesh.js +34 -5
  98. package/Meshes/thinInstanceMesh.js.map +1 -1
  99. package/Meshes/transformNode.js +6 -6
  100. package/Meshes/transformNode.js.map +1 -1
  101. package/Misc/sceneOptimizer.d.ts +3 -2
  102. package/Misc/sceneOptimizer.js +4 -1
  103. package/Misc/sceneOptimizer.js.map +1 -1
  104. package/Physics/Plugins/oimoJSPlugin.js +1 -1
  105. package/Physics/Plugins/oimoJSPlugin.js.map +1 -1
  106. package/Rendering/renderingGroup.js +14 -4
  107. package/Rendering/renderingGroup.js.map +1 -1
  108. package/Shaders/ShadersInclude/vertexColorMixing.d.ts +5 -0
  109. package/Shaders/ShadersInclude/vertexColorMixing.js +9 -0
  110. package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -0
  111. package/Shaders/color.vertex.d.ts +1 -0
  112. package/Shaders/color.vertex.js +2 -1
  113. package/Shaders/color.vertex.js.map +1 -1
  114. package/Shaders/default.vertex.d.ts +1 -0
  115. package/Shaders/default.vertex.js +2 -1
  116. package/Shaders/default.vertex.js.map +1 -1
  117. package/Shaders/pbr.vertex.d.ts +1 -0
  118. package/Shaders/pbr.vertex.js +2 -1
  119. package/Shaders/pbr.vertex.js.map +1 -1
  120. package/XR/features/WebXRControllerPointerSelection.js +1 -0
  121. package/XR/features/WebXRControllerPointerSelection.js.map +1 -1
  122. package/package.json +1 -1
  123. package/scene.d.ts +3 -1
  124. package/scene.js +9 -5
  125. package/scene.js.map +1 -1
@@ -755,6 +755,10 @@ export declare class Vector3 {
755
755
  * @returns squared length of the Vector3
756
756
  */
757
757
  lengthSquared(): number;
758
+ /**
759
+ * Gets a boolean indicating if the vector contains a zero in one of its components
760
+ */
761
+ get hasAZeroComponent(): boolean;
758
762
  /**
759
763
  * Normalize the current Vector3.
760
764
  * Please note that this is an in place operation.
@@ -1203,6 +1203,16 @@ var Vector3 = /** @class */ (function () {
1203
1203
  Vector3.prototype.lengthSquared = function () {
1204
1204
  return this._x * this._x + this._y * this._y + this._z * this._z;
1205
1205
  };
1206
+ Object.defineProperty(Vector3.prototype, "hasAZeroComponent", {
1207
+ /**
1208
+ * Gets a boolean indicating if the vector contains a zero in one of its components
1209
+ */
1210
+ get: function () {
1211
+ return this._x * this._y * this._z === 0;
1212
+ },
1213
+ enumerable: false,
1214
+ configurable: true
1215
+ });
1206
1216
  /**
1207
1217
  * Normalize the current Vector3.
1208
1218
  * Please note that this is an in place operation.
@@ -1367,6 +1377,8 @@ var Vector3 = /** @class */ (function () {
1367
1377
  var v0 = vector0.normalizeToRef(MathTmp.Vector3[1]);
1368
1378
  var v1 = vector1.normalizeToRef(MathTmp.Vector3[2]);
1369
1379
  var dot = Vector3.Dot(v0, v1);
1380
+ // Vectors are normalized so dot will be in [-1, 1] (aside precision issues enough to break the result which explains the below clamp)
1381
+ dot = Scalar.Clamp(dot, -1, 1);
1370
1382
  var angle = Math.acos(dot);
1371
1383
  var n = MathTmp.Vector3[3];
1372
1384
  Vector3.CrossToRef(v0, v1, n);