@babylonjs/core 7.2.2 → 7.2.3

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 (376) hide show
  1. package/Animations/runtimeAnimation.d.ts +1 -0
  2. package/Animations/runtimeAnimation.js +12 -3
  3. package/Animations/runtimeAnimation.js.map +1 -1
  4. package/Audio/audioEngine.js +2 -2
  5. package/Audio/audioEngine.js.map +1 -1
  6. package/Bones/boneLookController.js +3 -0
  7. package/Bones/boneLookController.js.map +1 -1
  8. package/Buffers/buffer.d.ts +5 -5
  9. package/Buffers/buffer.js.map +1 -1
  10. package/Buffers/storageBuffer.d.ts +2 -2
  11. package/Buffers/storageBuffer.js.map +1 -1
  12. package/Cameras/Inputs/arcRotateCameraKeyboardMoveInput.js.map +1 -1
  13. package/Cameras/Inputs/flyCameraKeyboardInput.js.map +1 -1
  14. package/Cameras/Inputs/followCameraKeyboardMoveInput.js.map +1 -1
  15. package/Cameras/Inputs/freeCameraKeyboardMoveInput.js.map +1 -1
  16. package/Compute/computeEffect.d.ts +3 -3
  17. package/Compute/computeEffect.js.map +1 -1
  18. package/Compute/computeShader.d.ts +10 -2
  19. package/Compute/computeShader.js +53 -35
  20. package/Compute/computeShader.js.map +1 -1
  21. package/DeviceInput/InputDevices/deviceSourceManager.d.ts +2 -2
  22. package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
  23. package/DeviceInput/internalDeviceSourceManager.d.ts +4 -4
  24. package/DeviceInput/internalDeviceSourceManager.js.map +1 -1
  25. package/DeviceInput/webDeviceInputSystem.d.ts +2 -2
  26. package/DeviceInput/webDeviceInputSystem.js.map +1 -1
  27. package/Engines/AbstractEngine/abstractEngine.alpha.d.ts +10 -0
  28. package/Engines/AbstractEngine/abstractEngine.alpha.js +29 -0
  29. package/Engines/AbstractEngine/abstractEngine.alpha.js.map +1 -0
  30. package/Engines/AbstractEngine/abstractEngine.cubeTexture.d.ts +17 -0
  31. package/Engines/AbstractEngine/abstractEngine.cubeTexture.js +138 -0
  32. package/Engines/AbstractEngine/abstractEngine.cubeTexture.js.map +1 -0
  33. package/Engines/AbstractEngine/abstractEngine.dom.d.ts +61 -0
  34. package/Engines/AbstractEngine/abstractEngine.dom.js +27 -0
  35. package/Engines/AbstractEngine/abstractEngine.dom.js.map +1 -0
  36. package/Engines/AbstractEngine/abstractEngine.loadingScreen.d.ts +30 -0
  37. package/Engines/AbstractEngine/abstractEngine.loadingScreen.js +48 -0
  38. package/Engines/AbstractEngine/abstractEngine.loadingScreen.js.map +1 -0
  39. package/Engines/AbstractEngine/abstractEngine.query.d.ts +122 -0
  40. package/Engines/AbstractEngine/abstractEngine.query.js +175 -0
  41. package/Engines/AbstractEngine/abstractEngine.query.js.map +1 -0
  42. package/Engines/AbstractEngine/abstractEngine.renderPass.d.ts +26 -0
  43. package/Engines/AbstractEngine/abstractEngine.renderPass.js +29 -0
  44. package/Engines/AbstractEngine/abstractEngine.renderPass.js.map +1 -0
  45. package/Engines/AbstractEngine/abstractEngine.states.d.ts +162 -0
  46. package/Engines/AbstractEngine/abstractEngine.states.js +105 -0
  47. package/Engines/AbstractEngine/abstractEngine.states.js.map +1 -0
  48. package/Engines/AbstractEngine/abstractEngine.texture.d.ts +16 -0
  49. package/Engines/AbstractEngine/abstractEngine.texture.js +11 -0
  50. package/Engines/AbstractEngine/abstractEngine.texture.js.map +1 -0
  51. package/Engines/AbstractEngine/index.d.ts +8 -0
  52. package/Engines/AbstractEngine/index.js +10 -0
  53. package/Engines/AbstractEngine/index.js.map +1 -0
  54. package/Engines/Extensions/engine.alpha.d.ts +0 -24
  55. package/Engines/Extensions/engine.alpha.js +0 -35
  56. package/Engines/Extensions/engine.alpha.js.map +1 -1
  57. package/Engines/Extensions/engine.computeShader.d.ts +15 -2
  58. package/Engines/Extensions/engine.computeShader.js +5 -1
  59. package/Engines/Extensions/engine.computeShader.js.map +1 -1
  60. package/Engines/Extensions/engine.cubeTexture.d.ts +0 -8
  61. package/Engines/Extensions/engine.cubeTexture.js +2 -135
  62. package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
  63. package/Engines/Extensions/engine.debugging.d.ts +2 -2
  64. package/Engines/Extensions/engine.debugging.js +5 -5
  65. package/Engines/Extensions/engine.debugging.js.map +1 -1
  66. package/Engines/Extensions/engine.dynamicTexture.js +3 -2
  67. package/Engines/Extensions/engine.dynamicTexture.js.map +1 -1
  68. package/Engines/Extensions/engine.multiview.js.map +1 -1
  69. package/Engines/Extensions/engine.query.d.ts +5 -120
  70. package/Engines/Extensions/engine.query.js +14 -150
  71. package/Engines/Extensions/engine.query.js.map +1 -1
  72. package/Engines/Extensions/engine.renderTarget.js +0 -9
  73. package/Engines/Extensions/engine.renderTarget.js.map +1 -1
  74. package/Engines/Extensions/engine.views.d.ts +3 -2
  75. package/Engines/Extensions/engine.views.js.map +1 -1
  76. package/Engines/Processors/iShaderProcessor.d.ts +2 -2
  77. package/Engines/Processors/iShaderProcessor.js.map +1 -1
  78. package/Engines/Processors/shaderProcessor.d.ts +3 -3
  79. package/Engines/Processors/shaderProcessor.js.map +1 -1
  80. package/Engines/WebGL/webGLRenderTargetWrapper.js +12 -9
  81. package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
  82. package/Engines/WebGL/webGLShaderProcessors.d.ts +2 -2
  83. package/Engines/WebGL/webGLShaderProcessors.js.map +1 -1
  84. package/Engines/WebGPU/Extensions/engine.alpha.d.ts +35 -0
  85. package/Engines/WebGPU/Extensions/engine.alpha.js +4 -4
  86. package/Engines/WebGPU/Extensions/engine.alpha.js.map +1 -1
  87. package/Engines/WebGPU/Extensions/engine.computeShader.d.ts +9 -0
  88. package/Engines/WebGPU/Extensions/engine.computeShader.js +13 -2
  89. package/Engines/WebGPU/Extensions/engine.computeShader.js.map +1 -1
  90. package/Engines/WebGPU/Extensions/engine.cubeTexture.d.ts +78 -1
  91. package/Engines/WebGPU/Extensions/engine.cubeTexture.js.map +1 -1
  92. package/Engines/WebGPU/Extensions/engine.dynamicTexture.d.ts +27 -1
  93. package/Engines/WebGPU/Extensions/engine.dynamicTexture.js +3 -3
  94. package/Engines/WebGPU/Extensions/engine.dynamicTexture.js.map +1 -1
  95. package/Engines/WebGPU/Extensions/engine.externalTexture.d.ts +16 -0
  96. package/Engines/WebGPU/Extensions/engine.externalTexture.js.map +1 -1
  97. package/Engines/WebGPU/Extensions/engine.multiRender.d.ts +55 -1
  98. package/Engines/WebGPU/Extensions/engine.multiRender.js.map +1 -1
  99. package/Engines/WebGPU/Extensions/engine.query.d.ts +1 -1
  100. package/Engines/WebGPU/Extensions/engine.query.js +1 -0
  101. package/Engines/WebGPU/Extensions/engine.query.js.map +1 -1
  102. package/Engines/WebGPU/Extensions/engine.rawTexture.d.ts +185 -1
  103. package/Engines/WebGPU/Extensions/engine.rawTexture.js.map +1 -1
  104. package/Engines/WebGPU/Extensions/engine.readTexture.d.ts +10 -1
  105. package/Engines/WebGPU/Extensions/engine.readTexture.js.map +1 -1
  106. package/Engines/WebGPU/Extensions/engine.renderTarget.d.ts +38 -1
  107. package/Engines/WebGPU/Extensions/engine.renderTarget.js.map +1 -1
  108. package/Engines/WebGPU/Extensions/engine.renderTargetCube.d.ts +13 -1
  109. package/Engines/WebGPU/Extensions/engine.renderTargetCube.js.map +1 -1
  110. package/Engines/WebGPU/Extensions/engine.storageBuffer.d.ts +38 -1
  111. package/Engines/WebGPU/Extensions/engine.storageBuffer.js.map +1 -1
  112. package/Engines/WebGPU/Extensions/engine.textureSampler.d.ts +10 -0
  113. package/Engines/WebGPU/Extensions/engine.textureSampler.js.map +1 -1
  114. package/Engines/WebGPU/Extensions/engine.videoTexture.d.ts +14 -1
  115. package/Engines/WebGPU/Extensions/engine.videoTexture.js.map +1 -1
  116. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.d.ts +2 -2
  117. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  118. package/Engines/abstractEngine.d.ts +1688 -0
  119. package/Engines/abstractEngine.js +1354 -0
  120. package/Engines/abstractEngine.js.map +1 -0
  121. package/Engines/engine.common.d.ts +39 -0
  122. package/Engines/engine.common.js +226 -0
  123. package/Engines/engine.common.js.map +1 -0
  124. package/Engines/engine.d.ts +40 -447
  125. package/Engines/engine.js +64 -810
  126. package/Engines/engine.js.map +1 -1
  127. package/Engines/engineFactory.d.ts +2 -2
  128. package/Engines/engineFactory.js.map +1 -1
  129. package/Engines/engineStore.d.ts +4 -4
  130. package/Engines/engineStore.js.map +1 -1
  131. package/Engines/index.d.ts +3 -0
  132. package/Engines/index.js +3 -0
  133. package/Engines/index.js.map +1 -1
  134. package/Engines/nativeEngine.d.ts +1 -1
  135. package/Engines/nativeEngine.js +2 -1
  136. package/Engines/nativeEngine.js.map +1 -1
  137. package/Engines/nullEngine.d.ts +2 -2
  138. package/Engines/nullEngine.js +2 -3
  139. package/Engines/nullEngine.js.map +1 -1
  140. package/Engines/renderTargetWrapper.d.ts +3 -3
  141. package/Engines/renderTargetWrapper.js.map +1 -1
  142. package/Engines/thinEngine.d.ts +35 -591
  143. package/Engines/thinEngine.js +84 -1134
  144. package/Engines/thinEngine.js.map +1 -1
  145. package/Engines/webgpuEngine.d.ts +149 -109
  146. package/Engines/webgpuEngine.js +249 -161
  147. package/Engines/webgpuEngine.js.map +1 -1
  148. package/Instrumentation/engineInstrumentation.d.ts +5 -4
  149. package/Instrumentation/engineInstrumentation.js.map +1 -1
  150. package/Layers/effectLayer.d.ts +2 -2
  151. package/Layers/effectLayer.js +3 -3
  152. package/Layers/effectLayer.js.map +1 -1
  153. package/Layers/effectLayerSceneComponent.js.map +1 -1
  154. package/Layers/glowLayer.js +3 -3
  155. package/Layers/glowLayer.js.map +1 -1
  156. package/Layers/highlightLayer.js +3 -3
  157. package/Layers/highlightLayer.js.map +1 -1
  158. package/Layers/layerSceneComponent.js.map +1 -1
  159. package/Loading/loadingScreen.js +2 -2
  160. package/Loading/loadingScreen.js.map +1 -1
  161. package/Loading/sceneLoader.d.ts +3 -3
  162. package/Loading/sceneLoader.js +1 -1
  163. package/Loading/sceneLoader.js.map +1 -1
  164. package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -1
  165. package/Materials/Textures/Filtering/hdrFiltering.d.ts +2 -2
  166. package/Materials/Textures/Filtering/hdrFiltering.js.map +1 -1
  167. package/Materials/Textures/Loaders/basisTextureLoader.js +2 -2
  168. package/Materials/Textures/Loaders/basisTextureLoader.js.map +1 -1
  169. package/Materials/Textures/MultiviewRenderTarget.d.ts +1 -0
  170. package/Materials/Textures/MultiviewRenderTarget.js +1 -0
  171. package/Materials/Textures/MultiviewRenderTarget.js.map +1 -1
  172. package/Materials/Textures/Procedurals/proceduralTexture.js +1 -1
  173. package/Materials/Textures/Procedurals/proceduralTexture.js.map +1 -1
  174. package/Materials/Textures/baseTexture.d.ts +3 -3
  175. package/Materials/Textures/baseTexture.js.map +1 -1
  176. package/Materials/Textures/colorGradingTexture.d.ts +2 -2
  177. package/Materials/Textures/colorGradingTexture.js.map +1 -1
  178. package/Materials/Textures/cubeTexture.d.ts +3 -2
  179. package/Materials/Textures/cubeTexture.js +1 -0
  180. package/Materials/Textures/cubeTexture.js.map +1 -1
  181. package/Materials/Textures/hdrCubeTexture.d.ts +2 -2
  182. package/Materials/Textures/hdrCubeTexture.js.map +1 -1
  183. package/Materials/Textures/htmlElementTexture.d.ts +2 -2
  184. package/Materials/Textures/htmlElementTexture.js.map +1 -1
  185. package/Materials/Textures/internalTexture.d.ts +3 -3
  186. package/Materials/Textures/internalTexture.js.map +1 -1
  187. package/Materials/Textures/rawTexture.d.ts +10 -10
  188. package/Materials/Textures/rawTexture.js.map +1 -1
  189. package/Materials/Textures/renderTargetTexture.d.ts +4 -4
  190. package/Materials/Textures/renderTargetTexture.js +4 -4
  191. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  192. package/Materials/Textures/texture.d.ts +2 -2
  193. package/Materials/Textures/texture.js.map +1 -1
  194. package/Materials/Textures/thinTexture.d.ts +3 -3
  195. package/Materials/Textures/thinTexture.js +1 -1
  196. package/Materials/Textures/thinTexture.js.map +1 -1
  197. package/Materials/drawWrapper.d.ts +2 -3
  198. package/Materials/drawWrapper.functions.d.ts +8 -0
  199. package/Materials/drawWrapper.functions.js +9 -0
  200. package/Materials/drawWrapper.functions.js.map +1 -0
  201. package/Materials/drawWrapper.js +0 -3
  202. package/Materials/drawWrapper.js.map +1 -1
  203. package/Materials/effect.d.ts +4 -5
  204. package/Materials/effect.js.map +1 -1
  205. package/Materials/effectRenderer.d.ts +4 -4
  206. package/Materials/effectRenderer.js.map +1 -1
  207. package/Materials/index.d.ts +1 -0
  208. package/Materials/index.js +1 -0
  209. package/Materials/index.js.map +1 -1
  210. package/Materials/materialHelper.functions.d.ts +2 -2
  211. package/Materials/materialHelper.functions.js.map +1 -1
  212. package/Materials/materialPluginBase.d.ts +4 -4
  213. package/Materials/materialPluginBase.js.map +1 -1
  214. package/Materials/materialPluginManager.d.ts +2 -2
  215. package/Materials/materialPluginManager.js.map +1 -1
  216. package/Materials/meshDebugPluginMaterial.js +1 -1
  217. package/Materials/meshDebugPluginMaterial.js.map +1 -1
  218. package/Materials/uniformBuffer.d.ts +2 -2
  219. package/Materials/uniformBuffer.js.map +1 -1
  220. package/Meshes/Builders/greasedLineBuilder.d.ts +6 -0
  221. package/Meshes/Builders/greasedLineBuilder.js +15 -8
  222. package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
  223. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +1 -1
  224. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
  225. package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +2 -2
  226. package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -1
  227. package/Meshes/GreasedLine/greasedLineMesh.js +1 -1
  228. package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -1
  229. package/Meshes/geometry.d.ts +2 -2
  230. package/Meshes/geometry.js +3 -2
  231. package/Meshes/geometry.js.map +1 -1
  232. package/Meshes/instancedMesh.js.map +1 -1
  233. package/Meshes/mesh.d.ts +3 -3
  234. package/Meshes/mesh.js.map +1 -1
  235. package/Meshes/subMesh.d.ts +2 -2
  236. package/Meshes/subMesh.js.map +1 -1
  237. package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js.map +1 -1
  238. package/Misc/copyTextureToTexture.d.ts +2 -2
  239. package/Misc/copyTextureToTexture.js.map +1 -1
  240. package/Misc/dds.d.ts +3 -2
  241. package/Misc/dds.js +2 -1
  242. package/Misc/dds.js.map +1 -1
  243. package/Misc/dumpTools.d.ts +2 -2
  244. package/Misc/dumpTools.js.map +1 -1
  245. package/Misc/fileTools.js +3 -3
  246. package/Misc/fileTools.js.map +1 -1
  247. package/Misc/khronosTextureContainer2.d.ts +8 -2
  248. package/Misc/khronosTextureContainer2.js +3 -2
  249. package/Misc/khronosTextureContainer2.js.map +1 -1
  250. package/Misc/minMaxReducer.d.ts +2 -2
  251. package/Misc/minMaxReducer.js.map +1 -1
  252. package/Misc/textureTools.js.map +1 -1
  253. package/Misc/tools.d.ts +7 -7
  254. package/Misc/tools.functions.d.ts +26 -0
  255. package/Misc/tools.functions.js +62 -0
  256. package/Misc/tools.functions.js.map +1 -1
  257. package/Misc/tools.js.map +1 -1
  258. package/Misc/videoRecorder.d.ts +3 -3
  259. package/Misc/videoRecorder.js.map +1 -1
  260. package/Particles/baseParticleSystem.d.ts +2 -2
  261. package/Particles/baseParticleSystem.js.map +1 -1
  262. package/Particles/computeShaderParticleSystem.d.ts +2 -2
  263. package/Particles/computeShaderParticleSystem.js.map +1 -1
  264. package/Particles/gpuParticleSystem.d.ts +3 -3
  265. package/Particles/gpuParticleSystem.js +2 -2
  266. package/Particles/gpuParticleSystem.js.map +1 -1
  267. package/Particles/particle.js +1 -1
  268. package/Particles/particle.js.map +1 -1
  269. package/Particles/particleSystem.d.ts +3 -3
  270. package/Particles/particleSystem.js +3 -3
  271. package/Particles/particleSystem.js.map +1 -1
  272. package/Particles/particleSystemComponent.d.ts +2 -2
  273. package/Particles/particleSystemComponent.js +2 -2
  274. package/Particles/particleSystemComponent.js.map +1 -1
  275. package/Particles/subEmitter.d.ts +3 -3
  276. package/Particles/subEmitter.js.map +1 -1
  277. package/Particles/thinParticleSystem.d.ts +2 -2
  278. package/Particles/thinParticleSystem.js.map +1 -1
  279. package/Physics/v2/physicsBody.js +3 -3
  280. package/Physics/v2/physicsBody.js.map +1 -1
  281. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
  282. package/PostProcesses/RenderPipeline/postProcessRenderEffect.d.ts +2 -2
  283. package/PostProcesses/RenderPipeline/postProcessRenderEffect.js.map +1 -1
  284. package/PostProcesses/RenderPipeline/postProcessRenderPipeline.d.ts +2 -2
  285. package/PostProcesses/RenderPipeline/postProcessRenderPipeline.js.map +1 -1
  286. package/PostProcesses/blackAndWhitePostProcess.d.ts +2 -2
  287. package/PostProcesses/blackAndWhitePostProcess.js.map +1 -1
  288. package/PostProcesses/bloomMergePostProcess.d.ts +2 -2
  289. package/PostProcesses/bloomMergePostProcess.js.map +1 -1
  290. package/PostProcesses/blurPostProcess.d.ts +2 -2
  291. package/PostProcesses/blurPostProcess.js.map +1 -1
  292. package/PostProcesses/chromaticAberrationPostProcess.d.ts +2 -2
  293. package/PostProcesses/chromaticAberrationPostProcess.js.map +1 -1
  294. package/PostProcesses/circleOfConfusionPostProcess.d.ts +2 -2
  295. package/PostProcesses/circleOfConfusionPostProcess.js.map +1 -1
  296. package/PostProcesses/colorCorrectionPostProcess.d.ts +2 -2
  297. package/PostProcesses/colorCorrectionPostProcess.js.map +1 -1
  298. package/PostProcesses/convolutionPostProcess.d.ts +2 -2
  299. package/PostProcesses/convolutionPostProcess.js.map +1 -1
  300. package/PostProcesses/depthOfFieldBlurPostProcess.d.ts +2 -2
  301. package/PostProcesses/depthOfFieldBlurPostProcess.js.map +1 -1
  302. package/PostProcesses/depthOfFieldEffect.js +1 -1
  303. package/PostProcesses/depthOfFieldEffect.js.map +1 -1
  304. package/PostProcesses/depthOfFieldMergePostProcess.d.ts +2 -2
  305. package/PostProcesses/depthOfFieldMergePostProcess.js.map +1 -1
  306. package/PostProcesses/displayPassPostProcess.d.ts +2 -2
  307. package/PostProcesses/displayPassPostProcess.js.map +1 -1
  308. package/PostProcesses/extractHighlightsPostProcess.d.ts +2 -2
  309. package/PostProcesses/extractHighlightsPostProcess.js.map +1 -1
  310. package/PostProcesses/filterPostProcess.d.ts +2 -2
  311. package/PostProcesses/filterPostProcess.js.map +1 -1
  312. package/PostProcesses/fxaaPostProcess.d.ts +2 -2
  313. package/PostProcesses/fxaaPostProcess.js +2 -2
  314. package/PostProcesses/fxaaPostProcess.js.map +1 -1
  315. package/PostProcesses/grainPostProcess.d.ts +2 -2
  316. package/PostProcesses/grainPostProcess.js.map +1 -1
  317. package/PostProcesses/imageProcessingPostProcess.d.ts +2 -2
  318. package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
  319. package/PostProcesses/motionBlurPostProcess.d.ts +2 -2
  320. package/PostProcesses/motionBlurPostProcess.js.map +1 -1
  321. package/PostProcesses/passPostProcess.d.ts +3 -3
  322. package/PostProcesses/passPostProcess.js +2 -2
  323. package/PostProcesses/passPostProcess.js.map +1 -1
  324. package/PostProcesses/postProcess.d.ts +4 -4
  325. package/PostProcesses/postProcess.js +3 -3
  326. package/PostProcesses/postProcess.js.map +1 -1
  327. package/PostProcesses/refractionPostProcess.d.ts +2 -2
  328. package/PostProcesses/refractionPostProcess.js.map +1 -1
  329. package/PostProcesses/screenSpaceCurvaturePostProcess.d.ts +2 -2
  330. package/PostProcesses/screenSpaceCurvaturePostProcess.js.map +1 -1
  331. package/PostProcesses/screenSpaceReflectionPostProcess.d.ts +2 -2
  332. package/PostProcesses/screenSpaceReflectionPostProcess.js.map +1 -1
  333. package/PostProcesses/sharpenPostProcess.d.ts +2 -2
  334. package/PostProcesses/sharpenPostProcess.js.map +1 -1
  335. package/PostProcesses/subSurfaceScatteringPostProcess.d.ts +2 -2
  336. package/PostProcesses/subSurfaceScatteringPostProcess.js.map +1 -1
  337. package/PostProcesses/volumetricLightScatteringPostProcess.d.ts +2 -2
  338. package/PostProcesses/volumetricLightScatteringPostProcess.js.map +1 -1
  339. package/Rendering/GlobalIllumination/giRSMManager.js.map +1 -1
  340. package/Rendering/depthPeelingRenderer.js.map +1 -1
  341. package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
  342. package/Rendering/fluidRenderer/fluidRenderingDepthTextureCopy.d.ts +2 -2
  343. package/Rendering/fluidRenderer/fluidRenderingDepthTextureCopy.js.map +1 -1
  344. package/Rendering/fluidRenderer/fluidRenderingObject.d.ts +2 -2
  345. package/Rendering/fluidRenderer/fluidRenderingObject.js.map +1 -1
  346. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.d.ts +2 -2
  347. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js.map +1 -1
  348. package/Rendering/fluidRenderer/fluidRenderingTextures.d.ts +2 -2
  349. package/Rendering/fluidRenderer/fluidRenderingTextures.js.map +1 -1
  350. package/Rendering/geometryBufferRenderer.js +24 -18
  351. package/Rendering/geometryBufferRenderer.js.map +1 -1
  352. package/Rendering/outlineRenderer.js.map +1 -1
  353. package/Rendering/prePassRenderer.js.map +1 -1
  354. package/Sprites/spriteRenderer.d.ts +2 -2
  355. package/Sprites/spriteRenderer.js.map +1 -1
  356. package/XR/features/WebXRDepthSensing.js.map +1 -1
  357. package/XR/features/WebXRImageTracking.js.map +1 -1
  358. package/XR/features/WebXRLayers.d.ts +2 -2
  359. package/XR/features/WebXRLayers.js.map +1 -1
  360. package/XR/features/WebXRLightEstimation.js.map +1 -1
  361. package/XR/features/WebXRRawCameraAccess.d.ts +1 -1
  362. package/XR/features/WebXRRawCameraAccess.js.map +1 -1
  363. package/XR/features/WebXRSpaceWarp.js +1 -3
  364. package/XR/features/WebXRSpaceWarp.js.map +1 -1
  365. package/XR/features/WebXRWalkingLocomotion.js.map +1 -1
  366. package/XR/webXRExperienceHelper.js.map +1 -1
  367. package/XR/webXRManagedOutputCanvas.d.ts +2 -2
  368. package/XR/webXRManagedOutputCanvas.js.map +1 -1
  369. package/XR/webXRRenderTargetTextureProvider.js.map +1 -1
  370. package/XR/webXRSessionManager.js.map +1 -1
  371. package/assetContainer.js.map +1 -1
  372. package/node.d.ts +2 -2
  373. package/node.js.map +1 -1
  374. package/package.json +1 -1
  375. package/scene.d.ts +3 -3
  376. package/scene.js.map +1 -1
@@ -1,5 +1,4 @@
1
1
  import type { Nullable, DataArray, IndicesArray, Immutable, FloatArray } from "../types";
2
- import { Engine } from "../Engines/engine";
3
2
  import { InternalTexture, InternalTextureSource } from "../Materials/Textures/internalTexture";
4
3
  import type { IEffectCreationOptions, IShaderPath } from "../Materials/effect";
5
4
  import { Effect } from "../Materials/effect";
@@ -11,14 +10,14 @@ import type { BaseTexture } from "../Materials/Textures/baseTexture";
11
10
  import type { IShaderProcessor } from "./Processors/iShaderProcessor";
12
11
  import type { ShaderProcessingContext } from "./Processors/shaderProcessingOptions";
13
12
  import { WebGPUTextureManager } from "./WebGPU/webgpuTextureManager";
14
- import type { ISceneLike, ThinEngineOptions } from "./thinEngine";
13
+ import { type ISceneLike, AbstractEngine } from "./abstractEngine";
15
14
  import { WebGPUBufferManager } from "./WebGPU/webgpuBufferManager";
16
15
  import type { HardwareTextureWrapper } from "../Materials/Textures/hardwareTextureWrapper";
17
16
  import { WebGPUHardwareTexture } from "./WebGPU/webgpuHardwareTexture";
18
17
  import type { IColor4Like } from "../Maths/math.like";
19
18
  import { WebGPUCacheSampler } from "./WebGPU/webgpuCacheSampler";
20
19
  import type { WebGPUCacheRenderPipeline } from "./WebGPU/webgpuCacheRenderPipeline";
21
- import { DrawWrapper } from "../Materials/drawWrapper";
20
+ import type { DrawWrapper } from "../Materials/drawWrapper";
22
21
  import { WebGPUMaterialContext } from "./WebGPU/webgpuMaterialContext";
23
22
  import { WebGPUDrawContext } from "./WebGPU/webgpuDrawContext";
24
23
  import type { IStencilState } from "../States/IStencilState";
@@ -33,8 +32,18 @@ import type { InternalTextureCreationOptions, TextureSize } from "../Materials/T
33
32
  import type { WebGPUDataBuffer } from "../Meshes/WebGPU/webgpuDataBuffer";
34
33
  import "../Buffers/buffer.align";
35
34
  import "../ShadersWGSL/postprocess.vertex";
35
+ import type { RenderTargetTexture } from "../Materials/Textures/renderTargetTexture";
36
36
  import type { RenderTargetWrapper } from "./renderTargetWrapper";
37
37
  import { WebGPUPerfCounter } from "./WebGPU/webgpuPerfCounter";
38
+ import type { Scene } from "../scene";
39
+ import type { AbstractEngineOptions } from "./abstractEngine";
40
+ import type { PostProcess } from "../PostProcesses/postProcess";
41
+ import { PerformanceMonitor } from "../Misc/performanceMonitor";
42
+ import "./AbstractEngine/abstractEngine.loadingScreen";
43
+ import "./AbstractEngine/abstractEngine.dom";
44
+ import "./AbstractEngine/abstractEngine.states";
45
+ import "./AbstractEngine/abstractEngine.renderPass";
46
+ import "../Audio/audioEngine";
38
47
  /** @internal */
39
48
  interface IWebGPURenderPassWrapper {
40
49
  renderPassDescriptor: Nullable<GPURenderPassDescriptor>;
@@ -63,7 +72,7 @@ export interface GlslangOptions {
63
72
  /**
64
73
  * Options to create the WebGPU engine
65
74
  */
66
- export interface WebGPUEngineOptions extends ThinEngineOptions, GPURequestAdapterOptions {
75
+ export interface WebGPUEngineOptions extends AbstractEngineOptions, GPURequestAdapterOptions {
67
76
  /**
68
77
  * Defines the category of adapter to use.
69
78
  * Is it the discrete or integrated device.
@@ -110,7 +119,7 @@ export interface WebGPUEngineOptions extends ThinEngineOptions, GPURequestAdapte
110
119
  * The web GPU engine class provides support for WebGPU version of babylon.js.
111
120
  * @since 5.0.0
112
121
  */
113
- export declare class WebGPUEngine extends Engine {
122
+ export declare class WebGPUEngine extends AbstractEngine {
114
123
  private static readonly _GLSLslangDefaultOptions;
115
124
  private static _InstanceId;
116
125
  /** true to enable using TintWASM to convert Spir-V to WGSL */
@@ -185,6 +194,12 @@ export declare class WebGPUEngine extends Engine {
185
194
  * Max number of uncaptured error messages to log
186
195
  */
187
196
  numMaxUncapturedErrors: number;
197
+ /**
198
+ * Gets the list of created scenes
199
+ */
200
+ scenes: Scene[];
201
+ /** @internal */
202
+ _virtualScenes: Scene[];
188
203
  private _mainTexture;
189
204
  private _depthTexture;
190
205
  private _mainTextureExtends;
@@ -233,6 +248,7 @@ export declare class WebGPUEngine extends Engine {
233
248
  /** @internal */
234
249
  dbgShowEmptyEnableEffectCalls: boolean;
235
250
  private _snapshotRendering;
251
+ protected _snapshotRenderingMode: number;
236
252
  /**
237
253
  * Gets or sets the snapshot rendering mode
238
254
  */
@@ -263,6 +279,21 @@ export declare class WebGPUEngine extends Engine {
263
279
  */
264
280
  get disableCacheBindGroups(): boolean;
265
281
  set disableCacheBindGroups(disable: boolean);
282
+ /**
283
+ * Gets a boolean indicating if all created effects are ready
284
+ * @returns true if all effects are ready
285
+ */
286
+ areAllEffectsReady(): boolean;
287
+ /**
288
+ * Get Font size information
289
+ * @param font font name
290
+ * @returns an object containing ascent, height and descent
291
+ */
292
+ getFontOffset(font: string): {
293
+ ascent: number;
294
+ height: number;
295
+ descent: number;
296
+ };
266
297
  /**
267
298
  * Gets a Promise<boolean> indicating if the engine can be instantiated (ie. if a WebGPU context can be found)
268
299
  */
@@ -336,6 +367,8 @@ export declare class WebGPUEngine extends Engine {
336
367
  * Indicates that the origin of the texture/framebuffer space is the bottom left corner. If false, the origin is top left
337
368
  */
338
369
  readonly hasOriginBottomLeft: boolean;
370
+ /** @internal */
371
+ protected _creationOptions: WebGPUEngineOptions;
339
372
  /**
340
373
  * Create a new instance of the gpu engine.
341
374
  * @param canvas Defines the canvas to use to display the result
@@ -353,9 +386,73 @@ export declare class WebGPUEngine extends Engine {
353
386
  private _initializeLimits;
354
387
  private _initializeContextAndSwapChain;
355
388
  private _initializeMainAttachments;
389
+ /**
390
+ * Shared initialization across engines types.
391
+ * @param canvas The canvas associated with this instance of the engine.
392
+ */
393
+ protected _sharedInit(canvas: HTMLCanvasElement): void;
356
394
  private _configureContext;
395
+ /**
396
+ * Resize an image and returns the image data as an uint8array
397
+ * @param image image to resize
398
+ * @param bufferWidth destination buffer width
399
+ * @param bufferHeight destination buffer height
400
+ * @returns an uint8array containing RGBA values of bufferWidth * bufferHeight size
401
+ */
402
+ resizeImageBitmap(image: HTMLImageElement | ImageBitmap, bufferWidth: number, bufferHeight: number): Uint8Array;
403
+ /**
404
+ * Engine abstraction for loading and creating an image bitmap from a given source string.
405
+ * @param imageSource source to load the image from.
406
+ * @param options An object that sets options for the image's extraction.
407
+ * @returns ImageBitmap
408
+ */
409
+ _createImageBitmapFromSource(imageSource: string, options?: ImageBitmapOptions): Promise<ImageBitmap>;
410
+ /**
411
+ * Toggle full screen mode
412
+ * @param requestPointerLock defines if a pointer lock should be requested from the user
413
+ */
414
+ switchFullscreen(requestPointerLock: boolean): void;
415
+ /**
416
+ * Enters full screen mode
417
+ * @param requestPointerLock defines if a pointer lock should be requested from the user
418
+ */
419
+ enterFullscreen(requestPointerLock: boolean): void;
420
+ /**
421
+ * Exits full screen mode
422
+ */
423
+ exitFullscreen(): void;
424
+ /**
425
+ * Enters Pointerlock mode
426
+ */
427
+ enterPointerlock(): void;
428
+ /**
429
+ * Exits Pointerlock mode
430
+ */
431
+ exitPointerlock(): void;
357
432
  protected _rebuildBuffers(): void;
358
433
  protected _restoreEngineAfterContextLost(initEngine: () => void): void;
434
+ /**
435
+ * Sets a depth stencil texture from a render target to the according uniform.
436
+ * @param channel The texture channel
437
+ * @param uniform The uniform to set
438
+ * @param texture The render target texture containing the depth stencil texture to apply
439
+ * @param name The texture name
440
+ */
441
+ setDepthStencilTexture(channel: number, uniform: Nullable<WebGLUniformLocation>, texture: Nullable<RenderTargetTexture>, name?: string): void;
442
+ /**
443
+ * Sets a texture to the context from a postprocess
444
+ * @param channel defines the channel to use
445
+ * @param postProcess defines the source postprocess
446
+ * @param name name of the channel
447
+ */
448
+ setTextureFromPostProcess(channel: number, postProcess: Nullable<PostProcess>, name: string): void;
449
+ /**
450
+ * Binds the output of the passed in post process to the texture channel specified
451
+ * @param channel The channel the texture should be bound to
452
+ * @param postProcess The post process which's output should be bound
453
+ * @param name name of the channel
454
+ */
455
+ setTextureFromPostProcessOutput(channel: number, postProcess: Nullable<PostProcess>, name: string): void;
359
456
  /**
360
457
  * Force a specific size of the canvas
361
458
  * @param width defines the new canvas' width
@@ -480,6 +577,10 @@ export declare class WebGPUEngine extends Engine {
480
577
  * @internal
481
578
  */
482
579
  updateAndBindInstancesBuffer(): void;
580
+ /**
581
+ * Unbind all instance attributes
582
+ */
583
+ unbindInstanceAttributes(): void;
483
584
  /**
484
585
  * Bind a list of vertex buffers with the engine
485
586
  * @param vertexBuffers defines the list of vertex buffers to bind
@@ -549,7 +650,7 @@ export declare class WebGPUEngine extends Engine {
549
650
  createEffect(baseName: string | (IShaderPath & {
550
651
  vertexToken?: string;
551
652
  fragmentToken?: string;
552
- }), attributesNamesOrOptions: string[] | IEffectCreationOptions, uniformsNamesOrEngine: string[] | Engine, samplers?: string[], defines?: string, fallbacks?: EffectFallbacks, onCompiled?: Nullable<(effect: Effect) => void>, onError?: Nullable<(effect: Effect, errors: string) => void>, indexParameters?: any, shaderLanguage?: ShaderLanguage): Effect;
653
+ }), attributesNamesOrOptions: string[] | IEffectCreationOptions, uniformsNamesOrEngine: string[] | AbstractEngine, samplers?: string[], defines?: string, fallbacks?: EffectFallbacks, onCompiled?: Nullable<(effect: Effect) => void>, onError?: Nullable<(effect: Effect, errors: string) => void>, indexParameters?: any, shaderLanguage?: ShaderLanguage): Effect;
553
654
  private _compileRawShaderToSpirV;
554
655
  private _compileShaderToSpirV;
555
656
  private _getWGSLShader;
@@ -673,6 +774,10 @@ export declare class WebGPUEngine extends Engine {
673
774
  */
674
775
  wrapWebGLTexture(): InternalTexture;
675
776
  generateMipMapsForCubemap(texture: InternalTexture): void;
777
+ /**
778
+ * @internal
779
+ */
780
+ _getUseSRGBBuffer(useSRGBBuffer: boolean, noMipmap: boolean): boolean;
676
781
  /**
677
782
  * Update the sampling mode of a given texture
678
783
  * @param samplingMode defines the required sampling mode
@@ -700,6 +805,20 @@ export declare class WebGPUEngine extends Engine {
700
805
  * @internal
701
806
  */
702
807
  _setInternalTexture(name: string, texture: Nullable<InternalTexture | ExternalTexture>, baseName?: string): void;
808
+ /**
809
+ * Create a cube texture from prefiltered data (ie. the mipmaps contain ready to use data for PBR reflection)
810
+ * @param rootUrl defines the url where the file to load is located
811
+ * @param scene defines the current scene
812
+ * @param lodScale defines scale to apply to the mip map selection
813
+ * @param lodOffset defines offset to apply to the mip map selection
814
+ * @param onLoad defines an optional callback raised when the texture is loaded
815
+ * @param onError defines an optional callback raised if there is an issue to load the texture
816
+ * @param format defines the format of the data
817
+ * @param forcedExtension defines the extension to use to pick the right loader
818
+ * @param createPolynomials defines wheter or not to create polynomails harmonics for the texture
819
+ * @returns the cube texture as an InternalTexture
820
+ */
821
+ createPrefilteredCubeTexture(rootUrl: string, scene: Nullable<Scene>, lodScale: number, lodOffset: number, onLoad?: Nullable<(internalTexture: Nullable<InternalTexture>) => void>, onError?: Nullable<(message?: string, exception?: any) => void>, format?: number, forcedExtension?: any, createPolynomials?: boolean): InternalTexture;
703
822
  /**
704
823
  * Sets a texture to the according uniform.
705
824
  * @param channel The texture channel
@@ -724,7 +843,7 @@ export declare class WebGPUEngine extends Engine {
724
843
  /**
725
844
  * @internal
726
845
  */
727
- _bindTexture(channel: number, texture: InternalTexture, name: string): void;
846
+ _bindTexture(channel: number, texture: Nullable<InternalTexture>, name: string): void;
728
847
  /**
729
848
  * Generates the mipmaps for a texture
730
849
  * @param texture texture to generate the mipmaps for
@@ -774,6 +893,13 @@ export declare class WebGPUEngine extends Engine {
774
893
  * @returns a ArrayBufferView promise (Uint8Array) containing RGBA colors
775
894
  */
776
895
  readPixels(x: number, y: number, width: number, height: number, hasAlpha?: boolean, flushRenderer?: boolean): Promise<ArrayBufferView>;
896
+ private _measureFps;
897
+ private _performanceMonitor;
898
+ /**
899
+ * Gets the performance monitor attached to this engine
900
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/scene/optimize_your_scene#engineinstrumentation
901
+ */
902
+ get performanceMonitor(): PerformanceMonitor;
777
903
  /**
778
904
  * Begin a new frame
779
905
  */
@@ -782,6 +908,8 @@ export declare class WebGPUEngine extends Engine {
782
908
  * End the current frame
783
909
  */
784
910
  endFrame(): void;
911
+ /**Gets driver info if available */
912
+ extractDriverInfo(): string;
785
913
  /**
786
914
  * Force a WebGPU flush (ie. a flush of all waiting commands)
787
915
  */
@@ -824,6 +952,20 @@ export declare class WebGPUEngine extends Engine {
824
952
  _setDepthTextureFormat(wrapper: IWebGPURenderPassWrapper): void;
825
953
  setDitheringState(): void;
826
954
  setRasterizerState(): void;
955
+ /**
956
+ * @internal
957
+ */
958
+ _executeWhenRenderingStateIsCompiled(pipelineContext: IPipelineContext, action: () => void): void;
959
+ /**
960
+ * @internal
961
+ */
962
+ bindSamplers(): void;
963
+ /** @internal */
964
+ _getUnpackAlignement(): number;
965
+ /**
966
+ * @internal
967
+ */
968
+ _bindTextureDirectly(): boolean;
827
969
  /**
828
970
  * Set various states to the webGL context
829
971
  * @param culling defines culling state: true to enable culling, false to disable it
@@ -874,107 +1016,5 @@ export declare class WebGPUEngine extends Engine {
874
1016
  * @returns the error code
875
1017
  */
876
1018
  getError(): number;
877
- /**
878
- * @internal
879
- */
880
- bindSamplers(): void;
881
- /**
882
- * @internal
883
- */
884
- _bindTextureDirectly(): boolean;
885
- /**
886
- * Gets a boolean indicating if all created effects are ready
887
- * @returns always true - No parallel shader compilation
888
- */
889
- areAllEffectsReady(): boolean;
890
- /**
891
- * @internal
892
- */
893
- _executeWhenRenderingStateIsCompiled(pipelineContext: IPipelineContext, action: () => void): void;
894
- /**
895
- * @internal
896
- */
897
- _isRenderingStateCompiled(): boolean;
898
- /** @internal */
899
- _getUnpackAlignement(): number;
900
- /**
901
- * @internal
902
- */
903
- _unpackFlipY(): void;
904
- /**
905
- * @internal
906
- */
907
- _bindUnboundFramebuffer(): void;
908
- /**
909
- * @internal
910
- */
911
- _getSamplingParameters(): {
912
- min: number;
913
- mag: number;
914
- };
915
- /**
916
- * @internal
917
- */
918
- getUniforms(): Nullable<WebGLUniformLocation>[];
919
- /**
920
- * @internal
921
- */
922
- setIntArray(): boolean;
923
- /**
924
- * @internal
925
- */
926
- setIntArray2(): boolean;
927
- /**
928
- * @internal
929
- */
930
- setIntArray3(): boolean;
931
- /**
932
- * @internal
933
- */
934
- setIntArray4(): boolean;
935
- /**
936
- * @internal
937
- */
938
- setArray(): boolean;
939
- /**
940
- * @internal
941
- */
942
- setArray2(): boolean;
943
- /**
944
- * @internal
945
- */
946
- setArray3(): boolean;
947
- /**
948
- * @internal
949
- */
950
- setArray4(): boolean;
951
- /**
952
- * @internal
953
- */
954
- setMatrices(): boolean;
955
- /**
956
- * @internal
957
- */
958
- setMatrix3x3(): boolean;
959
- /**
960
- * @internal
961
- */
962
- setMatrix2x2(): boolean;
963
- /**
964
- * @internal
965
- */
966
- setFloat(): boolean;
967
- /**
968
- * @internal
969
- */
970
- setFloat2(): boolean;
971
- /**
972
- * @internal
973
- */
974
- setFloat3(): boolean;
975
- /**
976
- * @internal
977
- */
978
- setFloat4(): boolean;
979
1019
  }
980
1020
  export {};