@spiffcommerce/preview 3.6.2-rc.3 → 3.6.2-rc.5

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 (489) hide show
  1. package/dist/lib/assetCache.esm.js +21 -0
  2. package/dist/lib/configuration.esm.js +98 -0
  3. package/dist/lib/core.esm.js +417 -0
  4. package/dist/lib/dynamicTexture.esm.js +51 -0
  5. package/dist/lib/glbLoaderExtensions.esm.js +137 -0
  6. package/dist/lib/glowLayerManager.esm.js +19 -0
  7. package/dist/lib/guid.esm.js +7 -0
  8. package/dist/lib/material.esm.js +50 -0
  9. package/dist/lib/modelContainer.esm.js +351 -0
  10. package/dist/lib/productAnimations.esm.js +123 -0
  11. package/dist/lib/productCamera.esm.js +113 -0
  12. package/dist/lib/renderConstants.esm.js +103 -0
  13. package/dist/lib/renderingPipeline.esm.js +99 -0
  14. package/dist/lib/types.esm.js +5 -0
  15. package/dist/lib/variants.esm.js +112 -0
  16. package/dist/node_modules/@babylonjs/core/Actions/abstractActionManager.esm.js +41 -0
  17. package/dist/node_modules/@babylonjs/core/Actions/action.esm.js +122 -0
  18. package/dist/node_modules/@babylonjs/core/Actions/actionEvent.esm.js +59 -0
  19. package/dist/node_modules/@babylonjs/core/Actions/actionManager.esm.js +335 -0
  20. package/dist/node_modules/@babylonjs/core/Actions/condition.esm.js +193 -0
  21. package/dist/node_modules/@babylonjs/core/Actions/directActions.esm.js +354 -0
  22. package/dist/node_modules/@babylonjs/core/Animations/animatable.esm.js +478 -0
  23. package/dist/node_modules/@babylonjs/core/Animations/animation.esm.js +866 -0
  24. package/dist/node_modules/@babylonjs/core/Animations/animationEvent.esm.js +18 -0
  25. package/dist/node_modules/@babylonjs/core/Animations/animationGroup.esm.js +470 -0
  26. package/dist/node_modules/@babylonjs/core/Animations/animationKey.esm.js +7 -0
  27. package/dist/node_modules/@babylonjs/core/Animations/animationRange.esm.js +21 -0
  28. package/dist/node_modules/@babylonjs/core/Animations/easing.esm.js +93 -0
  29. package/dist/node_modules/@babylonjs/core/Animations/runtimeAnimation.esm.js +281 -0
  30. package/dist/node_modules/@babylonjs/core/Audio/sound.esm.js +568 -0
  31. package/dist/node_modules/@babylonjs/core/Audio/weightedsound.esm.js +117 -0
  32. package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/autoRotationBehavior.esm.js +145 -0
  33. package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/bouncingBehavior.esm.js +93 -0
  34. package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/framingBehavior.esm.js +295 -0
  35. package/dist/node_modules/@babylonjs/core/Bones/bone.esm.js +701 -0
  36. package/dist/node_modules/@babylonjs/core/Bones/skeleton.esm.js +478 -0
  37. package/dist/node_modules/@babylonjs/core/Buffers/buffer.esm.js +433 -0
  38. package/dist/node_modules/@babylonjs/core/Buffers/dataBuffer.esm.js +18 -0
  39. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/BaseCameraMouseWheelInput.esm.js +67 -0
  40. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/BaseCameraPointersInput.esm.js +191 -0
  41. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraKeyboardMoveInput.esm.js +93 -0
  42. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraMouseWheelInput.esm.js +119 -0
  43. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraPointersInput.esm.js +119 -0
  44. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraKeyboardMoveInput.esm.js +108 -0
  45. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraMouseInput.esm.js +114 -0
  46. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraMouseWheelInput.esm.js +249 -0
  47. package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraTouchInput.esm.js +103 -0
  48. package/dist/node_modules/@babylonjs/core/Cameras/arcRotateCamera.esm.js +589 -0
  49. package/dist/node_modules/@babylonjs/core/Cameras/arcRotateCameraInputsManager.esm.js +37 -0
  50. package/dist/node_modules/@babylonjs/core/Cameras/camera.esm.js +686 -0
  51. package/dist/node_modules/@babylonjs/core/Cameras/cameraInputsManager.esm.js +147 -0
  52. package/dist/node_modules/@babylonjs/core/Cameras/freeCamera.esm.js +236 -0
  53. package/dist/node_modules/@babylonjs/core/Cameras/freeCameraInputsManager.esm.js +66 -0
  54. package/dist/node_modules/@babylonjs/core/Cameras/targetCamera.esm.js +214 -0
  55. package/dist/node_modules/@babylonjs/core/Collisions/intersectionInfo.esm.js +8 -0
  56. package/dist/node_modules/@babylonjs/core/Collisions/meshCollisionData.esm.js +9 -0
  57. package/dist/node_modules/@babylonjs/core/Collisions/pickingInfo.esm.js +59 -0
  58. package/dist/node_modules/@babylonjs/core/Compat/compatibilityOptions.esm.js +6 -0
  59. package/dist/node_modules/@babylonjs/core/Culling/boundingBox.esm.js +174 -0
  60. package/dist/node_modules/@babylonjs/core/Culling/boundingInfo.esm.js +159 -0
  61. package/dist/node_modules/@babylonjs/core/Culling/boundingSphere.esm.js +114 -0
  62. package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceEnums.esm.js +37 -0
  63. package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceSource.esm.js +23 -0
  64. package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceSourceManager.esm.js +106 -0
  65. package/dist/node_modules/@babylonjs/core/DeviceInput/eventFactory.esm.js +118 -0
  66. package/dist/node_modules/@babylonjs/core/DeviceInput/internalDeviceSourceManager.esm.js +46 -0
  67. package/dist/node_modules/@babylonjs/core/DeviceInput/nativeDeviceInputSystem.esm.js +50 -0
  68. package/dist/node_modules/@babylonjs/core/DeviceInput/webDeviceInputSystem.esm.js +354 -0
  69. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.alpha.esm.js +101 -0
  70. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.cubeTexture.esm.js +103 -0
  71. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.dynamicBuffer.esm.js +11 -0
  72. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.dynamicTexture.esm.js +14 -0
  73. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.multiRender.esm.js +111 -0
  74. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.rawTexture.esm.js +109 -0
  75. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.readTexture.esm.js +76 -0
  76. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.renderTarget.esm.js +69 -0
  77. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.renderTargetCube.esm.js +15 -0
  78. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.uniformBuffer.esm.js +29 -0
  79. package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.views.esm.js +85 -0
  80. package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.esm.js +9 -0
  81. package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.esm.js +36 -0
  82. package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.esm.js +13 -0
  83. package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.esm.js +9 -0
  84. package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/shaderDefineExpression.esm.js +88 -0
  85. package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeConditionNode.esm.js +14 -0
  86. package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeCursor.esm.js +44 -0
  87. package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeNode.esm.js +31 -0
  88. package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeTestNode.esm.js +9 -0
  89. package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderProcessor.esm.js +230 -0
  90. package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGL2ShaderProcessors.esm.js +30 -0
  91. package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLHardwareTexture.esm.js +34 -0
  92. package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLPipelineContext.esm.js +388 -0
  93. package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLRenderTargetWrapper.esm.js +87 -0
  94. package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLShaderProcessors.esm.js +16 -0
  95. package/dist/node_modules/@babylonjs/core/Engines/constants.esm.js +254 -0
  96. package/dist/node_modules/@babylonjs/core/Engines/engine.esm.js +1120 -0
  97. package/dist/node_modules/@babylonjs/core/Engines/engineStore.esm.js +23 -0
  98. package/dist/node_modules/@babylonjs/core/Engines/nullEngine.esm.js +697 -0
  99. package/dist/node_modules/@babylonjs/core/Engines/performanceConfigurator.esm.js +22 -0
  100. package/dist/node_modules/@babylonjs/core/Engines/renderTargetWrapper.esm.js +273 -0
  101. package/dist/node_modules/@babylonjs/core/Engines/shaderStore.esm.js +36 -0
  102. package/dist/node_modules/@babylonjs/core/Engines/thinEngine.esm.js +2921 -0
  103. package/dist/node_modules/@babylonjs/core/Events/deviceInputEvents.esm.js +13 -0
  104. package/dist/node_modules/@babylonjs/core/Events/keyboardEvents.esm.js +41 -0
  105. package/dist/node_modules/@babylonjs/core/Events/pointerEvents.esm.js +63 -0
  106. package/dist/node_modules/@babylonjs/core/Inputs/pointerPickingConfiguration.esm.js +8 -0
  107. package/dist/node_modules/@babylonjs/core/Inputs/scene.inputManager.esm.js +418 -0
  108. package/dist/node_modules/@babylonjs/core/Layers/effectLayer.esm.js +437 -0
  109. package/dist/node_modules/@babylonjs/core/Layers/effectLayerSceneComponent.esm.js +141 -0
  110. package/dist/node_modules/@babylonjs/core/Layers/glowLayer.esm.js +343 -0
  111. package/dist/node_modules/@babylonjs/core/Layers/highlightLayer.esm.js +396 -0
  112. package/dist/node_modules/@babylonjs/core/Lights/directionalLight.esm.js +224 -0
  113. package/dist/node_modules/@babylonjs/core/Lights/hemisphericLight.esm.js +92 -0
  114. package/dist/node_modules/@babylonjs/core/Lights/light.esm.js +476 -0
  115. package/dist/node_modules/@babylonjs/core/Lights/lightConstants.esm.js +30 -0
  116. package/dist/node_modules/@babylonjs/core/Lights/pointLight.esm.js +153 -0
  117. package/dist/node_modules/@babylonjs/core/Lights/shadowLight.esm.js +196 -0
  118. package/dist/node_modules/@babylonjs/core/Lights/spotLight.esm.js +287 -0
  119. package/dist/node_modules/@babylonjs/core/Loading/sceneLoader.esm.js +551 -0
  120. package/dist/node_modules/@babylonjs/core/Loading/sceneLoaderFlags.esm.js +48 -0
  121. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrAnisotropicConfiguration.esm.js +112 -0
  122. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrBRDFConfiguration.esm.js +48 -0
  123. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrBaseMaterial.esm.js +568 -0
  124. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrClearCoatConfiguration.esm.js +139 -0
  125. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrIridescenceConfiguration.esm.js +97 -0
  126. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrMaterial.esm.js +496 -0
  127. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrSheenConfiguration.esm.js +106 -0
  128. package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrSubSurfaceConfiguration.esm.js +270 -0
  129. package/dist/node_modules/@babylonjs/core/Materials/Textures/Filtering/hdrFiltering.esm.js +103 -0
  130. package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader.esm.js +53 -0
  131. package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/envTextureLoader.esm.js +51 -0
  132. package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/ktxTextureLoader.esm.js +81 -0
  133. package/dist/node_modules/@babylonjs/core/Materials/Textures/baseTexture.esm.js +542 -0
  134. package/dist/node_modules/@babylonjs/core/Materials/Textures/baseTexture.polynomial.esm.js +23 -0
  135. package/dist/node_modules/@babylonjs/core/Materials/Textures/cubeTexture.esm.js +244 -0
  136. package/dist/node_modules/@babylonjs/core/Materials/Textures/dynamicTexture.esm.js +134 -0
  137. package/dist/node_modules/@babylonjs/core/Materials/Textures/equiRectangularCubeTexture.esm.js +89 -0
  138. package/dist/node_modules/@babylonjs/core/Materials/Textures/hdrCubeTexture.esm.js +175 -0
  139. package/dist/node_modules/@babylonjs/core/Materials/Textures/internalTexture.esm.js +150 -0
  140. package/dist/node_modules/@babylonjs/core/Materials/Textures/ktx2decoderTypes.esm.js +17 -0
  141. package/dist/node_modules/@babylonjs/core/Materials/Textures/mirrorTexture.esm.js +138 -0
  142. package/dist/node_modules/@babylonjs/core/Materials/Textures/multiRenderTarget.esm.js +223 -0
  143. package/dist/node_modules/@babylonjs/core/Materials/Textures/rawCubeTexture.esm.js +58 -0
  144. package/dist/node_modules/@babylonjs/core/Materials/Textures/rawTexture.esm.js +156 -0
  145. package/dist/node_modules/@babylonjs/core/Materials/Textures/rawTexture2DArray.esm.js +53 -0
  146. package/dist/node_modules/@babylonjs/core/Materials/Textures/renderTargetTexture.esm.js +605 -0
  147. package/dist/node_modules/@babylonjs/core/Materials/Textures/texture.esm.js +421 -0
  148. package/dist/node_modules/@babylonjs/core/Materials/Textures/textureSampler.esm.js +101 -0
  149. package/dist/node_modules/@babylonjs/core/Materials/Textures/thinTexture.esm.js +170 -0
  150. package/dist/node_modules/@babylonjs/core/Materials/clipPlaneMaterialHelper.esm.js +28 -0
  151. package/dist/node_modules/@babylonjs/core/Materials/colorCurves.esm.js +397 -0
  152. package/dist/node_modules/@babylonjs/core/Materials/drawWrapper.esm.js +22 -0
  153. package/dist/node_modules/@babylonjs/core/Materials/effect.esm.js +890 -0
  154. package/dist/node_modules/@babylonjs/core/Materials/effectFallbacks.esm.js +73 -0
  155. package/dist/node_modules/@babylonjs/core/Materials/effectRenderer.esm.js +132 -0
  156. package/dist/node_modules/@babylonjs/core/Materials/imageProcessingConfiguration.esm.js +428 -0
  157. package/dist/node_modules/@babylonjs/core/Materials/material.detailMapConfiguration.esm.js +90 -0
  158. package/dist/node_modules/@babylonjs/core/Materials/material.esm.js +906 -0
  159. package/dist/node_modules/@babylonjs/core/Materials/materialDefines.esm.js +161 -0
  160. package/dist/node_modules/@babylonjs/core/Materials/materialFlags.esm.js +226 -0
  161. package/dist/node_modules/@babylonjs/core/Materials/materialHelper.esm.js +501 -0
  162. package/dist/node_modules/@babylonjs/core/Materials/materialPluginBase.esm.js +226 -0
  163. package/dist/node_modules/@babylonjs/core/Materials/materialPluginEvent.esm.js +7 -0
  164. package/dist/node_modules/@babylonjs/core/Materials/materialPluginManager.esm.js +212 -0
  165. package/dist/node_modules/@babylonjs/core/Materials/materialStencilState.esm.js +145 -0
  166. package/dist/node_modules/@babylonjs/core/Materials/multiMaterial.esm.js +164 -0
  167. package/dist/node_modules/@babylonjs/core/Materials/prePassConfiguration.esm.js +38 -0
  168. package/dist/node_modules/@babylonjs/core/Materials/pushMaterial.esm.js +48 -0
  169. package/dist/node_modules/@babylonjs/core/Materials/shaderLanguage.esm.js +7 -0
  170. package/dist/node_modules/@babylonjs/core/Materials/shaderMaterial.esm.js +838 -0
  171. package/dist/node_modules/@babylonjs/core/Materials/standardMaterial.esm.js +934 -0
  172. package/dist/node_modules/@babylonjs/core/Materials/uniformBuffer.esm.js +541 -0
  173. package/dist/node_modules/@babylonjs/core/Maths/math.axis.esm.js +19 -0
  174. package/dist/node_modules/@babylonjs/core/Maths/math.color.esm.js +903 -0
  175. package/dist/node_modules/@babylonjs/core/Maths/math.constants.esm.js +6 -0
  176. package/dist/node_modules/@babylonjs/core/Maths/math.frustum.esm.js +91 -0
  177. package/dist/node_modules/@babylonjs/core/Maths/math.functions.esm.js +43 -0
  178. package/dist/node_modules/@babylonjs/core/Maths/math.path.esm.js +9 -0
  179. package/dist/node_modules/@babylonjs/core/Maths/math.plane.esm.js +145 -0
  180. package/dist/node_modules/@babylonjs/core/Maths/math.scalar.esm.js +284 -0
  181. package/dist/node_modules/@babylonjs/core/Maths/math.size.esm.js +124 -0
  182. package/dist/node_modules/@babylonjs/core/Maths/math.vector.esm.js +4915 -0
  183. package/dist/node_modules/@babylonjs/core/Maths/math.viewport.esm.js +41 -0
  184. package/dist/node_modules/@babylonjs/core/Maths/sphericalPolynomial.esm.js +177 -0
  185. package/dist/node_modules/@babylonjs/core/Meshes/Builders/boxBuilder.esm.js +260 -0
  186. package/dist/node_modules/@babylonjs/core/Meshes/Compression/dracoCompression.esm.js +233 -0
  187. package/dist/node_modules/@babylonjs/core/Meshes/Compression/meshoptCompression.esm.js +47 -0
  188. package/dist/node_modules/@babylonjs/core/Meshes/WebGL/webGLDataBuffer.esm.js +12 -0
  189. package/dist/node_modules/@babylonjs/core/Meshes/abstractMesh.esm.js +1448 -0
  190. package/dist/node_modules/@babylonjs/core/Meshes/geometry.esm.js +729 -0
  191. package/dist/node_modules/@babylonjs/core/Meshes/instancedMesh.esm.js +455 -0
  192. package/dist/node_modules/@babylonjs/core/Meshes/mesh.esm.js +2526 -0
  193. package/dist/node_modules/@babylonjs/core/Meshes/mesh.vertexData.esm.js +865 -0
  194. package/dist/node_modules/@babylonjs/core/Meshes/meshLODLevel.esm.js +13 -0
  195. package/dist/node_modules/@babylonjs/core/Meshes/subMesh.esm.js +422 -0
  196. package/dist/node_modules/@babylonjs/core/Meshes/thinInstanceMesh.esm.js +129 -0
  197. package/dist/node_modules/@babylonjs/core/Meshes/transformNode.esm.js +796 -0
  198. package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/cubemapToSphericalPolynomial.esm.js +111 -0
  199. package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/hdr.esm.js +122 -0
  200. package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/panoramaToCubemap.esm.js +78 -0
  201. package/dist/node_modules/@babylonjs/core/Misc/andOrNotEvaluator.esm.js +41 -0
  202. package/dist/node_modules/@babylonjs/core/Misc/arrayTools.esm.js +52 -0
  203. package/dist/node_modules/@babylonjs/core/Misc/assetsManager.esm.js +561 -0
  204. package/dist/node_modules/@babylonjs/core/Misc/brdfTextureTools.esm.js +31 -0
  205. package/dist/node_modules/@babylonjs/core/Misc/copyTools.esm.js +44 -0
  206. package/dist/node_modules/@babylonjs/core/Misc/coroutine.esm.js +53 -0
  207. package/dist/node_modules/@babylonjs/core/Misc/dataReader.esm.js +55 -0
  208. package/dist/node_modules/@babylonjs/core/Misc/dds.esm.js +329 -0
  209. package/dist/node_modules/@babylonjs/core/Misc/decorators.esm.js +332 -0
  210. package/dist/node_modules/@babylonjs/core/Misc/deepCopier.esm.js +52 -0
  211. package/dist/node_modules/@babylonjs/core/Misc/deferred.esm.js +25 -0
  212. package/dist/node_modules/@babylonjs/core/Misc/devTools.esm.js +6 -0
  213. package/dist/node_modules/@babylonjs/core/Misc/domManagement.esm.js +21 -0
  214. package/dist/node_modules/@babylonjs/core/Misc/dumpTools.esm.js +117 -0
  215. package/dist/node_modules/@babylonjs/core/Misc/environmentTextureTools.esm.js +187 -0
  216. package/dist/node_modules/@babylonjs/core/Misc/error.esm.js +40 -0
  217. package/dist/node_modules/@babylonjs/core/Misc/fileTools.esm.js +339 -0
  218. package/dist/node_modules/@babylonjs/core/Misc/filesInputStore.esm.js +6 -0
  219. package/dist/node_modules/@babylonjs/core/Misc/guid.esm.js +9 -0
  220. package/dist/node_modules/@babylonjs/core/Misc/instantiationTools.esm.js +26 -0
  221. package/dist/node_modules/@babylonjs/core/Misc/khronosTextureContainer.esm.js +79 -0
  222. package/dist/node_modules/@babylonjs/core/Misc/khronosTextureContainer2.esm.js +281 -0
  223. package/dist/node_modules/@babylonjs/core/Misc/logger.esm.js +77 -0
  224. package/dist/node_modules/@babylonjs/core/Misc/observable.esm.js +231 -0
  225. package/dist/node_modules/@babylonjs/core/Misc/perfCounter.esm.js +99 -0
  226. package/dist/node_modules/@babylonjs/core/Misc/performanceMonitor.esm.js +144 -0
  227. package/dist/node_modules/@babylonjs/core/Misc/precisionDate.esm.js +12 -0
  228. package/dist/node_modules/@babylonjs/core/Misc/retryStrategy.esm.js +14 -0
  229. package/dist/node_modules/@babylonjs/core/Misc/rgbdTextureTools.esm.js +51 -0
  230. package/dist/node_modules/@babylonjs/core/Misc/screenshotTools.esm.js +92 -0
  231. package/dist/node_modules/@babylonjs/core/Misc/smartArray.esm.js +118 -0
  232. package/dist/node_modules/@babylonjs/core/Misc/stringDictionary.esm.js +129 -0
  233. package/dist/node_modules/@babylonjs/core/Misc/stringTools.esm.js +26 -0
  234. package/dist/node_modules/@babylonjs/core/Misc/tags.esm.js +97 -0
  235. package/dist/node_modules/@babylonjs/core/Misc/textureTools.esm.js +41 -0
  236. package/dist/node_modules/@babylonjs/core/Misc/timingTools.esm.js +13 -0
  237. package/dist/node_modules/@babylonjs/core/Misc/tools.esm.js +929 -0
  238. package/dist/node_modules/@babylonjs/core/Misc/typeStore.esm.js +11 -0
  239. package/dist/node_modules/@babylonjs/core/Misc/uniqueIdGenerator.esm.js +13 -0
  240. package/dist/node_modules/@babylonjs/core/Misc/webRequest.esm.js +135 -0
  241. package/dist/node_modules/@babylonjs/core/Misc/workerPool.esm.js +80 -0
  242. package/dist/node_modules/@babylonjs/core/Morph/morphTarget.esm.js +187 -0
  243. package/dist/node_modules/@babylonjs/core/Morph/morphTargetManager.esm.js +249 -0
  244. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.esm.js +349 -0
  245. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.esm.js +306 -0
  246. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.esm.js +161 -0
  247. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.esm.js +589 -0
  248. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/standardRenderingPipeline.esm.js +512 -0
  249. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderEffect.esm.js +114 -0
  250. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipeline.esm.js +139 -0
  251. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.esm.js +99 -0
  252. package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipelineManagerSceneComponent.esm.js +48 -0
  253. package/dist/node_modules/@babylonjs/core/PostProcesses/bloomEffect.esm.js +76 -0
  254. package/dist/node_modules/@babylonjs/core/PostProcesses/bloomMergePostProcess.esm.js +40 -0
  255. package/dist/node_modules/@babylonjs/core/PostProcesses/blurPostProcess.esm.js +165 -0
  256. package/dist/node_modules/@babylonjs/core/PostProcesses/chromaticAberrationPostProcess.esm.js +61 -0
  257. package/dist/node_modules/@babylonjs/core/PostProcesses/circleOfConfusionPostProcess.esm.js +62 -0
  258. package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldBlurPostProcess.esm.js +58 -0
  259. package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldEffect.esm.js +131 -0
  260. package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldMergePostProcess.esm.js +48 -0
  261. package/dist/node_modules/@babylonjs/core/PostProcesses/extractHighlightsPostProcess.esm.js +27 -0
  262. package/dist/node_modules/@babylonjs/core/PostProcesses/fxaaPostProcess.esm.js +41 -0
  263. package/dist/node_modules/@babylonjs/core/PostProcesses/grainPostProcess.esm.js +46 -0
  264. package/dist/node_modules/@babylonjs/core/PostProcesses/imageProcessingPostProcess.esm.js +359 -0
  265. package/dist/node_modules/@babylonjs/core/PostProcesses/motionBlurPostProcess.esm.js +178 -0
  266. package/dist/node_modules/@babylonjs/core/PostProcesses/passPostProcess.esm.js +40 -0
  267. package/dist/node_modules/@babylonjs/core/PostProcesses/postProcess.esm.js +457 -0
  268. package/dist/node_modules/@babylonjs/core/PostProcesses/postProcessManager.esm.js +94 -0
  269. package/dist/node_modules/@babylonjs/core/PostProcesses/screenSpaceReflectionPostProcess.esm.js +147 -0
  270. package/dist/node_modules/@babylonjs/core/PostProcesses/sharpenPostProcess.esm.js +46 -0
  271. package/dist/node_modules/@babylonjs/core/Probes/reflectionProbe.esm.js +184 -0
  272. package/dist/node_modules/@babylonjs/core/Rendering/boundingBoxRenderer.esm.js +170 -0
  273. package/dist/node_modules/@babylonjs/core/Rendering/depthRenderer.esm.js +185 -0
  274. package/dist/node_modules/@babylonjs/core/Rendering/depthRendererSceneComponent.esm.js +65 -0
  275. package/dist/node_modules/@babylonjs/core/Rendering/geometryBufferRenderer.esm.js +353 -0
  276. package/dist/node_modules/@babylonjs/core/Rendering/geometryBufferRendererSceneComponent.esm.js +55 -0
  277. package/dist/node_modules/@babylonjs/core/Rendering/motionBlurConfiguration.esm.js +8 -0
  278. package/dist/node_modules/@babylonjs/core/Rendering/renderingGroup.esm.js +223 -0
  279. package/dist/node_modules/@babylonjs/core/Rendering/renderingManager.esm.js +185 -0
  280. package/dist/node_modules/@babylonjs/core/Rendering/screenSpaceReflections2Configuration.esm.js +8 -0
  281. package/dist/node_modules/@babylonjs/core/Rendering/screenSpaceReflectionsConfiguration.esm.js +8 -0
  282. package/dist/node_modules/@babylonjs/core/Rendering/ssao2Configuration.esm.js +8 -0
  283. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bakedVertexAnimation.esm.js +48 -0
  284. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.esm.js +24 -0
  285. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bonesDeclaration.esm.js +35 -0
  286. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bonesVertex.esm.js +56 -0
  287. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.esm.js +4 -0
  288. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.esm.js +19 -0
  289. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.esm.js +8 -0
  290. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragment.esm.js +67 -0
  291. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragmentFunctions.esm.js +58 -0
  292. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragmentMainFunctions.esm.js +93 -0
  293. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpVertex.esm.js +11 -0
  294. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpVertexDeclaration.esm.js +8 -0
  295. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneFragment.esm.js +42 -0
  296. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.esm.js +21 -0
  297. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneVertex.esm.js +21 -0
  298. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneVertexDeclaration.esm.js +27 -0
  299. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalFragment.esm.js +12 -0
  300. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalFragmentDeclaration.esm.js +6 -0
  301. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalVertexDeclaration.esm.js +7 -0
  302. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultFragmentDeclaration.esm.js +86 -0
  303. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultUboDeclaration.esm.js +50 -0
  304. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultVertexDeclaration.esm.js +46 -0
  305. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/depthPrePass.esm.js +7 -0
  306. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogFragment.esm.js +10 -0
  307. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.esm.js +34 -0
  308. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogVertex.esm.js +6 -0
  309. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.esm.js +6 -0
  310. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fresnelFunction.esm.js +10 -0
  311. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/geometryUboDeclaration.esm.js +5 -0
  312. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/geometryVertexDeclaration.esm.js +4 -0
  313. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/harmonicsFunctions.esm.js +42 -0
  314. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/hdrFilteringFunctions.esm.js +139 -0
  315. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/helperFunctions.esm.js +166 -0
  316. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/imageProcessingDeclaration.esm.js +32 -0
  317. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/imageProcessingFunctions.esm.js +129 -0
  318. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/importanceSampling.esm.js +22 -0
  319. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.esm.js +31 -0
  320. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/instancesVertex.esm.js +20 -0
  321. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurFragment.esm.js +15 -0
  322. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurFragment2.esm.js +15 -0
  323. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.esm.js +3 -0
  324. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurVertex.esm.js +3 -0
  325. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightFragment.esm.js +278 -0
  326. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightFragmentDeclaration.esm.js +82 -0
  327. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightUboDeclaration.esm.js +81 -0
  328. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightVxFragmentDeclaration.esm.js +35 -0
  329. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightVxUboDeclaration.esm.js +34 -0
  330. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightsFragmentFunctions.esm.js +93 -0
  331. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthDeclaration.esm.js +7 -0
  332. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthFragment.esm.js +6 -0
  333. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthVertex.esm.js +7 -0
  334. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/mainUVVaryingDeclaration.esm.js +6 -0
  335. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/meshUboDeclaration.esm.js +15 -0
  336. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertex.esm.js +32 -0
  337. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexDeclaration.esm.js +17 -0
  338. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexGlobal.esm.js +8 -0
  339. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.esm.js +19 -0
  340. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/mrtFragmentDeclaration.esm.js +6 -0
  341. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/oitDeclaration.esm.js +13 -0
  342. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/oitFragment.esm.js +40 -0
  343. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/packingFunctions.esm.js +15 -0
  344. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBRDFFunctions.esm.js +268 -0
  345. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.esm.js +83 -0
  346. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAlphaFresnel.esm.js +37 -0
  347. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.esm.js +32 -0
  348. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAnisotropic.esm.js +50 -0
  349. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockClearcoat.esm.js +276 -0
  350. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockDirectLighting.esm.js +19 -0
  351. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalColorComposition.esm.js +45 -0
  352. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalLitComponents.esm.js +100 -0
  353. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.esm.js +27 -0
  354. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockGeometryInfo.esm.js +30 -0
  355. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockImageProcessing.esm.js +14 -0
  356. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockIridescence.esm.js +63 -0
  357. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockLightmapInit.esm.js +13 -0
  358. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockNormalFinal.esm.js +13 -0
  359. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockNormalGeometric.esm.js +13 -0
  360. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectance.esm.js +24 -0
  361. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectance0.esm.js +14 -0
  362. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflection.esm.js +270 -0
  363. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectivity.esm.js +131 -0
  364. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockSheen.esm.js +197 -0
  365. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockSubSurface.esm.js +337 -0
  366. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDebug.esm.js +176 -0
  367. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.esm.js +64 -0
  368. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingFunctions.esm.js +130 -0
  369. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.esm.js +53 -0
  370. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentDeclaration.esm.js +179 -0
  371. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.esm.js +18 -0
  372. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.esm.js +101 -0
  373. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrHelperFunctions.esm.js +83 -0
  374. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrIBLFunctions.esm.js +35 -0
  375. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrUboDeclaration.esm.js +65 -0
  376. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrVertexDeclaration.esm.js +151 -0
  377. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pointCloudVertex.esm.js +6 -0
  378. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassDeclaration.esm.js +13 -0
  379. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassVertex.esm.js +37 -0
  380. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassVertexDeclaration.esm.js +13 -0
  381. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/reflectionFunction.esm.js +116 -0
  382. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.esm.js +20 -0
  383. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerFragmentDeclaration.esm.js +21 -0
  384. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerVertexDeclaration.esm.js +6 -0
  385. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerVertexImplementation.esm.js +39 -0
  386. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/sceneUboDeclaration.esm.js +13 -0
  387. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/screenSpaceRayTrace.esm.js +208 -0
  388. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsFragmentFunctions.esm.js +614 -0
  389. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsVertex.esm.js +23 -0
  390. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/subSurfaceScatteringFunctions.esm.js +6 -0
  391. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/uvAttributeDeclaration.esm.js +6 -0
  392. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/uvVariableDeclaration.esm.js +9 -0
  393. package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/vertexColorMixing.esm.js +16 -0
  394. package/dist/node_modules/@babylonjs/core/Shaders/bloomMerge.fragment.esm.js +14 -0
  395. package/dist/node_modules/@babylonjs/core/Shaders/boundingBoxRenderer.fragment.esm.js +11 -0
  396. package/dist/node_modules/@babylonjs/core/Shaders/boundingBoxRenderer.vertex.esm.js +22 -0
  397. package/dist/node_modules/@babylonjs/core/Shaders/chromaticAberration.fragment.esm.js +34 -0
  398. package/dist/node_modules/@babylonjs/core/Shaders/circleOfConfusion.fragment.esm.js +19 -0
  399. package/dist/node_modules/@babylonjs/core/Shaders/default.fragment.esm.js +387 -0
  400. package/dist/node_modules/@babylonjs/core/Shaders/default.vertex.esm.js +171 -0
  401. package/dist/node_modules/@babylonjs/core/Shaders/depth.fragment.esm.js +47 -0
  402. package/dist/node_modules/@babylonjs/core/Shaders/depth.vertex.esm.js +72 -0
  403. package/dist/node_modules/@babylonjs/core/Shaders/depthOfField.fragment.esm.js +137 -0
  404. package/dist/node_modules/@babylonjs/core/Shaders/depthOfFieldMerge.fragment.esm.js +54 -0
  405. package/dist/node_modules/@babylonjs/core/Shaders/extractHighlights.fragment.esm.js +15 -0
  406. package/dist/node_modules/@babylonjs/core/Shaders/fxaa.fragment.esm.js +211 -0
  407. package/dist/node_modules/@babylonjs/core/Shaders/fxaa.vertex.esm.js +29 -0
  408. package/dist/node_modules/@babylonjs/core/Shaders/geometry.fragment.esm.js +147 -0
  409. package/dist/node_modules/@babylonjs/core/Shaders/geometry.vertex.esm.js +164 -0
  410. package/dist/node_modules/@babylonjs/core/Shaders/glowBlurPostProcess.fragment.esm.js +39 -0
  411. package/dist/node_modules/@babylonjs/core/Shaders/glowMapGeneration.fragment.esm.js +73 -0
  412. package/dist/node_modules/@babylonjs/core/Shaders/glowMapGeneration.vertex.esm.js +94 -0
  413. package/dist/node_modules/@babylonjs/core/Shaders/glowMapMerge.fragment.esm.js +29 -0
  414. package/dist/node_modules/@babylonjs/core/Shaders/glowMapMerge.vertex.esm.js +12 -0
  415. package/dist/node_modules/@babylonjs/core/Shaders/grain.fragment.esm.js +19 -0
  416. package/dist/node_modules/@babylonjs/core/Shaders/hdrFiltering.fragment.esm.js +19 -0
  417. package/dist/node_modules/@babylonjs/core/Shaders/hdrFiltering.vertex.esm.js +15 -0
  418. package/dist/node_modules/@babylonjs/core/Shaders/imageProcessing.fragment.esm.js +26 -0
  419. package/dist/node_modules/@babylonjs/core/Shaders/kernelBlur.fragment.esm.js +49 -0
  420. package/dist/node_modules/@babylonjs/core/Shaders/kernelBlur.vertex.esm.js +17 -0
  421. package/dist/node_modules/@babylonjs/core/Shaders/lensHighlights.fragment.esm.js +115 -0
  422. package/dist/node_modules/@babylonjs/core/Shaders/motionBlur.fragment.esm.js +74 -0
  423. package/dist/node_modules/@babylonjs/core/Shaders/pass.fragment.esm.js +13 -0
  424. package/dist/node_modules/@babylonjs/core/Shaders/passCube.fragment.esm.js +27 -0
  425. package/dist/node_modules/@babylonjs/core/Shaders/pbr.fragment.esm.js +648 -0
  426. package/dist/node_modules/@babylonjs/core/Shaders/pbr.vertex.esm.js +236 -0
  427. package/dist/node_modules/@babylonjs/core/Shaders/postprocess.vertex.esm.js +13 -0
  428. package/dist/node_modules/@babylonjs/core/Shaders/rgbdDecode.fragment.esm.js +11 -0
  429. package/dist/node_modules/@babylonjs/core/Shaders/rgbdEncode.fragment.esm.js +11 -0
  430. package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection.fragment.esm.js +136 -0
  431. package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2.fragment.esm.js +215 -0
  432. package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2Blur.fragment.esm.js +52 -0
  433. package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2BlurCombiner.fragment.esm.js +59 -0
  434. package/dist/node_modules/@babylonjs/core/Shaders/sharpen.fragment.esm.js +18 -0
  435. package/dist/node_modules/@babylonjs/core/Shaders/ssao.fragment.esm.js +55 -0
  436. package/dist/node_modules/@babylonjs/core/Shaders/ssao2.fragment.esm.js +165 -0
  437. package/dist/node_modules/@babylonjs/core/Shaders/ssaoCombine.fragment.esm.js +15 -0
  438. package/dist/node_modules/@babylonjs/core/Shaders/standard.fragment.esm.js +339 -0
  439. package/dist/node_modules/@babylonjs/core/States/alphaCullingState.esm.js +35 -0
  440. package/dist/node_modules/@babylonjs/core/States/depthCullingState.esm.js +69 -0
  441. package/dist/node_modules/@babylonjs/core/States/stencilState.esm.js +62 -0
  442. package/dist/node_modules/@babylonjs/core/States/stencilStateComposer.esm.js +70 -0
  443. package/dist/node_modules/@babylonjs/core/abstractScene.esm.js +71 -0
  444. package/dist/node_modules/@babylonjs/core/assetContainer.esm.js +425 -0
  445. package/dist/node_modules/@babylonjs/core/node.esm.js +536 -0
  446. package/dist/node_modules/@babylonjs/core/scene.esm.js +2809 -0
  447. package/dist/node_modules/@babylonjs/core/sceneComponent.esm.js +102 -0
  448. package/dist/node_modules/@babylonjs/core/tslib.es6.esm.js +12 -0
  449. package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFBinaryExtension.esm.js +37 -0
  450. package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoader.esm.js +902 -0
  451. package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderInterfaces.esm.js +42 -0
  452. package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderUtils.esm.js +195 -0
  453. package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFMaterialsCommonExtension.esm.js +75 -0
  454. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_image_based.esm.js +77 -0
  455. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.esm.js +53 -0
  456. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_meshopt_compression.esm.js +31 -0
  457. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_webp.esm.js +29 -0
  458. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/ExtrasAsMetadata.esm.js +47 -0
  459. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.data.esm.js +173 -0
  460. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.esm.js +82 -0
  461. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_draco_mesh_compression.esm.js +68 -0
  462. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_lights_punctual.esm.js +60 -0
  463. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_anisotropy.esm.js +39 -0
  464. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_clearcoat.esm.js +42 -0
  465. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_emissive_strength.esm.js +32 -0
  466. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_ior.esm.js +35 -0
  467. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_iridescence.esm.js +41 -0
  468. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.esm.js +41 -0
  469. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_sheen.esm.js +41 -0
  470. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_specular.esm.js +41 -0
  471. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_translucency.esm.js +41 -0
  472. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_transmission.esm.js +136 -0
  473. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_unlit.esm.js +37 -0
  474. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_variants.esm.js +178 -0
  475. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume.esm.js +40 -0
  476. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_mesh_quantization.esm.js +17 -0
  477. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_basisu.esm.js +29 -0
  478. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_transform.esm.js +29 -0
  479. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_xmp_json_ld.esm.js +31 -0
  480. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_audio_emitter.esm.js +149 -0
  481. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_lod.esm.js +170 -0
  482. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_minecraftMesh.esm.js +29 -0
  483. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_sRGBFactors.esm.js +29 -0
  484. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoader.esm.js +1562 -0
  485. package/dist/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderAnimation.esm.js +66 -0
  486. package/dist/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.esm.js +462 -0
  487. package/dist/node_modules/@babylonjs/loaders/glTF/glTFValidation.esm.js +81 -0
  488. package/package.json +6 -4
  489. /package/dist/{src/index.esm.js → index.esm.js} +0 -0
@@ -0,0 +1,185 @@
1
+ import { Color4 as O } from "../Maths/math.color.esm.js";
2
+ import { VertexBuffer as _ } from "../Buffers/buffer.esm.js";
3
+ import { Texture as R } from "../Materials/Textures/texture.esm.js";
4
+ import { RenderTargetTexture as L } from "../Materials/Textures/renderTargetTexture.esm.js";
5
+ import { MaterialHelper as F } from "../Materials/materialHelper.esm.js";
6
+ import { Camera as W } from "../Cameras/camera.esm.js";
7
+ import "../Shaders/depth.fragment.esm.js";
8
+ import "../Shaders/depth.vertex.esm.js";
9
+ import { _WarnImport as k } from "../Misc/devTools.esm.js";
10
+ import { prepareStringDefinesForClipPlanes as H, addClipPlaneUniforms as V, bindClipPlane as Z } from "../Materials/clipPlaneMaterialHelper.esm.js";
11
+ class w {
12
+ /**
13
+ * Sets a specific material to be used to render a mesh/a list of meshes by the depth renderer
14
+ * @param mesh mesh or array of meshes
15
+ * @param material material to use by the depth render when rendering the mesh(es). If undefined is passed, the specific material created by the depth renderer will be used.
16
+ */
17
+ setMaterialForRendering(d, l) {
18
+ this._depthMap.setMaterialForRendering(d, l);
19
+ }
20
+ /**
21
+ * Instantiates a depth renderer
22
+ * @param scene The scene the renderer belongs to
23
+ * @param type The texture type of the depth map (default: Engine.TEXTURETYPE_FLOAT)
24
+ * @param camera The camera to be used to render the depth map (default: scene's active camera)
25
+ * @param storeNonLinearDepth Defines whether the depth is stored linearly like in Babylon Shadows or directly like glFragCoord.z
26
+ * @param samplingMode The sampling mode to be used with the render target (Linear, Nearest...) (default: TRILINEAR_SAMPLINGMODE)
27
+ * @param storeCameraSpaceZ Defines whether the depth stored is the Z coordinate in camera space. If true, storeNonLinearDepth has no effect. (Default: false)
28
+ * @param name Name of the render target (default: DepthRenderer)
29
+ */
30
+ constructor(d, l = 1, m = null, v = !1, i = R.TRILINEAR_SAMPLINGMODE, x = !1, M) {
31
+ this.enabled = !0, this.forceDepthWriteTransparentMeshes = !1, this.useOnlyInActiveCamera = !1, this.reverseCulling = !1, this._scene = d, this._storeNonLinearDepth = v, this._storeCameraSpaceZ = x, this.isPacked = l === 0, this.isPacked ? this.clearColor = new O(1, 1, 1, 1) : this.clearColor = new O(x ? 1e8 : 1, 0, 0, 1), w._SceneComponentInitialization(this._scene);
32
+ const s = d.getEngine();
33
+ this._camera = m, i !== R.NEAREST_SAMPLINGMODE && (l === 1 && !s._caps.textureFloatLinearFiltering && (i = R.NEAREST_SAMPLINGMODE), l === 2 && !s._caps.textureHalfFloatLinearFiltering && (i = R.NEAREST_SAMPLINGMODE));
34
+ const n = this.isPacked || !s._features.supportExtendedTextureFormats ? 5 : 6;
35
+ this._depthMap = new L(M ?? "DepthRenderer", { width: s.getRenderWidth(), height: s.getRenderHeight() }, this._scene, !1, !0, l, !1, i, void 0, void 0, void 0, n), this._depthMap.wrapU = R.CLAMP_ADDRESSMODE, this._depthMap.wrapV = R.CLAMP_ADDRESSMODE, this._depthMap.refreshRate = 1, this._depthMap.renderParticles = !1, this._depthMap.renderList = null, this._depthMap.noPrePassRenderer = !0, this._depthMap.activeCamera = this._camera, this._depthMap.ignoreCameraViewport = !0, this._depthMap.useCameraPostProcesses = !1, this._depthMap.onClearObservable.add((t) => {
36
+ t.clear(this.clearColor, !0, !0, !0);
37
+ }), this._depthMap.onBeforeBindObservable.add(() => {
38
+ var t;
39
+ (t = s._debugPushGroup) === null || t === void 0 || t.call(s, "depth renderer", 1);
40
+ }), this._depthMap.onAfterUnbindObservable.add(() => {
41
+ var t;
42
+ (t = s._debugPopGroup) === null || t === void 0 || t.call(s, 1);
43
+ }), this._depthMap.customIsReadyFunction = (t, p, c) => {
44
+ if ((c || p === 0) && t.subMeshes)
45
+ for (let r = 0; r < t.subMeshes.length; ++r) {
46
+ const e = t.subMeshes[r], a = e.getRenderingMesh(), o = a._getInstancesRenderList(e._id, !!e.getReplacementMesh()), u = s.getCaps().instancedArrays && (o.visibleInstances[e._id] !== null && o.visibleInstances[e._id] !== void 0 || a.hasThinInstances);
47
+ if (!this.isReady(e, u))
48
+ return !1;
49
+ }
50
+ return !0;
51
+ };
52
+ const h = (t) => {
53
+ var p, c;
54
+ const r = t.getRenderingMesh(), e = t.getEffectiveMesh(), a = this._scene, o = a.getEngine(), u = t.getMaterial();
55
+ if (e._internalAbstractMeshDataInfo._isActiveIntermediate = !1, !u || e.infiniteDistance || u.disableDepthWrite || t.verticesCount === 0 || t._renderId === a.getRenderId())
56
+ return;
57
+ const U = e._getWorldMatrixDeterminant() < 0;
58
+ let P = (p = r.overrideMaterialSideOrientation) !== null && p !== void 0 ? p : u.sideOrientation;
59
+ U && (P = P === 0 ? 1 : 0);
60
+ const B = P === 0;
61
+ o.setState(u.backFaceCulling, 0, !1, B, this.reverseCulling ? !u.cullBackFaces : u.cullBackFaces);
62
+ const D = r._getInstancesRenderList(t._id, !!t.getReplacementMesh());
63
+ if (D.mustReturn)
64
+ return;
65
+ const N = o.getCaps().instancedArrays && (D.visibleInstances[t._id] !== null && D.visibleInstances[t._id] !== void 0 || r.hasThinInstances), T = this._camera || a.activeCamera;
66
+ if (this.isReady(t, N) && T) {
67
+ t._renderId = a.getRenderId();
68
+ const I = (c = e._internalAbstractMeshDataInfo._materialForRenderPass) === null || c === void 0 ? void 0 : c[o.currentRenderPassId];
69
+ let E = t._getDrawWrapper();
70
+ !E && I && (E = I._getDrawWrapper());
71
+ const b = T.mode === W.ORTHOGRAPHIC_CAMERA;
72
+ if (!E)
73
+ return;
74
+ const f = E.effect;
75
+ o.enableEffect(E), N || r._bind(t, f, u.fillMode), I ? I.bindForSubMesh(e.getWorldMatrix(), e, t) : (f.setMatrix("viewProjection", a.getTransformMatrix()), f.setMatrix("world", e.getWorldMatrix()), this._storeCameraSpaceZ && f.setMatrix("view", a.getViewMatrix()));
76
+ let A, S;
77
+ if (b ? (A = !o.useReverseDepthBuffer && o.isNDCHalfZRange ? 0 : 1, S = o.useReverseDepthBuffer && o.isNDCHalfZRange ? 0 : 1) : (A = o.useReverseDepthBuffer && o.isNDCHalfZRange ? T.minZ : o.isNDCHalfZRange ? 0 : T.minZ, S = o.useReverseDepthBuffer && o.isNDCHalfZRange ? 0 : T.maxZ), f.setFloat2("depthValues", A, A + S), !I) {
78
+ if (u.needAlphaTesting()) {
79
+ const g = u.getAlphaTestTexture();
80
+ g && (f.setTexture("diffuseSampler", g), f.setMatrix("diffuseMatrix", g.getTextureMatrix()));
81
+ }
82
+ if (r.useBones && r.computeBonesUsingShaders && r.skeleton) {
83
+ const g = r.skeleton;
84
+ if (g.isUsingTextureForMatrices) {
85
+ const C = g.getTransformMatrixTexture(r);
86
+ if (!C)
87
+ return;
88
+ f.setTexture("boneSampler", C), f.setFloat("boneTextureWidth", 4 * (g.bones.length + 1));
89
+ } else
90
+ f.setMatrices("mBones", g.getTransformMatrices(r));
91
+ }
92
+ Z(f, u, a), F.BindMorphTargetParameters(r, f), r.morphTargetManager && r.morphTargetManager.isUsingTextureForTargets && r.morphTargetManager._bind(f);
93
+ }
94
+ r._processRendering(e, t, f, u.fillMode, D, N, (g, C) => f.setMatrix("world", C));
95
+ }
96
+ };
97
+ this._depthMap.customRenderFunction = (t, p, c, r) => {
98
+ let e;
99
+ if (r.length)
100
+ for (e = 0; e < r.length; e++)
101
+ h(r.data[e]);
102
+ for (e = 0; e < t.length; e++)
103
+ h(t.data[e]);
104
+ for (e = 0; e < p.length; e++)
105
+ h(p.data[e]);
106
+ if (this.forceDepthWriteTransparentMeshes)
107
+ for (e = 0; e < c.length; e++)
108
+ h(c.data[e]);
109
+ else
110
+ for (e = 0; e < c.length; e++)
111
+ c.data[e].getEffectiveMesh()._internalAbstractMeshDataInfo._isActiveIntermediate = !1;
112
+ };
113
+ }
114
+ /**
115
+ * Creates the depth rendering effect and checks if the effect is ready.
116
+ * @param subMesh The submesh to be used to render the depth map of
117
+ * @param useInstances If multiple world instances should be used
118
+ * @returns if the depth renderer is ready to render the depth map
119
+ */
120
+ isReady(d, l) {
121
+ var m;
122
+ const v = this._scene.getEngine(), i = d.getMesh(), x = i.getScene(), M = (m = i._internalAbstractMeshDataInfo._materialForRenderPass) === null || m === void 0 ? void 0 : m[v.currentRenderPassId];
123
+ if (M)
124
+ return M.isReadyForSubMesh(i, d, l);
125
+ const s = d.getMaterial();
126
+ if (!s || s.disableDepthWrite)
127
+ return !1;
128
+ const n = [], h = [_.PositionKind];
129
+ if (s && s.needAlphaTesting() && s.getAlphaTestTexture() && (n.push("#define ALPHATEST"), i.isVerticesDataPresent(_.UVKind) && (h.push(_.UVKind), n.push("#define UV1")), i.isVerticesDataPresent(_.UV2Kind) && (h.push(_.UV2Kind), n.push("#define UV2"))), i.useBones && i.computeBonesUsingShaders) {
130
+ h.push(_.MatricesIndicesKind), h.push(_.MatricesWeightsKind), i.numBoneInfluencers > 4 && (h.push(_.MatricesIndicesExtraKind), h.push(_.MatricesWeightsExtraKind)), n.push("#define NUM_BONE_INFLUENCERS " + i.numBoneInfluencers), n.push("#define BonesPerMesh " + (i.skeleton ? i.skeleton.bones.length + 1 : 0));
131
+ const a = d.getRenderingMesh().skeleton;
132
+ a != null && a.isUsingTextureForMatrices && n.push("#define BONETEXTURE");
133
+ } else
134
+ n.push("#define NUM_BONE_INFLUENCERS 0");
135
+ const t = i.morphTargetManager;
136
+ let p = 0;
137
+ t && t.numInfluencers > 0 && (p = t.numInfluencers, n.push("#define MORPHTARGETS"), n.push("#define NUM_MORPH_INFLUENCERS " + p), t.isUsingTextureForTargets && n.push("#define MORPHTARGETS_TEXTURE"), F.PrepareAttributesForMorphTargetsInfluencers(h, i, p)), l && (n.push("#define INSTANCES"), F.PushAttributesForInstances(h), d.getRenderingMesh().hasThinInstances && n.push("#define THIN_INSTANCES")), this._storeNonLinearDepth && n.push("#define NONLINEARDEPTH"), this._storeCameraSpaceZ && n.push("#define STORE_CAMERASPACE_Z"), this.isPacked && n.push("#define PACKED"), H(s, x, n);
138
+ const c = d._getDrawWrapper(void 0, !0), r = c.defines, e = n.join(`
139
+ `);
140
+ if (r !== e) {
141
+ const a = [
142
+ "world",
143
+ "mBones",
144
+ "boneTextureWidth",
145
+ "viewProjection",
146
+ "view",
147
+ "diffuseMatrix",
148
+ "depthValues",
149
+ "morphTargetInfluences",
150
+ "morphTargetTextureInfo",
151
+ "morphTargetTextureIndices"
152
+ ];
153
+ V(a), c.setEffect(v.createEffect("depth", h, a, ["diffuseSampler", "morphTargets", "boneSampler"], e, void 0, void 0, void 0, {
154
+ maxSimultaneousMorphTargets: p
155
+ }), e);
156
+ }
157
+ return c.effect.isReady();
158
+ }
159
+ /**
160
+ * Gets the texture which the depth map will be written to.
161
+ * @returns The depth map texture
162
+ */
163
+ getDepthMap() {
164
+ return this._depthMap;
165
+ }
166
+ /**
167
+ * Disposes of the depth renderer.
168
+ */
169
+ dispose() {
170
+ const d = [];
171
+ for (const l in this._scene._depthRenderer)
172
+ this._scene._depthRenderer[l] === this && d.push(l);
173
+ if (d.length > 0) {
174
+ this._depthMap.dispose();
175
+ for (const l of d)
176
+ delete this._scene._depthRenderer[l];
177
+ }
178
+ }
179
+ }
180
+ w._SceneComponentInitialization = (K) => {
181
+ throw k("DepthRendererSceneComponent");
182
+ };
183
+ export {
184
+ w as DepthRenderer
185
+ };
@@ -0,0 +1,65 @@
1
+ import { Scene as h } from "../scene.esm.js";
2
+ import { DepthRenderer as p } from "./depthRenderer.esm.js";
3
+ import { SceneComponentConstants as i } from "../sceneComponent.esm.js";
4
+ h.prototype.enableDepthRenderer = function(e, t = !1, n = !1, r = 3, R = !1) {
5
+ if (e = e || this.activeCamera, !e)
6
+ throw "No camera available to enable depth renderer";
7
+ if (this._depthRenderer || (this._depthRenderer = {}), !this._depthRenderer[e.id]) {
8
+ const d = !!this.getEngine().getCaps().textureFloatRender;
9
+ let s = 0;
10
+ this.getEngine().getCaps().textureHalfFloatRender && (!n || !d) ? s = 2 : d ? s = 1 : s = 0, this._depthRenderer[e.id] = new p(this, s, e, t, r, R);
11
+ }
12
+ return this._depthRenderer[e.id];
13
+ };
14
+ h.prototype.disableDepthRenderer = function(e) {
15
+ e = e || this.activeCamera, !(!e || !this._depthRenderer || !this._depthRenderer[e.id]) && this._depthRenderer[e.id].dispose();
16
+ };
17
+ class o {
18
+ /**
19
+ * Creates a new instance of the component for the given scene
20
+ * @param scene Defines the scene to register the component in
21
+ */
22
+ constructor(t) {
23
+ this.name = i.NAME_DEPTHRENDERER, this.scene = t;
24
+ }
25
+ /**
26
+ * Registers the component in a given scene
27
+ */
28
+ register() {
29
+ this.scene._gatherRenderTargetsStage.registerStep(i.STEP_GATHERRENDERTARGETS_DEPTHRENDERER, this, this._gatherRenderTargets), this.scene._gatherActiveCameraRenderTargetsStage.registerStep(i.STEP_GATHERACTIVECAMERARENDERTARGETS_DEPTHRENDERER, this, this._gatherActiveCameraRenderTargets);
30
+ }
31
+ /**
32
+ * Rebuilds the elements related to this component in case of
33
+ * context lost for instance.
34
+ */
35
+ rebuild() {
36
+ }
37
+ /**
38
+ * Disposes the component and the associated resources
39
+ */
40
+ dispose() {
41
+ for (const t in this.scene._depthRenderer)
42
+ this.scene._depthRenderer[t].dispose();
43
+ }
44
+ _gatherRenderTargets(t) {
45
+ if (this.scene._depthRenderer)
46
+ for (const n in this.scene._depthRenderer) {
47
+ const r = this.scene._depthRenderer[n];
48
+ r.enabled && !r.useOnlyInActiveCamera && t.push(r.getDepthMap());
49
+ }
50
+ }
51
+ _gatherActiveCameraRenderTargets(t) {
52
+ if (this.scene._depthRenderer)
53
+ for (const n in this.scene._depthRenderer) {
54
+ const r = this.scene._depthRenderer[n];
55
+ r.enabled && r.useOnlyInActiveCamera && this.scene.activeCamera.id === n && t.push(r.getDepthMap());
56
+ }
57
+ }
58
+ }
59
+ p._SceneComponentInitialization = (e) => {
60
+ let t = e._getComponent(i.NAME_DEPTHRENDERER);
61
+ t || (t = new o(e), e._addComponent(t));
62
+ };
63
+ export {
64
+ o as DepthRendererSceneComponent
65
+ };
@@ -0,0 +1,353 @@
1
+ import { Matrix as F } from "../Maths/math.vector.esm.js";
2
+ import { VertexBuffer as T } from "../Buffers/buffer.esm.js";
3
+ import { Texture as L } from "../Materials/Textures/texture.esm.js";
4
+ import { MultiRenderTarget as V } from "../Materials/Textures/multiRenderTarget.esm.js";
5
+ import { MaterialHelper as b } from "../Materials/materialHelper.esm.js";
6
+ import { Color4 as O } from "../Maths/math.color.esm.js";
7
+ import { _WarnImport as N } from "../Misc/devTools.esm.js";
8
+ import { Material as v } from "../Materials/material.esm.js";
9
+ import "../Shaders/geometry.fragment.esm.js";
10
+ import "../Shaders/geometry.vertex.esm.js";
11
+ import { MaterialFlags as A } from "../Materials/materialFlags.esm.js";
12
+ import { addClipPlaneUniforms as D, prepareStringDefinesForClipPlanes as B, bindClipPlane as W } from "../Materials/clipPlaneMaterialHelper.esm.js";
13
+ const y = [
14
+ "world",
15
+ "mBones",
16
+ "viewProjection",
17
+ "diffuseMatrix",
18
+ "view",
19
+ "previousWorld",
20
+ "previousViewProjection",
21
+ "mPreviousBones",
22
+ "bumpMatrix",
23
+ "reflectivityMatrix",
24
+ "albedoMatrix",
25
+ "reflectivityColor",
26
+ "albedoColor",
27
+ "metallic",
28
+ "glossiness",
29
+ "vTangentSpaceParams",
30
+ "vBumpInfos",
31
+ "morphTargetInfluences",
32
+ "morphTargetTextureInfo",
33
+ "morphTargetTextureIndices"
34
+ ];
35
+ D(y);
36
+ class f {
37
+ /**
38
+ * @internal
39
+ * Sets up internal structures to share outputs with PrePassRenderer
40
+ * This method should only be called by the PrePassRenderer itself
41
+ */
42
+ _linkPrePassRenderer(i) {
43
+ this._linkedWithPrePass = !0, this._prePassRenderer = i, this._multiRenderTarget && (this._multiRenderTarget.onClearObservable.clear(), this._multiRenderTarget.onClearObservable.add(() => {
44
+ }));
45
+ }
46
+ /**
47
+ * @internal
48
+ * Separates internal structures from PrePassRenderer so the geometry buffer can now operate by itself.
49
+ * This method should only be called by the PrePassRenderer itself
50
+ */
51
+ _unlinkPrePassRenderer() {
52
+ this._linkedWithPrePass = !1, this._createRenderTargets();
53
+ }
54
+ /**
55
+ * @internal
56
+ * Resets the geometry buffer layout
57
+ */
58
+ _resetLayout() {
59
+ this._enablePosition = !1, this._enableReflectivity = !1, this._enableVelocity = !1, this._attachmentsFromPrePass = [];
60
+ }
61
+ /**
62
+ * @internal
63
+ * Replaces a texture in the geometry buffer renderer
64
+ * Useful when linking textures of the prepass renderer
65
+ */
66
+ _forceTextureType(i, u) {
67
+ i === f.POSITION_TEXTURE_TYPE ? (this._positionIndex = u, this._enablePosition = !0) : i === f.VELOCITY_TEXTURE_TYPE ? (this._velocityIndex = u, this._enableVelocity = !0) : i === f.REFLECTIVITY_TEXTURE_TYPE ? (this._reflectivityIndex = u, this._enableReflectivity = !0) : i === f.DEPTH_TEXTURE_TYPE ? this._depthIndex = u : i === f.NORMAL_TEXTURE_TYPE && (this._normalIndex = u);
68
+ }
69
+ /**
70
+ * @internal
71
+ * Sets texture attachments
72
+ * Useful when linking textures of the prepass renderer
73
+ */
74
+ _setAttachments(i) {
75
+ this._attachmentsFromPrePass = i;
76
+ }
77
+ /**
78
+ * @internal
79
+ * Replaces the first texture which is hard coded as a depth texture in the geometry buffer
80
+ * Useful when linking textures of the prepass renderer
81
+ */
82
+ _linkInternalTexture(i) {
83
+ this._multiRenderTarget.setInternalTexture(i, 0, !1);
84
+ }
85
+ /**
86
+ * Gets the render list (meshes to be rendered) used in the G buffer.
87
+ */
88
+ get renderList() {
89
+ return this._multiRenderTarget.renderList;
90
+ }
91
+ /**
92
+ * Set the render list (meshes to be rendered) used in the G buffer.
93
+ */
94
+ set renderList(i) {
95
+ this._multiRenderTarget.renderList = i;
96
+ }
97
+ /**
98
+ * Gets whether or not G buffer are supported by the running hardware.
99
+ * This requires draw buffer supports
100
+ */
101
+ get isSupported() {
102
+ return this._multiRenderTarget.isSupported;
103
+ }
104
+ /**
105
+ * Returns the index of the given texture type in the G-Buffer textures array
106
+ * @param textureType The texture type constant. For example GeometryBufferRenderer.POSITION_TEXTURE_INDEX
107
+ * @returns the index of the given texture type in the G-Buffer textures array
108
+ */
109
+ getTextureIndex(i) {
110
+ switch (i) {
111
+ case f.POSITION_TEXTURE_TYPE:
112
+ return this._positionIndex;
113
+ case f.VELOCITY_TEXTURE_TYPE:
114
+ return this._velocityIndex;
115
+ case f.REFLECTIVITY_TEXTURE_TYPE:
116
+ return this._reflectivityIndex;
117
+ default:
118
+ return -1;
119
+ }
120
+ }
121
+ /**
122
+ * Gets a boolean indicating if objects positions are enabled for the G buffer.
123
+ */
124
+ get enablePosition() {
125
+ return this._enablePosition;
126
+ }
127
+ /**
128
+ * Sets whether or not objects positions are enabled for the G buffer.
129
+ */
130
+ set enablePosition(i) {
131
+ this._enablePosition = i, this._linkedWithPrePass || (this.dispose(), this._createRenderTargets());
132
+ }
133
+ /**
134
+ * Gets a boolean indicating if objects velocities are enabled for the G buffer.
135
+ */
136
+ get enableVelocity() {
137
+ return this._enableVelocity;
138
+ }
139
+ /**
140
+ * Sets whether or not objects velocities are enabled for the G buffer.
141
+ */
142
+ set enableVelocity(i) {
143
+ this._enableVelocity = i, i || (this._previousTransformationMatrices = {}), this._linkedWithPrePass || (this.dispose(), this._createRenderTargets()), this._scene.needsPreviousWorldMatrices = i;
144
+ }
145
+ /**
146
+ * Gets a boolean indicating if objects reflectivity are enabled in the G buffer.
147
+ */
148
+ get enableReflectivity() {
149
+ return this._enableReflectivity;
150
+ }
151
+ /**
152
+ * Sets whether or not objects reflectivity are enabled for the G buffer.
153
+ * For Metallic-Roughness workflow with ORM texture, we assume that ORM texture is defined according to the default layout:
154
+ * pbr.useRoughnessFromMetallicTextureAlpha = false;
155
+ * pbr.useRoughnessFromMetallicTextureGreen = true;
156
+ * pbr.useMetallnessFromMetallicTextureBlue = true;
157
+ */
158
+ set enableReflectivity(i) {
159
+ this._enableReflectivity = i, this._linkedWithPrePass || (this.dispose(), this._createRenderTargets());
160
+ }
161
+ /**
162
+ * Gets the scene associated with the buffer.
163
+ */
164
+ get scene() {
165
+ return this._scene;
166
+ }
167
+ /**
168
+ * Gets the ratio used by the buffer during its creation.
169
+ * How big is the buffer related to the main canvas.
170
+ */
171
+ get ratio() {
172
+ return this._ratio;
173
+ }
174
+ /**
175
+ * Creates a new G Buffer for the scene
176
+ * @param scene The scene the buffer belongs to
177
+ * @param ratio How big is the buffer related to the main canvas (default: 1)
178
+ * @param depthFormat Format of the depth texture (default: 15)
179
+ */
180
+ constructor(i, u = 1, s = 15) {
181
+ this._previousTransformationMatrices = {}, this._previousBonesTransformationMatrices = {}, this.excludedSkinnedMeshesFromVelocity = [], this.renderTransparentMeshes = !0, this._resizeObserver = null, this._enablePosition = !1, this._enableVelocity = !1, this._enableReflectivity = !1, this._clearColor = new O(0, 0, 0, 0), this._clearDepthColor = new O(1e8, 0, 0, 1), this._positionIndex = -1, this._velocityIndex = -1, this._reflectivityIndex = -1, this._depthIndex = -1, this._normalIndex = -1, this._linkedWithPrePass = !1, this.useSpecificClearForDepthTexture = !1, this._scene = i, this._ratio = u, this._useUbo = i.getEngine().supportsUniformBuffers, this._depthFormat = s, f._SceneComponentInitialization(this._scene), this._createRenderTargets();
182
+ }
183
+ /**
184
+ * Checks whether everything is ready to render a submesh to the G buffer.
185
+ * @param subMesh the submesh to check readiness for
186
+ * @param useInstances is the mesh drawn using instance or not
187
+ * @returns true if ready otherwise false
188
+ */
189
+ isReady(i, u) {
190
+ const s = i.getMaterial();
191
+ if (s && s.disableDepthWrite)
192
+ return !1;
193
+ const e = [], d = [T.PositionKind, T.NormalKind], h = i.getMesh();
194
+ if (s) {
195
+ let n = !1;
196
+ if (s.needAlphaTesting() && s.getAlphaTestTexture() && (e.push("#define ALPHATEST"), e.push(`#define ALPHATEST_UV${s.getAlphaTestTexture().coordinatesIndex + 1}`), n = !0), s.bumpTexture && A.BumpTextureEnabled && (e.push("#define BUMP"), e.push(`#define BUMP_UV${s.bumpTexture.coordinatesIndex + 1}`), n = !0), this._enableReflectivity) {
197
+ let o = !1;
198
+ s.getClassName() === "PBRMetallicRoughnessMaterial" ? (s.metallicRoughnessTexture !== null && (e.push("#define ORMTEXTURE"), e.push(`#define REFLECTIVITY_UV${s.metallicRoughnessTexture.coordinatesIndex + 1}`), e.push("#define METALLICWORKFLOW"), n = !0, o = !0), s.metallic !== null && (e.push("#define METALLIC"), e.push("#define METALLICWORKFLOW"), o = !0), s.roughness !== null && (e.push("#define ROUGHNESS"), e.push("#define METALLICWORKFLOW"), o = !0), o && (s.baseTexture !== null && (e.push("#define ALBEDOTEXTURE"), e.push(`#define ALBEDO_UV${s.baseTexture.coordinatesIndex + 1}`), s.baseTexture.gammaSpace && e.push("#define GAMMAALBEDO"), n = !0), s.baseColor !== null && e.push("#define ALBEDOCOLOR"))) : s.getClassName() === "PBRSpecularGlossinessMaterial" ? (s.specularGlossinessTexture !== null ? (e.push("#define SPECULARGLOSSINESSTEXTURE"), e.push(`#define REFLECTIVITY_UV${s.specularGlossinessTexture.coordinatesIndex + 1}`), n = !0, s.specularGlossinessTexture.gammaSpace && e.push("#define GAMMAREFLECTIVITYTEXTURE")) : s.specularColor !== null && e.push("#define REFLECTIVITYCOLOR"), s.glossiness !== null && e.push("#define GLOSSINESS")) : s.getClassName() === "PBRMaterial" ? (s.metallicTexture !== null && (e.push("#define ORMTEXTURE"), e.push(`#define REFLECTIVITY_UV${s.metallicTexture.coordinatesIndex + 1}`), e.push("#define METALLICWORKFLOW"), n = !0, o = !0), s.metallic !== null && (e.push("#define METALLIC"), e.push("#define METALLICWORKFLOW"), o = !0), s.roughness !== null && (e.push("#define ROUGHNESS"), e.push("#define METALLICWORKFLOW"), o = !0), o ? (s.albedoTexture !== null && (e.push("#define ALBEDOTEXTURE"), e.push(`#define ALBEDO_UV${s.albedoTexture.coordinatesIndex + 1}`), s.albedoTexture.gammaSpace && e.push("#define GAMMAALBEDO"), n = !0), s.albedoColor !== null && e.push("#define ALBEDOCOLOR")) : (s.reflectivityTexture !== null ? (e.push("#define SPECULARGLOSSINESSTEXTURE"), e.push(`#define REFLECTIVITY_UV${s.reflectivityTexture.coordinatesIndex + 1}`), s.reflectivityTexture.gammaSpace && e.push("#define GAMMAREFLECTIVITYTEXTURE"), n = !0) : s.reflectivityColor !== null && e.push("#define REFLECTIVITYCOLOR"), s.microSurface !== null && e.push("#define GLOSSINESS"))) : s.getClassName() === "StandardMaterial" && (s.specularTexture !== null && (e.push("#define REFLECTIVITYTEXTURE"), e.push(`#define REFLECTIVITY_UV${s.specularTexture.coordinatesIndex + 1}`), s.specularTexture.gammaSpace && e.push("#define GAMMAREFLECTIVITYTEXTURE"), n = !0), s.specularColor !== null && e.push("#define REFLECTIVITYCOLOR"));
199
+ }
200
+ n && (e.push("#define NEED_UV"), h.isVerticesDataPresent(T.UVKind) && (d.push(T.UVKind), e.push("#define UV1")), h.isVerticesDataPresent(T.UV2Kind) && (d.push(T.UV2Kind), e.push("#define UV2")));
201
+ }
202
+ this._linkedWithPrePass && (e.push("#define PREPASS"), this._depthIndex !== -1 && (e.push("#define DEPTH_INDEX " + this._depthIndex), e.push("#define PREPASS_DEPTH")), this._normalIndex !== -1 && (e.push("#define NORMAL_INDEX " + this._normalIndex), e.push("#define PREPASS_NORMAL"))), this._enablePosition && (e.push("#define POSITION"), e.push("#define POSITION_INDEX " + this._positionIndex)), this._enableVelocity && (e.push("#define VELOCITY"), e.push("#define VELOCITY_INDEX " + this._velocityIndex), this.excludedSkinnedMeshesFromVelocity.indexOf(h) === -1 && e.push("#define BONES_VELOCITY_ENABLED")), this._enableReflectivity && (e.push("#define REFLECTIVITY"), e.push("#define REFLECTIVITY_INDEX " + this._reflectivityIndex)), h.useBones && h.computeBonesUsingShaders ? (d.push(T.MatricesIndicesKind), d.push(T.MatricesWeightsKind), h.numBoneInfluencers > 4 && (d.push(T.MatricesIndicesExtraKind), d.push(T.MatricesWeightsExtraKind)), e.push("#define NUM_BONE_INFLUENCERS " + h.numBoneInfluencers), e.push("#define BonesPerMesh " + (h.skeleton ? h.skeleton.bones.length + 1 : 0))) : e.push("#define NUM_BONE_INFLUENCERS 0");
203
+ const p = h.morphTargetManager;
204
+ let _ = 0;
205
+ p && p.numInfluencers > 0 && (_ = p.numInfluencers, e.push("#define MORPHTARGETS"), e.push("#define NUM_MORPH_INFLUENCERS " + _), p.isUsingTextureForTargets && e.push("#define MORPHTARGETS_TEXTURE"), b.PrepareAttributesForMorphTargetsInfluencers(d, h, _)), u && (e.push("#define INSTANCES"), b.PushAttributesForInstances(d, this._enableVelocity), i.getRenderingMesh().hasThinInstances && e.push("#define THIN_INSTANCES")), this._linkedWithPrePass ? e.push("#define RENDER_TARGET_COUNT " + this._attachmentsFromPrePass.length) : e.push("#define RENDER_TARGET_COUNT " + this._multiRenderTarget.textures.length), B(s, this._scene, e);
206
+ const C = this._scene.getEngine(), M = i._getDrawWrapper(void 0, !0), E = M.defines, a = e.join(`
207
+ `);
208
+ return E !== a && M.setEffect(C.createEffect("geometry", {
209
+ attributes: d,
210
+ uniformsNames: y,
211
+ samplers: ["diffuseSampler", "bumpSampler", "reflectivitySampler", "albedoSampler", "morphTargets"],
212
+ defines: a,
213
+ onCompiled: null,
214
+ fallbacks: null,
215
+ onError: null,
216
+ uniformBuffersNames: ["Scene"],
217
+ indexParameters: { buffersCount: this._multiRenderTarget.textures.length - 1, maxSimultaneousMorphTargets: _ }
218
+ }, C), a), M.effect.isReady();
219
+ }
220
+ /**
221
+ * Gets the current underlying G Buffer.
222
+ * @returns the buffer
223
+ */
224
+ getGBuffer() {
225
+ return this._multiRenderTarget;
226
+ }
227
+ /**
228
+ * Gets the number of samples used to render the buffer (anti aliasing).
229
+ */
230
+ get samples() {
231
+ return this._multiRenderTarget.samples;
232
+ }
233
+ /**
234
+ * Sets the number of samples used to render the buffer (anti aliasing).
235
+ */
236
+ set samples(i) {
237
+ this._multiRenderTarget.samples = i;
238
+ }
239
+ /**
240
+ * Disposes the renderer and frees up associated resources.
241
+ */
242
+ dispose() {
243
+ this._resizeObserver && (this._scene.getEngine().onResizeObservable.remove(this._resizeObserver), this._resizeObserver = null), this.getGBuffer().dispose();
244
+ }
245
+ _assignRenderTargetIndices() {
246
+ const i = [];
247
+ let u = 2;
248
+ return i.push("gBuffer_Depth", "gBuffer_Normal"), this._enablePosition && (this._positionIndex = u, u++, i.push("gBuffer_Position")), this._enableVelocity && (this._velocityIndex = u, u++, i.push("gBuffer_Velocity")), this._enableReflectivity && (this._reflectivityIndex = u, u++, i.push("gBuffer_Reflectivity")), [u, i];
249
+ }
250
+ _createRenderTargets() {
251
+ const i = this._scene.getEngine(), [u, s] = this._assignRenderTargetIndices();
252
+ let e = 0;
253
+ if (i._caps.textureFloat && i._caps.textureFloatLinearFiltering ? e = 1 : i._caps.textureHalfFloat && i._caps.textureHalfFloatLinearFiltering && (e = 2), this._multiRenderTarget = new V("gBuffer", { width: i.getRenderWidth() * this._ratio, height: i.getRenderHeight() * this._ratio }, u, this._scene, { generateMipMaps: !1, generateDepthTexture: !0, defaultType: e, depthTextureFormat: this._depthFormat }, s.concat("gBuffer_DepthBuffer")), !this.isSupported)
254
+ return;
255
+ this._multiRenderTarget.wrapU = L.CLAMP_ADDRESSMODE, this._multiRenderTarget.wrapV = L.CLAMP_ADDRESSMODE, this._multiRenderTarget.refreshRate = 1, this._multiRenderTarget.renderParticles = !1, this._multiRenderTarget.renderList = null;
256
+ const d = [!0], h = [!1], p = [!0];
257
+ for (let a = 1; a < u; ++a)
258
+ d.push(!0), p.push(!1), h.push(!0);
259
+ const _ = i.buildTextureLayout(d), C = i.buildTextureLayout(h), M = i.buildTextureLayout(p);
260
+ this._multiRenderTarget.onClearObservable.add((a) => {
261
+ a.bindAttachments(this.useSpecificClearForDepthTexture ? C : _), a.clear(this._clearColor, !0, !0, !0), this.useSpecificClearForDepthTexture && (a.bindAttachments(M), a.clear(this._clearDepthColor, !0, !0, !0)), a.bindAttachments(_);
262
+ }), this._resizeObserver = i.onResizeObservable.add(() => {
263
+ this._multiRenderTarget && this._multiRenderTarget.resize({ width: i.getRenderWidth() * this._ratio, height: i.getRenderHeight() * this._ratio });
264
+ });
265
+ const E = (a) => {
266
+ const n = a.getRenderingMesh(), o = a.getEffectiveMesh(), c = this._scene, l = c.getEngine(), t = a.getMaterial();
267
+ if (!t)
268
+ return;
269
+ if (o._internalAbstractMeshDataInfo._isActiveIntermediate = !1, this._enableVelocity && !this._previousTransformationMatrices[o.uniqueId] && (this._previousTransformationMatrices[o.uniqueId] = {
270
+ world: F.Identity(),
271
+ viewProjection: c.getTransformMatrix()
272
+ }, n.skeleton)) {
273
+ const m = n.skeleton.getTransformMatrices(n);
274
+ this._previousBonesTransformationMatrices[n.uniqueId] = this._copyBonesTransformationMatrices(m, new Float32Array(m.length));
275
+ }
276
+ const R = n._getInstancesRenderList(a._id, !!a.getReplacementMesh());
277
+ if (R.mustReturn)
278
+ return;
279
+ const I = l.getCaps().instancedArrays && (R.visibleInstances[a._id] !== null || n.hasThinInstances), P = o.getWorldMatrix();
280
+ if (this.isReady(a, I)) {
281
+ const m = a._getDrawWrapper();
282
+ if (!m)
283
+ return;
284
+ const r = m.effect;
285
+ l.enableEffect(m), I || n._bind(a, r, t.fillMode), this._useUbo ? (b.BindSceneUniformBuffer(r, this._scene.getSceneUniformBuffer()), this._scene.finalizeSceneUbo()) : (r.setMatrix("viewProjection", c.getTransformMatrix()), r.setMatrix("view", c.getViewMatrix()));
286
+ let g;
287
+ const S = n._instanceDataStorage;
288
+ if (!S.isFrozen && (t.backFaceCulling || n.overrideMaterialSideOrientation !== null)) {
289
+ const x = o._getWorldMatrixDeterminant();
290
+ g = n.overrideMaterialSideOrientation, g === null && (g = t.sideOrientation), x < 0 && (g = g === v.ClockWiseSideOrientation ? v.CounterClockWiseSideOrientation : v.ClockWiseSideOrientation);
291
+ } else
292
+ g = S.sideOrientation;
293
+ if (t._preBind(m, g), t.needAlphaTesting()) {
294
+ const x = t.getAlphaTestTexture();
295
+ x && (r.setTexture("diffuseSampler", x), r.setMatrix("diffuseMatrix", x.getTextureMatrix()));
296
+ }
297
+ t.bumpTexture && c.getEngine().getCaps().standardDerivatives && A.BumpTextureEnabled && (r.setFloat3("vBumpInfos", t.bumpTexture.coordinatesIndex, 1 / t.bumpTexture.level, t.parallaxScaleBias), r.setMatrix("bumpMatrix", t.bumpTexture.getTextureMatrix()), r.setTexture("bumpSampler", t.bumpTexture), r.setFloat2("vTangentSpaceParams", t.invertNormalMapX ? -1 : 1, t.invertNormalMapY ? -1 : 1)), this._enableReflectivity && (t.getClassName() === "PBRMetallicRoughnessMaterial" ? (t.metallicRoughnessTexture !== null && (r.setTexture("reflectivitySampler", t.metallicRoughnessTexture), r.setMatrix("reflectivityMatrix", t.metallicRoughnessTexture.getTextureMatrix())), t.metallic !== null && r.setFloat("metallic", t.metallic), t.roughness !== null && r.setFloat("glossiness", 1 - t.roughness), t.baseTexture !== null && (r.setTexture("albedoSampler", t.baseTexture), r.setMatrix("albedoMatrix", t.baseTexture.getTextureMatrix())), t.baseColor !== null && r.setColor3("albedoColor", t.baseColor)) : t.getClassName() === "PBRSpecularGlossinessMaterial" ? (t.specularGlossinessTexture !== null ? (r.setTexture("reflectivitySampler", t.specularGlossinessTexture), r.setMatrix("reflectivityMatrix", t.specularGlossinessTexture.getTextureMatrix())) : t.specularColor !== null && r.setColor3("reflectivityColor", t.specularColor), t.glossiness !== null && r.setFloat("glossiness", t.glossiness)) : t.getClassName() === "PBRMaterial" ? (t.metallicTexture !== null && (r.setTexture("reflectivitySampler", t.metallicTexture), r.setMatrix("reflectivityMatrix", t.metallicTexture.getTextureMatrix())), t.metallic !== null && r.setFloat("metallic", t.metallic), t.roughness !== null && r.setFloat("glossiness", 1 - t.roughness), t.roughness !== null || t.metallic !== null || t.metallicTexture !== null ? (t.albedoTexture !== null && (r.setTexture("albedoSampler", t.albedoTexture), r.setMatrix("albedoMatrix", t.albedoTexture.getTextureMatrix())), t.albedoColor !== null && r.setColor3("albedoColor", t.albedoColor)) : (t.reflectivityTexture !== null ? (r.setTexture("reflectivitySampler", t.reflectivityTexture), r.setMatrix("reflectivityMatrix", t.reflectivityTexture.getTextureMatrix())) : t.reflectivityColor !== null && r.setColor3("reflectivityColor", t.reflectivityColor), t.microSurface !== null && r.setFloat("glossiness", t.microSurface))) : t.getClassName() === "StandardMaterial" && (t.specularTexture !== null && (r.setTexture("reflectivitySampler", t.specularTexture), r.setMatrix("reflectivityMatrix", t.specularTexture.getTextureMatrix())), t.specularColor !== null && r.setColor3("reflectivityColor", t.specularColor))), W(r, t, this._scene), n.useBones && n.computeBonesUsingShaders && n.skeleton && (r.setMatrices("mBones", n.skeleton.getTransformMatrices(n)), this._enableVelocity && r.setMatrices("mPreviousBones", this._previousBonesTransformationMatrices[n.uniqueId])), b.BindMorphTargetParameters(n, r), n.morphTargetManager && n.morphTargetManager.isUsingTextureForTargets && n.morphTargetManager._bind(r), this._enableVelocity && (r.setMatrix("previousWorld", this._previousTransformationMatrices[o.uniqueId].world), r.setMatrix("previousViewProjection", this._previousTransformationMatrices[o.uniqueId].viewProjection)), I && n.hasThinInstances && r.setMatrix("world", P), n._processRendering(o, a, r, t.fillMode, R, I, (x, U) => {
298
+ x || r.setMatrix("world", U);
299
+ });
300
+ }
301
+ this._enableVelocity && (this._previousTransformationMatrices[o.uniqueId].world = P.clone(), this._previousTransformationMatrices[o.uniqueId].viewProjection = this._scene.getTransformMatrix().clone(), n.skeleton && this._copyBonesTransformationMatrices(n.skeleton.getTransformMatrices(n), this._previousBonesTransformationMatrices[o.uniqueId]));
302
+ };
303
+ this._multiRenderTarget.customIsReadyFunction = (a, n, o) => {
304
+ if ((o || n === 0) && a.subMeshes)
305
+ for (let c = 0; c < a.subMeshes.length; ++c) {
306
+ const l = a.subMeshes[c], t = l.getMaterial(), R = l.getRenderingMesh();
307
+ if (!t)
308
+ continue;
309
+ const I = R._getInstancesRenderList(l._id, !!l.getReplacementMesh()), P = i.getCaps().instancedArrays && (I.visibleInstances[l._id] !== null || R.hasThinInstances);
310
+ if (!this.isReady(l, P))
311
+ return !1;
312
+ }
313
+ return !0;
314
+ }, this._multiRenderTarget.customRenderFunction = (a, n, o, c) => {
315
+ let l;
316
+ if (this._linkedWithPrePass) {
317
+ if (!this._prePassRenderer.enabled)
318
+ return;
319
+ this._scene.getEngine().bindAttachments(this._attachmentsFromPrePass);
320
+ }
321
+ if (c.length) {
322
+ for (i.setColorWrite(!1), l = 0; l < c.length; l++)
323
+ E(c.data[l]);
324
+ i.setColorWrite(!0);
325
+ }
326
+ for (l = 0; l < a.length; l++)
327
+ E(a.data[l]);
328
+ for (i.setDepthWrite(!1), l = 0; l < n.length; l++)
329
+ E(n.data[l]);
330
+ if (this.renderTransparentMeshes)
331
+ for (l = 0; l < o.length; l++)
332
+ E(o.data[l]);
333
+ i.setDepthWrite(!0);
334
+ };
335
+ }
336
+ // Copies the bones transformation matrices into the target array and returns the target's reference
337
+ _copyBonesTransformationMatrices(i, u) {
338
+ for (let s = 0; s < i.length; s++)
339
+ u[s] = i[s];
340
+ return u;
341
+ }
342
+ }
343
+ f.DEPTH_TEXTURE_TYPE = 0;
344
+ f.NORMAL_TEXTURE_TYPE = 1;
345
+ f.POSITION_TEXTURE_TYPE = 2;
346
+ f.VELOCITY_TEXTURE_TYPE = 3;
347
+ f.REFLECTIVITY_TEXTURE_TYPE = 4;
348
+ f._SceneComponentInitialization = (Y) => {
349
+ throw N("GeometryBufferRendererSceneComponent");
350
+ };
351
+ export {
352
+ f as GeometryBufferRenderer
353
+ };