@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.
- package/dist/lib/assetCache.esm.js +21 -0
- package/dist/lib/configuration.esm.js +98 -0
- package/dist/lib/core.esm.js +417 -0
- package/dist/lib/dynamicTexture.esm.js +51 -0
- package/dist/lib/glbLoaderExtensions.esm.js +137 -0
- package/dist/lib/glowLayerManager.esm.js +19 -0
- package/dist/lib/guid.esm.js +7 -0
- package/dist/lib/material.esm.js +50 -0
- package/dist/lib/modelContainer.esm.js +351 -0
- package/dist/lib/productAnimations.esm.js +123 -0
- package/dist/lib/productCamera.esm.js +113 -0
- package/dist/lib/renderConstants.esm.js +103 -0
- package/dist/lib/renderingPipeline.esm.js +99 -0
- package/dist/lib/types.esm.js +5 -0
- package/dist/lib/variants.esm.js +112 -0
- package/dist/node_modules/@babylonjs/core/Actions/abstractActionManager.esm.js +41 -0
- package/dist/node_modules/@babylonjs/core/Actions/action.esm.js +122 -0
- package/dist/node_modules/@babylonjs/core/Actions/actionEvent.esm.js +59 -0
- package/dist/node_modules/@babylonjs/core/Actions/actionManager.esm.js +335 -0
- package/dist/node_modules/@babylonjs/core/Actions/condition.esm.js +193 -0
- package/dist/node_modules/@babylonjs/core/Actions/directActions.esm.js +354 -0
- package/dist/node_modules/@babylonjs/core/Animations/animatable.esm.js +478 -0
- package/dist/node_modules/@babylonjs/core/Animations/animation.esm.js +866 -0
- package/dist/node_modules/@babylonjs/core/Animations/animationEvent.esm.js +18 -0
- package/dist/node_modules/@babylonjs/core/Animations/animationGroup.esm.js +470 -0
- package/dist/node_modules/@babylonjs/core/Animations/animationKey.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Animations/animationRange.esm.js +21 -0
- package/dist/node_modules/@babylonjs/core/Animations/easing.esm.js +93 -0
- package/dist/node_modules/@babylonjs/core/Animations/runtimeAnimation.esm.js +281 -0
- package/dist/node_modules/@babylonjs/core/Audio/sound.esm.js +568 -0
- package/dist/node_modules/@babylonjs/core/Audio/weightedsound.esm.js +117 -0
- package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/autoRotationBehavior.esm.js +145 -0
- package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/bouncingBehavior.esm.js +93 -0
- package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/framingBehavior.esm.js +295 -0
- package/dist/node_modules/@babylonjs/core/Bones/bone.esm.js +701 -0
- package/dist/node_modules/@babylonjs/core/Bones/skeleton.esm.js +478 -0
- package/dist/node_modules/@babylonjs/core/Buffers/buffer.esm.js +433 -0
- package/dist/node_modules/@babylonjs/core/Buffers/dataBuffer.esm.js +18 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/BaseCameraMouseWheelInput.esm.js +67 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/BaseCameraPointersInput.esm.js +191 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraKeyboardMoveInput.esm.js +93 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraMouseWheelInput.esm.js +119 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraPointersInput.esm.js +119 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraKeyboardMoveInput.esm.js +108 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraMouseInput.esm.js +114 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraMouseWheelInput.esm.js +249 -0
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraTouchInput.esm.js +103 -0
- package/dist/node_modules/@babylonjs/core/Cameras/arcRotateCamera.esm.js +589 -0
- package/dist/node_modules/@babylonjs/core/Cameras/arcRotateCameraInputsManager.esm.js +37 -0
- package/dist/node_modules/@babylonjs/core/Cameras/camera.esm.js +686 -0
- package/dist/node_modules/@babylonjs/core/Cameras/cameraInputsManager.esm.js +147 -0
- package/dist/node_modules/@babylonjs/core/Cameras/freeCamera.esm.js +236 -0
- package/dist/node_modules/@babylonjs/core/Cameras/freeCameraInputsManager.esm.js +66 -0
- package/dist/node_modules/@babylonjs/core/Cameras/targetCamera.esm.js +214 -0
- package/dist/node_modules/@babylonjs/core/Collisions/intersectionInfo.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Collisions/meshCollisionData.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Collisions/pickingInfo.esm.js +59 -0
- package/dist/node_modules/@babylonjs/core/Compat/compatibilityOptions.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Culling/boundingBox.esm.js +174 -0
- package/dist/node_modules/@babylonjs/core/Culling/boundingInfo.esm.js +159 -0
- package/dist/node_modules/@babylonjs/core/Culling/boundingSphere.esm.js +114 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceEnums.esm.js +37 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceSource.esm.js +23 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceSourceManager.esm.js +106 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/eventFactory.esm.js +118 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/internalDeviceSourceManager.esm.js +46 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/nativeDeviceInputSystem.esm.js +50 -0
- package/dist/node_modules/@babylonjs/core/DeviceInput/webDeviceInputSystem.esm.js +354 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.alpha.esm.js +101 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.cubeTexture.esm.js +103 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.dynamicBuffer.esm.js +11 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.dynamicTexture.esm.js +14 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.multiRender.esm.js +111 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.rawTexture.esm.js +109 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.readTexture.esm.js +76 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.renderTarget.esm.js +69 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.renderTargetCube.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.uniformBuffer.esm.js +29 -0
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.views.esm.js +85 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.esm.js +36 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/shaderDefineExpression.esm.js +88 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeConditionNode.esm.js +14 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeCursor.esm.js +44 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeNode.esm.js +31 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeTestNode.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderProcessor.esm.js +230 -0
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGL2ShaderProcessors.esm.js +30 -0
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLHardwareTexture.esm.js +34 -0
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLPipelineContext.esm.js +388 -0
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLRenderTargetWrapper.esm.js +87 -0
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLShaderProcessors.esm.js +16 -0
- package/dist/node_modules/@babylonjs/core/Engines/constants.esm.js +254 -0
- package/dist/node_modules/@babylonjs/core/Engines/engine.esm.js +1120 -0
- package/dist/node_modules/@babylonjs/core/Engines/engineStore.esm.js +23 -0
- package/dist/node_modules/@babylonjs/core/Engines/nullEngine.esm.js +697 -0
- package/dist/node_modules/@babylonjs/core/Engines/performanceConfigurator.esm.js +22 -0
- package/dist/node_modules/@babylonjs/core/Engines/renderTargetWrapper.esm.js +273 -0
- package/dist/node_modules/@babylonjs/core/Engines/shaderStore.esm.js +36 -0
- package/dist/node_modules/@babylonjs/core/Engines/thinEngine.esm.js +2921 -0
- package/dist/node_modules/@babylonjs/core/Events/deviceInputEvents.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Events/keyboardEvents.esm.js +41 -0
- package/dist/node_modules/@babylonjs/core/Events/pointerEvents.esm.js +63 -0
- package/dist/node_modules/@babylonjs/core/Inputs/pointerPickingConfiguration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Inputs/scene.inputManager.esm.js +418 -0
- package/dist/node_modules/@babylonjs/core/Layers/effectLayer.esm.js +437 -0
- package/dist/node_modules/@babylonjs/core/Layers/effectLayerSceneComponent.esm.js +141 -0
- package/dist/node_modules/@babylonjs/core/Layers/glowLayer.esm.js +343 -0
- package/dist/node_modules/@babylonjs/core/Layers/highlightLayer.esm.js +396 -0
- package/dist/node_modules/@babylonjs/core/Lights/directionalLight.esm.js +224 -0
- package/dist/node_modules/@babylonjs/core/Lights/hemisphericLight.esm.js +92 -0
- package/dist/node_modules/@babylonjs/core/Lights/light.esm.js +476 -0
- package/dist/node_modules/@babylonjs/core/Lights/lightConstants.esm.js +30 -0
- package/dist/node_modules/@babylonjs/core/Lights/pointLight.esm.js +153 -0
- package/dist/node_modules/@babylonjs/core/Lights/shadowLight.esm.js +196 -0
- package/dist/node_modules/@babylonjs/core/Lights/spotLight.esm.js +287 -0
- package/dist/node_modules/@babylonjs/core/Loading/sceneLoader.esm.js +551 -0
- package/dist/node_modules/@babylonjs/core/Loading/sceneLoaderFlags.esm.js +48 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrAnisotropicConfiguration.esm.js +112 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrBRDFConfiguration.esm.js +48 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrBaseMaterial.esm.js +568 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrClearCoatConfiguration.esm.js +139 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrIridescenceConfiguration.esm.js +97 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrMaterial.esm.js +496 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrSheenConfiguration.esm.js +106 -0
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrSubSurfaceConfiguration.esm.js +270 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Filtering/hdrFiltering.esm.js +103 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader.esm.js +53 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/envTextureLoader.esm.js +51 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/ktxTextureLoader.esm.js +81 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/baseTexture.esm.js +542 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/baseTexture.polynomial.esm.js +23 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/cubeTexture.esm.js +244 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/dynamicTexture.esm.js +134 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/equiRectangularCubeTexture.esm.js +89 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/hdrCubeTexture.esm.js +175 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/internalTexture.esm.js +150 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/ktx2decoderTypes.esm.js +17 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/mirrorTexture.esm.js +138 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/multiRenderTarget.esm.js +223 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/rawCubeTexture.esm.js +58 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/rawTexture.esm.js +156 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/rawTexture2DArray.esm.js +53 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/renderTargetTexture.esm.js +605 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/texture.esm.js +421 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/textureSampler.esm.js +101 -0
- package/dist/node_modules/@babylonjs/core/Materials/Textures/thinTexture.esm.js +170 -0
- package/dist/node_modules/@babylonjs/core/Materials/clipPlaneMaterialHelper.esm.js +28 -0
- package/dist/node_modules/@babylonjs/core/Materials/colorCurves.esm.js +397 -0
- package/dist/node_modules/@babylonjs/core/Materials/drawWrapper.esm.js +22 -0
- package/dist/node_modules/@babylonjs/core/Materials/effect.esm.js +890 -0
- package/dist/node_modules/@babylonjs/core/Materials/effectFallbacks.esm.js +73 -0
- package/dist/node_modules/@babylonjs/core/Materials/effectRenderer.esm.js +132 -0
- package/dist/node_modules/@babylonjs/core/Materials/imageProcessingConfiguration.esm.js +428 -0
- package/dist/node_modules/@babylonjs/core/Materials/material.detailMapConfiguration.esm.js +90 -0
- package/dist/node_modules/@babylonjs/core/Materials/material.esm.js +906 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialDefines.esm.js +161 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialFlags.esm.js +226 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialHelper.esm.js +501 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialPluginBase.esm.js +226 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialPluginEvent.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialPluginManager.esm.js +212 -0
- package/dist/node_modules/@babylonjs/core/Materials/materialStencilState.esm.js +145 -0
- package/dist/node_modules/@babylonjs/core/Materials/multiMaterial.esm.js +164 -0
- package/dist/node_modules/@babylonjs/core/Materials/prePassConfiguration.esm.js +38 -0
- package/dist/node_modules/@babylonjs/core/Materials/pushMaterial.esm.js +48 -0
- package/dist/node_modules/@babylonjs/core/Materials/shaderLanguage.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Materials/shaderMaterial.esm.js +838 -0
- package/dist/node_modules/@babylonjs/core/Materials/standardMaterial.esm.js +934 -0
- package/dist/node_modules/@babylonjs/core/Materials/uniformBuffer.esm.js +541 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.axis.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.color.esm.js +903 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.constants.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.frustum.esm.js +91 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.functions.esm.js +43 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.path.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.plane.esm.js +145 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.scalar.esm.js +284 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.size.esm.js +124 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.vector.esm.js +4915 -0
- package/dist/node_modules/@babylonjs/core/Maths/math.viewport.esm.js +41 -0
- package/dist/node_modules/@babylonjs/core/Maths/sphericalPolynomial.esm.js +177 -0
- package/dist/node_modules/@babylonjs/core/Meshes/Builders/boxBuilder.esm.js +260 -0
- package/dist/node_modules/@babylonjs/core/Meshes/Compression/dracoCompression.esm.js +233 -0
- package/dist/node_modules/@babylonjs/core/Meshes/Compression/meshoptCompression.esm.js +47 -0
- package/dist/node_modules/@babylonjs/core/Meshes/WebGL/webGLDataBuffer.esm.js +12 -0
- package/dist/node_modules/@babylonjs/core/Meshes/abstractMesh.esm.js +1448 -0
- package/dist/node_modules/@babylonjs/core/Meshes/geometry.esm.js +729 -0
- package/dist/node_modules/@babylonjs/core/Meshes/instancedMesh.esm.js +455 -0
- package/dist/node_modules/@babylonjs/core/Meshes/mesh.esm.js +2526 -0
- package/dist/node_modules/@babylonjs/core/Meshes/mesh.vertexData.esm.js +865 -0
- package/dist/node_modules/@babylonjs/core/Meshes/meshLODLevel.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Meshes/subMesh.esm.js +422 -0
- package/dist/node_modules/@babylonjs/core/Meshes/thinInstanceMesh.esm.js +129 -0
- package/dist/node_modules/@babylonjs/core/Meshes/transformNode.esm.js +796 -0
- package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/cubemapToSphericalPolynomial.esm.js +111 -0
- package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/hdr.esm.js +122 -0
- package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/panoramaToCubemap.esm.js +78 -0
- package/dist/node_modules/@babylonjs/core/Misc/andOrNotEvaluator.esm.js +41 -0
- package/dist/node_modules/@babylonjs/core/Misc/arrayTools.esm.js +52 -0
- package/dist/node_modules/@babylonjs/core/Misc/assetsManager.esm.js +561 -0
- package/dist/node_modules/@babylonjs/core/Misc/brdfTextureTools.esm.js +31 -0
- package/dist/node_modules/@babylonjs/core/Misc/copyTools.esm.js +44 -0
- package/dist/node_modules/@babylonjs/core/Misc/coroutine.esm.js +53 -0
- package/dist/node_modules/@babylonjs/core/Misc/dataReader.esm.js +55 -0
- package/dist/node_modules/@babylonjs/core/Misc/dds.esm.js +329 -0
- package/dist/node_modules/@babylonjs/core/Misc/decorators.esm.js +332 -0
- package/dist/node_modules/@babylonjs/core/Misc/deepCopier.esm.js +52 -0
- package/dist/node_modules/@babylonjs/core/Misc/deferred.esm.js +25 -0
- package/dist/node_modules/@babylonjs/core/Misc/devTools.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Misc/domManagement.esm.js +21 -0
- package/dist/node_modules/@babylonjs/core/Misc/dumpTools.esm.js +117 -0
- package/dist/node_modules/@babylonjs/core/Misc/environmentTextureTools.esm.js +187 -0
- package/dist/node_modules/@babylonjs/core/Misc/error.esm.js +40 -0
- package/dist/node_modules/@babylonjs/core/Misc/fileTools.esm.js +339 -0
- package/dist/node_modules/@babylonjs/core/Misc/filesInputStore.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Misc/guid.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Misc/instantiationTools.esm.js +26 -0
- package/dist/node_modules/@babylonjs/core/Misc/khronosTextureContainer.esm.js +79 -0
- package/dist/node_modules/@babylonjs/core/Misc/khronosTextureContainer2.esm.js +281 -0
- package/dist/node_modules/@babylonjs/core/Misc/logger.esm.js +77 -0
- package/dist/node_modules/@babylonjs/core/Misc/observable.esm.js +231 -0
- package/dist/node_modules/@babylonjs/core/Misc/perfCounter.esm.js +99 -0
- package/dist/node_modules/@babylonjs/core/Misc/performanceMonitor.esm.js +144 -0
- package/dist/node_modules/@babylonjs/core/Misc/precisionDate.esm.js +12 -0
- package/dist/node_modules/@babylonjs/core/Misc/retryStrategy.esm.js +14 -0
- package/dist/node_modules/@babylonjs/core/Misc/rgbdTextureTools.esm.js +51 -0
- package/dist/node_modules/@babylonjs/core/Misc/screenshotTools.esm.js +92 -0
- package/dist/node_modules/@babylonjs/core/Misc/smartArray.esm.js +118 -0
- package/dist/node_modules/@babylonjs/core/Misc/stringDictionary.esm.js +129 -0
- package/dist/node_modules/@babylonjs/core/Misc/stringTools.esm.js +26 -0
- package/dist/node_modules/@babylonjs/core/Misc/tags.esm.js +97 -0
- package/dist/node_modules/@babylonjs/core/Misc/textureTools.esm.js +41 -0
- package/dist/node_modules/@babylonjs/core/Misc/timingTools.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Misc/tools.esm.js +929 -0
- package/dist/node_modules/@babylonjs/core/Misc/typeStore.esm.js +11 -0
- package/dist/node_modules/@babylonjs/core/Misc/uniqueIdGenerator.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Misc/webRequest.esm.js +135 -0
- package/dist/node_modules/@babylonjs/core/Misc/workerPool.esm.js +80 -0
- package/dist/node_modules/@babylonjs/core/Morph/morphTarget.esm.js +187 -0
- package/dist/node_modules/@babylonjs/core/Morph/morphTargetManager.esm.js +249 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.esm.js +349 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.esm.js +306 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.esm.js +161 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.esm.js +589 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/standardRenderingPipeline.esm.js +512 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderEffect.esm.js +114 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipeline.esm.js +139 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.esm.js +99 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipelineManagerSceneComponent.esm.js +48 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/bloomEffect.esm.js +76 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/bloomMergePostProcess.esm.js +40 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/blurPostProcess.esm.js +165 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/chromaticAberrationPostProcess.esm.js +61 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/circleOfConfusionPostProcess.esm.js +62 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldBlurPostProcess.esm.js +58 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldEffect.esm.js +131 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldMergePostProcess.esm.js +48 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/extractHighlightsPostProcess.esm.js +27 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/fxaaPostProcess.esm.js +41 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/grainPostProcess.esm.js +46 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/imageProcessingPostProcess.esm.js +359 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/motionBlurPostProcess.esm.js +178 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/passPostProcess.esm.js +40 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/postProcess.esm.js +457 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/postProcessManager.esm.js +94 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/screenSpaceReflectionPostProcess.esm.js +147 -0
- package/dist/node_modules/@babylonjs/core/PostProcesses/sharpenPostProcess.esm.js +46 -0
- package/dist/node_modules/@babylonjs/core/Probes/reflectionProbe.esm.js +184 -0
- package/dist/node_modules/@babylonjs/core/Rendering/boundingBoxRenderer.esm.js +170 -0
- package/dist/node_modules/@babylonjs/core/Rendering/depthRenderer.esm.js +185 -0
- package/dist/node_modules/@babylonjs/core/Rendering/depthRendererSceneComponent.esm.js +65 -0
- package/dist/node_modules/@babylonjs/core/Rendering/geometryBufferRenderer.esm.js +353 -0
- package/dist/node_modules/@babylonjs/core/Rendering/geometryBufferRendererSceneComponent.esm.js +55 -0
- package/dist/node_modules/@babylonjs/core/Rendering/motionBlurConfiguration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Rendering/renderingGroup.esm.js +223 -0
- package/dist/node_modules/@babylonjs/core/Rendering/renderingManager.esm.js +185 -0
- package/dist/node_modules/@babylonjs/core/Rendering/screenSpaceReflections2Configuration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Rendering/screenSpaceReflectionsConfiguration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Rendering/ssao2Configuration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bakedVertexAnimation.esm.js +48 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.esm.js +24 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bonesDeclaration.esm.js +35 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bonesVertex.esm.js +56 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.esm.js +4 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragment.esm.js +67 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragmentFunctions.esm.js +58 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragmentMainFunctions.esm.js +93 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpVertex.esm.js +11 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpVertexDeclaration.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneFragment.esm.js +42 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.esm.js +21 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneVertex.esm.js +21 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneVertexDeclaration.esm.js +27 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalFragment.esm.js +12 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalFragmentDeclaration.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalVertexDeclaration.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultFragmentDeclaration.esm.js +86 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultUboDeclaration.esm.js +50 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultVertexDeclaration.esm.js +46 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/depthPrePass.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogFragment.esm.js +10 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.esm.js +34 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogVertex.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fresnelFunction.esm.js +10 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/geometryUboDeclaration.esm.js +5 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/geometryVertexDeclaration.esm.js +4 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/harmonicsFunctions.esm.js +42 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/hdrFilteringFunctions.esm.js +139 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/helperFunctions.esm.js +166 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/imageProcessingDeclaration.esm.js +32 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/imageProcessingFunctions.esm.js +129 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/importanceSampling.esm.js +22 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.esm.js +31 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/instancesVertex.esm.js +20 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurFragment.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurFragment2.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.esm.js +3 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurVertex.esm.js +3 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightFragment.esm.js +278 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightFragmentDeclaration.esm.js +82 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightUboDeclaration.esm.js +81 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightVxFragmentDeclaration.esm.js +35 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightVxUboDeclaration.esm.js +34 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightsFragmentFunctions.esm.js +93 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthDeclaration.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthFragment.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthVertex.esm.js +7 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/mainUVVaryingDeclaration.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/meshUboDeclaration.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertex.esm.js +32 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexDeclaration.esm.js +17 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexGlobal.esm.js +8 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/mrtFragmentDeclaration.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/oitDeclaration.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/oitFragment.esm.js +40 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/packingFunctions.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBRDFFunctions.esm.js +268 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.esm.js +83 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAlphaFresnel.esm.js +37 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.esm.js +32 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAnisotropic.esm.js +50 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockClearcoat.esm.js +276 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockDirectLighting.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalColorComposition.esm.js +45 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalLitComponents.esm.js +100 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.esm.js +27 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockGeometryInfo.esm.js +30 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockImageProcessing.esm.js +14 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockIridescence.esm.js +63 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockLightmapInit.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockNormalFinal.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockNormalGeometric.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectance.esm.js +24 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectance0.esm.js +14 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflection.esm.js +270 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectivity.esm.js +131 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockSheen.esm.js +197 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockSubSurface.esm.js +337 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDebug.esm.js +176 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.esm.js +64 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingFunctions.esm.js +130 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.esm.js +53 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentDeclaration.esm.js +179 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.esm.js +18 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.esm.js +101 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrHelperFunctions.esm.js +83 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrIBLFunctions.esm.js +35 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrUboDeclaration.esm.js +65 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrVertexDeclaration.esm.js +151 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pointCloudVertex.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassDeclaration.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassVertex.esm.js +37 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassVertexDeclaration.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/reflectionFunction.esm.js +116 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.esm.js +20 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerFragmentDeclaration.esm.js +21 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerVertexDeclaration.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerVertexImplementation.esm.js +39 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/sceneUboDeclaration.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/screenSpaceRayTrace.esm.js +208 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsFragmentFunctions.esm.js +614 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsVertex.esm.js +23 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/subSurfaceScatteringFunctions.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/uvAttributeDeclaration.esm.js +6 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/uvVariableDeclaration.esm.js +9 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/vertexColorMixing.esm.js +16 -0
- package/dist/node_modules/@babylonjs/core/Shaders/bloomMerge.fragment.esm.js +14 -0
- package/dist/node_modules/@babylonjs/core/Shaders/boundingBoxRenderer.fragment.esm.js +11 -0
- package/dist/node_modules/@babylonjs/core/Shaders/boundingBoxRenderer.vertex.esm.js +22 -0
- package/dist/node_modules/@babylonjs/core/Shaders/chromaticAberration.fragment.esm.js +34 -0
- package/dist/node_modules/@babylonjs/core/Shaders/circleOfConfusion.fragment.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Shaders/default.fragment.esm.js +387 -0
- package/dist/node_modules/@babylonjs/core/Shaders/default.vertex.esm.js +171 -0
- package/dist/node_modules/@babylonjs/core/Shaders/depth.fragment.esm.js +47 -0
- package/dist/node_modules/@babylonjs/core/Shaders/depth.vertex.esm.js +72 -0
- package/dist/node_modules/@babylonjs/core/Shaders/depthOfField.fragment.esm.js +137 -0
- package/dist/node_modules/@babylonjs/core/Shaders/depthOfFieldMerge.fragment.esm.js +54 -0
- package/dist/node_modules/@babylonjs/core/Shaders/extractHighlights.fragment.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/fxaa.fragment.esm.js +211 -0
- package/dist/node_modules/@babylonjs/core/Shaders/fxaa.vertex.esm.js +29 -0
- package/dist/node_modules/@babylonjs/core/Shaders/geometry.fragment.esm.js +147 -0
- package/dist/node_modules/@babylonjs/core/Shaders/geometry.vertex.esm.js +164 -0
- package/dist/node_modules/@babylonjs/core/Shaders/glowBlurPostProcess.fragment.esm.js +39 -0
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapGeneration.fragment.esm.js +73 -0
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapGeneration.vertex.esm.js +94 -0
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapMerge.fragment.esm.js +29 -0
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapMerge.vertex.esm.js +12 -0
- package/dist/node_modules/@babylonjs/core/Shaders/grain.fragment.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Shaders/hdrFiltering.fragment.esm.js +19 -0
- package/dist/node_modules/@babylonjs/core/Shaders/hdrFiltering.vertex.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/imageProcessing.fragment.esm.js +26 -0
- package/dist/node_modules/@babylonjs/core/Shaders/kernelBlur.fragment.esm.js +49 -0
- package/dist/node_modules/@babylonjs/core/Shaders/kernelBlur.vertex.esm.js +17 -0
- package/dist/node_modules/@babylonjs/core/Shaders/lensHighlights.fragment.esm.js +115 -0
- package/dist/node_modules/@babylonjs/core/Shaders/motionBlur.fragment.esm.js +74 -0
- package/dist/node_modules/@babylonjs/core/Shaders/pass.fragment.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/passCube.fragment.esm.js +27 -0
- package/dist/node_modules/@babylonjs/core/Shaders/pbr.fragment.esm.js +648 -0
- package/dist/node_modules/@babylonjs/core/Shaders/pbr.vertex.esm.js +236 -0
- package/dist/node_modules/@babylonjs/core/Shaders/postprocess.vertex.esm.js +13 -0
- package/dist/node_modules/@babylonjs/core/Shaders/rgbdDecode.fragment.esm.js +11 -0
- package/dist/node_modules/@babylonjs/core/Shaders/rgbdEncode.fragment.esm.js +11 -0
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection.fragment.esm.js +136 -0
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2.fragment.esm.js +215 -0
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2Blur.fragment.esm.js +52 -0
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2BlurCombiner.fragment.esm.js +59 -0
- package/dist/node_modules/@babylonjs/core/Shaders/sharpen.fragment.esm.js +18 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ssao.fragment.esm.js +55 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ssao2.fragment.esm.js +165 -0
- package/dist/node_modules/@babylonjs/core/Shaders/ssaoCombine.fragment.esm.js +15 -0
- package/dist/node_modules/@babylonjs/core/Shaders/standard.fragment.esm.js +339 -0
- package/dist/node_modules/@babylonjs/core/States/alphaCullingState.esm.js +35 -0
- package/dist/node_modules/@babylonjs/core/States/depthCullingState.esm.js +69 -0
- package/dist/node_modules/@babylonjs/core/States/stencilState.esm.js +62 -0
- package/dist/node_modules/@babylonjs/core/States/stencilStateComposer.esm.js +70 -0
- package/dist/node_modules/@babylonjs/core/abstractScene.esm.js +71 -0
- package/dist/node_modules/@babylonjs/core/assetContainer.esm.js +425 -0
- package/dist/node_modules/@babylonjs/core/node.esm.js +536 -0
- package/dist/node_modules/@babylonjs/core/scene.esm.js +2809 -0
- package/dist/node_modules/@babylonjs/core/sceneComponent.esm.js +102 -0
- package/dist/node_modules/@babylonjs/core/tslib.es6.esm.js +12 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFBinaryExtension.esm.js +37 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoader.esm.js +902 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderInterfaces.esm.js +42 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderUtils.esm.js +195 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFMaterialsCommonExtension.esm.js +75 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_image_based.esm.js +77 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.esm.js +53 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_meshopt_compression.esm.js +31 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_webp.esm.js +29 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/ExtrasAsMetadata.esm.js +47 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.data.esm.js +173 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.esm.js +82 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_draco_mesh_compression.esm.js +68 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_lights_punctual.esm.js +60 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_anisotropy.esm.js +39 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_clearcoat.esm.js +42 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_emissive_strength.esm.js +32 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_ior.esm.js +35 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_iridescence.esm.js +41 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.esm.js +41 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_sheen.esm.js +41 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_specular.esm.js +41 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_translucency.esm.js +41 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_transmission.esm.js +136 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_unlit.esm.js +37 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_variants.esm.js +178 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume.esm.js +40 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_mesh_quantization.esm.js +17 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_basisu.esm.js +29 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_transform.esm.js +29 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_xmp_json_ld.esm.js +31 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_audio_emitter.esm.js +149 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_lod.esm.js +170 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_minecraftMesh.esm.js +29 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_sRGBFactors.esm.js +29 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoader.esm.js +1562 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderAnimation.esm.js +66 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.esm.js +462 -0
- package/dist/node_modules/@babylonjs/loaders/glTF/glTFValidation.esm.js +81 -0
- package/package.json +6 -4
- /package/dist/{src/index.esm.js → index.esm.js} +0 -0
|
@@ -0,0 +1,568 @@
|
|
|
1
|
+
import { __decorate as v } from "../../tslib.es6.esm.js";
|
|
2
|
+
import { serializeAsImageProcessingConfiguration as U, expandToProperty as D, serialize as y } from "../../Misc/decorators.esm.js";
|
|
3
|
+
import { Logger as B } from "../../Misc/logger.esm.js";
|
|
4
|
+
import { SmartArray as G } from "../../Misc/smartArray.esm.js";
|
|
5
|
+
import { GetEnvironmentBRDFTexture as H } from "../../Misc/brdfTextureTools.esm.js";
|
|
6
|
+
import { Scene as V } from "../../scene.esm.js";
|
|
7
|
+
import { Vector4 as X } from "../../Maths/math.vector.esm.js";
|
|
8
|
+
import { VertexBuffer as L } from "../../Buffers/buffer.esm.js";
|
|
9
|
+
import { PBRBRDFConfiguration as k } from "./pbrBRDFConfiguration.esm.js";
|
|
10
|
+
import { PrePassConfiguration as N } from "../prePassConfiguration.esm.js";
|
|
11
|
+
import { Color3 as p, TmpColors as x } from "../../Maths/math.color.esm.js";
|
|
12
|
+
import { Scalar as Y } from "../../Maths/math.scalar.esm.js";
|
|
13
|
+
import { ImageProcessingConfiguration as g } from "../imageProcessingConfiguration.esm.js";
|
|
14
|
+
import { Material as M } from "../material.esm.js";
|
|
15
|
+
import { MaterialPluginEvent as O } from "../materialPluginEvent.esm.js";
|
|
16
|
+
import { MaterialDefines as z } from "../materialDefines.esm.js";
|
|
17
|
+
import { PushMaterial as w } from "../pushMaterial.esm.js";
|
|
18
|
+
import { MaterialHelper as s } from "../materialHelper.esm.js";
|
|
19
|
+
import { Texture as I } from "../Textures/texture.esm.js";
|
|
20
|
+
import { MaterialFlags as l } from "../materialFlags.esm.js";
|
|
21
|
+
import "../Textures/baseTexture.polynomial.esm.js";
|
|
22
|
+
import "../../Shaders/pbr.fragment.esm.js";
|
|
23
|
+
import "../../Shaders/pbr.vertex.esm.js";
|
|
24
|
+
import { EffectFallbacks as Z } from "../effectFallbacks.esm.js";
|
|
25
|
+
import { PBRClearCoatConfiguration as Q } from "./pbrClearCoatConfiguration.esm.js";
|
|
26
|
+
import { PBRIridescenceConfiguration as W } from "./pbrIridescenceConfiguration.esm.js";
|
|
27
|
+
import { PBRAnisotropicConfiguration as K } from "./pbrAnisotropicConfiguration.esm.js";
|
|
28
|
+
import { PBRSheenConfiguration as J } from "./pbrSheenConfiguration.esm.js";
|
|
29
|
+
import { PBRSubSurfaceConfiguration as j } from "./pbrSubSurfaceConfiguration.esm.js";
|
|
30
|
+
import { DetailMapConfiguration as $ } from "../material.detailMapConfiguration.esm.js";
|
|
31
|
+
import { addClipPlaneUniforms as q, bindClipPlane as ee } from "../clipPlaneMaterialHelper.esm.js";
|
|
32
|
+
const S = { effect: null, subMesh: null };
|
|
33
|
+
class F extends z {
|
|
34
|
+
/**
|
|
35
|
+
* Initializes the PBR Material defines.
|
|
36
|
+
* @param externalProperties The external properties
|
|
37
|
+
*/
|
|
38
|
+
constructor(t) {
|
|
39
|
+
super(t), this.PBR = !0, this.NUM_SAMPLES = "0", this.REALTIME_FILTERING = !1, this.MAINUV1 = !1, this.MAINUV2 = !1, this.MAINUV3 = !1, this.MAINUV4 = !1, this.MAINUV5 = !1, this.MAINUV6 = !1, this.UV1 = !1, this.UV2 = !1, this.UV3 = !1, this.UV4 = !1, this.UV5 = !1, this.UV6 = !1, this.ALBEDO = !1, this.GAMMAALBEDO = !1, this.ALBEDODIRECTUV = 0, this.VERTEXCOLOR = !1, this.BAKED_VERTEX_ANIMATION_TEXTURE = !1, this.AMBIENT = !1, this.AMBIENTDIRECTUV = 0, this.AMBIENTINGRAYSCALE = !1, this.OPACITY = !1, this.VERTEXALPHA = !1, this.OPACITYDIRECTUV = 0, this.OPACITYRGB = !1, this.ALPHATEST = !1, this.DEPTHPREPASS = !1, this.ALPHABLEND = !1, this.ALPHAFROMALBEDO = !1, this.ALPHATESTVALUE = "0.5", this.SPECULAROVERALPHA = !1, this.RADIANCEOVERALPHA = !1, this.ALPHAFRESNEL = !1, this.LINEARALPHAFRESNEL = !1, this.PREMULTIPLYALPHA = !1, this.EMISSIVE = !1, this.EMISSIVEDIRECTUV = 0, this.GAMMAEMISSIVE = !1, this.REFLECTIVITY = !1, this.REFLECTIVITY_GAMMA = !1, this.REFLECTIVITYDIRECTUV = 0, this.SPECULARTERM = !1, this.MICROSURFACEFROMREFLECTIVITYMAP = !1, this.MICROSURFACEAUTOMATIC = !1, this.LODBASEDMICROSFURACE = !1, this.MICROSURFACEMAP = !1, this.MICROSURFACEMAPDIRECTUV = 0, this.METALLICWORKFLOW = !1, this.ROUGHNESSSTOREINMETALMAPALPHA = !1, this.ROUGHNESSSTOREINMETALMAPGREEN = !1, this.METALLNESSSTOREINMETALMAPBLUE = !1, this.AOSTOREINMETALMAPRED = !1, this.METALLIC_REFLECTANCE = !1, this.METALLIC_REFLECTANCE_GAMMA = !1, this.METALLIC_REFLECTANCEDIRECTUV = 0, this.METALLIC_REFLECTANCE_USE_ALPHA_ONLY = !1, this.REFLECTANCE = !1, this.REFLECTANCE_GAMMA = !1, this.REFLECTANCEDIRECTUV = 0, this.ENVIRONMENTBRDF = !1, this.ENVIRONMENTBRDF_RGBD = !1, this.NORMAL = !1, this.TANGENT = !1, this.BUMP = !1, this.BUMPDIRECTUV = 0, this.OBJECTSPACE_NORMALMAP = !1, this.PARALLAX = !1, this.PARALLAXOCCLUSION = !1, this.NORMALXYSCALE = !0, this.LIGHTMAP = !1, this.LIGHTMAPDIRECTUV = 0, this.USELIGHTMAPASSHADOWMAP = !1, this.GAMMALIGHTMAP = !1, this.RGBDLIGHTMAP = !1, this.REFLECTION = !1, this.REFLECTIONMAP_3D = !1, this.REFLECTIONMAP_SPHERICAL = !1, this.REFLECTIONMAP_PLANAR = !1, this.REFLECTIONMAP_CUBIC = !1, this.USE_LOCAL_REFLECTIONMAP_CUBIC = !1, this.REFLECTIONMAP_PROJECTION = !1, this.REFLECTIONMAP_SKYBOX = !1, this.REFLECTIONMAP_EXPLICIT = !1, this.REFLECTIONMAP_EQUIRECTANGULAR = !1, this.REFLECTIONMAP_EQUIRECTANGULAR_FIXED = !1, this.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED = !1, this.INVERTCUBICMAP = !1, this.USESPHERICALFROMREFLECTIONMAP = !1, this.USEIRRADIANCEMAP = !1, this.USESPHERICALINVERTEX = !1, this.REFLECTIONMAP_OPPOSITEZ = !1, this.LODINREFLECTIONALPHA = !1, this.GAMMAREFLECTION = !1, this.RGBDREFLECTION = !1, this.LINEARSPECULARREFLECTION = !1, this.RADIANCEOCCLUSION = !1, this.HORIZONOCCLUSION = !1, this.INSTANCES = !1, this.THIN_INSTANCES = !1, this.INSTANCESCOLOR = !1, this.PREPASS = !1, this.PREPASS_IRRADIANCE = !1, this.PREPASS_IRRADIANCE_INDEX = -1, this.PREPASS_ALBEDO_SQRT = !1, this.PREPASS_ALBEDO_SQRT_INDEX = -1, this.PREPASS_DEPTH = !1, this.PREPASS_DEPTH_INDEX = -1, this.PREPASS_NORMAL = !1, this.PREPASS_NORMAL_INDEX = -1, this.PREPASS_POSITION = !1, this.PREPASS_POSITION_INDEX = -1, this.PREPASS_VELOCITY = !1, this.PREPASS_VELOCITY_INDEX = -1, this.PREPASS_REFLECTIVITY = !1, this.PREPASS_REFLECTIVITY_INDEX = -1, this.SCENE_MRT_COUNT = 0, this.NUM_BONE_INFLUENCERS = 0, this.BonesPerMesh = 0, this.BONETEXTURE = !1, this.BONES_VELOCITY_ENABLED = !1, this.NONUNIFORMSCALING = !1, this.MORPHTARGETS = !1, this.MORPHTARGETS_NORMAL = !1, this.MORPHTARGETS_TANGENT = !1, this.MORPHTARGETS_UV = !1, this.NUM_MORPH_INFLUENCERS = 0, this.MORPHTARGETS_TEXTURE = !1, this.IMAGEPROCESSING = !1, this.VIGNETTE = !1, this.VIGNETTEBLENDMODEMULTIPLY = !1, this.VIGNETTEBLENDMODEOPAQUE = !1, this.TONEMAPPING = !1, this.TONEMAPPING_ACES = !1, this.CONTRAST = !1, this.COLORCURVES = !1, this.COLORGRADING = !1, this.COLORGRADING3D = !1, this.SAMPLER3DGREENDEPTH = !1, this.SAMPLER3DBGRMAP = !1, this.DITHER = !1, this.IMAGEPROCESSINGPOSTPROCESS = !1, this.SKIPFINALCOLORCLAMP = !1, this.EXPOSURE = !1, this.MULTIVIEW = !1, this.ORDER_INDEPENDENT_TRANSPARENCY = !1, this.ORDER_INDEPENDENT_TRANSPARENCY_16BITS = !1, this.USEPHYSICALLIGHTFALLOFF = !1, this.USEGLTFLIGHTFALLOFF = !1, this.TWOSIDEDLIGHTING = !1, this.SHADOWFLOAT = !1, this.CLIPPLANE = !1, this.CLIPPLANE2 = !1, this.CLIPPLANE3 = !1, this.CLIPPLANE4 = !1, this.CLIPPLANE5 = !1, this.CLIPPLANE6 = !1, this.POINTSIZE = !1, this.FOG = !1, this.LOGARITHMICDEPTH = !1, this.CAMERA_ORTHOGRAPHIC = !1, this.CAMERA_PERSPECTIVE = !1, this.FORCENORMALFORWARD = !1, this.SPECULARAA = !1, this.UNLIT = !1, this.DECAL_AFTER_DETAIL = !1, this.DEBUGMODE = 0, this.rebuild();
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Resets the PBR Material defines.
|
|
43
|
+
*/
|
|
44
|
+
reset() {
|
|
45
|
+
super.reset(), this.ALPHATESTVALUE = "0.5", this.PBR = !0, this.NORMALXYSCALE = !0;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
class _ extends w {
|
|
49
|
+
/**
|
|
50
|
+
* Enables realtime filtering on the texture.
|
|
51
|
+
*/
|
|
52
|
+
get realTimeFiltering() {
|
|
53
|
+
return this._realTimeFiltering;
|
|
54
|
+
}
|
|
55
|
+
set realTimeFiltering(t) {
|
|
56
|
+
this._realTimeFiltering = t, this.markAsDirty(1);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Quality switch for realtime filtering
|
|
60
|
+
*/
|
|
61
|
+
get realTimeFilteringQuality() {
|
|
62
|
+
return this._realTimeFilteringQuality;
|
|
63
|
+
}
|
|
64
|
+
set realTimeFilteringQuality(t) {
|
|
65
|
+
this._realTimeFilteringQuality = t, this.markAsDirty(1);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Can this material render to several textures at once
|
|
69
|
+
*/
|
|
70
|
+
get canRenderToMRT() {
|
|
71
|
+
return !0;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Attaches a new image processing configuration to the PBR Material.
|
|
75
|
+
* @param configuration
|
|
76
|
+
*/
|
|
77
|
+
_attachImageProcessingConfiguration(t) {
|
|
78
|
+
t !== this._imageProcessingConfiguration && (this._imageProcessingConfiguration && this._imageProcessingObserver && this._imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingObserver), t ? this._imageProcessingConfiguration = t : this._imageProcessingConfiguration = this.getScene().imageProcessingConfiguration, this._imageProcessingConfiguration && (this._imageProcessingObserver = this._imageProcessingConfiguration.onUpdateParameters.add(() => {
|
|
79
|
+
this._markAllSubMeshesAsImageProcessingDirty();
|
|
80
|
+
})));
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Instantiates a new PBRMaterial instance.
|
|
84
|
+
*
|
|
85
|
+
* @param name The material name
|
|
86
|
+
* @param scene The scene the material will be use in.
|
|
87
|
+
*/
|
|
88
|
+
constructor(t, e) {
|
|
89
|
+
super(t, e), this._directIntensity = 1, this._emissiveIntensity = 1, this._environmentIntensity = 1, this._specularIntensity = 1, this._lightingInfos = new X(this._directIntensity, this._emissiveIntensity, this._environmentIntensity, this._specularIntensity), this._disableBumpMap = !1, this._albedoTexture = null, this._ambientTexture = null, this._ambientTextureStrength = 1, this._ambientTextureImpactOnAnalyticalLights = _.DEFAULT_AO_ON_ANALYTICAL_LIGHTS, this._opacityTexture = null, this._reflectionTexture = null, this._emissiveTexture = null, this._reflectivityTexture = null, this._metallicTexture = null, this._metallic = null, this._roughness = null, this._metallicF0Factor = 1, this._metallicReflectanceColor = p.White(), this._useOnlyMetallicFromMetallicReflectanceTexture = !1, this._metallicReflectanceTexture = null, this._reflectanceTexture = null, this._microSurfaceTexture = null, this._bumpTexture = null, this._lightmapTexture = null, this._ambientColor = new p(0, 0, 0), this._albedoColor = new p(1, 1, 1), this._reflectivityColor = new p(1, 1, 1), this._reflectionColor = new p(1, 1, 1), this._emissiveColor = new p(0, 0, 0), this._microSurface = 0.9, this._useLightmapAsShadowmap = !1, this._useHorizonOcclusion = !0, this._useRadianceOcclusion = !0, this._useAlphaFromAlbedoTexture = !1, this._useSpecularOverAlpha = !0, this._useMicroSurfaceFromReflectivityMapAlpha = !1, this._useRoughnessFromMetallicTextureAlpha = !0, this._useRoughnessFromMetallicTextureGreen = !1, this._useMetallnessFromMetallicTextureBlue = !1, this._useAmbientOcclusionFromMetallicTextureRed = !1, this._useAmbientInGrayScale = !1, this._useAutoMicroSurfaceFromReflectivityMap = !1, this._lightFalloff = _.LIGHTFALLOFF_PHYSICAL, this._useRadianceOverAlpha = !0, this._useObjectSpaceNormalMap = !1, this._useParallax = !1, this._useParallaxOcclusion = !1, this._parallaxScaleBias = 0.05, this._disableLighting = !1, this._maxSimultaneousLights = 4, this._invertNormalMapX = !1, this._invertNormalMapY = !1, this._twoSidedLighting = !1, this._alphaCutOff = 0.4, this._forceAlphaTest = !1, this._useAlphaFresnel = !1, this._useLinearAlphaFresnel = !1, this._environmentBRDFTexture = null, this._forceIrradianceInFragment = !1, this._realTimeFiltering = !1, this._realTimeFilteringQuality = 8, this._forceNormalForward = !1, this._enableSpecularAntiAliasing = !1, this._imageProcessingObserver = null, this._renderTargets = new G(16), this._globalAmbientColor = new p(0, 0, 0), this._useLogarithmicDepth = !1, this._unlit = !1, this._applyDecalMapAfterDetailMap = !1, this._debugMode = 0, this.debugMode = 0, this.debugLimit = -1, this.debugFactor = 1, this._cacheHasRenderTargetTextures = !1, this.brdf = new k(this), this.clearCoat = new Q(this), this.iridescence = new W(this), this.anisotropy = new K(this), this.sheen = new J(this), this.subSurface = new j(this), this.detailMap = new $(this), this._attachImageProcessingConfiguration(null), this.getRenderTargetTextures = () => (this._renderTargets.reset(), l.ReflectionTextureEnabled && this._reflectionTexture && this._reflectionTexture.isRenderTarget && this._renderTargets.push(this._reflectionTexture), this._eventInfo.renderTargets = this._renderTargets, this._callbackPluginEventFillRenderTargetTextures(this._eventInfo), this._renderTargets), this._environmentBRDFTexture = H(this.getScene()), this.prePassConfiguration = new N();
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Gets a boolean indicating that current material needs to register RTT
|
|
93
|
+
*/
|
|
94
|
+
get hasRenderTargetTextures() {
|
|
95
|
+
return l.ReflectionTextureEnabled && this._reflectionTexture && this._reflectionTexture.isRenderTarget ? !0 : this._cacheHasRenderTargetTextures;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Can this material render to prepass
|
|
99
|
+
*/
|
|
100
|
+
get isPrePassCapable() {
|
|
101
|
+
return !this.disableDepthWrite;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Gets the name of the material class.
|
|
105
|
+
*/
|
|
106
|
+
getClassName() {
|
|
107
|
+
return "PBRBaseMaterial";
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Enabled the use of logarithmic depth buffers, which is good for wide depth buffers.
|
|
111
|
+
*/
|
|
112
|
+
get useLogarithmicDepth() {
|
|
113
|
+
return this._useLogarithmicDepth;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Enabled the use of logarithmic depth buffers, which is good for wide depth buffers.
|
|
117
|
+
*/
|
|
118
|
+
set useLogarithmicDepth(t) {
|
|
119
|
+
this._useLogarithmicDepth = t && this.getScene().getEngine().getCaps().fragmentDepthSupported;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Returns true if alpha blending should be disabled.
|
|
123
|
+
*/
|
|
124
|
+
get _disableAlphaBlending() {
|
|
125
|
+
var t;
|
|
126
|
+
return this._transparencyMode === _.PBRMATERIAL_OPAQUE || this._transparencyMode === _.PBRMATERIAL_ALPHATEST || ((t = this.subSurface) === null || t === void 0 ? void 0 : t.disableAlphaBlending);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Specifies whether or not this material should be rendered in alpha blend mode.
|
|
130
|
+
*/
|
|
131
|
+
needAlphaBlending() {
|
|
132
|
+
return this._disableAlphaBlending ? !1 : this.alpha < 1 || this._opacityTexture != null || this._shouldUseAlphaFromAlbedoTexture();
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Specifies whether or not this material should be rendered in alpha test mode.
|
|
136
|
+
*/
|
|
137
|
+
needAlphaTesting() {
|
|
138
|
+
var t;
|
|
139
|
+
return this._forceAlphaTest ? !0 : !((t = this.subSurface) === null || t === void 0) && t.disableAlphaBlending ? !1 : this._hasAlphaChannel() && (this._transparencyMode == null || this._transparencyMode === _.PBRMATERIAL_ALPHATEST);
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Specifies whether or not the alpha value of the albedo texture should be used for alpha blending.
|
|
143
|
+
*/
|
|
144
|
+
_shouldUseAlphaFromAlbedoTexture() {
|
|
145
|
+
return this._albedoTexture != null && this._albedoTexture.hasAlpha && this._useAlphaFromAlbedoTexture && this._transparencyMode !== _.PBRMATERIAL_OPAQUE;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Specifies whether or not there is a usable alpha channel for transparency.
|
|
149
|
+
*/
|
|
150
|
+
_hasAlphaChannel() {
|
|
151
|
+
return this._albedoTexture != null && this._albedoTexture.hasAlpha || this._opacityTexture != null;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Gets the texture used for the alpha test.
|
|
155
|
+
*/
|
|
156
|
+
getAlphaTestTexture() {
|
|
157
|
+
return this._albedoTexture;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Specifies that the submesh is ready to be used.
|
|
161
|
+
* @param mesh - BJS mesh.
|
|
162
|
+
* @param subMesh - A submesh of the BJS mesh. Used to check if it is ready.
|
|
163
|
+
* @param useInstances - Specifies that instances should be used.
|
|
164
|
+
* @returns - boolean indicating that the submesh is ready or not.
|
|
165
|
+
*/
|
|
166
|
+
isReadyForSubMesh(t, e, A) {
|
|
167
|
+
var R;
|
|
168
|
+
if (this._uniformBufferLayoutBuilt || this.buildUniformLayout(), e.effect && this.isFrozen && e.effect._wasPreviouslyReady && e.effect._wasPreviouslyUsingInstances === A)
|
|
169
|
+
return !0;
|
|
170
|
+
e.materialDefines || (this._callbackPluginEventGeneric(O.GetDefineNames, this._eventInfo), e.materialDefines = new F(this._eventInfo.defineNames));
|
|
171
|
+
const c = e.materialDefines;
|
|
172
|
+
if (this._isReadyForSubMesh(e))
|
|
173
|
+
return !0;
|
|
174
|
+
const T = this.getScene(), E = T.getEngine();
|
|
175
|
+
if (c._areTexturesDirty && (this._eventInfo.hasRenderTargetTextures = !1, this._callbackPluginEventHasRenderTargetTextures(this._eventInfo), this._cacheHasRenderTargetTextures = this._eventInfo.hasRenderTargetTextures, T.texturesEnabled)) {
|
|
176
|
+
if (this._albedoTexture && l.DiffuseTextureEnabled && !this._albedoTexture.isReadyOrNotBlocking() || this._ambientTexture && l.AmbientTextureEnabled && !this._ambientTexture.isReadyOrNotBlocking() || this._opacityTexture && l.OpacityTextureEnabled && !this._opacityTexture.isReadyOrNotBlocking())
|
|
177
|
+
return !1;
|
|
178
|
+
const f = this._getReflectionTexture();
|
|
179
|
+
if (f && l.ReflectionTextureEnabled) {
|
|
180
|
+
if (!f.isReadyOrNotBlocking())
|
|
181
|
+
return !1;
|
|
182
|
+
if (f.irradianceTexture) {
|
|
183
|
+
if (!f.irradianceTexture.isReadyOrNotBlocking())
|
|
184
|
+
return !1;
|
|
185
|
+
} else if (!f.sphericalPolynomial && (!((R = f.getInternalTexture()) === null || R === void 0) && R._sphericalPolynomialPromise))
|
|
186
|
+
return !1;
|
|
187
|
+
}
|
|
188
|
+
if (this._lightmapTexture && l.LightmapTextureEnabled && !this._lightmapTexture.isReadyOrNotBlocking() || this._emissiveTexture && l.EmissiveTextureEnabled && !this._emissiveTexture.isReadyOrNotBlocking())
|
|
189
|
+
return !1;
|
|
190
|
+
if (l.SpecularTextureEnabled) {
|
|
191
|
+
if (this._metallicTexture) {
|
|
192
|
+
if (!this._metallicTexture.isReadyOrNotBlocking())
|
|
193
|
+
return !1;
|
|
194
|
+
} else if (this._reflectivityTexture && !this._reflectivityTexture.isReadyOrNotBlocking())
|
|
195
|
+
return !1;
|
|
196
|
+
if (this._metallicReflectanceTexture && !this._metallicReflectanceTexture.isReadyOrNotBlocking() || this._reflectanceTexture && !this._reflectanceTexture.isReadyOrNotBlocking() || this._microSurfaceTexture && !this._microSurfaceTexture.isReadyOrNotBlocking())
|
|
197
|
+
return !1;
|
|
198
|
+
}
|
|
199
|
+
if (E.getCaps().standardDerivatives && this._bumpTexture && l.BumpTextureEnabled && !this._disableBumpMap && !this._bumpTexture.isReady() || this._environmentBRDFTexture && l.ReflectionTextureEnabled && !this._environmentBRDFTexture.isReady())
|
|
200
|
+
return !1;
|
|
201
|
+
}
|
|
202
|
+
if (this._eventInfo.isReadyForSubMesh = !0, this._eventInfo.defines = c, this._eventInfo.subMesh = e, this._callbackPluginEventIsReadyForSubMesh(this._eventInfo), !this._eventInfo.isReadyForSubMesh || c._areImageProcessingDirty && this._imageProcessingConfiguration && !this._imageProcessingConfiguration.isReady())
|
|
203
|
+
return !1;
|
|
204
|
+
!E.getCaps().standardDerivatives && !t.isVerticesDataPresent(L.NormalKind) && (t.createNormals(!0), B.Warn("PBRMaterial: Normals have been created for the mesh: " + t.name));
|
|
205
|
+
const o = e.effect, h = c._areLightsDisposed;
|
|
206
|
+
let r = this._prepareEffect(t, c, this.onCompiled, this.onError, A, null, e.getRenderingMesh().hasThinInstances), n = !1;
|
|
207
|
+
if (r)
|
|
208
|
+
if (this._onEffectCreatedObservable && (S.effect = r, S.subMesh = e, this._onEffectCreatedObservable.notifyObservers(S)), this.allowShaderHotSwapping && o && !r.isReady()) {
|
|
209
|
+
if (r = o, c.markAsUnprocessed(), n = this.isFrozen, h)
|
|
210
|
+
return c._areLightsDisposed = !0, !1;
|
|
211
|
+
} else
|
|
212
|
+
T.resetCachedMaterial(), e.setEffect(r, c, this._materialContext);
|
|
213
|
+
return !e.effect || !e.effect.isReady() ? !1 : (c._renderId = T.getRenderId(), e.effect._wasPreviouslyReady = !n, e.effect._wasPreviouslyUsingInstances = !!A, this._checkScenePerformancePriority(), !0);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Specifies if the material uses metallic roughness workflow.
|
|
217
|
+
* @returns boolean specifying if the material uses metallic roughness workflow.
|
|
218
|
+
*/
|
|
219
|
+
isMetallicWorkflow() {
|
|
220
|
+
return !!(this._metallic != null || this._roughness != null || this._metallicTexture);
|
|
221
|
+
}
|
|
222
|
+
_prepareEffect(t, e, A = null, R = null, c = null, T = null, E) {
|
|
223
|
+
if (this._prepareDefines(t, e, c, T, E), !e.isDirty)
|
|
224
|
+
return null;
|
|
225
|
+
e.markAsProcessed();
|
|
226
|
+
const h = this.getScene().getEngine(), r = new Z();
|
|
227
|
+
let n = 0;
|
|
228
|
+
e.USESPHERICALINVERTEX && r.addFallback(n++, "USESPHERICALINVERTEX"), e.FOG && r.addFallback(n, "FOG"), e.SPECULARAA && r.addFallback(n, "SPECULARAA"), e.POINTSIZE && r.addFallback(n, "POINTSIZE"), e.LOGARITHMICDEPTH && r.addFallback(n, "LOGARITHMICDEPTH"), e.PARALLAX && r.addFallback(n, "PARALLAX"), e.PARALLAXOCCLUSION && r.addFallback(n++, "PARALLAXOCCLUSION"), e.ENVIRONMENTBRDF && r.addFallback(n++, "ENVIRONMENTBRDF"), e.TANGENT && r.addFallback(n++, "TANGENT"), e.BUMP && r.addFallback(n++, "BUMP"), n = s.HandleFallbacksForShadows(e, r, this._maxSimultaneousLights, n++), e.SPECULARTERM && r.addFallback(n++, "SPECULARTERM"), e.USESPHERICALFROMREFLECTIONMAP && r.addFallback(n++, "USESPHERICALFROMREFLECTIONMAP"), e.USEIRRADIANCEMAP && r.addFallback(n++, "USEIRRADIANCEMAP"), e.LIGHTMAP && r.addFallback(n++, "LIGHTMAP"), e.NORMAL && r.addFallback(n++, "NORMAL"), e.AMBIENT && r.addFallback(n++, "AMBIENT"), e.EMISSIVE && r.addFallback(n++, "EMISSIVE"), e.VERTEXCOLOR && r.addFallback(n++, "VERTEXCOLOR"), e.MORPHTARGETS && r.addFallback(n++, "MORPHTARGETS"), e.MULTIVIEW && r.addFallback(0, "MULTIVIEW");
|
|
229
|
+
const f = [L.PositionKind];
|
|
230
|
+
e.NORMAL && f.push(L.NormalKind), e.TANGENT && f.push(L.TangentKind);
|
|
231
|
+
for (let C = 1; C <= 6; ++C)
|
|
232
|
+
e["UV" + C] && f.push(`uv${C === 1 ? "" : C}`);
|
|
233
|
+
e.VERTEXCOLOR && f.push(L.ColorKind), e.INSTANCESCOLOR && f.push(L.ColorInstanceKind), s.PrepareAttributesForBones(f, t, e, r), s.PrepareAttributesForInstances(f, e), s.PrepareAttributesForMorphTargets(f, t, e), s.PrepareAttributesForBakedVertexAnimation(f, t, e);
|
|
234
|
+
let u = "pbr";
|
|
235
|
+
const i = [
|
|
236
|
+
"world",
|
|
237
|
+
"view",
|
|
238
|
+
"viewProjection",
|
|
239
|
+
"vEyePosition",
|
|
240
|
+
"vLightsType",
|
|
241
|
+
"vAmbientColor",
|
|
242
|
+
"vAlbedoColor",
|
|
243
|
+
"vReflectivityColor",
|
|
244
|
+
"vMetallicReflectanceFactors",
|
|
245
|
+
"vEmissiveColor",
|
|
246
|
+
"visibility",
|
|
247
|
+
"vReflectionColor",
|
|
248
|
+
"vFogInfos",
|
|
249
|
+
"vFogColor",
|
|
250
|
+
"pointSize",
|
|
251
|
+
"vAlbedoInfos",
|
|
252
|
+
"vAmbientInfos",
|
|
253
|
+
"vOpacityInfos",
|
|
254
|
+
"vReflectionInfos",
|
|
255
|
+
"vReflectionPosition",
|
|
256
|
+
"vReflectionSize",
|
|
257
|
+
"vEmissiveInfos",
|
|
258
|
+
"vReflectivityInfos",
|
|
259
|
+
"vReflectionFilteringInfo",
|
|
260
|
+
"vMetallicReflectanceInfos",
|
|
261
|
+
"vReflectanceInfos",
|
|
262
|
+
"vMicroSurfaceSamplerInfos",
|
|
263
|
+
"vBumpInfos",
|
|
264
|
+
"vLightmapInfos",
|
|
265
|
+
"mBones",
|
|
266
|
+
"albedoMatrix",
|
|
267
|
+
"ambientMatrix",
|
|
268
|
+
"opacityMatrix",
|
|
269
|
+
"reflectionMatrix",
|
|
270
|
+
"emissiveMatrix",
|
|
271
|
+
"reflectivityMatrix",
|
|
272
|
+
"normalMatrix",
|
|
273
|
+
"microSurfaceSamplerMatrix",
|
|
274
|
+
"bumpMatrix",
|
|
275
|
+
"lightmapMatrix",
|
|
276
|
+
"metallicReflectanceMatrix",
|
|
277
|
+
"reflectanceMatrix",
|
|
278
|
+
"vLightingIntensity",
|
|
279
|
+
"logarithmicDepthConstant",
|
|
280
|
+
"vSphericalX",
|
|
281
|
+
"vSphericalY",
|
|
282
|
+
"vSphericalZ",
|
|
283
|
+
"vSphericalXX_ZZ",
|
|
284
|
+
"vSphericalYY_ZZ",
|
|
285
|
+
"vSphericalZZ",
|
|
286
|
+
"vSphericalXY",
|
|
287
|
+
"vSphericalYZ",
|
|
288
|
+
"vSphericalZX",
|
|
289
|
+
"vSphericalL00",
|
|
290
|
+
"vSphericalL1_1",
|
|
291
|
+
"vSphericalL10",
|
|
292
|
+
"vSphericalL11",
|
|
293
|
+
"vSphericalL2_2",
|
|
294
|
+
"vSphericalL2_1",
|
|
295
|
+
"vSphericalL20",
|
|
296
|
+
"vSphericalL21",
|
|
297
|
+
"vSphericalL22",
|
|
298
|
+
"vReflectionMicrosurfaceInfos",
|
|
299
|
+
"vTangentSpaceParams",
|
|
300
|
+
"boneTextureWidth",
|
|
301
|
+
"vDebugMode",
|
|
302
|
+
"morphTargetTextureInfo",
|
|
303
|
+
"morphTargetTextureIndices"
|
|
304
|
+
], a = [
|
|
305
|
+
"albedoSampler",
|
|
306
|
+
"reflectivitySampler",
|
|
307
|
+
"ambientSampler",
|
|
308
|
+
"emissiveSampler",
|
|
309
|
+
"bumpSampler",
|
|
310
|
+
"lightmapSampler",
|
|
311
|
+
"opacitySampler",
|
|
312
|
+
"reflectionSampler",
|
|
313
|
+
"reflectionSamplerLow",
|
|
314
|
+
"reflectionSamplerHigh",
|
|
315
|
+
"irradianceSampler",
|
|
316
|
+
"microSurfaceSampler",
|
|
317
|
+
"environmentBrdfSampler",
|
|
318
|
+
"boneSampler",
|
|
319
|
+
"metallicReflectanceSampler",
|
|
320
|
+
"reflectanceSampler",
|
|
321
|
+
"morphTargets",
|
|
322
|
+
"oitDepthSampler",
|
|
323
|
+
"oitFrontColorSampler"
|
|
324
|
+
], m = ["Material", "Scene", "Mesh"];
|
|
325
|
+
this._eventInfo.fallbacks = r, this._eventInfo.fallbackRank = n, this._eventInfo.defines = e, this._eventInfo.uniforms = i, this._eventInfo.attributes = f, this._eventInfo.samplers = a, this._eventInfo.uniformBuffersNames = m, this._eventInfo.customCode = void 0, this._eventInfo.mesh = t, this._callbackPluginEventGeneric(O.PrepareEffect, this._eventInfo), N.AddUniforms(i), q(i), g && (g.PrepareUniforms(i, e), g.PrepareSamplers(a, e)), s.PrepareUniformsAndSamplersList({
|
|
326
|
+
uniformsNames: i,
|
|
327
|
+
uniformBuffersNames: m,
|
|
328
|
+
samplers: a,
|
|
329
|
+
defines: e,
|
|
330
|
+
maxSimultaneousLights: this._maxSimultaneousLights
|
|
331
|
+
});
|
|
332
|
+
const d = {};
|
|
333
|
+
this.customShaderNameResolve && (u = this.customShaderNameResolve(u, i, m, a, e, f, d));
|
|
334
|
+
const P = e.toString(), b = h.createEffect(u, {
|
|
335
|
+
attributes: f,
|
|
336
|
+
uniformsNames: i,
|
|
337
|
+
uniformBuffersNames: m,
|
|
338
|
+
samplers: a,
|
|
339
|
+
defines: P,
|
|
340
|
+
fallbacks: r,
|
|
341
|
+
onCompiled: A,
|
|
342
|
+
onError: R,
|
|
343
|
+
indexParameters: { maxSimultaneousLights: this._maxSimultaneousLights, maxSimultaneousMorphTargets: e.NUM_MORPH_INFLUENCERS },
|
|
344
|
+
processFinalCode: d.processFinalCode,
|
|
345
|
+
processCodeAfterIncludes: this._eventInfo.customCode,
|
|
346
|
+
multiTarget: e.PREPASS
|
|
347
|
+
}, h);
|
|
348
|
+
return this._eventInfo.customCode = void 0, b;
|
|
349
|
+
}
|
|
350
|
+
_prepareDefines(t, e, A = null, R = null, c = !1) {
|
|
351
|
+
var T;
|
|
352
|
+
const E = this.getScene(), o = E.getEngine();
|
|
353
|
+
s.PrepareDefinesForLights(E, t, e, !0, this._maxSimultaneousLights, this._disableLighting), e._needNormals = !0, s.PrepareDefinesForMultiview(E, e);
|
|
354
|
+
const h = this.needAlphaBlendingForMesh(t) && this.getScene().useOrderIndependentTransparency;
|
|
355
|
+
if (s.PrepareDefinesForPrePass(E, e, this.canRenderToMRT && !h), s.PrepareDefinesForOIT(E, e, h), e.METALLICWORKFLOW = this.isMetallicWorkflow(), e._areTexturesDirty) {
|
|
356
|
+
e._needUVs = !1;
|
|
357
|
+
for (let r = 1; r <= 6; ++r)
|
|
358
|
+
e["MAINUV" + r] = !1;
|
|
359
|
+
if (E.texturesEnabled) {
|
|
360
|
+
e.ALBEDODIRECTUV = 0, e.AMBIENTDIRECTUV = 0, e.OPACITYDIRECTUV = 0, e.EMISSIVEDIRECTUV = 0, e.REFLECTIVITYDIRECTUV = 0, e.MICROSURFACEMAPDIRECTUV = 0, e.METALLIC_REFLECTANCEDIRECTUV = 0, e.REFLECTANCEDIRECTUV = 0, e.BUMPDIRECTUV = 0, e.LIGHTMAPDIRECTUV = 0, o.getCaps().textureLOD && (e.LODBASEDMICROSFURACE = !0), this._albedoTexture && l.DiffuseTextureEnabled ? (s.PrepareDefinesForMergedUV(this._albedoTexture, e, "ALBEDO"), e.GAMMAALBEDO = this._albedoTexture.gammaSpace) : e.ALBEDO = !1, this._ambientTexture && l.AmbientTextureEnabled ? (s.PrepareDefinesForMergedUV(this._ambientTexture, e, "AMBIENT"), e.AMBIENTINGRAYSCALE = this._useAmbientInGrayScale) : e.AMBIENT = !1, this._opacityTexture && l.OpacityTextureEnabled ? (s.PrepareDefinesForMergedUV(this._opacityTexture, e, "OPACITY"), e.OPACITYRGB = this._opacityTexture.getAlphaFromRGB) : e.OPACITY = !1;
|
|
361
|
+
const r = this._getReflectionTexture();
|
|
362
|
+
if (r && l.ReflectionTextureEnabled) {
|
|
363
|
+
switch (e.REFLECTION = !0, e.GAMMAREFLECTION = r.gammaSpace, e.RGBDREFLECTION = r.isRGBD, e.LODINREFLECTIONALPHA = r.lodLevelInAlpha, e.LINEARSPECULARREFLECTION = r.linearSpecularLOD, this.realTimeFiltering && this.realTimeFilteringQuality > 0 ? (e.NUM_SAMPLES = "" + this.realTimeFilteringQuality, o._features.needTypeSuffixInShaderConstants && (e.NUM_SAMPLES = e.NUM_SAMPLES + "u"), e.REALTIME_FILTERING = !0) : e.REALTIME_FILTERING = !1, e.INVERTCUBICMAP = r.coordinatesMode === I.INVCUBIC_MODE, e.REFLECTIONMAP_3D = r.isCube, e.REFLECTIONMAP_OPPOSITEZ = e.REFLECTIONMAP_3D && this.getScene().useRightHandedSystem ? !r.invertZ : r.invertZ, e.REFLECTIONMAP_CUBIC = !1, e.REFLECTIONMAP_EXPLICIT = !1, e.REFLECTIONMAP_PLANAR = !1, e.REFLECTIONMAP_PROJECTION = !1, e.REFLECTIONMAP_SKYBOX = !1, e.REFLECTIONMAP_SPHERICAL = !1, e.REFLECTIONMAP_EQUIRECTANGULAR = !1, e.REFLECTIONMAP_EQUIRECTANGULAR_FIXED = !1, e.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED = !1, r.coordinatesMode) {
|
|
364
|
+
case I.EXPLICIT_MODE:
|
|
365
|
+
e.REFLECTIONMAP_EXPLICIT = !0;
|
|
366
|
+
break;
|
|
367
|
+
case I.PLANAR_MODE:
|
|
368
|
+
e.REFLECTIONMAP_PLANAR = !0;
|
|
369
|
+
break;
|
|
370
|
+
case I.PROJECTION_MODE:
|
|
371
|
+
e.REFLECTIONMAP_PROJECTION = !0;
|
|
372
|
+
break;
|
|
373
|
+
case I.SKYBOX_MODE:
|
|
374
|
+
e.REFLECTIONMAP_SKYBOX = !0;
|
|
375
|
+
break;
|
|
376
|
+
case I.SPHERICAL_MODE:
|
|
377
|
+
e.REFLECTIONMAP_SPHERICAL = !0;
|
|
378
|
+
break;
|
|
379
|
+
case I.EQUIRECTANGULAR_MODE:
|
|
380
|
+
e.REFLECTIONMAP_EQUIRECTANGULAR = !0;
|
|
381
|
+
break;
|
|
382
|
+
case I.FIXED_EQUIRECTANGULAR_MODE:
|
|
383
|
+
e.REFLECTIONMAP_EQUIRECTANGULAR_FIXED = !0;
|
|
384
|
+
break;
|
|
385
|
+
case I.FIXED_EQUIRECTANGULAR_MIRRORED_MODE:
|
|
386
|
+
e.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED = !0;
|
|
387
|
+
break;
|
|
388
|
+
case I.CUBIC_MODE:
|
|
389
|
+
case I.INVCUBIC_MODE:
|
|
390
|
+
default:
|
|
391
|
+
e.REFLECTIONMAP_CUBIC = !0, e.USE_LOCAL_REFLECTIONMAP_CUBIC = !!r.boundingBoxSize;
|
|
392
|
+
break;
|
|
393
|
+
}
|
|
394
|
+
r.coordinatesMode !== I.SKYBOX_MODE && (r.irradianceTexture ? (e.USEIRRADIANCEMAP = !0, e.USESPHERICALFROMREFLECTIONMAP = !1) : r.isCube && (e.USESPHERICALFROMREFLECTIONMAP = !0, e.USEIRRADIANCEMAP = !1, this._forceIrradianceInFragment || this.realTimeFiltering || o.getCaps().maxVaryingVectors <= 8 ? e.USESPHERICALINVERTEX = !1 : e.USESPHERICALINVERTEX = !0));
|
|
395
|
+
} else
|
|
396
|
+
e.REFLECTION = !1, e.REFLECTIONMAP_3D = !1, e.REFLECTIONMAP_SPHERICAL = !1, e.REFLECTIONMAP_PLANAR = !1, e.REFLECTIONMAP_CUBIC = !1, e.USE_LOCAL_REFLECTIONMAP_CUBIC = !1, e.REFLECTIONMAP_PROJECTION = !1, e.REFLECTIONMAP_SKYBOX = !1, e.REFLECTIONMAP_EXPLICIT = !1, e.REFLECTIONMAP_EQUIRECTANGULAR = !1, e.REFLECTIONMAP_EQUIRECTANGULAR_FIXED = !1, e.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED = !1, e.INVERTCUBICMAP = !1, e.USESPHERICALFROMREFLECTIONMAP = !1, e.USEIRRADIANCEMAP = !1, e.USESPHERICALINVERTEX = !1, e.REFLECTIONMAP_OPPOSITEZ = !1, e.LODINREFLECTIONALPHA = !1, e.GAMMAREFLECTION = !1, e.RGBDREFLECTION = !1, e.LINEARSPECULARREFLECTION = !1;
|
|
397
|
+
if (this._lightmapTexture && l.LightmapTextureEnabled ? (s.PrepareDefinesForMergedUV(this._lightmapTexture, e, "LIGHTMAP"), e.USELIGHTMAPASSHADOWMAP = this._useLightmapAsShadowmap, e.GAMMALIGHTMAP = this._lightmapTexture.gammaSpace, e.RGBDLIGHTMAP = this._lightmapTexture.isRGBD) : e.LIGHTMAP = !1, this._emissiveTexture && l.EmissiveTextureEnabled ? (s.PrepareDefinesForMergedUV(this._emissiveTexture, e, "EMISSIVE"), e.GAMMAEMISSIVE = this._emissiveTexture.gammaSpace) : e.EMISSIVE = !1, l.SpecularTextureEnabled) {
|
|
398
|
+
if (this._metallicTexture ? (s.PrepareDefinesForMergedUV(this._metallicTexture, e, "REFLECTIVITY"), e.ROUGHNESSSTOREINMETALMAPALPHA = this._useRoughnessFromMetallicTextureAlpha, e.ROUGHNESSSTOREINMETALMAPGREEN = !this._useRoughnessFromMetallicTextureAlpha && this._useRoughnessFromMetallicTextureGreen, e.METALLNESSSTOREINMETALMAPBLUE = this._useMetallnessFromMetallicTextureBlue, e.AOSTOREINMETALMAPRED = this._useAmbientOcclusionFromMetallicTextureRed, e.REFLECTIVITY_GAMMA = !1) : this._reflectivityTexture ? (s.PrepareDefinesForMergedUV(this._reflectivityTexture, e, "REFLECTIVITY"), e.MICROSURFACEFROMREFLECTIVITYMAP = this._useMicroSurfaceFromReflectivityMapAlpha, e.MICROSURFACEAUTOMATIC = this._useAutoMicroSurfaceFromReflectivityMap, e.REFLECTIVITY_GAMMA = this._reflectivityTexture.gammaSpace) : e.REFLECTIVITY = !1, this._metallicReflectanceTexture || this._reflectanceTexture) {
|
|
399
|
+
const n = this._metallicReflectanceTexture !== null && this._metallicReflectanceTexture._texture === ((T = this._reflectanceTexture) === null || T === void 0 ? void 0 : T._texture) && this._metallicReflectanceTexture.checkTransformsAreIdentical(this._reflectanceTexture);
|
|
400
|
+
e.METALLIC_REFLECTANCE_USE_ALPHA_ONLY = this._useOnlyMetallicFromMetallicReflectanceTexture && !n, this._metallicReflectanceTexture ? (s.PrepareDefinesForMergedUV(this._metallicReflectanceTexture, e, "METALLIC_REFLECTANCE"), e.METALLIC_REFLECTANCE_GAMMA = this._metallicReflectanceTexture.gammaSpace) : e.METALLIC_REFLECTANCE = !1, this._reflectanceTexture && !n && (!this._metallicReflectanceTexture || this._metallicReflectanceTexture && this._useOnlyMetallicFromMetallicReflectanceTexture) ? (s.PrepareDefinesForMergedUV(this._reflectanceTexture, e, "REFLECTANCE"), e.REFLECTANCE_GAMMA = this._reflectanceTexture.gammaSpace) : e.REFLECTANCE = !1;
|
|
401
|
+
} else
|
|
402
|
+
e.METALLIC_REFLECTANCE = !1, e.REFLECTANCE = !1;
|
|
403
|
+
this._microSurfaceTexture ? s.PrepareDefinesForMergedUV(this._microSurfaceTexture, e, "MICROSURFACEMAP") : e.MICROSURFACEMAP = !1;
|
|
404
|
+
} else
|
|
405
|
+
e.REFLECTIVITY = !1, e.MICROSURFACEMAP = !1;
|
|
406
|
+
o.getCaps().standardDerivatives && this._bumpTexture && l.BumpTextureEnabled && !this._disableBumpMap ? (s.PrepareDefinesForMergedUV(this._bumpTexture, e, "BUMP"), this._useParallax && this._albedoTexture && l.DiffuseTextureEnabled ? (e.PARALLAX = !0, e.PARALLAXOCCLUSION = !!this._useParallaxOcclusion) : e.PARALLAX = !1, e.OBJECTSPACE_NORMALMAP = this._useObjectSpaceNormalMap) : (e.BUMP = !1, e.PARALLAX = !1, e.PARALLAXOCCLUSION = !1, e.OBJECTSPACE_NORMALMAP = !1), this._environmentBRDFTexture && l.ReflectionTextureEnabled ? (e.ENVIRONMENTBRDF = !0, e.ENVIRONMENTBRDF_RGBD = this._environmentBRDFTexture.isRGBD) : (e.ENVIRONMENTBRDF = !1, e.ENVIRONMENTBRDF_RGBD = !1), this._shouldUseAlphaFromAlbedoTexture() ? e.ALPHAFROMALBEDO = !0 : e.ALPHAFROMALBEDO = !1;
|
|
407
|
+
}
|
|
408
|
+
e.SPECULAROVERALPHA = this._useSpecularOverAlpha, this._lightFalloff === _.LIGHTFALLOFF_STANDARD ? (e.USEPHYSICALLIGHTFALLOFF = !1, e.USEGLTFLIGHTFALLOFF = !1) : this._lightFalloff === _.LIGHTFALLOFF_GLTF ? (e.USEPHYSICALLIGHTFALLOFF = !1, e.USEGLTFLIGHTFALLOFF = !0) : (e.USEPHYSICALLIGHTFALLOFF = !0, e.USEGLTFLIGHTFALLOFF = !1), e.RADIANCEOVERALPHA = this._useRadianceOverAlpha, !this.backFaceCulling && this._twoSidedLighting ? e.TWOSIDEDLIGHTING = !0 : e.TWOSIDEDLIGHTING = !1, e.SPECULARAA = o.getCaps().standardDerivatives && this._enableSpecularAntiAliasing;
|
|
409
|
+
}
|
|
410
|
+
(e._areTexturesDirty || e._areMiscDirty) && (e.ALPHATESTVALUE = `${this._alphaCutOff}${this._alphaCutOff % 1 === 0 ? "." : ""}`, e.PREMULTIPLYALPHA = this.alphaMode === 7 || this.alphaMode === 8, e.ALPHABLEND = this.needAlphaBlendingForMesh(t), e.ALPHAFRESNEL = this._useAlphaFresnel || this._useLinearAlphaFresnel, e.LINEARALPHAFRESNEL = this._useLinearAlphaFresnel), e._areImageProcessingDirty && this._imageProcessingConfiguration && this._imageProcessingConfiguration.prepareDefines(e), e.FORCENORMALFORWARD = this._forceNormalForward, e.RADIANCEOCCLUSION = this._useRadianceOcclusion, e.HORIZONOCCLUSION = this._useHorizonOcclusion, e._areMiscDirty && (s.PrepareDefinesForMisc(t, E, this._useLogarithmicDepth, this.pointsCloud, this.fogEnabled, this._shouldTurnAlphaTestOn(t) || this._forceAlphaTest, e, this._applyDecalMapAfterDetailMap), e.UNLIT = this._unlit || (this.pointsCloud || this.wireframe) && !t.isVerticesDataPresent(L.NormalKind), e.DEBUGMODE = this._debugMode), s.PrepareDefinesForFrameBoundValues(E, o, this, e, !!A, R, c), this._eventInfo.defines = e, this._eventInfo.mesh = t, this._callbackPluginEventPrepareDefinesBeforeAttributes(this._eventInfo), s.PrepareDefinesForAttributes(t, e, !0, !0, !0, this._transparencyMode !== _.PBRMATERIAL_OPAQUE), this._callbackPluginEventPrepareDefines(this._eventInfo);
|
|
411
|
+
}
|
|
412
|
+
/**
|
|
413
|
+
* Force shader compilation
|
|
414
|
+
* @param mesh
|
|
415
|
+
* @param onCompiled
|
|
416
|
+
* @param options
|
|
417
|
+
*/
|
|
418
|
+
forceCompilation(t, e, A) {
|
|
419
|
+
const R = Object.assign({ clipPlane: !1, useInstances: !1 }, A);
|
|
420
|
+
this._uniformBufferLayoutBuilt || this.buildUniformLayout(), this._callbackPluginEventGeneric(O.GetDefineNames, this._eventInfo);
|
|
421
|
+
const c = new F(this._eventInfo.defineNames), T = this._prepareEffect(t, c, void 0, void 0, R.useInstances, R.clipPlane, t.hasThinInstances);
|
|
422
|
+
this._onEffectCreatedObservable && (S.effect = T, S.subMesh = null, this._onEffectCreatedObservable.notifyObservers(S)), T.isReady() ? e && e(this) : T.onCompileObservable.add(() => {
|
|
423
|
+
e && e(this);
|
|
424
|
+
});
|
|
425
|
+
}
|
|
426
|
+
/**
|
|
427
|
+
* Initializes the uniform buffer layout for the shader.
|
|
428
|
+
*/
|
|
429
|
+
buildUniformLayout() {
|
|
430
|
+
const t = this._uniformBuffer;
|
|
431
|
+
t.addUniform("vAlbedoInfos", 2), t.addUniform("vAmbientInfos", 4), t.addUniform("vOpacityInfos", 2), t.addUniform("vEmissiveInfos", 2), t.addUniform("vLightmapInfos", 2), t.addUniform("vReflectivityInfos", 3), t.addUniform("vMicroSurfaceSamplerInfos", 2), t.addUniform("vReflectionInfos", 2), t.addUniform("vReflectionFilteringInfo", 2), t.addUniform("vReflectionPosition", 3), t.addUniform("vReflectionSize", 3), t.addUniform("vBumpInfos", 3), t.addUniform("albedoMatrix", 16), t.addUniform("ambientMatrix", 16), t.addUniform("opacityMatrix", 16), t.addUniform("emissiveMatrix", 16), t.addUniform("lightmapMatrix", 16), t.addUniform("reflectivityMatrix", 16), t.addUniform("microSurfaceSamplerMatrix", 16), t.addUniform("bumpMatrix", 16), t.addUniform("vTangentSpaceParams", 2), t.addUniform("reflectionMatrix", 16), t.addUniform("vReflectionColor", 3), t.addUniform("vAlbedoColor", 4), t.addUniform("vLightingIntensity", 4), t.addUniform("vReflectionMicrosurfaceInfos", 3), t.addUniform("pointSize", 1), t.addUniform("vReflectivityColor", 4), t.addUniform("vEmissiveColor", 3), t.addUniform("vAmbientColor", 3), t.addUniform("vDebugMode", 2), t.addUniform("vMetallicReflectanceFactors", 4), t.addUniform("vMetallicReflectanceInfos", 2), t.addUniform("metallicReflectanceMatrix", 16), t.addUniform("vReflectanceInfos", 2), t.addUniform("reflectanceMatrix", 16), t.addUniform("vSphericalL00", 3), t.addUniform("vSphericalL1_1", 3), t.addUniform("vSphericalL10", 3), t.addUniform("vSphericalL11", 3), t.addUniform("vSphericalL2_2", 3), t.addUniform("vSphericalL2_1", 3), t.addUniform("vSphericalL20", 3), t.addUniform("vSphericalL21", 3), t.addUniform("vSphericalL22", 3), t.addUniform("vSphericalX", 3), t.addUniform("vSphericalY", 3), t.addUniform("vSphericalZ", 3), t.addUniform("vSphericalXX_ZZ", 3), t.addUniform("vSphericalYY_ZZ", 3), t.addUniform("vSphericalZZ", 3), t.addUniform("vSphericalXY", 3), t.addUniform("vSphericalYZ", 3), t.addUniform("vSphericalZX", 3), super.buildUniformLayout();
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* Binds the submesh data.
|
|
435
|
+
* @param world - The world matrix.
|
|
436
|
+
* @param mesh - The BJS mesh.
|
|
437
|
+
* @param subMesh - A submesh of the BJS mesh.
|
|
438
|
+
*/
|
|
439
|
+
bindForSubMesh(t, e, A) {
|
|
440
|
+
var R, c, T, E;
|
|
441
|
+
const o = this.getScene(), h = A.materialDefines;
|
|
442
|
+
if (!h)
|
|
443
|
+
return;
|
|
444
|
+
const r = A.effect;
|
|
445
|
+
if (!r)
|
|
446
|
+
return;
|
|
447
|
+
this._activeEffect = r, e.getMeshUniformBuffer().bindToEffect(r, "Mesh"), e.transferToEffect(t);
|
|
448
|
+
const n = o.getEngine();
|
|
449
|
+
this._uniformBuffer.bindToEffect(r, "Material"), this.prePassConfiguration.bindForSubMesh(this._activeEffect, o, e, t, this.isFrozen), this._eventInfo.subMesh = A, this._callbackPluginEventHardBindForSubMesh(this._eventInfo), h.OBJECTSPACE_NORMALMAP && (t.toNormalMatrix(this._normalMatrix), this.bindOnlyNormalMatrix(this._normalMatrix));
|
|
450
|
+
const f = r._forceRebindOnNextCall || this._mustRebind(o, r, e.visibility);
|
|
451
|
+
s.BindBonesParameters(e, this._activeEffect, this.prePassConfiguration);
|
|
452
|
+
let u = null;
|
|
453
|
+
const i = this._uniformBuffer;
|
|
454
|
+
if (f) {
|
|
455
|
+
if (this.bindViewProjection(r), u = this._getReflectionTexture(), !i.useUbo || !this.isFrozen || !i.isSync || r._forceRebindOnNextCall) {
|
|
456
|
+
if (o.texturesEnabled) {
|
|
457
|
+
if (this._albedoTexture && l.DiffuseTextureEnabled && (i.updateFloat2("vAlbedoInfos", this._albedoTexture.coordinatesIndex, this._albedoTexture.level), s.BindTextureMatrix(this._albedoTexture, i, "albedo")), this._ambientTexture && l.AmbientTextureEnabled && (i.updateFloat4("vAmbientInfos", this._ambientTexture.coordinatesIndex, this._ambientTexture.level, this._ambientTextureStrength, this._ambientTextureImpactOnAnalyticalLights), s.BindTextureMatrix(this._ambientTexture, i, "ambient")), this._opacityTexture && l.OpacityTextureEnabled && (i.updateFloat2("vOpacityInfos", this._opacityTexture.coordinatesIndex, this._opacityTexture.level), s.BindTextureMatrix(this._opacityTexture, i, "opacity")), u && l.ReflectionTextureEnabled) {
|
|
458
|
+
if (i.updateMatrix("reflectionMatrix", u.getReflectionTextureMatrix()), i.updateFloat2("vReflectionInfos", u.level, 0), u.boundingBoxSize) {
|
|
459
|
+
const a = u;
|
|
460
|
+
i.updateVector3("vReflectionPosition", a.boundingBoxPosition), i.updateVector3("vReflectionSize", a.boundingBoxSize);
|
|
461
|
+
}
|
|
462
|
+
if (this.realTimeFiltering) {
|
|
463
|
+
const a = u.getSize().width;
|
|
464
|
+
i.updateFloat2("vReflectionFilteringInfo", a, Y.Log2(a));
|
|
465
|
+
}
|
|
466
|
+
if (!h.USEIRRADIANCEMAP) {
|
|
467
|
+
const a = u.sphericalPolynomial;
|
|
468
|
+
if (h.USESPHERICALFROMREFLECTIONMAP && a)
|
|
469
|
+
if (h.SPHERICAL_HARMONICS) {
|
|
470
|
+
const m = a.preScaledHarmonics;
|
|
471
|
+
i.updateVector3("vSphericalL00", m.l00), i.updateVector3("vSphericalL1_1", m.l1_1), i.updateVector3("vSphericalL10", m.l10), i.updateVector3("vSphericalL11", m.l11), i.updateVector3("vSphericalL2_2", m.l2_2), i.updateVector3("vSphericalL2_1", m.l2_1), i.updateVector3("vSphericalL20", m.l20), i.updateVector3("vSphericalL21", m.l21), i.updateVector3("vSphericalL22", m.l22);
|
|
472
|
+
} else
|
|
473
|
+
i.updateFloat3("vSphericalX", a.x.x, a.x.y, a.x.z), i.updateFloat3("vSphericalY", a.y.x, a.y.y, a.y.z), i.updateFloat3("vSphericalZ", a.z.x, a.z.y, a.z.z), i.updateFloat3("vSphericalXX_ZZ", a.xx.x - a.zz.x, a.xx.y - a.zz.y, a.xx.z - a.zz.z), i.updateFloat3("vSphericalYY_ZZ", a.yy.x - a.zz.x, a.yy.y - a.zz.y, a.yy.z - a.zz.z), i.updateFloat3("vSphericalZZ", a.zz.x, a.zz.y, a.zz.z), i.updateFloat3("vSphericalXY", a.xy.x, a.xy.y, a.xy.z), i.updateFloat3("vSphericalYZ", a.yz.x, a.yz.y, a.yz.z), i.updateFloat3("vSphericalZX", a.zx.x, a.zx.y, a.zx.z);
|
|
474
|
+
}
|
|
475
|
+
i.updateFloat3("vReflectionMicrosurfaceInfos", u.getSize().width, u.lodGenerationScale, u.lodGenerationOffset);
|
|
476
|
+
}
|
|
477
|
+
this._emissiveTexture && l.EmissiveTextureEnabled && (i.updateFloat2("vEmissiveInfos", this._emissiveTexture.coordinatesIndex, this._emissiveTexture.level), s.BindTextureMatrix(this._emissiveTexture, i, "emissive")), this._lightmapTexture && l.LightmapTextureEnabled && (i.updateFloat2("vLightmapInfos", this._lightmapTexture.coordinatesIndex, this._lightmapTexture.level), s.BindTextureMatrix(this._lightmapTexture, i, "lightmap")), l.SpecularTextureEnabled && (this._metallicTexture ? (i.updateFloat3("vReflectivityInfos", this._metallicTexture.coordinatesIndex, this._metallicTexture.level, this._ambientTextureStrength), s.BindTextureMatrix(this._metallicTexture, i, "reflectivity")) : this._reflectivityTexture && (i.updateFloat3("vReflectivityInfos", this._reflectivityTexture.coordinatesIndex, this._reflectivityTexture.level, 1), s.BindTextureMatrix(this._reflectivityTexture, i, "reflectivity")), this._metallicReflectanceTexture && (i.updateFloat2("vMetallicReflectanceInfos", this._metallicReflectanceTexture.coordinatesIndex, this._metallicReflectanceTexture.level), s.BindTextureMatrix(this._metallicReflectanceTexture, i, "metallicReflectance")), this._reflectanceTexture && h.REFLECTANCE && (i.updateFloat2("vReflectanceInfos", this._reflectanceTexture.coordinatesIndex, this._reflectanceTexture.level), s.BindTextureMatrix(this._reflectanceTexture, i, "reflectance")), this._microSurfaceTexture && (i.updateFloat2("vMicroSurfaceSamplerInfos", this._microSurfaceTexture.coordinatesIndex, this._microSurfaceTexture.level), s.BindTextureMatrix(this._microSurfaceTexture, i, "microSurfaceSampler"))), this._bumpTexture && n.getCaps().standardDerivatives && l.BumpTextureEnabled && !this._disableBumpMap && (i.updateFloat3("vBumpInfos", this._bumpTexture.coordinatesIndex, this._bumpTexture.level, this._parallaxScaleBias), s.BindTextureMatrix(this._bumpTexture, i, "bump"), o._mirroredCameraPosition ? i.updateFloat2("vTangentSpaceParams", this._invertNormalMapX ? 1 : -1, this._invertNormalMapY ? 1 : -1) : i.updateFloat2("vTangentSpaceParams", this._invertNormalMapX ? -1 : 1, this._invertNormalMapY ? -1 : 1));
|
|
478
|
+
}
|
|
479
|
+
if (this.pointsCloud && i.updateFloat("pointSize", this.pointSize), h.METALLICWORKFLOW) {
|
|
480
|
+
x.Color3[0].r = this._metallic === void 0 || this._metallic === null ? 1 : this._metallic, x.Color3[0].g = this._roughness === void 0 || this._roughness === null ? 1 : this._roughness, i.updateColor4("vReflectivityColor", x.Color3[0], 1);
|
|
481
|
+
const a = (c = (R = this.subSurface) === null || R === void 0 ? void 0 : R._indexOfRefraction) !== null && c !== void 0 ? c : 1.5, m = 1, d = Math.pow((a - m) / (a + m), 2);
|
|
482
|
+
this._metallicReflectanceColor.scaleToRef(d * this._metallicF0Factor, x.Color3[0]);
|
|
483
|
+
const P = this._metallicF0Factor;
|
|
484
|
+
i.updateColor4("vMetallicReflectanceFactors", x.Color3[0], P);
|
|
485
|
+
} else
|
|
486
|
+
i.updateColor4("vReflectivityColor", this._reflectivityColor, this._microSurface);
|
|
487
|
+
i.updateColor3("vEmissiveColor", l.EmissiveTextureEnabled ? this._emissiveColor : p.BlackReadOnly), i.updateColor3("vReflectionColor", this._reflectionColor), !h.SS_REFRACTION && (!((T = this.subSurface) === null || T === void 0) && T._linkRefractionWithTransparency) ? i.updateColor4("vAlbedoColor", this._albedoColor, 1) : i.updateColor4("vAlbedoColor", this._albedoColor, this.alpha), this._lightingInfos.x = this._directIntensity, this._lightingInfos.y = this._emissiveIntensity, this._lightingInfos.z = this._environmentIntensity * o.environmentIntensity, this._lightingInfos.w = this._specularIntensity, i.updateVector4("vLightingIntensity", this._lightingInfos), o.ambientColor.multiplyToRef(this._ambientColor, this._globalAmbientColor), i.updateColor3("vAmbientColor", this._globalAmbientColor), i.updateFloat2("vDebugMode", this.debugLimit, this.debugFactor);
|
|
488
|
+
}
|
|
489
|
+
o.texturesEnabled && (this._albedoTexture && l.DiffuseTextureEnabled && i.setTexture("albedoSampler", this._albedoTexture), this._ambientTexture && l.AmbientTextureEnabled && i.setTexture("ambientSampler", this._ambientTexture), this._opacityTexture && l.OpacityTextureEnabled && i.setTexture("opacitySampler", this._opacityTexture), u && l.ReflectionTextureEnabled && (h.LODBASEDMICROSFURACE ? i.setTexture("reflectionSampler", u) : (i.setTexture("reflectionSampler", u._lodTextureMid || u), i.setTexture("reflectionSamplerLow", u._lodTextureLow || u), i.setTexture("reflectionSamplerHigh", u._lodTextureHigh || u)), h.USEIRRADIANCEMAP && i.setTexture("irradianceSampler", u.irradianceTexture)), h.ENVIRONMENTBRDF && i.setTexture("environmentBrdfSampler", this._environmentBRDFTexture), this._emissiveTexture && l.EmissiveTextureEnabled && i.setTexture("emissiveSampler", this._emissiveTexture), this._lightmapTexture && l.LightmapTextureEnabled && i.setTexture("lightmapSampler", this._lightmapTexture), l.SpecularTextureEnabled && (this._metallicTexture ? i.setTexture("reflectivitySampler", this._metallicTexture) : this._reflectivityTexture && i.setTexture("reflectivitySampler", this._reflectivityTexture), this._metallicReflectanceTexture && i.setTexture("metallicReflectanceSampler", this._metallicReflectanceTexture), this._reflectanceTexture && h.REFLECTANCE && i.setTexture("reflectanceSampler", this._reflectanceTexture), this._microSurfaceTexture && i.setTexture("microSurfaceSampler", this._microSurfaceTexture)), this._bumpTexture && n.getCaps().standardDerivatives && l.BumpTextureEnabled && !this._disableBumpMap && i.setTexture("bumpSampler", this._bumpTexture)), this.getScene().useOrderIndependentTransparency && this.needAlphaBlendingForMesh(e) && this.getScene().depthPeelingRenderer.bind(r), this._eventInfo.subMesh = A, this._callbackPluginEventBindForSubMesh(this._eventInfo), ee(this._activeEffect, this, o), this.bindEyePosition(r);
|
|
490
|
+
} else
|
|
491
|
+
o.getEngine()._features.needToAlwaysBindUniformBuffers && (this._needToBindSceneUbo = !0);
|
|
492
|
+
(f || !this.isFrozen) && (o.lightsEnabled && !this._disableLighting && s.BindLights(o, e, this._activeEffect, h, this._maxSimultaneousLights), (o.fogEnabled && e.applyFog && o.fogMode !== V.FOGMODE_NONE || u || e.receiveShadows || h.PREPASS) && this.bindView(r), s.BindFogParameters(o, e, this._activeEffect, !0), h.NUM_MORPH_INFLUENCERS && s.BindMorphTargetParameters(e, this._activeEffect), h.BAKED_VERTEX_ANIMATION_TEXTURE && ((E = e.bakedVertexAnimationManager) === null || E === void 0 || E.bind(r, h.INSTANCES)), this._imageProcessingConfiguration.bind(this._activeEffect), s.BindLogDepth(h, this._activeEffect, o)), this._afterBind(e, this._activeEffect), i.update();
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Returns the animatable textures.
|
|
496
|
+
* If material have animatable metallic texture, then reflectivity texture will not be returned, even if it has animations.
|
|
497
|
+
* @returns - Array of animatable textures.
|
|
498
|
+
*/
|
|
499
|
+
getAnimatables() {
|
|
500
|
+
const t = super.getAnimatables();
|
|
501
|
+
return this._albedoTexture && this._albedoTexture.animations && this._albedoTexture.animations.length > 0 && t.push(this._albedoTexture), this._ambientTexture && this._ambientTexture.animations && this._ambientTexture.animations.length > 0 && t.push(this._ambientTexture), this._opacityTexture && this._opacityTexture.animations && this._opacityTexture.animations.length > 0 && t.push(this._opacityTexture), this._reflectionTexture && this._reflectionTexture.animations && this._reflectionTexture.animations.length > 0 && t.push(this._reflectionTexture), this._emissiveTexture && this._emissiveTexture.animations && this._emissiveTexture.animations.length > 0 && t.push(this._emissiveTexture), this._metallicTexture && this._metallicTexture.animations && this._metallicTexture.animations.length > 0 ? t.push(this._metallicTexture) : this._reflectivityTexture && this._reflectivityTexture.animations && this._reflectivityTexture.animations.length > 0 && t.push(this._reflectivityTexture), this._bumpTexture && this._bumpTexture.animations && this._bumpTexture.animations.length > 0 && t.push(this._bumpTexture), this._lightmapTexture && this._lightmapTexture.animations && this._lightmapTexture.animations.length > 0 && t.push(this._lightmapTexture), this._metallicReflectanceTexture && this._metallicReflectanceTexture.animations && this._metallicReflectanceTexture.animations.length > 0 && t.push(this._metallicReflectanceTexture), this._reflectanceTexture && this._reflectanceTexture.animations && this._reflectanceTexture.animations.length > 0 && t.push(this._reflectanceTexture), this._microSurfaceTexture && this._microSurfaceTexture.animations && this._microSurfaceTexture.animations.length > 0 && t.push(this._microSurfaceTexture), t;
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Returns the texture used for reflections.
|
|
505
|
+
* @returns - Reflection texture if present. Otherwise, returns the environment texture.
|
|
506
|
+
*/
|
|
507
|
+
_getReflectionTexture() {
|
|
508
|
+
return this._reflectionTexture ? this._reflectionTexture : this.getScene().environmentTexture;
|
|
509
|
+
}
|
|
510
|
+
/**
|
|
511
|
+
* Returns an array of the actively used textures.
|
|
512
|
+
* @returns - Array of BaseTextures
|
|
513
|
+
*/
|
|
514
|
+
getActiveTextures() {
|
|
515
|
+
const t = super.getActiveTextures();
|
|
516
|
+
return this._albedoTexture && t.push(this._albedoTexture), this._ambientTexture && t.push(this._ambientTexture), this._opacityTexture && t.push(this._opacityTexture), this._reflectionTexture && t.push(this._reflectionTexture), this._emissiveTexture && t.push(this._emissiveTexture), this._reflectivityTexture && t.push(this._reflectivityTexture), this._metallicTexture && t.push(this._metallicTexture), this._metallicReflectanceTexture && t.push(this._metallicReflectanceTexture), this._reflectanceTexture && t.push(this._reflectanceTexture), this._microSurfaceTexture && t.push(this._microSurfaceTexture), this._bumpTexture && t.push(this._bumpTexture), this._lightmapTexture && t.push(this._lightmapTexture), t;
|
|
517
|
+
}
|
|
518
|
+
/**
|
|
519
|
+
* Checks to see if a texture is used in the material.
|
|
520
|
+
* @param texture - Base texture to use.
|
|
521
|
+
* @returns - Boolean specifying if a texture is used in the material.
|
|
522
|
+
*/
|
|
523
|
+
hasTexture(t) {
|
|
524
|
+
return !!(super.hasTexture(t) || this._albedoTexture === t || this._ambientTexture === t || this._opacityTexture === t || this._reflectionTexture === t || this._emissiveTexture === t || this._reflectivityTexture === t || this._metallicTexture === t || this._metallicReflectanceTexture === t || this._reflectanceTexture === t || this._microSurfaceTexture === t || this._bumpTexture === t || this._lightmapTexture === t);
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* Sets the required values to the prepass renderer.
|
|
528
|
+
* It can't be sets when subsurface scattering of this material is disabled.
|
|
529
|
+
* When scene have ability to enable subsurface prepass effect, it will enable.
|
|
530
|
+
*/
|
|
531
|
+
setPrePassRenderer() {
|
|
532
|
+
var t;
|
|
533
|
+
if (!(!((t = this.subSurface) === null || t === void 0) && t.isScatteringEnabled))
|
|
534
|
+
return !1;
|
|
535
|
+
const e = this.getScene().enableSubSurfaceForPrePass();
|
|
536
|
+
return e && (e.enabled = !0), !0;
|
|
537
|
+
}
|
|
538
|
+
/**
|
|
539
|
+
* Disposes the resources of the material.
|
|
540
|
+
* @param forceDisposeEffect - Forces the disposal of effects.
|
|
541
|
+
* @param forceDisposeTextures - Forces the disposal of all textures.
|
|
542
|
+
*/
|
|
543
|
+
dispose(t, e) {
|
|
544
|
+
var A, R, c, T, E, o, h, r, n, f, u, i;
|
|
545
|
+
e && (this._environmentBRDFTexture && this.getScene().environmentBRDFTexture !== this._environmentBRDFTexture && this._environmentBRDFTexture.dispose(), (A = this._albedoTexture) === null || A === void 0 || A.dispose(), (R = this._ambientTexture) === null || R === void 0 || R.dispose(), (c = this._opacityTexture) === null || c === void 0 || c.dispose(), (T = this._reflectionTexture) === null || T === void 0 || T.dispose(), (E = this._emissiveTexture) === null || E === void 0 || E.dispose(), (o = this._metallicTexture) === null || o === void 0 || o.dispose(), (h = this._reflectivityTexture) === null || h === void 0 || h.dispose(), (r = this._bumpTexture) === null || r === void 0 || r.dispose(), (n = this._lightmapTexture) === null || n === void 0 || n.dispose(), (f = this._metallicReflectanceTexture) === null || f === void 0 || f.dispose(), (u = this._reflectanceTexture) === null || u === void 0 || u.dispose(), (i = this._microSurfaceTexture) === null || i === void 0 || i.dispose()), this._renderTargets.dispose(), this._imageProcessingConfiguration && this._imageProcessingObserver && this._imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingObserver), super.dispose(t, e);
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
_.PBRMATERIAL_OPAQUE = M.MATERIAL_OPAQUE;
|
|
549
|
+
_.PBRMATERIAL_ALPHATEST = M.MATERIAL_ALPHATEST;
|
|
550
|
+
_.PBRMATERIAL_ALPHABLEND = M.MATERIAL_ALPHABLEND;
|
|
551
|
+
_.PBRMATERIAL_ALPHATESTANDBLEND = M.MATERIAL_ALPHATESTANDBLEND;
|
|
552
|
+
_.DEFAULT_AO_ON_ANALYTICAL_LIGHTS = 0;
|
|
553
|
+
_.LIGHTFALLOFF_PHYSICAL = 0;
|
|
554
|
+
_.LIGHTFALLOFF_GLTF = 1;
|
|
555
|
+
_.LIGHTFALLOFF_STANDARD = 2;
|
|
556
|
+
v([
|
|
557
|
+
U()
|
|
558
|
+
], _.prototype, "_imageProcessingConfiguration", void 0);
|
|
559
|
+
v([
|
|
560
|
+
D("_markAllSubMeshesAsMiscDirty")
|
|
561
|
+
], _.prototype, "debugMode", void 0);
|
|
562
|
+
v([
|
|
563
|
+
y()
|
|
564
|
+
], _.prototype, "useLogarithmicDepth", null);
|
|
565
|
+
export {
|
|
566
|
+
_ as PBRBaseMaterial,
|
|
567
|
+
F as PBRMaterialDefines
|
|
568
|
+
};
|