@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
@@ -15,6 +15,7 @@ import { WebGPUShaderProcessingContext } from "./WebGPU/webgpuShaderProcessingCo
15
15
  import { Tools } from "../Misc/tools.js";
16
16
  import { WebGPUTextureHelper } from "./WebGPU/webgpuTextureHelper.js";
17
17
  import { WebGPUTextureManager } from "./WebGPU/webgpuTextureManager.js";
18
+ import { AbstractEngine } from "./abstractEngine.js";
18
19
  import { WebGPUBufferManager } from "./WebGPU/webgpuBufferManager.js";
19
20
  import { WebGPUHardwareTexture } from "./WebGPU/webgpuHardwareTexture.js";
20
21
  import { UniformBuffer } from "../Materials/uniformBuffer.js";
@@ -22,7 +23,6 @@ import { WebGPUCacheSampler } from "./WebGPU/webgpuCacheSampler.js";
22
23
  import { WebGPUCacheRenderPipelineTree } from "./WebGPU/webgpuCacheRenderPipelineTree.js";
23
24
  import { WebGPUStencilStateComposer } from "./WebGPU/webgpuStencilStateComposer.js";
24
25
  import { WebGPUDepthCullingState } from "./WebGPU/webgpuDepthCullingState.js";
25
- import { DrawWrapper } from "../Materials/drawWrapper.js";
26
26
  import { WebGPUMaterialContext } from "./WebGPU/webgpuMaterialContext.js";
27
27
  import { WebGPUDrawContext } from "./WebGPU/webgpuDrawContext.js";
28
28
  import { WebGPUCacheBindGroups } from "./WebGPU/webgpuCacheBindGroups.js";
@@ -38,6 +38,16 @@ import { WebGPUSnapshotRendering } from "./WebGPU/webgpuSnapshotRendering.js";
38
38
  import "../Buffers/buffer.align.js";
39
39
  import "../ShadersWGSL/postprocess.vertex.js";
40
40
  import { WebGPUPerfCounter } from "./WebGPU/webgpuPerfCounter.js";
41
+ import { SphericalPolynomial } from "../Maths/sphericalPolynomial.js";
42
+ import { PerformanceMonitor } from "../Misc/performanceMonitor.js";
43
+ import { CreateImageBitmapFromSource, ExitFullscreen, ExitPointerlock, GetFontOffset, RequestFullscreen, RequestPointerlock, ResizeImageBitmap, _CommonDispose, _CommonInit, } from "./engine.common.js";
44
+ import { IsWrapper } from "../Materials/drawWrapper.functions.js";
45
+ import { PerfCounter } from "../Misc/perfCounter.js";
46
+ import "./AbstractEngine/abstractEngine.loadingScreen.js";
47
+ import "./AbstractEngine/abstractEngine.dom.js";
48
+ import "./AbstractEngine/abstractEngine.states.js";
49
+ import "./AbstractEngine/abstractEngine.renderPass.js";
50
+ import "../Audio/audioEngine.js";
41
51
  const viewDescriptorSwapChainAntialiasing = {
42
52
  label: `TextureView_SwapChain_ResolveTarget`,
43
53
  dimension: WebGPUConstants.TextureDimension.E2d,
@@ -58,7 +68,7 @@ const tempColor4 = new Color4();
58
68
  * The web GPU engine class provides support for WebGPU version of babylon.js.
59
69
  * @since 5.0.0
60
70
  */
61
- export class WebGPUEngine extends Engine {
71
+ export class WebGPUEngine extends AbstractEngine {
62
72
  /**
63
73
  * Gets or sets the snapshot rendering mode
64
74
  */
@@ -117,6 +127,21 @@ export class WebGPUEngine extends Engine {
117
127
  this._cacheBindGroups.disabled = disable;
118
128
  }
119
129
  }
130
+ /**
131
+ * Gets a boolean indicating if all created effects are ready
132
+ * @returns true if all effects are ready
133
+ */
134
+ areAllEffectsReady() {
135
+ return true;
136
+ }
137
+ /**
138
+ * Get Font size information
139
+ * @param font font name
140
+ * @returns an object containing ascent, height and descent
141
+ */
142
+ getFontOffset(font) {
143
+ return GetFontOffset(font);
144
+ }
120
145
  /**
121
146
  * Gets a Promise<boolean> indicating if the engine can be instantiated (ie. if a WebGPU context can be found)
122
147
  */
@@ -228,7 +253,7 @@ export class WebGPUEngine extends Engine {
228
253
  * @param options Defines the options passed to the engine to create the GPU context dependencies
229
254
  */
230
255
  constructor(canvas, options = {}) {
231
- super(null, options.antialias ?? true, options);
256
+ super(options.antialias ?? true, options);
232
257
  /** A unique id to identify this instance */
233
258
  this.uniqueId = -1;
234
259
  // Page Life cycle and constants
@@ -273,6 +298,12 @@ export class WebGPUEngine extends Engine {
273
298
  * Max number of uncaptured error messages to log
274
299
  */
275
300
  this.numMaxUncapturedErrors = 20;
301
+ /**
302
+ * Gets the list of created scenes
303
+ */
304
+ this.scenes = [];
305
+ /** @internal */
306
+ this._virtualScenes = new Array();
276
307
  this._commandBuffers = [null, null];
277
308
  // Frame Buffer Life Cycle (recreated for each render target pass)
278
309
  /** @internal */
@@ -310,6 +341,7 @@ export class WebGPUEngine extends Engine {
310
341
  this.dbgLogIfNotDrawWrapper = true;
311
342
  /** @internal */
312
343
  this.dbgShowEmptyEnableEffectCalls = true;
344
+ this._snapshotRenderingMode = 0;
313
345
  /**
314
346
  * Indicates if the z range in NDC space is 0..1 (value: true) or -1..1 (value: false)
315
347
  */
@@ -327,7 +359,10 @@ export class WebGPUEngine extends Engine {
327
359
  this._scissorCached = { x: 0, y: 0, z: 0, w: 0 };
328
360
  this._stencilRefsCurrent = -1;
329
361
  this._blendColorsCurrent = [null, null, null, null];
362
+ this._performanceMonitor = new PerformanceMonitor();
330
363
  this._name = "WebGPU";
364
+ this._drawCalls = new PerfCounter();
365
+ this._creationOptions = options;
331
366
  options.deviceDescriptor = options.deviceDescriptor || {};
332
367
  options.enableGPUDebugMarkers = options.enableGPUDebugMarkers ?? false;
333
368
  Logger.Log(`Babylon.js v${Engine.Version} - ${this.description} engine`);
@@ -341,7 +376,9 @@ export class WebGPUEngine extends Engine {
341
376
  this._renderingCanvas = canvas;
342
377
  this._options = options;
343
378
  this._mainPassSampleCount = options.antialias ? this._defaultSampleCount : 1;
344
- this._setupMobileChecks();
379
+ if (navigator && navigator.userAgent) {
380
+ this._setupMobileChecks();
381
+ }
345
382
  this._sharedInit(this._renderingCanvas);
346
383
  this._shaderProcessor = new WebGPUShaderProcessorGLSL();
347
384
  this._shaderProcessorWGSL = new WebGPUShaderProcessorWGSL();
@@ -704,6 +741,14 @@ export class WebGPUEngine extends Engine {
704
741
  depthStencilAttachment: mainDepthAttachment,
705
742
  };
706
743
  }
744
+ /**
745
+ * Shared initialization across engines types.
746
+ * @param canvas The canvas associated with this instance of the engine.
747
+ */
748
+ _sharedInit(canvas) {
749
+ super._sharedInit(canvas);
750
+ _CommonInit(this, canvas, this._creationOptions);
751
+ }
707
752
  _configureContext() {
708
753
  this._context.configure({
709
754
  device: this._device,
@@ -712,6 +757,71 @@ export class WebGPUEngine extends Engine {
712
757
  alphaMode: this.premultipliedAlpha ? WebGPUConstants.CanvasAlphaMode.Premultiplied : WebGPUConstants.CanvasAlphaMode.Opaque,
713
758
  });
714
759
  }
760
+ /**
761
+ * Resize an image and returns the image data as an uint8array
762
+ * @param image image to resize
763
+ * @param bufferWidth destination buffer width
764
+ * @param bufferHeight destination buffer height
765
+ * @returns an uint8array containing RGBA values of bufferWidth * bufferHeight size
766
+ */
767
+ resizeImageBitmap(image, bufferWidth, bufferHeight) {
768
+ return ResizeImageBitmap(this, image, bufferWidth, bufferHeight);
769
+ }
770
+ /**
771
+ * Engine abstraction for loading and creating an image bitmap from a given source string.
772
+ * @param imageSource source to load the image from.
773
+ * @param options An object that sets options for the image's extraction.
774
+ * @returns ImageBitmap
775
+ */
776
+ _createImageBitmapFromSource(imageSource, options) {
777
+ return CreateImageBitmapFromSource(this, imageSource, options);
778
+ }
779
+ /**
780
+ * Toggle full screen mode
781
+ * @param requestPointerLock defines if a pointer lock should be requested from the user
782
+ */
783
+ switchFullscreen(requestPointerLock) {
784
+ if (this.isFullscreen) {
785
+ this.exitFullscreen();
786
+ }
787
+ else {
788
+ this.enterFullscreen(requestPointerLock);
789
+ }
790
+ }
791
+ /**
792
+ * Enters full screen mode
793
+ * @param requestPointerLock defines if a pointer lock should be requested from the user
794
+ */
795
+ enterFullscreen(requestPointerLock) {
796
+ if (!this.isFullscreen) {
797
+ this._pointerLockRequested = requestPointerLock;
798
+ if (this._renderingCanvas) {
799
+ RequestFullscreen(this._renderingCanvas);
800
+ }
801
+ }
802
+ }
803
+ /**
804
+ * Exits full screen mode
805
+ */
806
+ exitFullscreen() {
807
+ if (this.isFullscreen) {
808
+ ExitFullscreen();
809
+ }
810
+ }
811
+ /**
812
+ * Enters Pointerlock mode
813
+ */
814
+ enterPointerlock() {
815
+ if (this._renderingCanvas) {
816
+ RequestPointerlock(this._renderingCanvas);
817
+ }
818
+ }
819
+ /**
820
+ * Exits Pointerlock mode
821
+ */
822
+ exitPointerlock() {
823
+ ExitPointerlock();
824
+ }
715
825
  _rebuildBuffers() {
716
826
  super._rebuildBuffers();
717
827
  for (const storageBuffer of this._storageBuffers) {
@@ -753,6 +863,51 @@ export class WebGPUEngine extends Engine {
753
863
  this._uniformBuffers = uboList;
754
864
  super._restoreEngineAfterContextLost(initEngine);
755
865
  }
866
+ /**
867
+ * Sets a depth stencil texture from a render target to the according uniform.
868
+ * @param channel The texture channel
869
+ * @param uniform The uniform to set
870
+ * @param texture The render target texture containing the depth stencil texture to apply
871
+ * @param name The texture name
872
+ */
873
+ setDepthStencilTexture(channel, uniform, texture, name) {
874
+ if (channel === undefined) {
875
+ return;
876
+ }
877
+ if (!texture || !texture.depthStencilTexture) {
878
+ this._setTexture(channel, null, undefined, undefined, name);
879
+ }
880
+ else {
881
+ this._setTexture(channel, texture, false, true, name);
882
+ }
883
+ }
884
+ /**
885
+ * Sets a texture to the context from a postprocess
886
+ * @param channel defines the channel to use
887
+ * @param postProcess defines the source postprocess
888
+ * @param name name of the channel
889
+ */
890
+ setTextureFromPostProcess(channel, postProcess, name) {
891
+ let postProcessInput = null;
892
+ if (postProcess) {
893
+ if (postProcess._forcedOutputTexture) {
894
+ postProcessInput = postProcess._forcedOutputTexture;
895
+ }
896
+ else if (postProcess._textures.data[postProcess._currentRenderTextureInd]) {
897
+ postProcessInput = postProcess._textures.data[postProcess._currentRenderTextureInd];
898
+ }
899
+ }
900
+ this._bindTexture(channel, postProcessInput?.texture ?? null, name);
901
+ }
902
+ /**
903
+ * Binds the output of the passed in post process to the texture channel specified
904
+ * @param channel The channel the texture should be bound to
905
+ * @param postProcess The post process which's output should be bound
906
+ * @param name name of the channel
907
+ */
908
+ setTextureFromPostProcessOutput(channel, postProcess, name) {
909
+ this._bindTexture(channel, postProcess?._outputTexture?.texture ?? null, name);
910
+ }
756
911
  /**
757
912
  * Force a specific size of the canvas
758
913
  * @param width defines the new canvas' width
@@ -1240,6 +1395,12 @@ export class WebGPUEngine extends Engine {
1240
1395
  // eslint-disable-next-line no-throw-literal
1241
1396
  throw "Not implemented on WebGPU";
1242
1397
  }
1398
+ /**
1399
+ * Unbind all instance attributes
1400
+ */
1401
+ unbindInstanceAttributes() {
1402
+ // Does nothing
1403
+ }
1243
1404
  /**
1244
1405
  * Bind a list of vertex buffers with the engine
1245
1406
  * @param vertexBuffers defines the list of vertex buffers to bind
@@ -1526,7 +1687,7 @@ export class WebGPUEngine extends Engine {
1526
1687
  if (!effect) {
1527
1688
  return;
1528
1689
  }
1529
- if (!DrawWrapper.IsWrapper(effect)) {
1690
+ if (!IsWrapper(effect)) {
1530
1691
  this._currentEffect = effect;
1531
1692
  this._currentMaterialContext = this._defaultMaterialContext;
1532
1693
  this._currentDrawContext = this._defaultDrawContext;
@@ -1777,6 +1938,12 @@ export class WebGPUEngine extends Engine {
1777
1938
  this._generateMipmaps(texture);
1778
1939
  }
1779
1940
  }
1941
+ /**
1942
+ * @internal
1943
+ */
1944
+ _getUseSRGBBuffer(useSRGBBuffer, noMipmap) {
1945
+ return useSRGBBuffer && this._caps.supportSRGBBuffers;
1946
+ }
1780
1947
  /**
1781
1948
  * Update the sampling mode of a given texture
1782
1949
  * @param samplingMode defines the required sampling mode
@@ -1842,6 +2009,41 @@ export class WebGPUEngine extends Engine {
1842
2009
  }
1843
2010
  }
1844
2011
  }
2012
+ /**
2013
+ * Create a cube texture from prefiltered data (ie. the mipmaps contain ready to use data for PBR reflection)
2014
+ * @param rootUrl defines the url where the file to load is located
2015
+ * @param scene defines the current scene
2016
+ * @param lodScale defines scale to apply to the mip map selection
2017
+ * @param lodOffset defines offset to apply to the mip map selection
2018
+ * @param onLoad defines an optional callback raised when the texture is loaded
2019
+ * @param onError defines an optional callback raised if there is an issue to load the texture
2020
+ * @param format defines the format of the data
2021
+ * @param forcedExtension defines the extension to use to pick the right loader
2022
+ * @param createPolynomials defines wheter or not to create polynomails harmonics for the texture
2023
+ * @returns the cube texture as an InternalTexture
2024
+ */
2025
+ createPrefilteredCubeTexture(rootUrl, scene, lodScale, lodOffset, onLoad = null, onError = null, format, forcedExtension = null, createPolynomials = true) {
2026
+ const callback = (loadData) => {
2027
+ if (!loadData) {
2028
+ if (onLoad) {
2029
+ onLoad(null);
2030
+ }
2031
+ return;
2032
+ }
2033
+ const texture = loadData.texture;
2034
+ if (!createPolynomials) {
2035
+ texture._sphericalPolynomial = new SphericalPolynomial();
2036
+ }
2037
+ else if (loadData.info.sphericalPolynomial) {
2038
+ texture._sphericalPolynomial = loadData.info.sphericalPolynomial;
2039
+ }
2040
+ texture._source = InternalTextureSource.CubePrefiltered;
2041
+ if (onLoad) {
2042
+ onLoad(texture);
2043
+ }
2044
+ };
2045
+ return this.createCubeTexture(rootUrl, scene, null, false, callback, onError, format, forcedExtension, createPolynomials, lodScale, lodOffset);
2046
+ }
1845
2047
  /**
1846
2048
  * Sets a texture to the according uniform.
1847
2049
  * @param channel The texture channel
@@ -2104,10 +2306,23 @@ export class WebGPUEngine extends Engine {
2104
2306
  //------------------------------------------------------------------------------
2105
2307
  // Frame management
2106
2308
  //------------------------------------------------------------------------------
2309
+ _measureFps() {
2310
+ this._performanceMonitor.sampleFrame();
2311
+ this._fps = this._performanceMonitor.averageFPS;
2312
+ this._deltaTime = this._performanceMonitor.instantaneousFrameTime || 0;
2313
+ }
2314
+ /**
2315
+ * Gets the performance monitor attached to this engine
2316
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/scene/optimize_your_scene#engineinstrumentation
2317
+ */
2318
+ get performanceMonitor() {
2319
+ return this._performanceMonitor;
2320
+ }
2107
2321
  /**
2108
2322
  * Begin a new frame
2109
2323
  */
2110
2324
  beginFrame() {
2325
+ this._measureFps();
2111
2326
  super.beginFrame();
2112
2327
  }
2113
2328
  /**
@@ -2147,7 +2362,6 @@ export class WebGPUEngine extends Engine {
2147
2362
  this._cacheRenderPipeline.endFrame();
2148
2363
  this._cacheBindGroups.endFrame();
2149
2364
  this._pendingDebugCommands.length = 0;
2150
- super.endFrame();
2151
2365
  if (this.dbgVerboseLogsForFirstFrames) {
2152
2366
  if (this._count === undefined) {
2153
2367
  this._count = 0;
@@ -2162,6 +2376,11 @@ export class WebGPUEngine extends Engine {
2162
2376
  }
2163
2377
  }
2164
2378
  }
2379
+ super.endFrame();
2380
+ }
2381
+ /**Gets driver info if available */
2382
+ extractDriverInfo() {
2383
+ return "";
2165
2384
  }
2166
2385
  /**
2167
2386
  * Force a WebGPU flush (ie. a flush of all waiting commands)
@@ -2518,7 +2737,7 @@ export class WebGPUEngine extends Engine {
2518
2737
  */
2519
2738
  unBindFramebuffer(texture, disableGenerateMipMaps = false, onBeforeUnbind) {
2520
2739
  const saveCRT = this._currentRenderTarget;
2521
- this._currentRenderTarget = null; // to be iso with thinEngine, this._currentRenderTarget must be null when onBeforeUnbind is called
2740
+ this._currentRenderTarget = null; // to be iso with abstractEngine, this._currentRenderTarget must be null when onBeforeUnbind is called
2522
2741
  if (onBeforeUnbind) {
2523
2742
  onBeforeUnbind();
2524
2743
  }
@@ -2585,6 +2804,28 @@ export class WebGPUEngine extends Engine {
2585
2804
  setRasterizerState() {
2586
2805
  // Does not exist in WebGPU
2587
2806
  }
2807
+ /**
2808
+ * @internal
2809
+ */
2810
+ _executeWhenRenderingStateIsCompiled(pipelineContext, action) {
2811
+ // No parallel shader compilation.
2812
+ // No Async, so direct launch
2813
+ action();
2814
+ }
2815
+ /**
2816
+ * @internal
2817
+ */
2818
+ bindSamplers() { }
2819
+ /** @internal */
2820
+ _getUnpackAlignement() {
2821
+ return 1;
2822
+ }
2823
+ /**
2824
+ * @internal
2825
+ */
2826
+ _bindTextureDirectly() {
2827
+ return false;
2828
+ }
2588
2829
  /**
2589
2830
  * Set various states to the webGL context
2590
2831
  * @param culling defines culling state: true to enable culling, false to disable it
@@ -2768,6 +3009,7 @@ export class WebGPUEngine extends Engine {
2768
3009
  this._textureHelper.destroyDeferredTextures();
2769
3010
  this._bufferManager.destroyDeferredBuffers();
2770
3011
  this._device.destroy();
3012
+ _CommonDispose(this, this._renderingCanvas);
2771
3013
  super.dispose();
2772
3014
  }
2773
3015
  //------------------------------------------------------------------------------
@@ -2806,160 +3048,6 @@ export class WebGPUEngine extends Engine {
2806
3048
  // TODO WEBGPU. from the webgpu errors.
2807
3049
  return 0;
2808
3050
  }
2809
- //------------------------------------------------------------------------------
2810
- // Unused WebGPU
2811
- //------------------------------------------------------------------------------
2812
- /**
2813
- * @internal
2814
- */
2815
- bindSamplers() { }
2816
- /**
2817
- * @internal
2818
- */
2819
- _bindTextureDirectly() {
2820
- return false;
2821
- }
2822
- /**
2823
- * Gets a boolean indicating if all created effects are ready
2824
- * @returns always true - No parallel shader compilation
2825
- */
2826
- areAllEffectsReady() {
2827
- return true;
2828
- }
2829
- /**
2830
- * @internal
2831
- */
2832
- _executeWhenRenderingStateIsCompiled(pipelineContext, action) {
2833
- // No parallel shader compilation.
2834
- // No Async, so direct launch
2835
- action();
2836
- }
2837
- /**
2838
- * @internal
2839
- */
2840
- _isRenderingStateCompiled() {
2841
- // No parallel shader compilation.
2842
- return true;
2843
- }
2844
- /** @internal */
2845
- _getUnpackAlignement() {
2846
- return 1;
2847
- }
2848
- /**
2849
- * @internal
2850
- */
2851
- _unpackFlipY() { }
2852
- /**
2853
- * @internal
2854
- */
2855
- _bindUnboundFramebuffer() {
2856
- // eslint-disable-next-line no-throw-literal
2857
- throw "_bindUnboundFramebuffer is not implementedin WebGPU! You probably want to use restoreDefaultFramebuffer or unBindFramebuffer instead";
2858
- }
2859
- // TODO WEBGPU. All of the below should go once engine split with baseEngine.
2860
- /**
2861
- * @internal
2862
- */
2863
- _getSamplingParameters() {
2864
- // eslint-disable-next-line no-throw-literal
2865
- throw "_getSamplingParameters is not available in WebGPU";
2866
- }
2867
- /**
2868
- * @internal
2869
- */
2870
- getUniforms() {
2871
- return [];
2872
- }
2873
- /**
2874
- * @internal
2875
- */
2876
- setIntArray() {
2877
- return false;
2878
- }
2879
- /**
2880
- * @internal
2881
- */
2882
- setIntArray2() {
2883
- return false;
2884
- }
2885
- /**
2886
- * @internal
2887
- */
2888
- setIntArray3() {
2889
- return false;
2890
- }
2891
- /**
2892
- * @internal
2893
- */
2894
- setIntArray4() {
2895
- return false;
2896
- }
2897
- /**
2898
- * @internal
2899
- */
2900
- setArray() {
2901
- return false;
2902
- }
2903
- /**
2904
- * @internal
2905
- */
2906
- setArray2() {
2907
- return false;
2908
- }
2909
- /**
2910
- * @internal
2911
- */
2912
- setArray3() {
2913
- return false;
2914
- }
2915
- /**
2916
- * @internal
2917
- */
2918
- setArray4() {
2919
- return false;
2920
- }
2921
- /**
2922
- * @internal
2923
- */
2924
- setMatrices() {
2925
- return false;
2926
- }
2927
- /**
2928
- * @internal
2929
- */
2930
- setMatrix3x3() {
2931
- return false;
2932
- }
2933
- /**
2934
- * @internal
2935
- */
2936
- setMatrix2x2() {
2937
- return false;
2938
- }
2939
- /**
2940
- * @internal
2941
- */
2942
- setFloat() {
2943
- return false;
2944
- }
2945
- /**
2946
- * @internal
2947
- */
2948
- setFloat2() {
2949
- return false;
2950
- }
2951
- /**
2952
- * @internal
2953
- */
2954
- setFloat3() {
2955
- return false;
2956
- }
2957
- /**
2958
- * @internal
2959
- */
2960
- setFloat4() {
2961
- return false;
2962
- }
2963
3051
  }
2964
3052
  // Default glslang options.
2965
3053
  WebGPUEngine._GLSLslangDefaultOptions = {