@babylonjs/core 5.0.0-alpha.63 → 5.0.0-alpha.64

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 (384) hide show
  1. package/Animations/animation.js +42 -2
  2. package/Animations/animation.js.map +1 -1
  3. package/Animations/animationGroup.d.ts +1 -1
  4. package/Animations/animationGroup.js +1 -1
  5. package/Animations/animationGroup.js.map +1 -1
  6. package/Audio/sound.js +14 -0
  7. package/Audio/sound.js.map +1 -1
  8. package/Cameras/VR/vrDeviceOrientationArcRotateCamera.js +1 -1
  9. package/Cameras/VR/vrDeviceOrientationArcRotateCamera.js.map +1 -1
  10. package/Cameras/VR/vrExperienceHelper.d.ts +1 -1
  11. package/Cameras/VR/vrExperienceHelper.js +1 -1
  12. package/Cameras/VR/vrExperienceHelper.js.map +1 -1
  13. package/DeviceInput/Implementations/{nativeDeviceInputWrapper.d.ts → nativeDeviceInputSystem.d.ts} +5 -21
  14. package/DeviceInput/Implementations/{nativeDeviceInputWrapper.js → nativeDeviceInputSystem.js} +19 -20
  15. package/DeviceInput/Implementations/nativeDeviceInputSystem.js.map +1 -0
  16. package/DeviceInput/Implementations/webDeviceInputSystem.d.ts +7 -20
  17. package/DeviceInput/Implementations/webDeviceInputSystem.js +70 -62
  18. package/DeviceInput/Implementations/webDeviceInputSystem.js.map +1 -1
  19. package/DeviceInput/InputDevices/deviceSourceManager.d.ts +3 -2
  20. package/DeviceInput/InputDevices/deviceSourceManager.js +5 -1
  21. package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
  22. package/DeviceInput/Interfaces/inputInterfaces.d.ts +6 -13
  23. package/DeviceInput/Interfaces/inputInterfaces.js.map +1 -1
  24. package/DeviceInput/deviceInputSystem.d.ts +49 -5
  25. package/DeviceInput/deviceInputSystem.js +62 -10
  26. package/DeviceInput/deviceInputSystem.js.map +1 -1
  27. package/DeviceInput/index.d.ts +1 -1
  28. package/DeviceInput/index.js +1 -1
  29. package/DeviceInput/index.js.map +1 -1
  30. package/Engines/Extensions/engine.views.d.ts +1 -1
  31. package/Engines/Extensions/engine.views.js +1 -1
  32. package/Engines/Extensions/engine.views.js.map +1 -1
  33. package/Engines/Processors/iShaderProcessor.d.ts +1 -1
  34. package/Engines/Processors/iShaderProcessor.js.map +1 -1
  35. package/Engines/Processors/shaderProcessingOptions.d.ts +5 -0
  36. package/Engines/Processors/shaderProcessingOptions.js.map +1 -1
  37. package/Engines/Processors/shaderProcessor.js +8 -2
  38. package/Engines/Processors/shaderProcessor.js.map +1 -1
  39. package/Engines/WebGPU/webgpuBufferManager.d.ts +1 -1
  40. package/Engines/WebGPU/webgpuBufferManager.js.map +1 -1
  41. package/Engines/WebGPU/webgpuCacheBindGroups.js +3 -3
  42. package/Engines/WebGPU/webgpuCacheBindGroups.js.map +1 -1
  43. package/Engines/WebGPU/webgpuClearQuad.js +17 -8
  44. package/Engines/WebGPU/webgpuClearQuad.js.map +1 -1
  45. package/Engines/WebGPU/webgpuComputeContext.js +2 -2
  46. package/Engines/WebGPU/webgpuComputeContext.js.map +1 -1
  47. package/Engines/WebGPU/webgpuHardwareTexture.d.ts +2 -1
  48. package/Engines/WebGPU/webgpuHardwareTexture.js +10 -1
  49. package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
  50. package/Engines/WebGPU/webgpuShaderProcessingContext.js +2 -0
  51. package/Engines/WebGPU/webgpuShaderProcessingContext.js.map +1 -1
  52. package/Engines/WebGPU/webgpuShaderProcessor.d.ts +2 -0
  53. package/Engines/WebGPU/webgpuShaderProcessor.js +23 -0
  54. package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
  55. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.d.ts +1 -0
  56. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +17 -1
  57. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  58. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.d.ts +1 -2
  59. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +10 -29
  60. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  61. package/Engines/WebGPU/webgpuTextureHelper.js +4 -3
  62. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  63. package/Engines/engine.d.ts +63 -6
  64. package/Engines/engine.js.map +1 -1
  65. package/Engines/nativeEngine.js +3 -7
  66. package/Engines/nativeEngine.js.map +1 -1
  67. package/Engines/thinEngine.js +2 -2
  68. package/Engines/thinEngine.js.map +1 -1
  69. package/Engines/webgpuEngine.d.ts +5 -13
  70. package/Engines/webgpuEngine.js +18 -55
  71. package/Engines/webgpuEngine.js.map +1 -1
  72. package/Gizmos/positionGizmo.js +1 -1
  73. package/Gizmos/positionGizmo.js.map +1 -1
  74. package/Inputs/scene.inputManager.js +1 -1
  75. package/Inputs/scene.inputManager.js.map +1 -1
  76. package/Layers/highlightLayer.js +2 -0
  77. package/Layers/highlightLayer.js.map +1 -1
  78. package/Loading/Plugins/babylonFileLoader.js +3 -0
  79. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  80. package/Materials/Node/Blocks/customBlock.js +3 -3
  81. package/Materials/Node/Blocks/customBlock.js.map +1 -1
  82. package/Materials/Node/nodeMaterial.js +8 -0
  83. package/Materials/Node/nodeMaterial.js.map +1 -1
  84. package/Materials/Node/nodeMaterialBlock.js +1 -1
  85. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  86. package/Materials/PBR/index.d.ts +4 -0
  87. package/Materials/PBR/index.js +4 -0
  88. package/Materials/PBR/index.js.map +1 -1
  89. package/Materials/PBR/pbrAnisotropicConfiguration.d.ts +28 -96
  90. package/Materials/PBR/pbrAnisotropicConfiguration.js +50 -111
  91. package/Materials/PBR/pbrAnisotropicConfiguration.js.map +1 -1
  92. package/Materials/PBR/pbrBRDFConfiguration.d.ts +11 -37
  93. package/Materials/PBR/pbrBRDFConfiguration.js +39 -52
  94. package/Materials/PBR/pbrBRDFConfiguration.js.map +1 -1
  95. package/Materials/PBR/pbrBaseMaterial.d.ts +15 -74
  96. package/Materials/PBR/pbrBaseMaterial.js +66 -181
  97. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  98. package/Materials/PBR/pbrBaseSimpleMaterial.js.map +1 -1
  99. package/Materials/PBR/pbrClearCoatConfiguration.d.ts +23 -98
  100. package/Materials/PBR/pbrClearCoatConfiguration.js +91 -143
  101. package/Materials/PBR/pbrClearCoatConfiguration.js.map +1 -1
  102. package/Materials/PBR/pbrSheenConfiguration.d.ts +25 -93
  103. package/Materials/PBR/pbrSheenConfiguration.js +71 -126
  104. package/Materials/PBR/pbrSheenConfiguration.js.map +1 -1
  105. package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +28 -114
  106. package/Materials/PBR/pbrSubSurfaceConfiguration.js +150 -211
  107. package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
  108. package/Materials/Textures/dynamicTexture.d.ts +1 -1
  109. package/Materials/Textures/dynamicTexture.js +1 -1
  110. package/Materials/Textures/dynamicTexture.js.map +1 -1
  111. package/Materials/Textures/videoTexture.d.ts +1 -1
  112. package/Materials/Textures/videoTexture.js +1 -1
  113. package/Materials/Textures/videoTexture.js.map +1 -1
  114. package/Materials/effect.d.ts +6 -1
  115. package/Materials/effect.js +4 -1
  116. package/Materials/effect.js.map +1 -1
  117. package/Materials/fresnelParameters.d.ts +1 -1
  118. package/Materials/fresnelParameters.js +1 -1
  119. package/Materials/fresnelParameters.js.map +1 -1
  120. package/Materials/index.d.ts +4 -0
  121. package/Materials/index.js +4 -0
  122. package/Materials/index.js.map +1 -1
  123. package/Materials/material.d.ts +43 -2
  124. package/Materials/material.detailMapConfiguration.d.ts +29 -87
  125. package/Materials/material.detailMapConfiguration.js +50 -106
  126. package/Materials/material.detailMapConfiguration.js.map +1 -1
  127. package/Materials/material.js +99 -8
  128. package/Materials/material.js.map +1 -1
  129. package/Materials/materialDefines.d.ts +16 -0
  130. package/Materials/materialDefines.js +17 -5
  131. package/Materials/materialDefines.js.map +1 -1
  132. package/Materials/materialPluginBase.d.ts +182 -0
  133. package/Materials/materialPluginBase.js +209 -0
  134. package/Materials/materialPluginBase.js.map +1 -0
  135. package/Materials/materialPluginEvent.d.ts +98 -0
  136. package/Materials/materialPluginEvent.js +21 -0
  137. package/Materials/materialPluginEvent.js.map +1 -0
  138. package/Materials/materialPluginFactoryExport.d.ts +40 -0
  139. package/Materials/materialPluginFactoryExport.js +75 -0
  140. package/Materials/materialPluginFactoryExport.js.map +1 -0
  141. package/Materials/materialPluginManager.d.ts +90 -0
  142. package/Materials/materialPluginManager.js +323 -0
  143. package/Materials/materialPluginManager.js.map +1 -0
  144. package/Materials/shaderMaterial.d.ts +1 -1
  145. package/Materials/shaderMaterial.js +1 -1
  146. package/Materials/shaderMaterial.js.map +1 -1
  147. package/Materials/standardMaterial.d.ts +13 -10
  148. package/Materials/standardMaterial.js +44 -50
  149. package/Materials/standardMaterial.js.map +1 -1
  150. package/Meshes/Builders/capsuleBuilder.d.ts +1 -1
  151. package/Meshes/Builders/capsuleBuilder.js +1 -1
  152. package/Meshes/Builders/capsuleBuilder.js.map +1 -1
  153. package/Meshes/abstractMesh.d.ts +1 -1
  154. package/Meshes/abstractMesh.js +1 -1
  155. package/Meshes/abstractMesh.js.map +1 -1
  156. package/Meshes/linesMesh.d.ts +1 -1
  157. package/Meshes/linesMesh.js +3 -2
  158. package/Meshes/linesMesh.js.map +1 -1
  159. package/Meshes/mesh.lts.d.ts +8 -8
  160. package/Meshes/mesh.lts.js.map +1 -1
  161. package/Meshes/mesh.vertexData.js.map +1 -1
  162. package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.d.ts +1 -1
  163. package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js +25 -25
  164. package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js.map +1 -1
  165. package/Misc/PerformanceViewer/performanceViewerCollector.d.ts +11 -1
  166. package/Misc/PerformanceViewer/performanceViewerCollector.js +30 -8
  167. package/Misc/PerformanceViewer/performanceViewerCollector.js.map +1 -1
  168. package/Misc/coroutine.d.ts +2 -6
  169. package/Misc/coroutine.js.map +1 -1
  170. package/Misc/sceneSerializer.js +1 -0
  171. package/Misc/sceneSerializer.js.map +1 -1
  172. package/Particles/particleSystem.js +3 -0
  173. package/Particles/particleSystem.js.map +1 -1
  174. package/Rendering/depthPeelingRenderer.d.ts +4 -1
  175. package/Rendering/depthPeelingRenderer.js +34 -9
  176. package/Rendering/depthPeelingRenderer.js.map +1 -1
  177. package/Rendering/renderingGroup.js +5 -1
  178. package/Rendering/renderingGroup.js.map +1 -1
  179. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +1 -1
  180. package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
  181. package/Shaders/ShadersInclude/defaultUboDeclaration.js +1 -1
  182. package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
  183. package/Shaders/ShadersInclude/defaultVertexDeclaration.js +1 -1
  184. package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
  185. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +1 -1
  186. package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
  187. package/Shaders/ShadersInclude/pbrUboDeclaration.js +1 -1
  188. package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
  189. package/Shaders/ShadersInclude/pbrVertexDeclaration.js +1 -1
  190. package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
  191. package/Shaders/anaglyph.fragment.js +1 -1
  192. package/Shaders/anaglyph.fragment.js.map +1 -1
  193. package/Shaders/background.fragment.js +1 -1
  194. package/Shaders/background.fragment.js.map +1 -1
  195. package/Shaders/background.vertex.js +1 -1
  196. package/Shaders/background.vertex.js.map +1 -1
  197. package/Shaders/blackAndWhite.fragment.js +1 -1
  198. package/Shaders/blackAndWhite.fragment.js.map +1 -1
  199. package/Shaders/bloomMerge.fragment.js +1 -1
  200. package/Shaders/bloomMerge.fragment.js.map +1 -1
  201. package/Shaders/blur.fragment.js +1 -1
  202. package/Shaders/blur.fragment.js.map +1 -1
  203. package/Shaders/boundingBoxRenderer.fragment.js +1 -1
  204. package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
  205. package/Shaders/boundingBoxRenderer.vertex.js +1 -1
  206. package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
  207. package/Shaders/chromaticAberration.fragment.js +1 -1
  208. package/Shaders/chromaticAberration.fragment.js.map +1 -1
  209. package/Shaders/circleOfConfusion.fragment.js +1 -1
  210. package/Shaders/circleOfConfusion.fragment.js.map +1 -1
  211. package/Shaders/clearQuad.vertex.js +1 -1
  212. package/Shaders/clearQuad.vertex.js.map +1 -1
  213. package/Shaders/color.fragment.js +1 -1
  214. package/Shaders/color.fragment.js.map +1 -1
  215. package/Shaders/color.vertex.js +1 -1
  216. package/Shaders/color.vertex.js.map +1 -1
  217. package/Shaders/colorCorrection.fragment.js +1 -1
  218. package/Shaders/colorCorrection.fragment.js.map +1 -1
  219. package/Shaders/convolution.fragment.js +1 -1
  220. package/Shaders/convolution.fragment.js.map +1 -1
  221. package/Shaders/default.fragment.js +1 -1
  222. package/Shaders/default.fragment.js.map +1 -1
  223. package/Shaders/depth.fragment.js +1 -1
  224. package/Shaders/depth.fragment.js.map +1 -1
  225. package/Shaders/depth.vertex.js +1 -1
  226. package/Shaders/depth.vertex.js.map +1 -1
  227. package/Shaders/depthBoxBlur.fragment.js +1 -1
  228. package/Shaders/depthBoxBlur.fragment.js.map +1 -1
  229. package/Shaders/depthOfField.fragment.js +1 -1
  230. package/Shaders/depthOfField.fragment.js.map +1 -1
  231. package/Shaders/depthOfFieldMerge.fragment.js +1 -1
  232. package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
  233. package/Shaders/displayPass.fragment.js +1 -1
  234. package/Shaders/displayPass.fragment.js.map +1 -1
  235. package/Shaders/extractHighlights.fragment.js +1 -1
  236. package/Shaders/extractHighlights.fragment.js.map +1 -1
  237. package/Shaders/filter.fragment.js +1 -1
  238. package/Shaders/filter.fragment.js.map +1 -1
  239. package/Shaders/fxaa.vertex.js +1 -1
  240. package/Shaders/fxaa.vertex.js.map +1 -1
  241. package/Shaders/geometry.vertex.js +1 -1
  242. package/Shaders/geometry.vertex.js.map +1 -1
  243. package/Shaders/glowBlurPostProcess.fragment.js +1 -1
  244. package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
  245. package/Shaders/glowMapGeneration.fragment.js +1 -1
  246. package/Shaders/glowMapGeneration.fragment.js.map +1 -1
  247. package/Shaders/glowMapGeneration.vertex.js +1 -1
  248. package/Shaders/glowMapGeneration.vertex.js.map +1 -1
  249. package/Shaders/glowMapMerge.fragment.js +1 -1
  250. package/Shaders/glowMapMerge.fragment.js.map +1 -1
  251. package/Shaders/glowMapMerge.vertex.js +1 -1
  252. package/Shaders/glowMapMerge.vertex.js.map +1 -1
  253. package/Shaders/grain.fragment.js +1 -1
  254. package/Shaders/grain.fragment.js.map +1 -1
  255. package/Shaders/hdrFiltering.vertex.js +1 -1
  256. package/Shaders/hdrFiltering.vertex.js.map +1 -1
  257. package/Shaders/highlights.fragment.js +1 -1
  258. package/Shaders/highlights.fragment.js.map +1 -1
  259. package/Shaders/imageProcessing.fragment.js +1 -1
  260. package/Shaders/imageProcessing.fragment.js.map +1 -1
  261. package/Shaders/kernelBlur.fragment.js +1 -1
  262. package/Shaders/kernelBlur.fragment.js.map +1 -1
  263. package/Shaders/kernelBlur.vertex.js +1 -1
  264. package/Shaders/kernelBlur.vertex.js.map +1 -1
  265. package/Shaders/layer.fragment.js +1 -1
  266. package/Shaders/layer.fragment.js.map +1 -1
  267. package/Shaders/layer.vertex.js +1 -1
  268. package/Shaders/layer.vertex.js.map +1 -1
  269. package/Shaders/lensFlare.fragment.js +1 -1
  270. package/Shaders/lensFlare.fragment.js.map +1 -1
  271. package/Shaders/lensFlare.vertex.js +1 -1
  272. package/Shaders/lensFlare.vertex.js.map +1 -1
  273. package/Shaders/lensHighlights.fragment.js +1 -1
  274. package/Shaders/lensHighlights.fragment.js.map +1 -1
  275. package/Shaders/line.fragment.js +1 -1
  276. package/Shaders/line.fragment.js.map +1 -1
  277. package/Shaders/line.vertex.js +1 -1
  278. package/Shaders/line.vertex.js.map +1 -1
  279. package/Shaders/minmaxRedux.fragment.js +1 -1
  280. package/Shaders/minmaxRedux.fragment.js.map +1 -1
  281. package/Shaders/motionBlur.fragment.js +1 -1
  282. package/Shaders/motionBlur.fragment.js.map +1 -1
  283. package/Shaders/noise.fragment.js +1 -1
  284. package/Shaders/noise.fragment.js.map +1 -1
  285. package/Shaders/outline.fragment.js +1 -1
  286. package/Shaders/outline.fragment.js.map +1 -1
  287. package/Shaders/outline.vertex.js +1 -1
  288. package/Shaders/outline.vertex.js.map +1 -1
  289. package/Shaders/particles.fragment.js +1 -1
  290. package/Shaders/particles.fragment.js.map +1 -1
  291. package/Shaders/particles.vertex.js +1 -1
  292. package/Shaders/particles.vertex.js.map +1 -1
  293. package/Shaders/pass.fragment.js +1 -1
  294. package/Shaders/pass.fragment.js.map +1 -1
  295. package/Shaders/passCube.fragment.js +1 -1
  296. package/Shaders/passCube.fragment.js.map +1 -1
  297. package/Shaders/pbr.fragment.js +1 -1
  298. package/Shaders/pbr.fragment.js.map +1 -1
  299. package/Shaders/postprocess.vertex.js +1 -1
  300. package/Shaders/postprocess.vertex.js.map +1 -1
  301. package/Shaders/procedural.vertex.js +1 -1
  302. package/Shaders/procedural.vertex.js.map +1 -1
  303. package/Shaders/rgbdDecode.fragment.js +1 -1
  304. package/Shaders/rgbdDecode.fragment.js.map +1 -1
  305. package/Shaders/rgbdEncode.fragment.js +1 -1
  306. package/Shaders/rgbdEncode.fragment.js.map +1 -1
  307. package/Shaders/screenSpaceCurvature.fragment.js +1 -1
  308. package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
  309. package/Shaders/shadowMap.fragment.js +1 -1
  310. package/Shaders/shadowMap.fragment.js.map +1 -1
  311. package/Shaders/shadowMap.vertex.js +1 -1
  312. package/Shaders/shadowMap.vertex.js.map +1 -1
  313. package/Shaders/sharpen.fragment.js +1 -1
  314. package/Shaders/sharpen.fragment.js.map +1 -1
  315. package/Shaders/sprites.fragment.js +1 -1
  316. package/Shaders/sprites.fragment.js.map +1 -1
  317. package/Shaders/sprites.vertex.js +1 -1
  318. package/Shaders/sprites.vertex.js.map +1 -1
  319. package/Shaders/ssaoCombine.fragment.js +1 -1
  320. package/Shaders/ssaoCombine.fragment.js.map +1 -1
  321. package/Shaders/standard.fragment.js +1 -1
  322. package/Shaders/standard.fragment.js.map +1 -1
  323. package/Shaders/stereoscopicInterlace.fragment.js +1 -1
  324. package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
  325. package/Shaders/subSurfaceScattering.fragment.js +1 -1
  326. package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
  327. package/Shaders/tonemap.fragment.js +1 -1
  328. package/Shaders/tonemap.fragment.js.map +1 -1
  329. package/Shaders/volumetricLightScattering.fragment.js +1 -1
  330. package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
  331. package/Shaders/volumetricLightScatteringPass.fragment.js +1 -1
  332. package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
  333. package/Shaders/volumetricLightScatteringPass.vertex.js +1 -1
  334. package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
  335. package/Shaders/vrDistortionCorrection.fragment.js +1 -1
  336. package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
  337. package/Shaders/vrMultiviewToSingleview.fragment.js +1 -1
  338. package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
  339. package/XR/features/WebXRHandTracking.d.ts +2 -0
  340. package/XR/features/WebXRHandTracking.js +34 -14
  341. package/XR/features/WebXRHandTracking.js.map +1 -1
  342. package/XR/features/WebXRLayers.d.ts +78 -0
  343. package/XR/features/WebXRLayers.js +243 -0
  344. package/XR/features/WebXRLayers.js.map +1 -0
  345. package/XR/features/WebXRPlaneDetector.js +8 -12
  346. package/XR/features/WebXRPlaneDetector.js.map +1 -1
  347. package/XR/features/index.d.ts +1 -0
  348. package/XR/features/index.js +1 -0
  349. package/XR/features/index.js.map +1 -1
  350. package/XR/native/index.d.ts +1 -0
  351. package/XR/native/index.js +2 -0
  352. package/XR/native/index.js.map +1 -0
  353. package/XR/native/nativeXRRenderTarget.d.ts +44 -0
  354. package/XR/native/nativeXRRenderTarget.js +81 -0
  355. package/XR/native/nativeXRRenderTarget.js.map +1 -0
  356. package/XR/webXRCamera.js +2 -10
  357. package/XR/webXRCamera.js.map +1 -1
  358. package/XR/webXRExperienceHelper.js +15 -13
  359. package/XR/webXRExperienceHelper.js.map +1 -1
  360. package/XR/webXRFeaturesManager.d.ts +4 -0
  361. package/XR/webXRFeaturesManager.js +4 -0
  362. package/XR/webXRFeaturesManager.js.map +1 -1
  363. package/XR/webXRLayerWrapper.d.ts +48 -0
  364. package/XR/webXRLayerWrapper.js +60 -0
  365. package/XR/webXRLayerWrapper.js.map +1 -0
  366. package/XR/webXRManagedOutputCanvas.d.ts +2 -1
  367. package/XR/webXRManagedOutputCanvas.js +36 -29
  368. package/XR/webXRManagedOutputCanvas.js.map +1 -1
  369. package/XR/webXRRenderTargetTextureProvider.d.ts +55 -0
  370. package/XR/webXRRenderTargetTextureProvider.js +63 -0
  371. package/XR/webXRRenderTargetTextureProvider.js.map +1 -0
  372. package/XR/webXRSessionManager.d.ts +30 -7
  373. package/XR/webXRSessionManager.js +62 -64
  374. package/XR/webXRSessionManager.js.map +1 -1
  375. package/XR/webXRTypes.d.ts +1 -1
  376. package/XR/webXRTypes.js.map +1 -1
  377. package/XR/webXRWebGLLayer.d.ts +36 -0
  378. package/XR/webXRWebGLLayer.js +69 -0
  379. package/XR/webXRWebGLLayer.js.map +1 -0
  380. package/abstractScene.d.ts +1 -1
  381. package/abstractScene.js +1 -1
  382. package/abstractScene.js.map +1 -1
  383. package/package.json +35 -5
  384. package/DeviceInput/Implementations/nativeDeviceInputWrapper.js.map +0 -1
@@ -8,6 +8,7 @@ import { VertexBuffer } from "../Buffers/buffer.js";
8
8
  import { PrePassConfiguration } from "./prePassConfiguration.js";
9
9
  import { ImageProcessingConfiguration } from "./imageProcessingConfiguration.js";
10
10
  import { Material } from "../Materials/material.js";
11
+ import { MaterialPluginEvent } from "./materialPluginEvent.js";
11
12
  import { MaterialDefines } from "../Materials/materialDefines.js";
12
13
  import { PushMaterial } from "./pushMaterial.js";
13
14
  import { MaterialHelper } from "./materialHelper.js";
@@ -17,13 +18,17 @@ import { MaterialFlags } from "./materialFlags.js";
17
18
  import "../Shaders/default.fragment.js";
18
19
  import "../Shaders/default.vertex.js";
19
20
  import { EffectFallbacks } from './effectFallbacks.js';
20
- import { DetailMapConfiguration } from './material.detailMapConfiguration.js';
21
+ import { DetailMapConfiguration } from "./material.detailMapConfiguration.js";
21
22
  var onCreatedEffectParameters = { effect: null, subMesh: null };
22
23
  /** @hidden */
23
24
  var StandardMaterialDefines = /** @class */ (function (_super) {
24
25
  __extends(StandardMaterialDefines, _super);
25
- function StandardMaterialDefines() {
26
- var _this = _super.call(this) || this;
26
+ /**
27
+ * Initializes the Standard Material defines.
28
+ * @param externalProperties The external properties
29
+ */
30
+ function StandardMaterialDefines(externalProperties) {
31
+ var _this = _super.call(this, externalProperties) || this;
27
32
  _this.MAINUV1 = false;
28
33
  _this.MAINUV2 = false;
29
34
  _this.MAINUV3 = false;
@@ -32,9 +37,6 @@ var StandardMaterialDefines = /** @class */ (function (_super) {
32
37
  _this.MAINUV6 = false;
33
38
  _this.DIFFUSE = false;
34
39
  _this.DIFFUSEDIRECTUV = 0;
35
- _this.DETAIL = false;
36
- _this.DETAILDIRECTUV = 0;
37
- _this.DETAIL_NORMALBLENDMETHOD = 0;
38
40
  _this.BAKED_VERTEX_ANIMATION_TEXTURE = false;
39
41
  _this.AMBIENT = false;
40
42
  _this.AMBIENTDIRECTUV = 0;
@@ -275,14 +277,11 @@ var StandardMaterial = /** @class */ (function (_super) {
275
277
  _this._invertNormalMapX = false;
276
278
  _this._invertNormalMapY = false;
277
279
  _this._twoSidedLighting = false;
278
- /**
279
- * Defines the detail map parameters for the material.
280
- */
281
- _this.detailMap = new DetailMapConfiguration(_this._markAllSubMeshesAsTexturesDirty.bind(_this));
282
280
  _this._renderTargets = new SmartArray(16);
283
281
  _this._worldViewProjectionMatrix = Matrix.Zero();
284
282
  _this._globalAmbientColor = new Color3(0, 0, 0);
285
- _this.buildUniformLayout();
283
+ _this._cacheHasRenderTargetTextures = false;
284
+ _this.detailMap = new DetailMapConfiguration(_this);
286
285
  // Setup the default processing configuration to the scene.
287
286
  _this._attachImageProcessingConfiguration(null);
288
287
  _this.prePassConfiguration = new PrePassConfiguration();
@@ -294,6 +293,8 @@ var StandardMaterial = /** @class */ (function (_super) {
294
293
  if (StandardMaterial.RefractionTextureEnabled && _this._refractionTexture && _this._refractionTexture.isRenderTarget) {
295
294
  _this._renderTargets.push(_this._refractionTexture);
296
295
  }
296
+ _this._eventInfo.renderTargets = _this._renderTargets;
297
+ _this._callbackPluginEventFillRenderTargetTextures(_this._eventInfo);
297
298
  return _this._renderTargets;
298
299
  };
299
300
  return _this;
@@ -498,7 +499,7 @@ var StandardMaterial = /** @class */ (function (_super) {
498
499
  if (StandardMaterial.RefractionTextureEnabled && this._refractionTexture && this._refractionTexture.isRenderTarget) {
499
500
  return true;
500
501
  }
501
- return false;
502
+ return this._cacheHasRenderTargetTextures;
502
503
  },
503
504
  enumerable: false,
504
505
  configurable: true
@@ -576,13 +577,17 @@ var StandardMaterial = /** @class */ (function (_super) {
576
577
  */
577
578
  StandardMaterial.prototype.isReadyForSubMesh = function (mesh, subMesh, useInstances) {
578
579
  if (useInstances === void 0) { useInstances = false; }
580
+ if (!this._uniformBufferLayoutBuilt) {
581
+ this.buildUniformLayout();
582
+ }
579
583
  if (subMesh.effect && this.isFrozen) {
580
584
  if (subMesh.effect._wasPreviouslyReady) {
581
585
  return true;
582
586
  }
583
587
  }
584
588
  if (!subMesh.materialDefines) {
585
- subMesh.materialDefines = new StandardMaterialDefines();
589
+ this._callbackPluginEventGeneric(MaterialPluginEvent.GetDefineNames, this._eventInfo);
590
+ subMesh.materialDefines = new StandardMaterialDefines(this._eventInfo.defineNames);
586
591
  }
587
592
  var scene = this.getScene();
588
593
  var defines = subMesh.materialDefines;
@@ -601,6 +606,9 @@ var StandardMaterial = /** @class */ (function (_super) {
601
606
  MaterialHelper.PrepareDefinesForOIT(scene, defines, oit);
602
607
  // Textures
603
608
  if (defines._areTexturesDirty) {
609
+ this._eventInfo.hasRenderTargetTextures = false;
610
+ this._callbackPluginEventHasRenderTargetTextures(this._eventInfo);
611
+ this._cacheHasRenderTargetTextures = this._eventInfo.hasRenderTargetTextures;
604
612
  defines._needUVs = false;
605
613
  for (var i = 1; i <= 6; ++i) {
606
614
  defines["MAINUV" + i] = false;
@@ -777,7 +785,10 @@ var StandardMaterial = /** @class */ (function (_super) {
777
785
  defines.ALPHATEST_AFTERALLALPHACOMPUTATIONS = this.transparencyMode !== null;
778
786
  defines.ALPHABLEND = this.transparencyMode === null || this.needAlphaBlendingForMesh(mesh); // check on null for backward compatibility
779
787
  }
780
- if (!this.detailMap.isReadyForSubMesh(defines, scene)) {
788
+ this._eventInfo.isReadyForSubMesh = true;
789
+ this._eventInfo.defines = defines;
790
+ this._callbackPluginEventIsReadyForSubMesh(this._eventInfo);
791
+ if (!this._eventInfo.isReadyForSubMesh) {
781
792
  return false;
782
793
  }
783
794
  if (defines._areImageProcessingDirty && this._imageProcessingConfiguration) {
@@ -815,7 +826,9 @@ var StandardMaterial = /** @class */ (function (_super) {
815
826
  // Values that need to be evaluated on every frame
816
827
  MaterialHelper.PrepareDefinesForFrameBoundValues(scene, engine, defines, useInstances, null, subMesh.getRenderingMesh().hasThinInstances);
817
828
  // External config
818
- this.detailMap.prepareDefines(defines, scene);
829
+ this._eventInfo.defines = defines;
830
+ this._eventInfo.mesh = mesh;
831
+ this._callbackPluginEventPrepareDefines(this._eventInfo);
819
832
  // Get correct effect
820
833
  if (defines.isDirty) {
821
834
  var lightDisposed = defines._areLightsDisposed;
@@ -907,8 +920,13 @@ var StandardMaterial = /** @class */ (function (_super) {
907
920
  "refractionCubeSampler", "refraction2DSampler", "boneSampler", "morphTargets", "oitDepthSampler",
908
921
  "oitFrontColorSampler"];
909
922
  var uniformBuffers = ["Material", "Scene", "Mesh"];
910
- DetailMapConfiguration.AddUniforms(uniforms);
911
- DetailMapConfiguration.AddSamplers(samplers);
923
+ this._eventInfo.fallbacks = fallbacks;
924
+ this._eventInfo.fallbackRank = 0;
925
+ this._eventInfo.defines = defines;
926
+ this._eventInfo.uniforms = uniforms;
927
+ this._eventInfo.samplers = samplers;
928
+ this._eventInfo.customCode = undefined;
929
+ this._callbackPluginEventGeneric(MaterialPluginEvent.PrepareEffect, this._eventInfo);
912
930
  PrePassConfiguration.AddUniforms(uniforms);
913
931
  PrePassConfiguration.AddSamplers(samplers);
914
932
  if (ImageProcessingConfiguration) {
@@ -939,6 +957,7 @@ var StandardMaterial = /** @class */ (function (_super) {
939
957
  onError: this.onError,
940
958
  indexParameters: { maxSimultaneousLights: this._maxSimultaneousLights, maxSimultaneousMorphTargets: defines.NUM_MORPH_INFLUENCERS },
941
959
  processFinalCode: csnrOptions.processFinalCode,
960
+ processCodeAfterIncludes: this._eventInfo.customCode,
942
961
  multiTarget: defines.PREPASS
943
962
  }, engine);
944
963
  if (effect) {
@@ -1015,28 +1034,7 @@ var StandardMaterial = /** @class */ (function (_super) {
1015
1034
  ubo.addUniform("vEmissiveColor", 3);
1016
1035
  ubo.addUniform("vDiffuseColor", 4);
1017
1036
  ubo.addUniform("vAmbientColor", 3);
1018
- DetailMapConfiguration.PrepareUniformBuffer(ubo);
1019
- ubo.create();
1020
- };
1021
- /**
1022
- * Unbinds the material from the mesh
1023
- */
1024
- StandardMaterial.prototype.unbind = function () {
1025
- if (this._activeEffect && !this.getScene().getEngine()._features.needToAlwaysBindUniformBuffers) {
1026
- var needFlag = false;
1027
- if (this._reflectionTexture && this._reflectionTexture.isRenderTarget) {
1028
- this._activeEffect.setTexture("reflection2DSampler", null);
1029
- needFlag = true;
1030
- }
1031
- if (this._refractionTexture && this._refractionTexture.isRenderTarget) {
1032
- this._activeEffect.setTexture("refraction2DSampler", null);
1033
- needFlag = true;
1034
- }
1035
- if (needFlag) {
1036
- this._markAllSubMeshesAsTexturesDirty();
1037
- }
1038
- }
1039
- _super.prototype.unbind.call(this);
1037
+ _super.prototype.buildUniformLayout.call(this);
1040
1038
  };
1041
1039
  /**
1042
1040
  * Binds the submesh to this material by preparing the effect and shader to draw
@@ -1059,8 +1057,11 @@ var StandardMaterial = /** @class */ (function (_super) {
1059
1057
  // Matrices Mesh.
1060
1058
  mesh.getMeshUniformBuffer().bindToEffect(effect, "Mesh");
1061
1059
  mesh.transferToEffect(world);
1062
- // PrePass
1060
+ // Binding unconditionally
1061
+ this._uniformBuffer.bindToEffect(effect, "Material");
1063
1062
  this.prePassConfiguration.bindForSubMesh(this._activeEffect, scene, mesh, world, this.isFrozen);
1063
+ this._eventInfo.subMesh = subMesh;
1064
+ this._callbackPluginEventHardBindForSubMesh(this._eventInfo);
1064
1065
  // Normal Matrix
1065
1066
  if (defines.OBJECTSPACE_NORMALMAP) {
1066
1067
  world.toNormalMatrix(this._normalMatrix);
@@ -1071,7 +1072,6 @@ var StandardMaterial = /** @class */ (function (_super) {
1071
1072
  MaterialHelper.BindBonesParameters(mesh, effect);
1072
1073
  var ubo = this._uniformBuffer;
1073
1074
  if (mustRebind) {
1074
- ubo.bindToEffect(effect, "Material");
1075
1075
  this.bindViewProjection(effect);
1076
1076
  if (!ubo.useUbo || !this.isFrozen || !ubo.isSync) {
1077
1077
  if (StandardMaterial.FresnelEnabled && defines.FRESNEL) {
@@ -1217,14 +1217,14 @@ var StandardMaterial = /** @class */ (function (_super) {
1217
1217
  if (this.getScene().useOrderIndependentTransparency && this.needAlphaBlendingForMesh(mesh)) {
1218
1218
  this.getScene().depthPeelingRenderer.bind(effect);
1219
1219
  }
1220
- this.detailMap.bindForSubMesh(ubo, scene, this.isFrozen);
1220
+ this._eventInfo.subMesh = subMesh;
1221
+ this._callbackPluginEventBindForSubMesh(this._eventInfo);
1221
1222
  // Clip plane
1222
1223
  MaterialHelper.BindClipPlane(effect, scene);
1223
1224
  // Colors
1224
1225
  this.bindEyePosition(effect);
1225
1226
  }
1226
1227
  else if (scene.getEngine()._features.needToAlwaysBindUniformBuffers) {
1227
- ubo.bindToEffect(effect, "Material");
1228
1228
  this._needToBindSceneUbo = true;
1229
1229
  }
1230
1230
  if (mustRebind || !this.isFrozen) {
@@ -1262,7 +1262,7 @@ var StandardMaterial = /** @class */ (function (_super) {
1262
1262
  * @returns the list of animatables object used in the material
1263
1263
  */
1264
1264
  StandardMaterial.prototype.getAnimatables = function () {
1265
- var results = [];
1265
+ var results = _super.prototype.getAnimatables.call(this);
1266
1266
  if (this._diffuseTexture && this._diffuseTexture.animations && this._diffuseTexture.animations.length > 0) {
1267
1267
  results.push(this._diffuseTexture);
1268
1268
  }
@@ -1290,7 +1290,6 @@ var StandardMaterial = /** @class */ (function (_super) {
1290
1290
  if (this._refractionTexture && this._refractionTexture.animations && this._refractionTexture.animations.length > 0) {
1291
1291
  results.push(this._refractionTexture);
1292
1292
  }
1293
- this.detailMap.getAnimatables(results);
1294
1293
  return results;
1295
1294
  };
1296
1295
  /**
@@ -1326,7 +1325,6 @@ var StandardMaterial = /** @class */ (function (_super) {
1326
1325
  if (this._refractionTexture) {
1327
1326
  activeTextures.push(this._refractionTexture);
1328
1327
  }
1329
- this.detailMap.getActiveTextures(activeTextures);
1330
1328
  return activeTextures;
1331
1329
  };
1332
1330
  /**
@@ -1365,9 +1363,6 @@ var StandardMaterial = /** @class */ (function (_super) {
1365
1363
  if (this._refractionTexture === texture) {
1366
1364
  return true;
1367
1365
  }
1368
- if (this.detailMap.hasTexture(texture)) {
1369
- return true;
1370
- }
1371
1366
  return false;
1372
1367
  };
1373
1368
  /**
@@ -1388,7 +1383,6 @@ var StandardMaterial = /** @class */ (function (_super) {
1388
1383
  (_h = this._lightmapTexture) === null || _h === void 0 ? void 0 : _h.dispose();
1389
1384
  (_j = this._refractionTexture) === null || _j === void 0 ? void 0 : _j.dispose();
1390
1385
  }
1391
- this.detailMap.dispose(forceDisposeTextures);
1392
1386
  if (this._imageProcessingConfiguration && this._imageProcessingObserver) {
1393
1387
  this._imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingObserver);
1394
1388
  }