@babylonjs/core 6.33.2 → 6.34.0-alpha.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 (332) hide show
  1. package/Animations/animation.js +1 -1
  2. package/Animations/animation.js.map +1 -1
  3. package/Buffers/storageBuffer.d.ts +2 -1
  4. package/Buffers/storageBuffer.js +3 -2
  5. package/Buffers/storageBuffer.js.map +1 -1
  6. package/Cameras/Inputs/followCameraMouseWheelInput.js +12 -9
  7. package/Cameras/Inputs/followCameraMouseWheelInput.js.map +1 -1
  8. package/Cameras/Inputs/followCameraPointersInput.js +28 -9
  9. package/Cameras/Inputs/followCameraPointersInput.js.map +1 -1
  10. package/Cameras/arcRotateCamera.js +1 -1
  11. package/Cameras/arcRotateCamera.js.map +1 -1
  12. package/Cameras/followCameraInputsManager.js +2 -1
  13. package/Cameras/followCameraInputsManager.js.map +1 -1
  14. package/Debug/skeletonViewer.js +2 -1
  15. package/Debug/skeletonViewer.js.map +1 -1
  16. package/Engines/Extensions/engine.alpha.js +8 -116
  17. package/Engines/Extensions/engine.alpha.js.map +1 -1
  18. package/Engines/Extensions/engine.cubeTexture.d.ts +1 -1
  19. package/Engines/Extensions/engine.cubeTexture.js +11 -213
  20. package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
  21. package/Engines/Extensions/engine.dynamicBuffer.js +5 -42
  22. package/Engines/Extensions/engine.dynamicBuffer.js.map +1 -1
  23. package/Engines/Extensions/engine.dynamicTexture.d.ts +1 -1
  24. package/Engines/Extensions/engine.dynamicTexture.js +5 -47
  25. package/Engines/Extensions/engine.dynamicTexture.js.map +1 -1
  26. package/Engines/Extensions/engine.multiRender.js +11 -341
  27. package/Engines/Extensions/engine.multiRender.js.map +1 -1
  28. package/Engines/Extensions/engine.multiview.js +6 -57
  29. package/Engines/Extensions/engine.multiview.js.map +1 -1
  30. package/Engines/Extensions/engine.query.d.ts +8 -2
  31. package/Engines/Extensions/engine.query.js +44 -152
  32. package/Engines/Extensions/engine.query.js.map +1 -1
  33. package/Engines/Extensions/engine.rawTexture.d.ts +1 -1
  34. package/Engines/Extensions/engine.rawTexture.js +20 -361
  35. package/Engines/Extensions/engine.rawTexture.js.map +1 -1
  36. package/Engines/Extensions/engine.readTexture.js +6 -112
  37. package/Engines/Extensions/engine.readTexture.js.map +1 -1
  38. package/Engines/Extensions/engine.renderTarget.d.ts +1 -1
  39. package/Engines/Extensions/engine.renderTarget.js +8 -173
  40. package/Engines/Extensions/engine.renderTarget.js.map +1 -1
  41. package/Engines/Extensions/engine.renderTargetCube.js +4 -55
  42. package/Engines/Extensions/engine.renderTargetCube.js.map +1 -1
  43. package/Engines/Extensions/engine.storageBuffer.d.ts +2 -1
  44. package/Engines/Extensions/engine.storageBuffer.js.map +1 -1
  45. package/Engines/Extensions/engine.textureSelector.js +11 -52
  46. package/Engines/Extensions/engine.textureSelector.js.map +1 -1
  47. package/Engines/Extensions/engine.transformFeedback.js +10 -11
  48. package/Engines/Extensions/engine.transformFeedback.js.map +1 -1
  49. package/Engines/Extensions/engine.uniformBuffer.js +9 -59
  50. package/Engines/Extensions/engine.uniformBuffer.js.map +1 -1
  51. package/Engines/Extensions/engine.videoTexture.js +4 -54
  52. package/Engines/Extensions/engine.videoTexture.js.map +1 -1
  53. package/Engines/Extensions/engine.views.d.ts +2 -24
  54. package/Engines/Extensions/engine.views.js +17 -136
  55. package/Engines/Extensions/engine.views.js.map +1 -1
  56. package/Engines/Processors/shaderCodeInliner.js +15 -14
  57. package/Engines/Processors/shaderCodeInliner.js.map +1 -1
  58. package/Engines/WebGPU/Extensions/engine.computeShader.js +3 -2
  59. package/Engines/WebGPU/Extensions/engine.computeShader.js.map +1 -1
  60. package/Engines/WebGPU/Extensions/engine.storageBuffer.js +14 -5
  61. package/Engines/WebGPU/Extensions/engine.storageBuffer.js.map +1 -1
  62. package/Engines/WebGPU/webgpuShaderProcessor.js +2 -1
  63. package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
  64. package/Engines/WebGPU/webgpuTintWASM.js +3 -2
  65. package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
  66. package/Engines/engine.d.ts +15 -64
  67. package/Engines/engine.js +322 -773
  68. package/Engines/engine.js.map +1 -1
  69. package/Engines/nativeEngine.d.ts +1 -1
  70. package/Engines/nativeEngine.js.map +1 -1
  71. package/Engines/nullEngine.d.ts +1 -1
  72. package/Engines/nullEngine.js.map +1 -1
  73. package/Engines/thinEngine.d.ts +160 -151
  74. package/Engines/thinEngine.js +712 -3281
  75. package/Engines/thinEngine.js.map +1 -1
  76. package/Engines/webgpuEngine.d.ts +5 -8
  77. package/Engines/webgpuEngine.js +143 -112
  78. package/Engines/webgpuEngine.js.map +1 -1
  79. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js +2 -1
  80. package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.js.map +1 -1
  81. package/FlowGraph/flowGraphBlock.js +1 -21
  82. package/FlowGraph/flowGraphBlock.js.map +1 -1
  83. package/FlowGraph/flowGraphExecutionBlock.d.ts +1 -0
  84. package/FlowGraph/flowGraphExecutionBlock.js +20 -0
  85. package/FlowGraph/flowGraphExecutionBlock.js.map +1 -1
  86. package/Gizmos/axisScaleGizmo.d.ts +1 -0
  87. package/Gizmos/axisScaleGizmo.js +12 -0
  88. package/Gizmos/axisScaleGizmo.js.map +1 -1
  89. package/Gizmos/lightGizmo.js +2 -1
  90. package/Gizmos/lightGizmo.js.map +1 -1
  91. package/Gizmos/rotationGizmo.js +1 -1
  92. package/Gizmos/rotationGizmo.js.map +1 -1
  93. package/Lights/Shadows/cascadedShadowGenerator.js +1 -1
  94. package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
  95. package/Materials/Node/Blocks/Dual/lightBlock.js +2 -1
  96. package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
  97. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +3 -2
  98. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
  99. package/Materials/Node/Blocks/Fragment/fragDepthBlock.js +2 -1
  100. package/Materials/Node/Blocks/Fragment/fragDepthBlock.js.map +1 -1
  101. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js +2 -1
  102. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js.map +1 -1
  103. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +2 -1
  104. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  105. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +3 -2
  106. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  107. package/Materials/Node/Blocks/PBR/reflectionBlock.js +2 -1
  108. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  109. package/Materials/Node/nodeMaterial.js +9 -8
  110. package/Materials/Node/nodeMaterial.js.map +1 -1
  111. package/Materials/Node/nodeMaterialBlock.js +2 -1
  112. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  113. package/Materials/drawWrapper.js +3 -2
  114. package/Materials/drawWrapper.js.map +1 -1
  115. package/Materials/effect.js +2 -1
  116. package/Materials/effect.js.map +1 -1
  117. package/Materials/material.js +2 -1
  118. package/Materials/material.js.map +1 -1
  119. package/Materials/uniformBuffer.d.ts +4 -1
  120. package/Materials/uniformBuffer.js +5 -2
  121. package/Materials/uniformBuffer.js.map +1 -1
  122. package/Meshes/Node/nodeGeometryBlock.js +2 -1
  123. package/Meshes/Node/nodeGeometryBlock.js.map +1 -1
  124. package/Meshes/abstractMesh.js +3 -1
  125. package/Meshes/abstractMesh.js.map +1 -1
  126. package/Misc/assetsManager.js +2 -2
  127. package/Misc/assetsManager.js.map +1 -1
  128. package/Misc/dds.d.ts +2 -0
  129. package/Misc/dds.js +27 -23
  130. package/Misc/dds.js.map +1 -1
  131. package/Misc/logger.d.ts +3 -3
  132. package/Misc/logger.js +8 -4
  133. package/Misc/logger.js.map +1 -1
  134. package/Misc/sceneSerializer.js +2 -1
  135. package/Misc/sceneSerializer.js.map +1 -1
  136. package/Navigation/Plugins/recastJSPlugin.js +2 -2
  137. package/Navigation/Plugins/recastJSPlugin.js.map +1 -1
  138. package/Physics/v2/Plugins/havokPlugin.js +1 -1
  139. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  140. package/Physics/v2/index.d.ts +1 -0
  141. package/Physics/v2/index.js +1 -0
  142. package/Physics/v2/index.js.map +1 -1
  143. package/Physics/v2/ragdoll.d.ts +107 -0
  144. package/Physics/v2/ragdoll.js +228 -0
  145. package/Physics/v2/ragdoll.js.map +1 -0
  146. package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js +2 -2
  147. package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js.map +1 -1
  148. package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.js +3 -2
  149. package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.js.map +1 -1
  150. package/PostProcesses/index.d.ts +1 -1
  151. package/PostProcesses/index.js +1 -1
  152. package/PostProcesses/index.js.map +1 -1
  153. package/PostProcesses/passPostProcess.d.ts +1 -0
  154. package/PostProcesses/passPostProcess.js +6 -2
  155. package/PostProcesses/passPostProcess.js.map +1 -1
  156. package/PostProcesses/screenSpaceCurvaturePostProcess.js +1 -1
  157. package/PostProcesses/screenSpaceCurvaturePostProcess.js.map +1 -1
  158. package/PostProcesses/screenSpaceReflectionPostProcess.js +3 -2
  159. package/PostProcesses/screenSpaceReflectionPostProcess.js.map +1 -1
  160. package/Rendering/depthPeelingRenderer.js +2 -1
  161. package/Rendering/depthPeelingRenderer.js.map +1 -1
  162. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +3 -2
  163. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  164. package/XR/features/WebXRControllerPhysics.js +2 -2
  165. package/XR/features/WebXRControllerPhysics.js.map +1 -1
  166. package/XR/features/WebXRMeshDetector.js +2 -1
  167. package/XR/features/WebXRMeshDetector.js.map +1 -1
  168. package/XR/features/WebXRWalkingLocomotion.js +1 -1
  169. package/XR/features/WebXRWalkingLocomotion.js.map +1 -1
  170. package/XR/webXRExperienceHelper.js +2 -2
  171. package/XR/webXRExperienceHelper.js.map +1 -1
  172. package/assetContainer.js +2 -2
  173. package/assetContainer.js.map +1 -1
  174. package/esm/Engines/Extensions/alpha/alpha.base.d.ts +34 -0
  175. package/esm/Engines/Extensions/alpha/alpha.base.js +2 -0
  176. package/esm/Engines/Extensions/alpha/alpha.base.js.map +1 -0
  177. package/esm/Engines/Extensions/computeShaders/computeShaders.base.d.ts +87 -0
  178. package/esm/Engines/Extensions/computeShaders/computeShaders.base.js +12 -0
  179. package/esm/Engines/Extensions/computeShaders/computeShaders.base.js.map +1 -0
  180. package/esm/Engines/Extensions/cubeTexture/cubeTexture.base.d.ts +79 -0
  181. package/esm/Engines/Extensions/cubeTexture/cubeTexture.base.js +2 -0
  182. package/esm/Engines/Extensions/cubeTexture/cubeTexture.base.js.map +1 -0
  183. package/esm/Engines/Extensions/debugging/debugging.base.d.ts +11 -0
  184. package/esm/Engines/Extensions/debugging/debugging.base.js +2 -0
  185. package/esm/Engines/Extensions/debugging/debugging.base.js.map +1 -0
  186. package/esm/Engines/Extensions/dynamicBuffer/dynamicBuffer.base.d.ts +20 -0
  187. package/esm/Engines/Extensions/dynamicBuffer/dynamicBuffer.base.js +2 -0
  188. package/esm/Engines/Extensions/dynamicBuffer/dynamicBuffer.base.js.map +1 -0
  189. package/esm/Engines/Extensions/dynamicTexture/dynamicTexture.base.d.ts +26 -0
  190. package/esm/Engines/Extensions/dynamicTexture/dynamicTexture.base.js +2 -0
  191. package/esm/Engines/Extensions/dynamicTexture/dynamicTexture.base.js.map +1 -0
  192. package/esm/Engines/Extensions/engine.extensions.d.ts +67 -0
  193. package/esm/Engines/Extensions/engine.extensions.js +49 -0
  194. package/esm/Engines/Extensions/engine.extensions.js.map +1 -0
  195. package/esm/Engines/Extensions/externalTexture/externalTexture.base.d.ts +16 -0
  196. package/esm/Engines/Extensions/externalTexture/externalTexture.base.js +2 -0
  197. package/esm/Engines/Extensions/externalTexture/externalTexture.base.js.map +1 -0
  198. package/esm/Engines/Extensions/multiRender/multiRender.base.d.ts +54 -0
  199. package/esm/Engines/Extensions/multiRender/multiRender.base.js +2 -0
  200. package/esm/Engines/Extensions/multiRender/multiRender.base.js.map +1 -0
  201. package/esm/Engines/Extensions/multiview/multiview.base.d.ts +67 -0
  202. package/esm/Engines/Extensions/multiview/multiview.base.js +79 -0
  203. package/esm/Engines/Extensions/multiview/multiview.base.js.map +1 -0
  204. package/esm/Engines/Extensions/query/query.base.d.ts +164 -0
  205. package/esm/Engines/Extensions/query/query.base.js +168 -0
  206. package/esm/Engines/Extensions/query/query.base.js.map +1 -0
  207. package/esm/Engines/Extensions/rawTexture/engine.rawTexture.base.d.ts +187 -0
  208. package/esm/Engines/Extensions/rawTexture/engine.rawTexture.base.js +2 -0
  209. package/esm/Engines/Extensions/rawTexture/engine.rawTexture.base.js.map +1 -0
  210. package/esm/Engines/Extensions/readTexture/readTexture.base.d.ts +9 -0
  211. package/esm/Engines/Extensions/readTexture/readTexture.base.js +2 -0
  212. package/esm/Engines/Extensions/readTexture/readTexture.base.js.map +1 -0
  213. package/esm/Engines/Extensions/renderTarget/renderTarget.base.d.ts +35 -0
  214. package/esm/Engines/Extensions/renderTarget/renderTarget.base.js +2 -0
  215. package/esm/Engines/Extensions/renderTarget/renderTarget.base.js.map +1 -0
  216. package/esm/Engines/Extensions/renderTargetCube/renderTargetCube.base.d.ts +12 -0
  217. package/esm/Engines/Extensions/renderTargetCube/renderTargetCube.base.js +2 -0
  218. package/esm/Engines/Extensions/renderTargetCube/renderTargetCube.base.js.map +1 -0
  219. package/esm/Engines/Extensions/storageBuffer/storageBuffer.base.d.ts +36 -0
  220. package/esm/Engines/Extensions/storageBuffer/storageBuffer.base.js +2 -0
  221. package/esm/Engines/Extensions/storageBuffer/storageBuffer.base.js.map +1 -0
  222. package/esm/Engines/Extensions/textureSampler/textureSampler.base.d.ts +11 -0
  223. package/esm/Engines/Extensions/textureSampler/textureSampler.base.js +2 -0
  224. package/esm/Engines/Extensions/textureSampler/textureSampler.base.js.map +1 -0
  225. package/esm/Engines/Extensions/textureSelector/textureSelector.base.d.ts +50 -0
  226. package/esm/Engines/Extensions/textureSelector/textureSelector.base.js +53 -0
  227. package/esm/Engines/Extensions/textureSelector/textureSelector.base.js.map +1 -0
  228. package/esm/Engines/Extensions/transformFeedback/engine.transformFeedback.base.d.ts +42 -0
  229. package/esm/Engines/Extensions/transformFeedback/engine.transformFeedback.base.js +2 -0
  230. package/esm/Engines/Extensions/transformFeedback/engine.transformFeedback.base.js.map +1 -0
  231. package/esm/Engines/Extensions/uniformBuffer/uniformBuffer.base.d.ts +48 -0
  232. package/esm/Engines/Extensions/uniformBuffer/uniformBuffer.base.js +2 -0
  233. package/esm/Engines/Extensions/uniformBuffer/uniformBuffer.base.js.map +1 -0
  234. package/esm/Engines/Extensions/videoTexture/videoTexture.base.d.ts +13 -0
  235. package/esm/Engines/Extensions/videoTexture/videoTexture.base.js +2 -0
  236. package/esm/Engines/Extensions/videoTexture/videoTexture.base.js.map +1 -0
  237. package/esm/Engines/Extensions/views/views.base.d.ts +85 -0
  238. package/esm/Engines/Extensions/views/views.base.js +33 -0
  239. package/esm/Engines/Extensions/views/views.base.js.map +1 -0
  240. package/esm/Engines/WebGL/Extensions/alpha/alpha.webgl.d.ts +8 -0
  241. package/esm/Engines/WebGL/Extensions/alpha/alpha.webgl.js +137 -0
  242. package/esm/Engines/WebGL/Extensions/alpha/alpha.webgl.js.map +1 -0
  243. package/esm/Engines/WebGL/Extensions/cubeTexture/cubeTexture.webgl.d.ts +11 -0
  244. package/esm/Engines/WebGL/Extensions/cubeTexture/cubeTexture.webgl.js +251 -0
  245. package/esm/Engines/WebGL/Extensions/cubeTexture/cubeTexture.webgl.js.map +1 -0
  246. package/esm/Engines/WebGL/Extensions/dynamicBuffer/dynamicBuffer.webgl.d.ts +5 -0
  247. package/esm/Engines/WebGL/Extensions/dynamicBuffer/dynamicBuffer.webgl.js +55 -0
  248. package/esm/Engines/WebGL/Extensions/dynamicBuffer/dynamicBuffer.webgl.js.map +1 -0
  249. package/esm/Engines/WebGL/Extensions/dynamicTexture/dynamicTexture.webgl.d.ts +5 -0
  250. package/esm/Engines/WebGL/Extensions/dynamicTexture/dynamicTexture.webgl.js +65 -0
  251. package/esm/Engines/WebGL/Extensions/dynamicTexture/dynamicTexture.webgl.js.map +1 -0
  252. package/esm/Engines/WebGL/Extensions/multiRender/multiRender.webgl.d.ts +10 -0
  253. package/esm/Engines/WebGL/Extensions/multiRender/multiRender.webgl.js +375 -0
  254. package/esm/Engines/WebGL/Extensions/multiRender/multiRender.webgl.js.map +1 -0
  255. package/esm/Engines/WebGL/Extensions/multiview/multiview.webgl.d.ts +6 -0
  256. package/esm/Engines/WebGL/Extensions/multiview/multiview.webgl.js +77 -0
  257. package/esm/Engines/WebGL/Extensions/multiview/multiview.webgl.js.map +1 -0
  258. package/esm/Engines/WebGL/Extensions/query/query.webgl.d.ts +21 -0
  259. package/esm/Engines/WebGL/Extensions/query/query.webgl.js +220 -0
  260. package/esm/Engines/WebGL/Extensions/query/query.webgl.js.map +1 -0
  261. package/esm/Engines/WebGL/Extensions/rawTexture/engine.rawTexture.webgl.d.ts +15 -0
  262. package/esm/Engines/WebGL/Extensions/rawTexture/engine.rawTexture.webgl.js +392 -0
  263. package/esm/Engines/WebGL/Extensions/rawTexture/engine.rawTexture.webgl.js.map +1 -0
  264. package/esm/Engines/WebGL/Extensions/readTexture/readTexture.webgl.d.ts +17 -0
  265. package/esm/Engines/WebGL/Extensions/readTexture/readTexture.webgl.js +133 -0
  266. package/esm/Engines/WebGL/Extensions/readTexture/readTexture.webgl.js.map +1 -0
  267. package/esm/Engines/WebGL/Extensions/renderTarget/renderTarget.webgl.d.ts +8 -0
  268. package/esm/Engines/WebGL/Extensions/renderTarget/renderTarget.webgl.js +199 -0
  269. package/esm/Engines/WebGL/Extensions/renderTarget/renderTarget.webgl.js.map +1 -0
  270. package/esm/Engines/WebGL/Extensions/renderTargetCube/renderTargetCube.webgl.d.ts +2 -0
  271. package/esm/Engines/WebGL/Extensions/renderTargetCube/renderTargetCube.webgl.js +62 -0
  272. package/esm/Engines/WebGL/Extensions/renderTargetCube/renderTargetCube.webgl.js.map +1 -0
  273. package/esm/Engines/WebGL/Extensions/textureSelector/textureSelector.webgl.d.ts +5 -0
  274. package/esm/Engines/WebGL/Extensions/textureSelector/textureSelector.webgl.js +28 -0
  275. package/esm/Engines/WebGL/Extensions/textureSelector/textureSelector.webgl.js.map +1 -0
  276. package/esm/Engines/WebGL/Extensions/transformFeedback/engine.transformFeedback.webgl.d.ts +11 -0
  277. package/esm/Engines/WebGL/Extensions/transformFeedback/engine.transformFeedback.webgl.js +45 -0
  278. package/esm/Engines/WebGL/Extensions/transformFeedback/engine.transformFeedback.webgl.js.map +1 -0
  279. package/esm/Engines/WebGL/Extensions/uniformBuffer/uniformBuffer.webgl.d.ts +9 -0
  280. package/esm/Engines/WebGL/Extensions/uniformBuffer/uniformBuffer.webgl.js +78 -0
  281. package/esm/Engines/WebGL/Extensions/uniformBuffer/uniformBuffer.webgl.js.map +1 -0
  282. package/esm/Engines/WebGL/Extensions/videoTexture/videoTexture.webgl.d.ts +4 -0
  283. package/esm/Engines/WebGL/Extensions/videoTexture/videoTexture.webgl.js +67 -0
  284. package/esm/Engines/WebGL/Extensions/videoTexture/videoTexture.webgl.js.map +1 -0
  285. package/esm/Engines/WebGL/Extensions/views/views.webgl.d.ts +18 -0
  286. package/esm/Engines/WebGL/Extensions/views/views.webgl.js +152 -0
  287. package/esm/Engines/WebGL/Extensions/views/views.webgl.js.map +1 -0
  288. package/esm/Engines/WebGL/engine.adapterHelpers.d.ts +43 -0
  289. package/esm/Engines/WebGL/engine.adapterHelpers.js +107 -0
  290. package/esm/Engines/WebGL/engine.adapterHelpers.js.map +1 -0
  291. package/esm/Engines/WebGL/engine.webgl.d.ts +1030 -0
  292. package/esm/Engines/WebGL/engine.webgl.js +4083 -0
  293. package/esm/Engines/WebGL/engine.webgl.js.map +1 -0
  294. package/esm/Engines/WebGPU/engine.adapterHelpers.d.ts +7 -0
  295. package/esm/Engines/WebGPU/engine.adapterHelpers.js +20 -0
  296. package/esm/Engines/WebGPU/engine.adapterHelpers.js.map +1 -0
  297. package/esm/Engines/WebGPU/engine.webgpu.constants.d.ts +391 -0
  298. package/esm/Engines/WebGPU/engine.webgpu.constants.js +2 -0
  299. package/esm/Engines/WebGPU/engine.webgpu.constants.js.map +1 -0
  300. package/esm/Engines/WebGPU/engine.webgpu.d.ts +277 -0
  301. package/esm/Engines/WebGPU/engine.webgpu.js +1281 -0
  302. package/esm/Engines/WebGPU/engine.webgpu.js.map +1 -0
  303. package/esm/Engines/engine.adapters.d.ts +32 -0
  304. package/esm/Engines/engine.adapters.js +27 -0
  305. package/esm/Engines/engine.adapters.js.map +1 -0
  306. package/esm/Engines/engine.base.d.ts +807 -0
  307. package/esm/Engines/engine.base.js +1235 -0
  308. package/esm/Engines/engine.base.js.map +1 -0
  309. package/esm/Engines/engine.constants.d.ts +735 -0
  310. package/esm/Engines/engine.constants.js +3 -0
  311. package/esm/Engines/engine.constants.js.map +1 -0
  312. package/esm/Engines/engine.extendable.d.ts +180 -0
  313. package/esm/Engines/engine.extendable.js +477 -0
  314. package/esm/Engines/engine.extendable.js.map +1 -0
  315. package/esm/Engines/engine.interfaces.d.ts +16 -0
  316. package/esm/Engines/engine.interfaces.js +9 -0
  317. package/esm/Engines/engine.interfaces.js.map +1 -0
  318. package/esm/Engines/engine.static.d.ts +215 -0
  319. package/esm/Engines/engine.static.js +345 -0
  320. package/esm/Engines/engine.static.js.map +1 -0
  321. package/esm/Engines/engine.tools.d.ts +20 -0
  322. package/esm/Engines/engine.tools.js +33 -0
  323. package/esm/Engines/engine.tools.js.map +1 -0
  324. package/esm/Engines/public.d.ts +1 -0
  325. package/esm/Engines/public.js +2 -0
  326. package/esm/Engines/public.js.map +1 -0
  327. package/esm/Engines/runtimeEnvironment.d.ts +37 -0
  328. package/esm/Engines/runtimeEnvironment.js +56 -0
  329. package/esm/Engines/runtimeEnvironment.js.map +1 -0
  330. package/package.json +2 -1
  331. package/scene.js +1 -1
  332. package/scene.js.map +1 -1
@@ -0,0 +1,277 @@
1
+ import type { IShaderProcessor } from "../../../Engines/Processors/iShaderProcessor.js";
2
+ import { ShaderLanguage } from "../../../Materials/shaderLanguage.js";
3
+ import type { DataArray, Nullable } from "../../../types.js";
4
+ import type { IBaseEngineProtected, IBaseEnginePublic, IBaseEngineInternals, IBaseEngineOptions } from "../engine.base";
5
+ import type { IDrawContext } from "../../../Engines/IDrawContext.js";
6
+ import type { IMaterialContext } from "../../../Engines/IMaterialContext.js";
7
+ import type { GlslangOptions } from "../../../Engines/webgpuEngine.js";
8
+ import { type TwgslOptions } from "../../../Engines/WebGPU/webgpuTintWASM.js";
9
+ import { WebGPUBufferManager } from "../../../Engines/WebGPU/webgpuBufferManager.js";
10
+ import { WebGPUBundleList } from "../../../Engines/WebGPU/webgpuBundleList.js";
11
+ import { WebGPUCacheSampler } from "../../../Engines/WebGPU/webgpuCacheSampler.js";
12
+ import { WebGPUOcclusionQuery } from "../../../Engines/WebGPU/webgpuOcclusionQuery.js";
13
+ import { WebGPUTextureHelper } from "../../../Engines/WebGPU/webgpuTextureHelper.js";
14
+ import { WebGPUTimestampQuery } from "../../../Engines/WebGPU/webgpuTimestampQuery.js";
15
+ import type { ComputeEffect } from "../../../Compute/computeEffect.js";
16
+ import type { WebGPUCacheRenderPipeline } from "../../../Engines/WebGPU/webgpuCacheRenderPipeline.js";
17
+ import type { WebGPUDataBuffer } from "../../../Meshes/WebGPU/webgpuDataBuffer.js";
18
+ import { Observable } from "../../../Misc/observable.js";
19
+ import type { DataBuffer } from "../../../Buffers/dataBuffer.js";
20
+ import { WebGPUDrawContext } from "../../../Engines/WebGPU/webgpuDrawContext.js";
21
+ import { WebGPUMaterialContext } from "../../../Engines/WebGPU/webgpuMaterialContext.js";
22
+ import type { IEffectCreationOptions } from "../../../Materials/effect.js";
23
+ import { Effect } from "../../../Materials/effect.js";
24
+ import type { EffectFallbacks } from "../../../Materials/effectFallbacks.js";
25
+ import type { Engine } from "../../../Engines/engine.js";
26
+ import { WebGPUHardwareTexture } from "../../../Engines/WebGPU/webgpuHardwareTexture.js";
27
+ /** @internal */
28
+ interface IWebGPURenderPassWrapper {
29
+ renderPassDescriptor: Nullable<GPURenderPassDescriptor>;
30
+ colorAttachmentViewDescriptor: Nullable<GPUTextureViewDescriptor>;
31
+ depthAttachmentViewDescriptor: Nullable<GPUTextureViewDescriptor>;
32
+ colorAttachmentGPUTextures: (WebGPUHardwareTexture | null)[];
33
+ depthTextureFormat: GPUTextureFormat | undefined;
34
+ }
35
+ /** @internal */
36
+ export declare const _clearDepthValue = 1;
37
+ /** @internal */
38
+ export declare const _clearReverseDepthValue = 0;
39
+ /** @internal */
40
+ export declare const _clearStencilValue = 0;
41
+ /**
42
+ * Counters from last frame
43
+ */
44
+ export declare const countersLastFrame: {
45
+ numEnableEffects: number;
46
+ numEnableDrawWrapper: number;
47
+ numBundleCreationNonCompatMode: number;
48
+ numBundleReuseNonCompatMode: number;
49
+ };
50
+ export interface IWebGPUEngineOptions extends IBaseEngineOptions, GPURequestAdapterOptions {
51
+ /**
52
+ * Defines the category of adapter to use.
53
+ * Is it the discrete or integrated device.
54
+ */
55
+ powerPreference?: GPUPowerPreference;
56
+ /**
57
+ * When set to true, indicates that only a fallback adapter may be returned when requesting an adapter.
58
+ * If the user agent does not support a fallback adapter, will cause requestAdapter() to resolve to null.
59
+ * Default: false
60
+ */
61
+ forceFallbackAdapter?: boolean;
62
+ /**
63
+ * Defines the device descriptor used to create a device once we have retrieved an appropriate adapter
64
+ */
65
+ deviceDescriptor?: GPUDeviceDescriptor;
66
+ /**
67
+ * When requesting the device, enable all the features supported by the adapter. Default: false
68
+ * Note that this setting is ignored if you explicitely set deviceDescriptor.requiredFeatures
69
+ */
70
+ enableAllFeatures?: boolean;
71
+ /**
72
+ * When requesting the device, set the required limits to the maximum possible values (the ones from adapter.limits). Default: false
73
+ * Note that this setting is ignored if you explicitely set deviceDescriptor.requiredLimits
74
+ */
75
+ setMaximumLimits?: boolean;
76
+ /**
77
+ * Defines the requested Swap Chain Format.
78
+ */
79
+ swapChainFormat?: GPUTextureFormat;
80
+ /**
81
+ * Defines whether we should generate debug markers in the gpu command lists (can be seen with PIX for eg). Default: false
82
+ */
83
+ enableGPUDebugMarkers?: boolean;
84
+ /**
85
+ * Options to load the associated Glslang library
86
+ */
87
+ glslangOptions?: GlslangOptions;
88
+ /**
89
+ * Options to load the associated Twgsl library
90
+ */
91
+ twgslOptions?: TwgslOptions;
92
+ }
93
+ export interface IWebGPUEngineProtected extends IBaseEngineProtected {
94
+ _scissorCached: {
95
+ x: number;
96
+ y: number;
97
+ w: number;
98
+ z: number;
99
+ };
100
+ }
101
+ export interface IWebGPUEngineInternals extends IBaseEngineInternals {
102
+ _currentDrawContext: IDrawContext;
103
+ _currentMaterialContext: IMaterialContext;
104
+ _options: IWebGPUEngineOptions;
105
+ }
106
+ export interface IWebGPUEnginePublic extends IBaseEnginePublic {
107
+ snapshotRendering: boolean;
108
+ snapshotRenderingMode: number;
109
+ /** @internal */
110
+ _device: GPUDevice;
111
+ /** @internal */
112
+ _textureHelper: WebGPUTextureHelper;
113
+ /** @internal */
114
+ _bufferManager: WebGPUBufferManager;
115
+ /** @internal */
116
+ _cacheSampler: WebGPUCacheSampler;
117
+ /** @internal */
118
+ _cacheRenderPipeline: WebGPUCacheRenderPipeline;
119
+ /** @internal */
120
+ _mrtAttachments: number[];
121
+ /** @internal */
122
+ _timestampQuery: WebGPUTimestampQuery;
123
+ /** @internal */
124
+ _occlusionQuery: WebGPUOcclusionQuery;
125
+ /** @internal */
126
+ _compiledComputeEffects: {
127
+ [key: string]: ComputeEffect;
128
+ };
129
+ /** @internal */
130
+ _counters: {
131
+ numEnableEffects: number;
132
+ numEnableDrawWrapper: number;
133
+ numBundleCreationNonCompatMode: number;
134
+ numBundleReuseNonCompatMode: number;
135
+ };
136
+ /**
137
+ * Max number of uncaptured error messages to log
138
+ */
139
+ numMaxUncapturedErrors: number;
140
+ /** @internal */
141
+ _ubInvertY: WebGPUDataBuffer;
142
+ /** @internal */
143
+ _ubDontInvertY: WebGPUDataBuffer;
144
+ /** @internal */
145
+ _uploadEncoder: GPUCommandEncoder;
146
+ /** @internal */
147
+ _renderEncoder: GPUCommandEncoder;
148
+ /** @internal */
149
+ _renderTargetEncoder: GPUCommandEncoder;
150
+ /** @internal */
151
+ _currentRenderPass: Nullable<GPURenderPassEncoder>;
152
+ /** @internal */
153
+ _mainRenderPassWrapper: IWebGPURenderPassWrapper;
154
+ /** @internal */
155
+ _rttRenderPassWrapper: IWebGPURenderPassWrapper;
156
+ /** @internal */
157
+ _pendingDebugCommands: Array<[string, Nullable<string>]>;
158
+ /** @internal */
159
+ _bundleList: WebGPUBundleList;
160
+ /** @internal */
161
+ _bundleListRenderTarget: WebGPUBundleList;
162
+ /** @internal */
163
+ _onAfterUnbindFrameBufferObservable: Observable<IWebGPUEnginePublic>;
164
+ /** @internal */
165
+ _currentDrawContext: WebGPUDrawContext;
166
+ /** @internal */
167
+ _currentMaterialContext: WebGPUMaterialContext;
168
+ /** @internal */
169
+ dbgShowShaderCode: boolean;
170
+ /** @internal */
171
+ dbgSanityChecks: boolean;
172
+ /** @internal */
173
+ dbgVerboseLogsForFirstFrames: boolean;
174
+ /** @internal */
175
+ dbgVerboseLogsNumFrames: number;
176
+ /** @internal */
177
+ dbgLogIfNotDrawWrapper: boolean;
178
+ /** @internal */
179
+ dbgShowEmptyEnableEffectCalls: boolean;
180
+ /**
181
+ * (WebGPU only) True (default) to be in compatibility mode, meaning rendering all existing scenes without artifacts (same rendering than WebGL).
182
+ * Setting the property to false will improve performances but may not work in some scenes if some precautions are not taken.
183
+ * See https://doc.babylonjs.com/setup/support/webGPU/webGPUOptimization/webGPUNonCompatibilityMode for more details
184
+ */
185
+ compatibilityMode: boolean;
186
+ /** @internal */
187
+ readonly currentSampleCount: number;
188
+ }
189
+ export type WebGPUEngineState = IWebGPUEnginePublic & IWebGPUEngineInternals & IWebGPUEngineProtected;
190
+ /**
191
+ * Create a new instance of the gpu engine asynchronously
192
+ * @param canvas Defines the canvas to use to display the result
193
+ * @param options Defines the options passed to the engine to create the GPU context dependencies
194
+ * @returns a promise that resolves with the created engine
195
+ */
196
+ export declare function CreateAsyncWebGPUEngine(canvas: HTMLCanvasElement, options?: IWebGPUEngineOptions): Promise<IWebGPUEnginePublic>;
197
+ export declare function initWebGPUEngineState(canvas: HTMLCanvasElement, options?: IWebGPUEngineOptions): WebGPUEngineState;
198
+ /**
199
+ * Initializes the WebGPU context and dependencies.
200
+ * @param glslangOptions Defines the GLSLang compiler options if necessary
201
+ * @param twgslOptions Defines the Twgsl compiler options if necessary
202
+ * @returns a promise notifying the readiness of the engine.
203
+ */
204
+ export declare function initAsync(engineState: IWebGPUEnginePublic, glslangOptions?: GlslangOptions, twgslOptions?: TwgslOptions): Promise<void>;
205
+ export declare function _getShaderProcessor(engineState: IWebGPUEnginePublic, shaderLanguage: ShaderLanguage): Nullable<IShaderProcessor>;
206
+ export declare function isWebGPU(engineState: IWebGPUEnginePublic): engineState is WebGPUEngineState;
207
+ export declare function resetSnapshotRendering(engineState: IWebGPUEnginePublic): void;
208
+ export declare function resize(engineState: IWebGPUEnginePublic, forceSetSize?: boolean): void;
209
+ /**
210
+ * Force a specific size of the canvas
211
+ * @param width defines the new canvas' width
212
+ * @param height defines the new canvas' height
213
+ * @param forceSetSize true to force setting the sizes of the underlying canvas
214
+ * @returns true if the size was changed
215
+ */
216
+ export declare function setSize(engineState: IWebGPUEnginePublic, width: number, height: number, forceSetSize?: boolean): boolean;
217
+ /**
218
+ * @internal
219
+ */
220
+ export declare function _getUseSRGBBuffer(engineState: IWebGPUEnginePublic, useSRGBBuffer: boolean, noMipmap: boolean): boolean;
221
+ /**
222
+ * Creates a vertex buffer
223
+ * @param data the data for the vertex buffer
224
+ * @returns the new buffer
225
+ */
226
+ export declare function createVertexBuffer(engineState: IWebGPUEnginePublic, data: DataArray): DataBuffer;
227
+ /**
228
+ * Creates a vertex buffer
229
+ * @param data the data for the dynamic vertex buffer
230
+ * @returns the new buffer
231
+ * @deprecated Please use createVertexBuffer instead.
232
+ */
233
+ export declare function createDynamicVertexBuffer(engineState: IWebGPUEnginePublic, data: DataArray): DataBuffer;
234
+ /**
235
+ * @internal
236
+ */
237
+ export declare function _releaseBuffer(engineState: IWebGPUEnginePublic, buffer: DataBuffer): boolean;
238
+ /**
239
+ * Create a new effect (used to store vertex/fragment shaders)
240
+ * @param baseName defines the base name of the effect (The name of file without .fragment.fx or .vertex.fx)
241
+ * @param attributesNamesOrOptions defines either a list of attribute names or an IEffectCreationOptions object
242
+ * @param uniformsNamesOrEngine defines either a list of uniform names or the engine to use
243
+ * @param samplers defines an array of string used to represent textures
244
+ * @param defines defines the string containing the defines to use to compile the shaders
245
+ * @param fallbacks defines the list of potential fallbacks to use if shader compilation fails
246
+ * @param onCompiled defines a function to call when the effect creation is successful
247
+ * @param onError defines a function to call when the effect creation has failed
248
+ * @param indexParameters defines an object containing the index values to use to compile shaders (like the maximum number of simultaneous lights)
249
+ * @param shaderLanguage the language the shader is written in (default: GLSL)
250
+ * @returns the new Effect
251
+ */
252
+ export declare function createEffect(engineState: IWebGPUEnginePublic, baseName: any, attributesNamesOrOptions: string[] | IEffectCreationOptions, uniformsNamesOrEngine: string[] | Engine, // Engine is just a type here, so i don't have to change Effect's signature
253
+ samplers?: string[], defines?: string, fallbacks?: EffectFallbacks, onCompiled?: Nullable<(effect: Effect) => void>, onError?: Nullable<(effect: Effect, errors: string) => void>, indexParameters?: any, shaderLanguage?: ShaderLanguage): Effect;
254
+ /**
255
+ * Creates a new draw context
256
+ * @returns the new context
257
+ */
258
+ export declare function createDrawContext(engineState: IWebGPUEnginePublic): WebGPUDrawContext;
259
+ /**
260
+ * Creates a new material context
261
+ * @returns the new context
262
+ */
263
+ export declare function createMaterialContext(_engineState: IWebGPUEnginePublic): WebGPUMaterialContext;
264
+ export declare function _initializeContextAndSwapChain(engineState: IWebGPUEnginePublic): void;
265
+ export declare function _initializeMainAttachments(engineState: IWebGPUEnginePublic): void;
266
+ export declare function _configureContext(engineState: IWebGPUEnginePublic): void;
267
+ /**
268
+ * Force a WebGPU flush (ie. a flush of all waiting commands)
269
+ */
270
+ export declare function flushFramebuffer(engineState: IWebGPUEnginePublic): void;
271
+ /** @internal */
272
+ export declare function _endCurrentRenderPass(engineState: IWebGPUEnginePublic): number;
273
+ /**
274
+ * @internal
275
+ */
276
+ export declare function _setDepthTextureFormat(engineState: IWebGPUEnginePublic, wrapper: IWebGPURenderPassWrapper): void;
277
+ export {};