@babylonjs/core 5.49.0 → 5.49.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 (125) hide show
  1. package/Engines/WebGPU/webgpuTextureHelper.js +2 -2
  2. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  3. package/Engines/WebGPU/webgpuTintWASM.js +1 -1
  4. package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
  5. package/Engines/engine.d.ts +53 -0
  6. package/Engines/thinEngine.js +2 -2
  7. package/Engines/thinEngine.js.map +1 -1
  8. package/Materials/PBR/pbrBaseMaterial.js +1 -0
  9. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  10. package/Materials/PBR/pbrMaterial.decalMap.d.ts +12 -0
  11. package/Materials/PBR/pbrMaterial.decalMap.js +18 -0
  12. package/Materials/PBR/pbrMaterial.decalMap.js.map +1 -0
  13. package/Materials/Textures/renderTargetTexture.js +2 -4
  14. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  15. package/Materials/index.d.ts +2 -0
  16. package/Materials/index.js +2 -0
  17. package/Materials/index.js.map +1 -1
  18. package/Materials/material.decalMap.d.ts +3 -0
  19. package/Materials/material.decalMap.js +4 -0
  20. package/Materials/material.decalMap.js.map +1 -0
  21. package/Materials/material.decalMapConfiguration.d.ts +63 -0
  22. package/Materials/material.decalMapConfiguration.js +119 -0
  23. package/Materials/material.decalMapConfiguration.js.map +1 -0
  24. package/Materials/materialFlags.d.ts +6 -0
  25. package/Materials/materialFlags.js +14 -0
  26. package/Materials/materialFlags.js.map +1 -1
  27. package/Materials/standardMaterial.decalMap.d.ts +12 -0
  28. package/Materials/standardMaterial.decalMap.js +18 -0
  29. package/Materials/standardMaterial.decalMap.js.map +1 -0
  30. package/Materials/standardMaterial.js +1 -0
  31. package/Materials/standardMaterial.js.map +1 -1
  32. package/Maths/math.vector.d.ts +10 -0
  33. package/Maths/math.vector.js +14 -0
  34. package/Maths/math.vector.js.map +1 -1
  35. package/Meshes/abstractMesh.decalMap.d.ts +12 -0
  36. package/Meshes/abstractMesh.decalMap.js +12 -0
  37. package/Meshes/abstractMesh.decalMap.js.map +1 -0
  38. package/Meshes/index.d.ts +2 -0
  39. package/Meshes/index.js +2 -0
  40. package/Meshes/index.js.map +1 -1
  41. package/Meshes/meshUVSpaceRenderer.d.ts +94 -0
  42. package/Meshes/meshUVSpaceRenderer.js +141 -0
  43. package/Meshes/meshUVSpaceRenderer.js.map +1 -0
  44. package/Particles/gpuParticleSystem.js +1 -1
  45. package/Particles/gpuParticleSystem.js.map +1 -1
  46. package/Physics/v2/physicsAggregate.d.ts +4 -0
  47. package/Physics/v2/physicsAggregate.js +4 -4
  48. package/Physics/v2/physicsAggregate.js.map +1 -1
  49. package/Physics/v2/physicsBody.d.ts +18 -2
  50. package/Physics/v2/physicsBody.js +66 -1
  51. package/Physics/v2/physicsBody.js.map +1 -1
  52. package/Rendering/fluidRenderer/fluidRenderer.js +2 -1
  53. package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
  54. package/Rendering/renderingManager.js +4 -2
  55. package/Rendering/renderingManager.js.map +1 -1
  56. package/Shaders/ShadersInclude/decalFragment.d.ts +5 -0
  57. package/Shaders/ShadersInclude/decalFragment.js +15 -0
  58. package/Shaders/ShadersInclude/decalFragment.js.map +1 -0
  59. package/Shaders/ShadersInclude/decalFragmentDeclaration.d.ts +5 -0
  60. package/Shaders/ShadersInclude/decalFragmentDeclaration.js +11 -0
  61. package/Shaders/ShadersInclude/decalFragmentDeclaration.js.map +1 -0
  62. package/Shaders/ShadersInclude/decalVertexDeclaration.d.ts +5 -0
  63. package/Shaders/ShadersInclude/decalVertexDeclaration.js +11 -0
  64. package/Shaders/ShadersInclude/decalVertexDeclaration.js.map +1 -0
  65. package/Shaders/ShadersInclude/defaultFragmentDeclaration.d.ts +1 -0
  66. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +2 -0
  67. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
  68. package/Shaders/ShadersInclude/defaultVertexDeclaration.d.ts +1 -0
  69. package/Shaders/ShadersInclude/defaultVertexDeclaration.js +2 -0
  70. package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
  71. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.d.ts +1 -0
  72. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +4 -0
  73. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  74. package/Shaders/ShadersInclude/pbrFragmentDeclaration.d.ts +1 -0
  75. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +2 -0
  76. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
  77. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +1 -0
  78. package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
  79. package/Shaders/ShadersInclude/pbrVertexDeclaration.d.ts +1 -0
  80. package/Shaders/ShadersInclude/pbrVertexDeclaration.js +2 -0
  81. package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
  82. package/Shaders/default.fragment.d.ts +1 -0
  83. package/Shaders/default.fragment.js +5 -0
  84. package/Shaders/default.fragment.js.map +1 -1
  85. package/Shaders/default.vertex.js +2 -0
  86. package/Shaders/default.vertex.js.map +1 -1
  87. package/Shaders/geometry.fragment.js +1 -1
  88. package/Shaders/geometry.fragment.js.map +1 -1
  89. package/Shaders/meshUVSpaceRenderer.fragment.d.ts +5 -0
  90. package/Shaders/meshUVSpaceRenderer.fragment.js +9 -0
  91. package/Shaders/meshUVSpaceRenderer.fragment.js.map +1 -0
  92. package/Shaders/meshUVSpaceRenderer.vertex.d.ts +15 -0
  93. package/Shaders/meshUVSpaceRenderer.vertex.js +34 -0
  94. package/Shaders/meshUVSpaceRenderer.vertex.js.map +1 -0
  95. package/Shaders/pbr.fragment.js +4 -0
  96. package/Shaders/pbr.fragment.js.map +1 -1
  97. package/Shaders/pbr.vertex.js +2 -0
  98. package/Shaders/pbr.vertex.js.map +1 -1
  99. package/Shaders/screenSpaceReflection2.fragment.js +1 -1
  100. package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
  101. package/ShadersWGSL/gpuUpdateParticles.compute.js +1 -1
  102. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  103. package/Sprites/spriteManager.js +5 -3
  104. package/Sprites/spriteManager.js.map +1 -1
  105. package/Sprites/spriteSceneComponent.d.ts +1 -1
  106. package/Sprites/spriteSceneComponent.js +7 -4
  107. package/Sprites/spriteSceneComponent.js.map +1 -1
  108. package/XR/features/WebXRDepthSensing.d.ts +118 -0
  109. package/XR/features/WebXRDepthSensing.js +268 -0
  110. package/XR/features/WebXRDepthSensing.js.map +1 -0
  111. package/XR/features/index.d.ts +1 -0
  112. package/XR/features/index.js +1 -0
  113. package/XR/features/index.js.map +1 -1
  114. package/XR/native/nativeXRFrame.d.ts +1 -0
  115. package/XR/native/nativeXRFrame.js +4 -0
  116. package/XR/native/nativeXRFrame.js.map +1 -1
  117. package/XR/webXRCamera.d.ts +1 -0
  118. package/XR/webXRCamera.js +4 -0
  119. package/XR/webXRCamera.js.map +1 -1
  120. package/XR/webXRFeaturesManager.d.ts +4 -0
  121. package/XR/webXRFeaturesManager.js +4 -0
  122. package/XR/webXRFeaturesManager.js.map +1 -1
  123. package/assetContainer.js +13 -5
  124. package/assetContainer.js.map +1 -1
  125. package/package.json +1 -1
@@ -35,7 +35,7 @@ export class WebGPUTintWASM {
35
35
  console.log(ccode);
36
36
  console.log("***********************************************");
37
37
  }
38
- return ccode;
38
+ return "diagnostic(off, derivative_uniformity);\n" + ccode;
39
39
  }
40
40
  }
41
41
  // Default twgsl options.
@@ -1 +1 @@
1
- {"version":3,"file":"webgpuTintWASM.js","sourceRoot":"","sources":["../../../../../lts/core/generated/Engines/WebGPU/webgpuTintWASM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAsBzC,gBAAgB;AAChB,MAAM,OAAO,cAAc;IAA3B;QASY,WAAM,GAAQ,IAAI,CAAC;IAsC/B,CAAC;IApCU,KAAK,CAAC,SAAS,CAAC,YAA2B;QAC9C,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG;YACX,GAAG,cAAc,CAAC,oBAAoB;YACtC,GAAG,YAAY;SAClB,CAAC;QAEF,IAAI,YAAY,CAAC,KAAK,EAAE;YACpB,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;YACjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;SAC5B;QAED,IAAI,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE;YAC9C,IAAI,mBAAmB,EAAE,EAAE;gBACvB,MAAM,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;aACpD;iBAAM;gBACH,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;aACtC;SACJ;QAED,IAAK,IAAY,CAAC,KAAK,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,MAAO,IAAY,CAAC,KAAK,CAAC,YAAa,CAAC,QAAQ,CAAC,CAAC;YAChE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;SAC5B;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAEM,iBAAiB,CAAC,IAAiB;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,cAAc,CAAC,kBAAkB,EAAE;YACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;SAClE;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;;AA7CD,yBAAyB;AACD,mCAAoB,GAAiB;IACzD,MAAM,EAAE,8CAA8C;IACtD,QAAQ,EAAE,gDAAgD;CAC7D,CAAC;AAEY,iCAAkB,GAAG,KAAK,CAAC","sourcesContent":["import { IsWindowObjectExist } from \"../../Misc/domManagement\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n\r\ndeclare function importScripts(...urls: string[]): void;\r\n\r\n/**\r\n * Options to load the associated Twgsl library\r\n */\r\nexport interface TwgslOptions {\r\n /**\r\n * Defines an existing instance of Twgsl (useful in modules who do not access the global instance).\r\n */\r\n twgsl?: any;\r\n /**\r\n * Defines the URL of the twgsl JS File.\r\n */\r\n jsPath?: string;\r\n /**\r\n * Defines the URL of the twgsl WASM File.\r\n */\r\n wasmPath?: string;\r\n}\r\n\r\n/** @internal */\r\nexport class WebGPUTintWASM {\r\n // Default twgsl options.\r\n private static readonly _TWgslDefaultOptions: TwgslOptions = {\r\n jsPath: \"https://preview.babylonjs.com/twgsl/twgsl.js\",\r\n wasmPath: \"https://preview.babylonjs.com/twgsl/twgsl.wasm\",\r\n };\r\n\r\n public static ShowWGSLShaderCode = false;\r\n\r\n private _twgsl: any = null;\r\n\r\n public async initTwgsl(twgslOptions?: TwgslOptions): Promise<void> {\r\n twgslOptions = twgslOptions || {};\r\n twgslOptions = {\r\n ...WebGPUTintWASM._TWgslDefaultOptions,\r\n ...twgslOptions,\r\n };\r\n\r\n if (twgslOptions.twgsl) {\r\n this._twgsl = twgslOptions.twgsl;\r\n return Promise.resolve();\r\n }\r\n\r\n if (twgslOptions.jsPath && twgslOptions.wasmPath) {\r\n if (IsWindowObjectExist()) {\r\n await Tools.LoadScriptAsync(twgslOptions.jsPath);\r\n } else {\r\n importScripts(twgslOptions.jsPath);\r\n }\r\n }\r\n\r\n if ((self as any).twgsl) {\r\n this._twgsl = await (self as any).twgsl(twgslOptions!.wasmPath);\r\n return Promise.resolve();\r\n }\r\n\r\n return Promise.reject(\"twgsl is not available.\");\r\n }\r\n\r\n public convertSpirV2WGSL(code: Uint32Array): string {\r\n const ccode = this._twgsl.convertSpirV2WGSL(code);\r\n if (WebGPUTintWASM.ShowWGSLShaderCode) {\r\n console.log(ccode);\r\n console.log(\"***********************************************\");\r\n }\r\n return ccode;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"webgpuTintWASM.js","sourceRoot":"","sources":["../../../../../lts/core/generated/Engines/WebGPU/webgpuTintWASM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAsBzC,gBAAgB;AAChB,MAAM,OAAO,cAAc;IAA3B;QASY,WAAM,GAAQ,IAAI,CAAC;IAsC/B,CAAC;IApCU,KAAK,CAAC,SAAS,CAAC,YAA2B;QAC9C,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG;YACX,GAAG,cAAc,CAAC,oBAAoB;YACtC,GAAG,YAAY;SAClB,CAAC;QAEF,IAAI,YAAY,CAAC,KAAK,EAAE;YACpB,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;YACjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;SAC5B;QAED,IAAI,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE;YAC9C,IAAI,mBAAmB,EAAE,EAAE;gBACvB,MAAM,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;aACpD;iBAAM;gBACH,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;aACtC;SACJ;QAED,IAAK,IAAY,CAAC,KAAK,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,MAAO,IAAY,CAAC,KAAK,CAAC,YAAa,CAAC,QAAQ,CAAC,CAAC;YAChE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;SAC5B;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAEM,iBAAiB,CAAC,IAAiB;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,cAAc,CAAC,kBAAkB,EAAE;YACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;SAClE;QACD,OAAO,2CAA2C,GAAG,KAAK,CAAC;IAC/D,CAAC;;AA7CD,yBAAyB;AACD,mCAAoB,GAAiB;IACzD,MAAM,EAAE,8CAA8C;IACtD,QAAQ,EAAE,gDAAgD;CAC7D,CAAC;AAEY,iCAAkB,GAAG,KAAK,CAAC","sourcesContent":["import { IsWindowObjectExist } from \"../../Misc/domManagement\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n\r\ndeclare function importScripts(...urls: string[]): void;\r\n\r\n/**\r\n * Options to load the associated Twgsl library\r\n */\r\nexport interface TwgslOptions {\r\n /**\r\n * Defines an existing instance of Twgsl (useful in modules who do not access the global instance).\r\n */\r\n twgsl?: any;\r\n /**\r\n * Defines the URL of the twgsl JS File.\r\n */\r\n jsPath?: string;\r\n /**\r\n * Defines the URL of the twgsl WASM File.\r\n */\r\n wasmPath?: string;\r\n}\r\n\r\n/** @internal */\r\nexport class WebGPUTintWASM {\r\n // Default twgsl options.\r\n private static readonly _TWgslDefaultOptions: TwgslOptions = {\r\n jsPath: \"https://preview.babylonjs.com/twgsl/twgsl.js\",\r\n wasmPath: \"https://preview.babylonjs.com/twgsl/twgsl.wasm\",\r\n };\r\n\r\n public static ShowWGSLShaderCode = false;\r\n\r\n private _twgsl: any = null;\r\n\r\n public async initTwgsl(twgslOptions?: TwgslOptions): Promise<void> {\r\n twgslOptions = twgslOptions || {};\r\n twgslOptions = {\r\n ...WebGPUTintWASM._TWgslDefaultOptions,\r\n ...twgslOptions,\r\n };\r\n\r\n if (twgslOptions.twgsl) {\r\n this._twgsl = twgslOptions.twgsl;\r\n return Promise.resolve();\r\n }\r\n\r\n if (twgslOptions.jsPath && twgslOptions.wasmPath) {\r\n if (IsWindowObjectExist()) {\r\n await Tools.LoadScriptAsync(twgslOptions.jsPath);\r\n } else {\r\n importScripts(twgslOptions.jsPath);\r\n }\r\n }\r\n\r\n if ((self as any).twgsl) {\r\n this._twgsl = await (self as any).twgsl(twgslOptions!.wasmPath);\r\n return Promise.resolve();\r\n }\r\n\r\n return Promise.reject(\"twgsl is not available.\");\r\n }\r\n\r\n public convertSpirV2WGSL(code: Uint32Array): string {\r\n const ccode = this._twgsl.convertSpirV2WGSL(code);\r\n if (WebGPUTintWASM.ShowWGSLShaderCode) {\r\n console.log(ccode);\r\n console.log(\"***********************************************\");\r\n }\r\n return \"diagnostic(off, derivative_uniformity);\\n\" + ccode;\r\n }\r\n}\r\n"]}
@@ -3481,6 +3481,59 @@ interface XRLightProbe extends EventTarget {
3481
3481
  * END: WebXR DOM Overlays Module
3482
3482
  * https://immersive-web.github.io/dom-overlays/
3483
3483
  */
3484
+
3485
+ /**
3486
+ * BEGIN: WebXR Depth Sensing Moudle
3487
+ * https://www.w3.org/TR/webxr-depth-sensing-1/
3488
+ */
3489
+
3490
+ type XRDepthUsage = "cpu-optimized" | "gpu-optimized";
3491
+ type XRDepthDataFormat = "luminance-alpha" | "float32";
3492
+
3493
+ type XRDepthStateInit = {
3494
+ readonly usagePreference: XRDepthUsage[];
3495
+ readonly dataFormatPreference: XRDepthDataFormat[];
3496
+ };
3497
+
3498
+ interface XRSessionInit {
3499
+ depthSensing?: XRDepthStateInit;
3500
+ }
3501
+
3502
+ interface XRSession {
3503
+ readonly depthUsage: XRDepthUsage;
3504
+ readonly depthDataFormat: XRDepthDataFormat;
3505
+ }
3506
+
3507
+ interface XRDepthInformation {
3508
+ readonly width: number;
3509
+ readonly height: number;
3510
+
3511
+ readonly normDepthBufferFromNormView: XRRigidTransform;
3512
+ readonly rawValueToMeters: number;
3513
+ }
3514
+
3515
+ interface XRCPUDepthInformation extends XRDepthInformation {
3516
+ readonly data: ArrayBuffer;
3517
+
3518
+ getDepthInMeters(x: number, y: number): number;
3519
+ }
3520
+
3521
+ interface XRFrame {
3522
+ getDepthInformation(view: XRView): ?XRCPUDepthInformation;
3523
+ }
3524
+
3525
+ interface XRWebGLDepthInformation extends XRDepthInformation {
3526
+ readonly texture: WebGLTexture;
3527
+ }
3528
+
3529
+ interface XRWebGLBinding {
3530
+ getDepthInformation(view: XRView): ?XRWebGLDepthInformation;
3531
+ }
3532
+
3533
+ /**
3534
+ * END: WebXR Depth Sensing Moudle
3535
+ * https://www.w3.org/TR/webxr-depth-sensing-1/
3536
+ */
3484
3537
 
3485
3538
  // This file contains native only extensions for WebXR. These APIs are not supported in the browser yet.
3486
3539
  // They are intended for use with either Babylon Native https://github.com/BabylonJS/BabylonNative or
@@ -34,13 +34,13 @@ export class ThinEngine {
34
34
  */
35
35
  // Not mixed with Version for tooling purpose.
36
36
  static get NpmPackage() {
37
- return "babylonjs@5.49.0";
37
+ return "babylonjs@5.49.1";
38
38
  }
39
39
  /**
40
40
  * Returns the current version of the framework
41
41
  */
42
42
  static get Version() {
43
- return "5.49.0";
43
+ return "5.49.1";
44
44
  }
45
45
  /**
46
46
  * Returns a string describing the current engine