@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
package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsFragmentFunctions.esm.js
ADDED
|
@@ -0,0 +1,614 @@
|
|
|
1
|
+
import { ShaderStore as e } from "../../Engines/shaderStore.esm.js";
|
|
2
|
+
const o = "shadowsFragmentFunctions", a = `#ifdef SHADOWS
|
|
3
|
+
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
4
|
+
#define TEXTUREFUNC(s,c,l) texture2DLodEXT(s,c,l)
|
|
5
|
+
#else
|
|
6
|
+
#define TEXTUREFUNC(s,c,b) texture2D(s,c,b)
|
|
7
|
+
#endif
|
|
8
|
+
#ifndef SHADOWFLOAT
|
|
9
|
+
float unpack(vec4 color)
|
|
10
|
+
{
|
|
11
|
+
const vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);
|
|
12
|
+
return dot(color,bit_shift);
|
|
13
|
+
}
|
|
14
|
+
#endif
|
|
15
|
+
float computeFallOff(float value,vec2 clipSpace,float frustumEdgeFalloff)
|
|
16
|
+
{
|
|
17
|
+
float mask=smoothstep(1.0-frustumEdgeFalloff,1.00000012,clamp(dot(clipSpace,clipSpace),0.,1.));
|
|
18
|
+
return mix(value,1.0,mask);
|
|
19
|
+
}
|
|
20
|
+
#define inline
|
|
21
|
+
float computeShadowCube(vec3 lightPosition,samplerCube shadowSampler,float darkness,vec2 depthValues)
|
|
22
|
+
{
|
|
23
|
+
vec3 directionToLight=vPositionW-lightPosition;
|
|
24
|
+
float depth=length(directionToLight);
|
|
25
|
+
depth=(depth+depthValues.x)/(depthValues.y);
|
|
26
|
+
depth=clamp(depth,0.,1.0);
|
|
27
|
+
directionToLight=normalize(directionToLight);
|
|
28
|
+
directionToLight.y=-directionToLight.y;
|
|
29
|
+
#ifndef SHADOWFLOAT
|
|
30
|
+
float shadow=unpack(textureCube(shadowSampler,directionToLight));
|
|
31
|
+
#else
|
|
32
|
+
float shadow=textureCube(shadowSampler,directionToLight).x;
|
|
33
|
+
#endif
|
|
34
|
+
return depth>shadow ? darkness : 1.0;
|
|
35
|
+
}
|
|
36
|
+
#define inline
|
|
37
|
+
float computeShadowWithPoissonSamplingCube(vec3 lightPosition,samplerCube shadowSampler,float mapSize,float darkness,vec2 depthValues)
|
|
38
|
+
{
|
|
39
|
+
vec3 directionToLight=vPositionW-lightPosition;
|
|
40
|
+
float depth=length(directionToLight);
|
|
41
|
+
depth=(depth+depthValues.x)/(depthValues.y);
|
|
42
|
+
depth=clamp(depth,0.,1.0);
|
|
43
|
+
directionToLight=normalize(directionToLight);
|
|
44
|
+
directionToLight.y=-directionToLight.y;
|
|
45
|
+
float visibility=1.;
|
|
46
|
+
vec3 poissonDisk[4];
|
|
47
|
+
poissonDisk[0]=vec3(-1.0,1.0,-1.0);
|
|
48
|
+
poissonDisk[1]=vec3(1.0,-1.0,-1.0);
|
|
49
|
+
poissonDisk[2]=vec3(-1.0,-1.0,-1.0);
|
|
50
|
+
poissonDisk[3]=vec3(1.0,-1.0,1.0);
|
|
51
|
+
#ifndef SHADOWFLOAT
|
|
52
|
+
if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[0]*mapSize))<depth) visibility-=0.25;
|
|
53
|
+
if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[1]*mapSize))<depth) visibility-=0.25;
|
|
54
|
+
if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[2]*mapSize))<depth) visibility-=0.25;
|
|
55
|
+
if (unpack(textureCube(shadowSampler,directionToLight+poissonDisk[3]*mapSize))<depth) visibility-=0.25;
|
|
56
|
+
#else
|
|
57
|
+
if (textureCube(shadowSampler,directionToLight+poissonDisk[0]*mapSize).x<depth) visibility-=0.25;
|
|
58
|
+
if (textureCube(shadowSampler,directionToLight+poissonDisk[1]*mapSize).x<depth) visibility-=0.25;
|
|
59
|
+
if (textureCube(shadowSampler,directionToLight+poissonDisk[2]*mapSize).x<depth) visibility-=0.25;
|
|
60
|
+
if (textureCube(shadowSampler,directionToLight+poissonDisk[3]*mapSize).x<depth) visibility-=0.25;
|
|
61
|
+
#endif
|
|
62
|
+
return min(1.0,visibility+darkness);
|
|
63
|
+
}
|
|
64
|
+
#define inline
|
|
65
|
+
float computeShadowWithESMCube(vec3 lightPosition,samplerCube shadowSampler,float darkness,float depthScale,vec2 depthValues)
|
|
66
|
+
{
|
|
67
|
+
vec3 directionToLight=vPositionW-lightPosition;
|
|
68
|
+
float depth=length(directionToLight);
|
|
69
|
+
depth=(depth+depthValues.x)/(depthValues.y);
|
|
70
|
+
float shadowPixelDepth=clamp(depth,0.,1.0);
|
|
71
|
+
directionToLight=normalize(directionToLight);
|
|
72
|
+
directionToLight.y=-directionToLight.y;
|
|
73
|
+
#ifndef SHADOWFLOAT
|
|
74
|
+
float shadowMapSample=unpack(textureCube(shadowSampler,directionToLight));
|
|
75
|
+
#else
|
|
76
|
+
float shadowMapSample=textureCube(shadowSampler,directionToLight).x;
|
|
77
|
+
#endif
|
|
78
|
+
float esm=1.0-clamp(exp(min(87.,depthScale*shadowPixelDepth))*shadowMapSample,0.,1.-darkness);
|
|
79
|
+
return esm;
|
|
80
|
+
}
|
|
81
|
+
#define inline
|
|
82
|
+
float computeShadowWithCloseESMCube(vec3 lightPosition,samplerCube shadowSampler,float darkness,float depthScale,vec2 depthValues)
|
|
83
|
+
{
|
|
84
|
+
vec3 directionToLight=vPositionW-lightPosition;
|
|
85
|
+
float depth=length(directionToLight);
|
|
86
|
+
depth=(depth+depthValues.x)/(depthValues.y);
|
|
87
|
+
float shadowPixelDepth=clamp(depth,0.,1.0);
|
|
88
|
+
directionToLight=normalize(directionToLight);
|
|
89
|
+
directionToLight.y=-directionToLight.y;
|
|
90
|
+
#ifndef SHADOWFLOAT
|
|
91
|
+
float shadowMapSample=unpack(textureCube(shadowSampler,directionToLight));
|
|
92
|
+
#else
|
|
93
|
+
float shadowMapSample=textureCube(shadowSampler,directionToLight).x;
|
|
94
|
+
#endif
|
|
95
|
+
float esm=clamp(exp(min(87.,-depthScale*(shadowPixelDepth-shadowMapSample))),darkness,1.);
|
|
96
|
+
return esm;
|
|
97
|
+
}
|
|
98
|
+
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
99
|
+
#define inline
|
|
100
|
+
float computeShadowCSM(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray shadowSampler,float darkness,float frustumEdgeFalloff)
|
|
101
|
+
{
|
|
102
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
103
|
+
vec2 uv=0.5*clipSpace.xy+vec2(0.5);
|
|
104
|
+
vec3 uvLayer=vec3(uv.x,uv.y,layer);
|
|
105
|
+
float shadowPixelDepth=clamp(depthMetric,0.,1.0);
|
|
106
|
+
#ifndef SHADOWFLOAT
|
|
107
|
+
float shadow=unpack(texture2D(shadowSampler,uvLayer));
|
|
108
|
+
#else
|
|
109
|
+
float shadow=texture2D(shadowSampler,uvLayer).x;
|
|
110
|
+
#endif
|
|
111
|
+
return shadowPixelDepth>shadow ? computeFallOff(darkness,clipSpace.xy,frustumEdgeFalloff) : 1.;
|
|
112
|
+
}
|
|
113
|
+
#endif
|
|
114
|
+
#define inline
|
|
115
|
+
float computeShadow(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float frustumEdgeFalloff)
|
|
116
|
+
{
|
|
117
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
118
|
+
vec2 uv=0.5*clipSpace.xy+vec2(0.5);
|
|
119
|
+
if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)
|
|
120
|
+
{
|
|
121
|
+
return 1.0;
|
|
122
|
+
}
|
|
123
|
+
else
|
|
124
|
+
{
|
|
125
|
+
float shadowPixelDepth=clamp(depthMetric,0.,1.0);
|
|
126
|
+
#ifndef SHADOWFLOAT
|
|
127
|
+
float shadow=unpack(TEXTUREFUNC(shadowSampler,uv,0.));
|
|
128
|
+
#else
|
|
129
|
+
float shadow=TEXTUREFUNC(shadowSampler,uv,0.).x;
|
|
130
|
+
#endif
|
|
131
|
+
return shadowPixelDepth>shadow ? computeFallOff(darkness,clipSpace.xy,frustumEdgeFalloff) : 1.;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
#define inline
|
|
135
|
+
float computeShadowWithPoissonSampling(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float mapSize,float darkness,float frustumEdgeFalloff)
|
|
136
|
+
{
|
|
137
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
138
|
+
vec2 uv=0.5*clipSpace.xy+vec2(0.5);
|
|
139
|
+
if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)
|
|
140
|
+
{
|
|
141
|
+
return 1.0;
|
|
142
|
+
}
|
|
143
|
+
else
|
|
144
|
+
{
|
|
145
|
+
float shadowPixelDepth=clamp(depthMetric,0.,1.0);
|
|
146
|
+
float visibility=1.;
|
|
147
|
+
vec2 poissonDisk[4];
|
|
148
|
+
poissonDisk[0]=vec2(-0.94201624,-0.39906216);
|
|
149
|
+
poissonDisk[1]=vec2(0.94558609,-0.76890725);
|
|
150
|
+
poissonDisk[2]=vec2(-0.094184101,-0.92938870);
|
|
151
|
+
poissonDisk[3]=vec2(0.34495938,0.29387760);
|
|
152
|
+
#ifndef SHADOWFLOAT
|
|
153
|
+
if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[0]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;
|
|
154
|
+
if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[1]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;
|
|
155
|
+
if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[2]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;
|
|
156
|
+
if (unpack(TEXTUREFUNC(shadowSampler,uv+poissonDisk[3]*mapSize,0.))<shadowPixelDepth) visibility-=0.25;
|
|
157
|
+
#else
|
|
158
|
+
if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[0]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;
|
|
159
|
+
if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[1]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;
|
|
160
|
+
if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[2]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;
|
|
161
|
+
if (TEXTUREFUNC(shadowSampler,uv+poissonDisk[3]*mapSize,0.).x<shadowPixelDepth) visibility-=0.25;
|
|
162
|
+
#endif
|
|
163
|
+
return computeFallOff(min(1.0,visibility+darkness),clipSpace.xy,frustumEdgeFalloff);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
#define inline
|
|
167
|
+
float computeShadowWithESM(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float depthScale,float frustumEdgeFalloff)
|
|
168
|
+
{
|
|
169
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
170
|
+
vec2 uv=0.5*clipSpace.xy+vec2(0.5);
|
|
171
|
+
if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)
|
|
172
|
+
{
|
|
173
|
+
return 1.0;
|
|
174
|
+
}
|
|
175
|
+
else
|
|
176
|
+
{
|
|
177
|
+
float shadowPixelDepth=clamp(depthMetric,0.,1.0);
|
|
178
|
+
#ifndef SHADOWFLOAT
|
|
179
|
+
float shadowMapSample=unpack(TEXTUREFUNC(shadowSampler,uv,0.));
|
|
180
|
+
#else
|
|
181
|
+
float shadowMapSample=TEXTUREFUNC(shadowSampler,uv,0.).x;
|
|
182
|
+
#endif
|
|
183
|
+
float esm=1.0-clamp(exp(min(87.,depthScale*shadowPixelDepth))*shadowMapSample,0.,1.-darkness);
|
|
184
|
+
return computeFallOff(esm,clipSpace.xy,frustumEdgeFalloff);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
#define inline
|
|
188
|
+
float computeShadowWithCloseESM(vec4 vPositionFromLight,float depthMetric,sampler2D shadowSampler,float darkness,float depthScale,float frustumEdgeFalloff)
|
|
189
|
+
{
|
|
190
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
191
|
+
vec2 uv=0.5*clipSpace.xy+vec2(0.5);
|
|
192
|
+
if (uv.x<0. || uv.x>1.0 || uv.y<0. || uv.y>1.0)
|
|
193
|
+
{
|
|
194
|
+
return 1.0;
|
|
195
|
+
}
|
|
196
|
+
else
|
|
197
|
+
{
|
|
198
|
+
float shadowPixelDepth=clamp(depthMetric,0.,1.0);
|
|
199
|
+
#ifndef SHADOWFLOAT
|
|
200
|
+
float shadowMapSample=unpack(TEXTUREFUNC(shadowSampler,uv,0.));
|
|
201
|
+
#else
|
|
202
|
+
float shadowMapSample=TEXTUREFUNC(shadowSampler,uv,0.).x;
|
|
203
|
+
#endif
|
|
204
|
+
float esm=clamp(exp(min(87.,-depthScale*(shadowPixelDepth-shadowMapSample))),darkness,1.);
|
|
205
|
+
return computeFallOff(esm,clipSpace.xy,frustumEdgeFalloff);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
#ifdef IS_NDC_HALF_ZRANGE
|
|
209
|
+
#define ZINCLIP clipSpace.z
|
|
210
|
+
#else
|
|
211
|
+
#define ZINCLIP uvDepth.z
|
|
212
|
+
#endif
|
|
213
|
+
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
214
|
+
#define GREATEST_LESS_THAN_ONE 0.99999994
|
|
215
|
+
#define inline
|
|
216
|
+
float computeShadowWithCSMPCF1(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,float darkness,float frustumEdgeFalloff)
|
|
217
|
+
{
|
|
218
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
219
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
220
|
+
uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);
|
|
221
|
+
vec4 uvDepthLayer=vec4(uvDepth.x,uvDepth.y,layer,uvDepth.z);
|
|
222
|
+
float shadow=texture2D(shadowSampler,uvDepthLayer);
|
|
223
|
+
shadow=mix(darkness,1.,shadow);
|
|
224
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
225
|
+
}
|
|
226
|
+
#define inline
|
|
227
|
+
float computeShadowWithCSMPCF3(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)
|
|
228
|
+
{
|
|
229
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
230
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
231
|
+
uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);
|
|
232
|
+
vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x;
|
|
233
|
+
uv+=0.5;
|
|
234
|
+
vec2 st=fract(uv);
|
|
235
|
+
vec2 base_uv=floor(uv)-0.5;
|
|
236
|
+
base_uv*=shadowMapSizeAndInverse.y;
|
|
237
|
+
vec2 uvw0=3.-2.*st;
|
|
238
|
+
vec2 uvw1=1.+2.*st;
|
|
239
|
+
vec2 u=vec2((2.-st.x)/uvw0.x-1.,st.x/uvw1.x+1.)*shadowMapSizeAndInverse.y;
|
|
240
|
+
vec2 v=vec2((2.-st.y)/uvw0.y-1.,st.y/uvw1.y+1.)*shadowMapSizeAndInverse.y;
|
|
241
|
+
float shadow=0.;
|
|
242
|
+
shadow+=uvw0.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[0]),layer,uvDepth.z));
|
|
243
|
+
shadow+=uvw1.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[0]),layer,uvDepth.z));
|
|
244
|
+
shadow+=uvw0.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[1]),layer,uvDepth.z));
|
|
245
|
+
shadow+=uvw1.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[1]),layer,uvDepth.z));
|
|
246
|
+
shadow=shadow/16.;
|
|
247
|
+
shadow=mix(darkness,1.,shadow);
|
|
248
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
249
|
+
}
|
|
250
|
+
#define inline
|
|
251
|
+
float computeShadowWithCSMPCF5(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArrayShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)
|
|
252
|
+
{
|
|
253
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
254
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
255
|
+
uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);
|
|
256
|
+
vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x;
|
|
257
|
+
uv+=0.5;
|
|
258
|
+
vec2 st=fract(uv);
|
|
259
|
+
vec2 base_uv=floor(uv)-0.5;
|
|
260
|
+
base_uv*=shadowMapSizeAndInverse.y;
|
|
261
|
+
vec2 uvw0=4.-3.*st;
|
|
262
|
+
vec2 uvw1=vec2(7.);
|
|
263
|
+
vec2 uvw2=1.+3.*st;
|
|
264
|
+
vec3 u=vec3((3.-2.*st.x)/uvw0.x-2.,(3.+st.x)/uvw1.x,st.x/uvw2.x+2.)*shadowMapSizeAndInverse.y;
|
|
265
|
+
vec3 v=vec3((3.-2.*st.y)/uvw0.y-2.,(3.+st.y)/uvw1.y,st.y/uvw2.y+2.)*shadowMapSizeAndInverse.y;
|
|
266
|
+
float shadow=0.;
|
|
267
|
+
shadow+=uvw0.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[0]),layer,uvDepth.z));
|
|
268
|
+
shadow+=uvw1.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[0]),layer,uvDepth.z));
|
|
269
|
+
shadow+=uvw2.x*uvw0.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[0]),layer,uvDepth.z));
|
|
270
|
+
shadow+=uvw0.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[1]),layer,uvDepth.z));
|
|
271
|
+
shadow+=uvw1.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[1]),layer,uvDepth.z));
|
|
272
|
+
shadow+=uvw2.x*uvw1.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[1]),layer,uvDepth.z));
|
|
273
|
+
shadow+=uvw0.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[0],v[2]),layer,uvDepth.z));
|
|
274
|
+
shadow+=uvw1.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[1],v[2]),layer,uvDepth.z));
|
|
275
|
+
shadow+=uvw2.x*uvw2.y*texture2D(shadowSampler,vec4(base_uv.xy+vec2(u[2],v[2]),layer,uvDepth.z));
|
|
276
|
+
shadow=shadow/144.;
|
|
277
|
+
shadow=mix(darkness,1.,shadow);
|
|
278
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
279
|
+
}
|
|
280
|
+
#define inline
|
|
281
|
+
float computeShadowWithPCF1(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,float darkness,float frustumEdgeFalloff)
|
|
282
|
+
{
|
|
283
|
+
if (depthMetric>1.0 || depthMetric<0.0) {
|
|
284
|
+
return 1.0;
|
|
285
|
+
}
|
|
286
|
+
else
|
|
287
|
+
{
|
|
288
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
289
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
290
|
+
uvDepth.z=ZINCLIP;
|
|
291
|
+
float shadow=TEXTUREFUNC(shadowSampler,uvDepth,0.);
|
|
292
|
+
shadow=mix(darkness,1.,shadow);
|
|
293
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
#define inline
|
|
297
|
+
float computeShadowWithPCF3(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)
|
|
298
|
+
{
|
|
299
|
+
if (depthMetric>1.0 || depthMetric<0.0) {
|
|
300
|
+
return 1.0;
|
|
301
|
+
}
|
|
302
|
+
else
|
|
303
|
+
{
|
|
304
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
305
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
306
|
+
uvDepth.z=ZINCLIP;
|
|
307
|
+
vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x;
|
|
308
|
+
uv+=0.5;
|
|
309
|
+
vec2 st=fract(uv);
|
|
310
|
+
vec2 base_uv=floor(uv)-0.5;
|
|
311
|
+
base_uv*=shadowMapSizeAndInverse.y;
|
|
312
|
+
vec2 uvw0=3.-2.*st;
|
|
313
|
+
vec2 uvw1=1.+2.*st;
|
|
314
|
+
vec2 u=vec2((2.-st.x)/uvw0.x-1.,st.x/uvw1.x+1.)*shadowMapSizeAndInverse.y;
|
|
315
|
+
vec2 v=vec2((2.-st.y)/uvw0.y-1.,st.y/uvw1.y+1.)*shadowMapSizeAndInverse.y;
|
|
316
|
+
float shadow=0.;
|
|
317
|
+
shadow+=uvw0.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[0]),uvDepth.z),0.);
|
|
318
|
+
shadow+=uvw1.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[0]),uvDepth.z),0.);
|
|
319
|
+
shadow+=uvw0.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[1]),uvDepth.z),0.);
|
|
320
|
+
shadow+=uvw1.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[1]),uvDepth.z),0.);
|
|
321
|
+
shadow=shadow/16.;
|
|
322
|
+
shadow=mix(darkness,1.,shadow);
|
|
323
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
#define inline
|
|
327
|
+
float computeShadowWithPCF5(vec4 vPositionFromLight,float depthMetric,highp sampler2DShadow shadowSampler,vec2 shadowMapSizeAndInverse,float darkness,float frustumEdgeFalloff)
|
|
328
|
+
{
|
|
329
|
+
if (depthMetric>1.0 || depthMetric<0.0) {
|
|
330
|
+
return 1.0;
|
|
331
|
+
}
|
|
332
|
+
else
|
|
333
|
+
{
|
|
334
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
335
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
336
|
+
uvDepth.z=ZINCLIP;
|
|
337
|
+
vec2 uv=uvDepth.xy*shadowMapSizeAndInverse.x;
|
|
338
|
+
uv+=0.5;
|
|
339
|
+
vec2 st=fract(uv);
|
|
340
|
+
vec2 base_uv=floor(uv)-0.5;
|
|
341
|
+
base_uv*=shadowMapSizeAndInverse.y;
|
|
342
|
+
vec2 uvw0=4.-3.*st;
|
|
343
|
+
vec2 uvw1=vec2(7.);
|
|
344
|
+
vec2 uvw2=1.+3.*st;
|
|
345
|
+
vec3 u=vec3((3.-2.*st.x)/uvw0.x-2.,(3.+st.x)/uvw1.x,st.x/uvw2.x+2.)*shadowMapSizeAndInverse.y;
|
|
346
|
+
vec3 v=vec3((3.-2.*st.y)/uvw0.y-2.,(3.+st.y)/uvw1.y,st.y/uvw2.y+2.)*shadowMapSizeAndInverse.y;
|
|
347
|
+
float shadow=0.;
|
|
348
|
+
shadow+=uvw0.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[0]),uvDepth.z),0.);
|
|
349
|
+
shadow+=uvw1.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[0]),uvDepth.z),0.);
|
|
350
|
+
shadow+=uvw2.x*uvw0.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[0]),uvDepth.z),0.);
|
|
351
|
+
shadow+=uvw0.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[1]),uvDepth.z),0.);
|
|
352
|
+
shadow+=uvw1.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[1]),uvDepth.z),0.);
|
|
353
|
+
shadow+=uvw2.x*uvw1.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[1]),uvDepth.z),0.);
|
|
354
|
+
shadow+=uvw0.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[0],v[2]),uvDepth.z),0.);
|
|
355
|
+
shadow+=uvw1.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[1],v[2]),uvDepth.z),0.);
|
|
356
|
+
shadow+=uvw2.x*uvw2.y*TEXTUREFUNC(shadowSampler,vec3(base_uv.xy+vec2(u[2],v[2]),uvDepth.z),0.);
|
|
357
|
+
shadow=shadow/144.;
|
|
358
|
+
shadow=mix(darkness,1.,shadow);
|
|
359
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
const vec3 PoissonSamplers32[64]=vec3[64](
|
|
363
|
+
vec3(0.06407013,0.05409927,0.),
|
|
364
|
+
vec3(0.7366577,0.5789394,0.),
|
|
365
|
+
vec3(-0.6270542,-0.5320278,0.),
|
|
366
|
+
vec3(-0.4096107,0.8411095,0.),
|
|
367
|
+
vec3(0.6849564,-0.4990818,0.),
|
|
368
|
+
vec3(-0.874181,-0.04579735,0.),
|
|
369
|
+
vec3(0.9989998,0.0009880066,0.),
|
|
370
|
+
vec3(-0.004920578,-0.9151649,0.),
|
|
371
|
+
vec3(0.1805763,0.9747483,0.),
|
|
372
|
+
vec3(-0.2138451,0.2635818,0.),
|
|
373
|
+
vec3(0.109845,0.3884785,0.),
|
|
374
|
+
vec3(0.06876755,-0.3581074,0.),
|
|
375
|
+
vec3(0.374073,-0.7661266,0.),
|
|
376
|
+
vec3(0.3079132,-0.1216763,0.),
|
|
377
|
+
vec3(-0.3794335,-0.8271583,0.),
|
|
378
|
+
vec3(-0.203878,-0.07715034,0.),
|
|
379
|
+
vec3(0.5912697,0.1469799,0.),
|
|
380
|
+
vec3(-0.88069,0.3031784,0.),
|
|
381
|
+
vec3(0.5040108,0.8283722,0.),
|
|
382
|
+
vec3(-0.5844124,0.5494877,0.),
|
|
383
|
+
vec3(0.6017799,-0.1726654,0.),
|
|
384
|
+
vec3(-0.5554981,0.1559997,0.),
|
|
385
|
+
vec3(-0.3016369,-0.3900928,0.),
|
|
386
|
+
vec3(-0.5550632,-0.1723762,0.),
|
|
387
|
+
vec3(0.925029,0.2995041,0.),
|
|
388
|
+
vec3(-0.2473137,0.5538505,0.),
|
|
389
|
+
vec3(0.9183037,-0.2862392,0.),
|
|
390
|
+
vec3(0.2469421,0.6718712,0.),
|
|
391
|
+
vec3(0.3916397,-0.4328209,0.),
|
|
392
|
+
vec3(-0.03576927,-0.6220032,0.),
|
|
393
|
+
vec3(-0.04661255,0.7995201,0.),
|
|
394
|
+
vec3(0.4402924,0.3640312,0.),
|
|
395
|
+
vec3(0.,0.,0.),
|
|
396
|
+
vec3(0.,0.,0.),
|
|
397
|
+
vec3(0.,0.,0.),
|
|
398
|
+
vec3(0.,0.,0.),
|
|
399
|
+
vec3(0.,0.,0.),
|
|
400
|
+
vec3(0.,0.,0.),
|
|
401
|
+
vec3(0.,0.,0.),
|
|
402
|
+
vec3(0.,0.,0.),
|
|
403
|
+
vec3(0.,0.,0.),
|
|
404
|
+
vec3(0.,0.,0.),
|
|
405
|
+
vec3(0.,0.,0.),
|
|
406
|
+
vec3(0.,0.,0.),
|
|
407
|
+
vec3(0.,0.,0.),
|
|
408
|
+
vec3(0.,0.,0.),
|
|
409
|
+
vec3(0.,0.,0.),
|
|
410
|
+
vec3(0.,0.,0.),
|
|
411
|
+
vec3(0.,0.,0.),
|
|
412
|
+
vec3(0.,0.,0.),
|
|
413
|
+
vec3(0.,0.,0.),
|
|
414
|
+
vec3(0.,0.,0.),
|
|
415
|
+
vec3(0.,0.,0.),
|
|
416
|
+
vec3(0.,0.,0.),
|
|
417
|
+
vec3(0.,0.,0.),
|
|
418
|
+
vec3(0.,0.,0.),
|
|
419
|
+
vec3(0.,0.,0.),
|
|
420
|
+
vec3(0.,0.,0.),
|
|
421
|
+
vec3(0.,0.,0.),
|
|
422
|
+
vec3(0.,0.,0.),
|
|
423
|
+
vec3(0.,0.,0.),
|
|
424
|
+
vec3(0.,0.,0.),
|
|
425
|
+
vec3(0.,0.,0.),
|
|
426
|
+
vec3(0.,0.,0.)
|
|
427
|
+
);
|
|
428
|
+
const vec3 PoissonSamplers64[64]=vec3[64](
|
|
429
|
+
vec3(-0.613392,0.617481,0.),
|
|
430
|
+
vec3(0.170019,-0.040254,0.),
|
|
431
|
+
vec3(-0.299417,0.791925,0.),
|
|
432
|
+
vec3(0.645680,0.493210,0.),
|
|
433
|
+
vec3(-0.651784,0.717887,0.),
|
|
434
|
+
vec3(0.421003,0.027070,0.),
|
|
435
|
+
vec3(-0.817194,-0.271096,0.),
|
|
436
|
+
vec3(-0.705374,-0.668203,0.),
|
|
437
|
+
vec3(0.977050,-0.108615,0.),
|
|
438
|
+
vec3(0.063326,0.142369,0.),
|
|
439
|
+
vec3(0.203528,0.214331,0.),
|
|
440
|
+
vec3(-0.667531,0.326090,0.),
|
|
441
|
+
vec3(-0.098422,-0.295755,0.),
|
|
442
|
+
vec3(-0.885922,0.215369,0.),
|
|
443
|
+
vec3(0.566637,0.605213,0.),
|
|
444
|
+
vec3(0.039766,-0.396100,0.),
|
|
445
|
+
vec3(0.751946,0.453352,0.),
|
|
446
|
+
vec3(0.078707,-0.715323,0.),
|
|
447
|
+
vec3(-0.075838,-0.529344,0.),
|
|
448
|
+
vec3(0.724479,-0.580798,0.),
|
|
449
|
+
vec3(0.222999,-0.215125,0.),
|
|
450
|
+
vec3(-0.467574,-0.405438,0.),
|
|
451
|
+
vec3(-0.248268,-0.814753,0.),
|
|
452
|
+
vec3(0.354411,-0.887570,0.),
|
|
453
|
+
vec3(0.175817,0.382366,0.),
|
|
454
|
+
vec3(0.487472,-0.063082,0.),
|
|
455
|
+
vec3(-0.084078,0.898312,0.),
|
|
456
|
+
vec3(0.488876,-0.783441,0.),
|
|
457
|
+
vec3(0.470016,0.217933,0.),
|
|
458
|
+
vec3(-0.696890,-0.549791,0.),
|
|
459
|
+
vec3(-0.149693,0.605762,0.),
|
|
460
|
+
vec3(0.034211,0.979980,0.),
|
|
461
|
+
vec3(0.503098,-0.308878,0.),
|
|
462
|
+
vec3(-0.016205,-0.872921,0.),
|
|
463
|
+
vec3(0.385784,-0.393902,0.),
|
|
464
|
+
vec3(-0.146886,-0.859249,0.),
|
|
465
|
+
vec3(0.643361,0.164098,0.),
|
|
466
|
+
vec3(0.634388,-0.049471,0.),
|
|
467
|
+
vec3(-0.688894,0.007843,0.),
|
|
468
|
+
vec3(0.464034,-0.188818,0.),
|
|
469
|
+
vec3(-0.440840,0.137486,0.),
|
|
470
|
+
vec3(0.364483,0.511704,0.),
|
|
471
|
+
vec3(0.034028,0.325968,0.),
|
|
472
|
+
vec3(0.099094,-0.308023,0.),
|
|
473
|
+
vec3(0.693960,-0.366253,0.),
|
|
474
|
+
vec3(0.678884,-0.204688,0.),
|
|
475
|
+
vec3(0.001801,0.780328,0.),
|
|
476
|
+
vec3(0.145177,-0.898984,0.),
|
|
477
|
+
vec3(0.062655,-0.611866,0.),
|
|
478
|
+
vec3(0.315226,-0.604297,0.),
|
|
479
|
+
vec3(-0.780145,0.486251,0.),
|
|
480
|
+
vec3(-0.371868,0.882138,0.),
|
|
481
|
+
vec3(0.200476,0.494430,0.),
|
|
482
|
+
vec3(-0.494552,-0.711051,0.),
|
|
483
|
+
vec3(0.612476,0.705252,0.),
|
|
484
|
+
vec3(-0.578845,-0.768792,0.),
|
|
485
|
+
vec3(-0.772454,-0.090976,0.),
|
|
486
|
+
vec3(0.504440,0.372295,0.),
|
|
487
|
+
vec3(0.155736,0.065157,0.),
|
|
488
|
+
vec3(0.391522,0.849605,0.),
|
|
489
|
+
vec3(-0.620106,-0.328104,0.),
|
|
490
|
+
vec3(0.789239,-0.419965,0.),
|
|
491
|
+
vec3(-0.545396,0.538133,0.),
|
|
492
|
+
vec3(-0.178564,-0.596057,0.)
|
|
493
|
+
);
|
|
494
|
+
#define inline
|
|
495
|
+
float computeShadowWithCSMPCSS(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,int searchTapCount,int pcfTapCount,vec3[64] poissonSamplers,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)
|
|
496
|
+
{
|
|
497
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
498
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
499
|
+
uvDepth.z=clamp(ZINCLIP,0.,GREATEST_LESS_THAN_ONE);
|
|
500
|
+
vec4 uvDepthLayer=vec4(uvDepth.x,uvDepth.y,layer,uvDepth.z);
|
|
501
|
+
float blockerDepth=0.0;
|
|
502
|
+
float sumBlockerDepth=0.0;
|
|
503
|
+
float numBlocker=0.0;
|
|
504
|
+
for (int i=0; i<searchTapCount; i ++) {
|
|
505
|
+
blockerDepth=texture2D(depthSampler,vec3(uvDepth.xy+(lightSizeUV*lightSizeUVCorrection*shadowMapSizeInverse*PoissonSamplers32[i].xy),layer)).r;
|
|
506
|
+
if (blockerDepth<depthMetric) {
|
|
507
|
+
sumBlockerDepth+=blockerDepth;
|
|
508
|
+
numBlocker++;
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
float avgBlockerDepth=sumBlockerDepth/numBlocker;
|
|
512
|
+
float AAOffset=shadowMapSizeInverse*10.;
|
|
513
|
+
float penumbraRatio=((depthMetric-avgBlockerDepth)*depthCorrection+AAOffset);
|
|
514
|
+
vec4 filterRadius=vec4(penumbraRatio*lightSizeUV*lightSizeUVCorrection*shadowMapSizeInverse,0.,0.);
|
|
515
|
+
float random=getRand(vPositionFromLight.xy);
|
|
516
|
+
float rotationAngle=random*3.1415926;
|
|
517
|
+
vec2 rotationVector=vec2(cos(rotationAngle),sin(rotationAngle));
|
|
518
|
+
float shadow=0.;
|
|
519
|
+
for (int i=0; i<pcfTapCount; i++) {
|
|
520
|
+
vec4 offset=vec4(poissonSamplers[i],0.);
|
|
521
|
+
offset=vec4(offset.x*rotationVector.x-offset.y*rotationVector.y,offset.y*rotationVector.x+offset.x*rotationVector.y,0.,0.);
|
|
522
|
+
shadow+=texture2D(shadowSampler,uvDepthLayer+offset*filterRadius);
|
|
523
|
+
}
|
|
524
|
+
shadow/=float(pcfTapCount);
|
|
525
|
+
shadow=mix(shadow,1.,min((depthMetric-avgBlockerDepth)*depthCorrection*penumbraDarkness,1.));
|
|
526
|
+
shadow=mix(darkness,1.,shadow);
|
|
527
|
+
if (numBlocker<1.0) {
|
|
528
|
+
return 1.0;
|
|
529
|
+
}
|
|
530
|
+
else
|
|
531
|
+
{
|
|
532
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
#define inline
|
|
536
|
+
float computeShadowWithPCSS(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,int searchTapCount,int pcfTapCount,vec3[64] poissonSamplers)
|
|
537
|
+
{
|
|
538
|
+
if (depthMetric>1.0 || depthMetric<0.0) {
|
|
539
|
+
return 1.0;
|
|
540
|
+
}
|
|
541
|
+
else
|
|
542
|
+
{
|
|
543
|
+
vec3 clipSpace=vPositionFromLight.xyz/vPositionFromLight.w;
|
|
544
|
+
vec3 uvDepth=vec3(0.5*clipSpace.xyz+vec3(0.5));
|
|
545
|
+
uvDepth.z=ZINCLIP;
|
|
546
|
+
float blockerDepth=0.0;
|
|
547
|
+
float sumBlockerDepth=0.0;
|
|
548
|
+
float numBlocker=0.0;
|
|
549
|
+
for (int i=0; i<searchTapCount; i ++) {
|
|
550
|
+
blockerDepth=TEXTUREFUNC(depthSampler,uvDepth.xy+(lightSizeUV*shadowMapSizeInverse*PoissonSamplers32[i].xy),0.).r;
|
|
551
|
+
if (blockerDepth<depthMetric) {
|
|
552
|
+
sumBlockerDepth+=blockerDepth;
|
|
553
|
+
numBlocker++;
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
if (numBlocker<1.0) {
|
|
557
|
+
return 1.0;
|
|
558
|
+
}
|
|
559
|
+
else
|
|
560
|
+
{
|
|
561
|
+
float avgBlockerDepth=sumBlockerDepth/numBlocker;
|
|
562
|
+
float AAOffset=shadowMapSizeInverse*10.;
|
|
563
|
+
float penumbraRatio=((depthMetric-avgBlockerDepth)+AAOffset);
|
|
564
|
+
float filterRadius=penumbraRatio*lightSizeUV*shadowMapSizeInverse;
|
|
565
|
+
float random=getRand(vPositionFromLight.xy);
|
|
566
|
+
float rotationAngle=random*3.1415926;
|
|
567
|
+
vec2 rotationVector=vec2(cos(rotationAngle),sin(rotationAngle));
|
|
568
|
+
float shadow=0.;
|
|
569
|
+
for (int i=0; i<pcfTapCount; i++) {
|
|
570
|
+
vec3 offset=poissonSamplers[i];
|
|
571
|
+
offset=vec3(offset.x*rotationVector.x-offset.y*rotationVector.y,offset.y*rotationVector.x+offset.x*rotationVector.y,0.);
|
|
572
|
+
shadow+=TEXTUREFUNC(shadowSampler,uvDepth+offset*filterRadius,0.);
|
|
573
|
+
}
|
|
574
|
+
shadow/=float(pcfTapCount);
|
|
575
|
+
shadow=mix(shadow,1.,depthMetric-avgBlockerDepth);
|
|
576
|
+
shadow=mix(darkness,1.,shadow);
|
|
577
|
+
return computeFallOff(shadow,clipSpace.xy,frustumEdgeFalloff);
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
#define inline
|
|
582
|
+
float computeShadowWithPCSS16(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)
|
|
583
|
+
{
|
|
584
|
+
return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,16,PoissonSamplers32);
|
|
585
|
+
}
|
|
586
|
+
#define inline
|
|
587
|
+
float computeShadowWithPCSS32(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)
|
|
588
|
+
{
|
|
589
|
+
return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,32,PoissonSamplers32);
|
|
590
|
+
}
|
|
591
|
+
#define inline
|
|
592
|
+
float computeShadowWithPCSS64(vec4 vPositionFromLight,float depthMetric,sampler2D depthSampler,highp sampler2DShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff)
|
|
593
|
+
{
|
|
594
|
+
return computeShadowWithPCSS(vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64);
|
|
595
|
+
}
|
|
596
|
+
#define inline
|
|
597
|
+
float computeShadowWithCSMPCSS16(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)
|
|
598
|
+
{
|
|
599
|
+
return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,16,PoissonSamplers32,lightSizeUVCorrection,depthCorrection,penumbraDarkness);
|
|
600
|
+
}
|
|
601
|
+
#define inline
|
|
602
|
+
float computeShadowWithCSMPCSS32(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)
|
|
603
|
+
{
|
|
604
|
+
return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,16,32,PoissonSamplers32,lightSizeUVCorrection,depthCorrection,penumbraDarkness);
|
|
605
|
+
}
|
|
606
|
+
#define inline
|
|
607
|
+
float computeShadowWithCSMPCSS64(float layer,vec4 vPositionFromLight,float depthMetric,highp sampler2DArray depthSampler,highp sampler2DArrayShadow shadowSampler,float shadowMapSizeInverse,float lightSizeUV,float darkness,float frustumEdgeFalloff,vec2 lightSizeUVCorrection,float depthCorrection,float penumbraDarkness)
|
|
608
|
+
{
|
|
609
|
+
return computeShadowWithCSMPCSS(layer,vPositionFromLight,depthMetric,depthSampler,shadowSampler,shadowMapSizeInverse,lightSizeUV,darkness,frustumEdgeFalloff,32,64,PoissonSamplers64,lightSizeUVCorrection,depthCorrection,penumbraDarkness);
|
|
610
|
+
}
|
|
611
|
+
#endif
|
|
612
|
+
#endif
|
|
613
|
+
`;
|
|
614
|
+
e.IncludesShadersStore[o] = a;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ShaderStore as i } from "../../Engines/shaderStore.esm.js";
|
|
2
|
+
const e = "shadowsVertex", t = `#ifdef SHADOWS
|
|
3
|
+
#if defined(SHADOWCSM{X})
|
|
4
|
+
vPositionFromCamera{X}=view*worldPos;
|
|
5
|
+
for (int i=0; i<SHADOWCSMNUM_CASCADES{X}; i++) {
|
|
6
|
+
vPositionFromLight{X}[i]=lightMatrix{X}[i]*worldPos;
|
|
7
|
+
#ifdef USE_REVERSE_DEPTHBUFFER
|
|
8
|
+
vDepthMetric{X}[i]=(-vPositionFromLight{X}[i].z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
9
|
+
#else
|
|
10
|
+
vDepthMetric{X}[i]=(vPositionFromLight{X}[i].z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
11
|
+
#endif
|
|
12
|
+
}
|
|
13
|
+
#elif defined(SHADOW{X}) && !defined(SHADOWCUBE{X})
|
|
14
|
+
vPositionFromLight{X}=lightMatrix{X}*worldPos;
|
|
15
|
+
#ifdef USE_REVERSE_DEPTHBUFFER
|
|
16
|
+
vDepthMetric{X}=(-vPositionFromLight{X}.z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
17
|
+
#else
|
|
18
|
+
vDepthMetric{X}=(vPositionFromLight{X}.z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
19
|
+
#endif
|
|
20
|
+
#endif
|
|
21
|
+
#endif
|
|
22
|
+
`;
|
|
23
|
+
i.IncludesShadersStore[e] = t;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ShaderStore as e } from "../../Engines/shaderStore.esm.js";
|
|
2
|
+
const d = "uvVariableDeclaration", i = `#if !defined(UV{X}) && defined(MAINUV{X})
|
|
3
|
+
vec2 uv{X}=vec2(0.,0.);
|
|
4
|
+
#endif
|
|
5
|
+
#ifdef MAINUV{X}
|
|
6
|
+
vMainUV{X}=uv{X};
|
|
7
|
+
#endif
|
|
8
|
+
`;
|
|
9
|
+
e.IncludesShadersStore[d] = i;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ShaderStore as e } from "../../Engines/shaderStore.esm.js";
|
|
2
|
+
const o = "vertexColorMixing", r = `#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
|
|
3
|
+
vColor=vec4(1.0);
|
|
4
|
+
#ifdef VERTEXCOLOR
|
|
5
|
+
#ifdef VERTEXALPHA
|
|
6
|
+
vColor*=color;
|
|
7
|
+
#else
|
|
8
|
+
vColor.rgb*=color.rgb;
|
|
9
|
+
#endif
|
|
10
|
+
#endif
|
|
11
|
+
#ifdef INSTANCESCOLOR
|
|
12
|
+
vColor*=instanceColor;
|
|
13
|
+
#endif
|
|
14
|
+
#endif
|
|
15
|
+
`;
|
|
16
|
+
e.IncludesShadersStore[o] = r;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ShaderStore as r } from "../Engines/shaderStore.esm.js";
|
|
2
|
+
const e = "bloomMergePixelShader", o = `uniform sampler2D textureSampler;
|
|
3
|
+
uniform sampler2D bloomBlur;
|
|
4
|
+
varying vec2 vUV;
|
|
5
|
+
uniform float bloomWeight;
|
|
6
|
+
#define CUSTOM_FRAGMENT_DEFINITIONS
|
|
7
|
+
void main(void)
|
|
8
|
+
{
|
|
9
|
+
gl_FragColor=texture2D(textureSampler,vUV);
|
|
10
|
+
vec3 blurred=texture2D(bloomBlur,vUV).rgb;
|
|
11
|
+
gl_FragColor.rgb=gl_FragColor.rgb+(blurred.rgb*bloomWeight);
|
|
12
|
+
}
|
|
13
|
+
`;
|
|
14
|
+
r.ShadersStore[e] = o;
|