@spiffcommerce/preview 3.6.2-rc.5 → 3.6.2-rc.7
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/_tslib.esm.js +33 -0
- package/dist/animation.esm.js +1364 -0
- package/dist/assetCache.esm.js +6 -0
- package/dist/blurPostProcess.esm.js +327 -0
- package/dist/bumpVertex.esm.js +497 -0
- package/dist/compatibilityOptions.esm.js +68 -0
- package/dist/configuration.esm.js +121 -0
- package/dist/core.esm.js +8135 -0
- package/dist/dynamicTexture.esm.js +105 -0
- package/dist/easing.esm.js +130 -0
- package/dist/effectFallbacks.esm.js +378 -0
- package/dist/engine.esm.js +25504 -0
- package/dist/glbLoaderExtensions.esm.js +690 -0
- package/dist/glowLayer.esm.js +1621 -0
- package/dist/glowLayerManager.esm.js +50 -0
- package/dist/guid.esm.js +21 -0
- package/dist/hdrFilteringFunctions.esm.js +816 -0
- package/dist/helperFunctions.esm.js +5145 -0
- package/dist/index.esm.js +38 -11
- package/dist/material.esm.js +115 -0
- package/dist/math.axis.esm.js +35 -0
- package/dist/math.color.esm.js +1661 -0
- package/dist/math.path.esm.js +15 -0
- package/dist/math.size.esm.js +137 -0
- package/dist/mesh.esm.js +11170 -0
- package/dist/modelContainer.esm.js +1895 -0
- package/dist/node.esm.js +795 -0
- package/dist/pbrBRDFFunctions.esm.js +122 -2
- package/dist/pbrMaterial.esm.js +8747 -0
- package/dist/productAnimations.esm.js +182 -0
- package/dist/productCamera.esm.js +14 -0
- package/dist/renderConstants.esm.js +116 -0
- package/dist/renderingPipeline.esm.js +18 -0
- package/dist/sceneLoaderFlags.esm.js +51 -0
- package/dist/types.esm.js +30 -0
- package/dist/variants.esm.js +16 -0
- package/dist/webRequest.esm.js +7777 -0
- package/package.json +6 -5
- package/dist/index.umd.js +0 -10010
- package/dist/lib/assetCache.esm.js +0 -21
- package/dist/lib/configuration.esm.js +0 -98
- package/dist/lib/core.esm.js +0 -417
- package/dist/lib/dynamicTexture.esm.js +0 -51
- package/dist/lib/glbLoaderExtensions.esm.js +0 -137
- package/dist/lib/glowLayerManager.esm.js +0 -19
- package/dist/lib/guid.esm.js +0 -7
- package/dist/lib/material.esm.js +0 -50
- package/dist/lib/modelContainer.esm.js +0 -351
- package/dist/lib/productAnimations.esm.js +0 -123
- package/dist/lib/productCamera.esm.js +0 -113
- package/dist/lib/renderConstants.esm.js +0 -103
- package/dist/lib/renderingPipeline.esm.js +0 -99
- package/dist/lib/types.esm.js +0 -5
- package/dist/lib/variants.esm.js +0 -112
- package/dist/node_modules/@babylonjs/core/Actions/abstractActionManager.esm.js +0 -41
- package/dist/node_modules/@babylonjs/core/Actions/action.esm.js +0 -122
- package/dist/node_modules/@babylonjs/core/Actions/actionEvent.esm.js +0 -59
- package/dist/node_modules/@babylonjs/core/Actions/actionManager.esm.js +0 -335
- package/dist/node_modules/@babylonjs/core/Actions/condition.esm.js +0 -193
- package/dist/node_modules/@babylonjs/core/Actions/directActions.esm.js +0 -354
- package/dist/node_modules/@babylonjs/core/Animations/animatable.esm.js +0 -478
- package/dist/node_modules/@babylonjs/core/Animations/animation.esm.js +0 -866
- package/dist/node_modules/@babylonjs/core/Animations/animationEvent.esm.js +0 -18
- package/dist/node_modules/@babylonjs/core/Animations/animationGroup.esm.js +0 -470
- package/dist/node_modules/@babylonjs/core/Animations/animationKey.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Animations/animationRange.esm.js +0 -21
- package/dist/node_modules/@babylonjs/core/Animations/easing.esm.js +0 -93
- package/dist/node_modules/@babylonjs/core/Animations/runtimeAnimation.esm.js +0 -281
- package/dist/node_modules/@babylonjs/core/Audio/sound.esm.js +0 -568
- package/dist/node_modules/@babylonjs/core/Audio/weightedsound.esm.js +0 -117
- package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/autoRotationBehavior.esm.js +0 -145
- package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/bouncingBehavior.esm.js +0 -93
- package/dist/node_modules/@babylonjs/core/Behaviors/Cameras/framingBehavior.esm.js +0 -295
- package/dist/node_modules/@babylonjs/core/Bones/bone.esm.js +0 -701
- package/dist/node_modules/@babylonjs/core/Bones/skeleton.esm.js +0 -478
- package/dist/node_modules/@babylonjs/core/Buffers/buffer.esm.js +0 -433
- package/dist/node_modules/@babylonjs/core/Buffers/dataBuffer.esm.js +0 -18
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/BaseCameraMouseWheelInput.esm.js +0 -67
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/BaseCameraPointersInput.esm.js +0 -191
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraKeyboardMoveInput.esm.js +0 -93
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraMouseWheelInput.esm.js +0 -119
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/arcRotateCameraPointersInput.esm.js +0 -119
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraKeyboardMoveInput.esm.js +0 -108
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraMouseInput.esm.js +0 -114
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraMouseWheelInput.esm.js +0 -249
- package/dist/node_modules/@babylonjs/core/Cameras/Inputs/freeCameraTouchInput.esm.js +0 -103
- package/dist/node_modules/@babylonjs/core/Cameras/arcRotateCamera.esm.js +0 -589
- package/dist/node_modules/@babylonjs/core/Cameras/arcRotateCameraInputsManager.esm.js +0 -37
- package/dist/node_modules/@babylonjs/core/Cameras/camera.esm.js +0 -686
- package/dist/node_modules/@babylonjs/core/Cameras/cameraInputsManager.esm.js +0 -147
- package/dist/node_modules/@babylonjs/core/Cameras/freeCamera.esm.js +0 -236
- package/dist/node_modules/@babylonjs/core/Cameras/freeCameraInputsManager.esm.js +0 -66
- package/dist/node_modules/@babylonjs/core/Cameras/targetCamera.esm.js +0 -214
- package/dist/node_modules/@babylonjs/core/Collisions/intersectionInfo.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Collisions/meshCollisionData.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Collisions/pickingInfo.esm.js +0 -59
- package/dist/node_modules/@babylonjs/core/Compat/compatibilityOptions.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Culling/boundingBox.esm.js +0 -174
- package/dist/node_modules/@babylonjs/core/Culling/boundingInfo.esm.js +0 -159
- package/dist/node_modules/@babylonjs/core/Culling/boundingSphere.esm.js +0 -114
- package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceEnums.esm.js +0 -37
- package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceSource.esm.js +0 -23
- package/dist/node_modules/@babylonjs/core/DeviceInput/InputDevices/deviceSourceManager.esm.js +0 -106
- package/dist/node_modules/@babylonjs/core/DeviceInput/eventFactory.esm.js +0 -118
- package/dist/node_modules/@babylonjs/core/DeviceInput/internalDeviceSourceManager.esm.js +0 -46
- package/dist/node_modules/@babylonjs/core/DeviceInput/nativeDeviceInputSystem.esm.js +0 -50
- package/dist/node_modules/@babylonjs/core/DeviceInput/webDeviceInputSystem.esm.js +0 -354
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.alpha.esm.js +0 -101
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.cubeTexture.esm.js +0 -103
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.dynamicBuffer.esm.js +0 -11
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.dynamicTexture.esm.js +0 -14
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.multiRender.esm.js +0 -111
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.rawTexture.esm.js +0 -109
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.readTexture.esm.js +0 -76
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.renderTarget.esm.js +0 -69
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.renderTargetCube.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.uniformBuffer.esm.js +0 -29
- package/dist/node_modules/@babylonjs/core/Engines/Extensions/engine.views.esm.js +0 -85
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.esm.js +0 -36
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Engines/Processors/Expressions/shaderDefineExpression.esm.js +0 -88
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeConditionNode.esm.js +0 -14
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeCursor.esm.js +0 -44
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeNode.esm.js +0 -31
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderCodeTestNode.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Engines/Processors/shaderProcessor.esm.js +0 -230
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGL2ShaderProcessors.esm.js +0 -30
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLHardwareTexture.esm.js +0 -34
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLPipelineContext.esm.js +0 -388
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLRenderTargetWrapper.esm.js +0 -87
- package/dist/node_modules/@babylonjs/core/Engines/WebGL/webGLShaderProcessors.esm.js +0 -16
- package/dist/node_modules/@babylonjs/core/Engines/constants.esm.js +0 -254
- package/dist/node_modules/@babylonjs/core/Engines/engine.esm.js +0 -1120
- package/dist/node_modules/@babylonjs/core/Engines/engineStore.esm.js +0 -23
- package/dist/node_modules/@babylonjs/core/Engines/nullEngine.esm.js +0 -697
- package/dist/node_modules/@babylonjs/core/Engines/performanceConfigurator.esm.js +0 -22
- package/dist/node_modules/@babylonjs/core/Engines/renderTargetWrapper.esm.js +0 -273
- package/dist/node_modules/@babylonjs/core/Engines/shaderStore.esm.js +0 -36
- package/dist/node_modules/@babylonjs/core/Engines/thinEngine.esm.js +0 -2921
- package/dist/node_modules/@babylonjs/core/Events/deviceInputEvents.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Events/keyboardEvents.esm.js +0 -41
- package/dist/node_modules/@babylonjs/core/Events/pointerEvents.esm.js +0 -63
- package/dist/node_modules/@babylonjs/core/Inputs/pointerPickingConfiguration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Inputs/scene.inputManager.esm.js +0 -418
- package/dist/node_modules/@babylonjs/core/Layers/effectLayer.esm.js +0 -437
- package/dist/node_modules/@babylonjs/core/Layers/effectLayerSceneComponent.esm.js +0 -141
- package/dist/node_modules/@babylonjs/core/Layers/glowLayer.esm.js +0 -343
- package/dist/node_modules/@babylonjs/core/Layers/highlightLayer.esm.js +0 -396
- package/dist/node_modules/@babylonjs/core/Lights/directionalLight.esm.js +0 -224
- package/dist/node_modules/@babylonjs/core/Lights/hemisphericLight.esm.js +0 -92
- package/dist/node_modules/@babylonjs/core/Lights/light.esm.js +0 -476
- package/dist/node_modules/@babylonjs/core/Lights/lightConstants.esm.js +0 -30
- package/dist/node_modules/@babylonjs/core/Lights/pointLight.esm.js +0 -153
- package/dist/node_modules/@babylonjs/core/Lights/shadowLight.esm.js +0 -196
- package/dist/node_modules/@babylonjs/core/Lights/spotLight.esm.js +0 -287
- package/dist/node_modules/@babylonjs/core/Loading/sceneLoader.esm.js +0 -551
- package/dist/node_modules/@babylonjs/core/Loading/sceneLoaderFlags.esm.js +0 -48
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrAnisotropicConfiguration.esm.js +0 -112
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrBRDFConfiguration.esm.js +0 -48
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrBaseMaterial.esm.js +0 -568
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrClearCoatConfiguration.esm.js +0 -139
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrIridescenceConfiguration.esm.js +0 -97
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrMaterial.esm.js +0 -496
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrSheenConfiguration.esm.js +0 -106
- package/dist/node_modules/@babylonjs/core/Materials/PBR/pbrSubSurfaceConfiguration.esm.js +0 -270
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Filtering/hdrFiltering.esm.js +0 -103
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader.esm.js +0 -53
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/envTextureLoader.esm.js +0 -51
- package/dist/node_modules/@babylonjs/core/Materials/Textures/Loaders/ktxTextureLoader.esm.js +0 -81
- package/dist/node_modules/@babylonjs/core/Materials/Textures/baseTexture.esm.js +0 -542
- package/dist/node_modules/@babylonjs/core/Materials/Textures/baseTexture.polynomial.esm.js +0 -23
- package/dist/node_modules/@babylonjs/core/Materials/Textures/cubeTexture.esm.js +0 -244
- package/dist/node_modules/@babylonjs/core/Materials/Textures/dynamicTexture.esm.js +0 -134
- package/dist/node_modules/@babylonjs/core/Materials/Textures/equiRectangularCubeTexture.esm.js +0 -89
- package/dist/node_modules/@babylonjs/core/Materials/Textures/hdrCubeTexture.esm.js +0 -175
- package/dist/node_modules/@babylonjs/core/Materials/Textures/internalTexture.esm.js +0 -150
- package/dist/node_modules/@babylonjs/core/Materials/Textures/ktx2decoderTypes.esm.js +0 -17
- package/dist/node_modules/@babylonjs/core/Materials/Textures/mirrorTexture.esm.js +0 -138
- package/dist/node_modules/@babylonjs/core/Materials/Textures/multiRenderTarget.esm.js +0 -223
- package/dist/node_modules/@babylonjs/core/Materials/Textures/rawCubeTexture.esm.js +0 -58
- package/dist/node_modules/@babylonjs/core/Materials/Textures/rawTexture.esm.js +0 -156
- package/dist/node_modules/@babylonjs/core/Materials/Textures/rawTexture2DArray.esm.js +0 -53
- package/dist/node_modules/@babylonjs/core/Materials/Textures/renderTargetTexture.esm.js +0 -605
- package/dist/node_modules/@babylonjs/core/Materials/Textures/texture.esm.js +0 -421
- package/dist/node_modules/@babylonjs/core/Materials/Textures/textureSampler.esm.js +0 -101
- package/dist/node_modules/@babylonjs/core/Materials/Textures/thinTexture.esm.js +0 -170
- package/dist/node_modules/@babylonjs/core/Materials/clipPlaneMaterialHelper.esm.js +0 -28
- package/dist/node_modules/@babylonjs/core/Materials/colorCurves.esm.js +0 -397
- package/dist/node_modules/@babylonjs/core/Materials/drawWrapper.esm.js +0 -22
- package/dist/node_modules/@babylonjs/core/Materials/effect.esm.js +0 -890
- package/dist/node_modules/@babylonjs/core/Materials/effectFallbacks.esm.js +0 -73
- package/dist/node_modules/@babylonjs/core/Materials/effectRenderer.esm.js +0 -132
- package/dist/node_modules/@babylonjs/core/Materials/imageProcessingConfiguration.esm.js +0 -428
- package/dist/node_modules/@babylonjs/core/Materials/material.detailMapConfiguration.esm.js +0 -90
- package/dist/node_modules/@babylonjs/core/Materials/material.esm.js +0 -906
- package/dist/node_modules/@babylonjs/core/Materials/materialDefines.esm.js +0 -161
- package/dist/node_modules/@babylonjs/core/Materials/materialFlags.esm.js +0 -226
- package/dist/node_modules/@babylonjs/core/Materials/materialHelper.esm.js +0 -501
- package/dist/node_modules/@babylonjs/core/Materials/materialPluginBase.esm.js +0 -226
- package/dist/node_modules/@babylonjs/core/Materials/materialPluginEvent.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Materials/materialPluginManager.esm.js +0 -212
- package/dist/node_modules/@babylonjs/core/Materials/materialStencilState.esm.js +0 -145
- package/dist/node_modules/@babylonjs/core/Materials/multiMaterial.esm.js +0 -164
- package/dist/node_modules/@babylonjs/core/Materials/prePassConfiguration.esm.js +0 -38
- package/dist/node_modules/@babylonjs/core/Materials/pushMaterial.esm.js +0 -48
- package/dist/node_modules/@babylonjs/core/Materials/shaderLanguage.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Materials/shaderMaterial.esm.js +0 -838
- package/dist/node_modules/@babylonjs/core/Materials/standardMaterial.esm.js +0 -934
- package/dist/node_modules/@babylonjs/core/Materials/uniformBuffer.esm.js +0 -541
- package/dist/node_modules/@babylonjs/core/Maths/math.axis.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Maths/math.color.esm.js +0 -903
- package/dist/node_modules/@babylonjs/core/Maths/math.constants.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Maths/math.frustum.esm.js +0 -91
- package/dist/node_modules/@babylonjs/core/Maths/math.functions.esm.js +0 -43
- package/dist/node_modules/@babylonjs/core/Maths/math.path.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Maths/math.plane.esm.js +0 -145
- package/dist/node_modules/@babylonjs/core/Maths/math.scalar.esm.js +0 -284
- package/dist/node_modules/@babylonjs/core/Maths/math.size.esm.js +0 -124
- package/dist/node_modules/@babylonjs/core/Maths/math.vector.esm.js +0 -4915
- package/dist/node_modules/@babylonjs/core/Maths/math.viewport.esm.js +0 -41
- package/dist/node_modules/@babylonjs/core/Maths/sphericalPolynomial.esm.js +0 -177
- package/dist/node_modules/@babylonjs/core/Meshes/Builders/boxBuilder.esm.js +0 -260
- package/dist/node_modules/@babylonjs/core/Meshes/Compression/dracoCompression.esm.js +0 -233
- package/dist/node_modules/@babylonjs/core/Meshes/Compression/meshoptCompression.esm.js +0 -47
- package/dist/node_modules/@babylonjs/core/Meshes/WebGL/webGLDataBuffer.esm.js +0 -12
- package/dist/node_modules/@babylonjs/core/Meshes/abstractMesh.esm.js +0 -1448
- package/dist/node_modules/@babylonjs/core/Meshes/geometry.esm.js +0 -729
- package/dist/node_modules/@babylonjs/core/Meshes/instancedMesh.esm.js +0 -455
- package/dist/node_modules/@babylonjs/core/Meshes/mesh.esm.js +0 -2526
- package/dist/node_modules/@babylonjs/core/Meshes/mesh.vertexData.esm.js +0 -865
- package/dist/node_modules/@babylonjs/core/Meshes/meshLODLevel.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Meshes/subMesh.esm.js +0 -422
- package/dist/node_modules/@babylonjs/core/Meshes/thinInstanceMesh.esm.js +0 -129
- package/dist/node_modules/@babylonjs/core/Meshes/transformNode.esm.js +0 -796
- package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/cubemapToSphericalPolynomial.esm.js +0 -111
- package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/hdr.esm.js +0 -122
- package/dist/node_modules/@babylonjs/core/Misc/HighDynamicRange/panoramaToCubemap.esm.js +0 -78
- package/dist/node_modules/@babylonjs/core/Misc/andOrNotEvaluator.esm.js +0 -41
- package/dist/node_modules/@babylonjs/core/Misc/arrayTools.esm.js +0 -52
- package/dist/node_modules/@babylonjs/core/Misc/assetsManager.esm.js +0 -561
- package/dist/node_modules/@babylonjs/core/Misc/brdfTextureTools.esm.js +0 -31
- package/dist/node_modules/@babylonjs/core/Misc/copyTools.esm.js +0 -44
- package/dist/node_modules/@babylonjs/core/Misc/coroutine.esm.js +0 -53
- package/dist/node_modules/@babylonjs/core/Misc/dataReader.esm.js +0 -55
- package/dist/node_modules/@babylonjs/core/Misc/dds.esm.js +0 -329
- package/dist/node_modules/@babylonjs/core/Misc/decorators.esm.js +0 -332
- package/dist/node_modules/@babylonjs/core/Misc/deepCopier.esm.js +0 -52
- package/dist/node_modules/@babylonjs/core/Misc/deferred.esm.js +0 -25
- package/dist/node_modules/@babylonjs/core/Misc/devTools.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Misc/domManagement.esm.js +0 -21
- package/dist/node_modules/@babylonjs/core/Misc/dumpTools.esm.js +0 -117
- package/dist/node_modules/@babylonjs/core/Misc/environmentTextureTools.esm.js +0 -187
- package/dist/node_modules/@babylonjs/core/Misc/error.esm.js +0 -40
- package/dist/node_modules/@babylonjs/core/Misc/fileTools.esm.js +0 -339
- package/dist/node_modules/@babylonjs/core/Misc/filesInputStore.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Misc/guid.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Misc/instantiationTools.esm.js +0 -26
- package/dist/node_modules/@babylonjs/core/Misc/khronosTextureContainer.esm.js +0 -79
- package/dist/node_modules/@babylonjs/core/Misc/khronosTextureContainer2.esm.js +0 -281
- package/dist/node_modules/@babylonjs/core/Misc/logger.esm.js +0 -77
- package/dist/node_modules/@babylonjs/core/Misc/observable.esm.js +0 -231
- package/dist/node_modules/@babylonjs/core/Misc/perfCounter.esm.js +0 -99
- package/dist/node_modules/@babylonjs/core/Misc/performanceMonitor.esm.js +0 -144
- package/dist/node_modules/@babylonjs/core/Misc/precisionDate.esm.js +0 -12
- package/dist/node_modules/@babylonjs/core/Misc/retryStrategy.esm.js +0 -14
- package/dist/node_modules/@babylonjs/core/Misc/rgbdTextureTools.esm.js +0 -51
- package/dist/node_modules/@babylonjs/core/Misc/screenshotTools.esm.js +0 -92
- package/dist/node_modules/@babylonjs/core/Misc/smartArray.esm.js +0 -118
- package/dist/node_modules/@babylonjs/core/Misc/stringDictionary.esm.js +0 -129
- package/dist/node_modules/@babylonjs/core/Misc/stringTools.esm.js +0 -26
- package/dist/node_modules/@babylonjs/core/Misc/tags.esm.js +0 -97
- package/dist/node_modules/@babylonjs/core/Misc/textureTools.esm.js +0 -41
- package/dist/node_modules/@babylonjs/core/Misc/timingTools.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Misc/tools.esm.js +0 -929
- package/dist/node_modules/@babylonjs/core/Misc/typeStore.esm.js +0 -11
- package/dist/node_modules/@babylonjs/core/Misc/uniqueIdGenerator.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Misc/webRequest.esm.js +0 -135
- package/dist/node_modules/@babylonjs/core/Misc/workerPool.esm.js +0 -80
- package/dist/node_modules/@babylonjs/core/Morph/morphTarget.esm.js +0 -187
- package/dist/node_modules/@babylonjs/core/Morph/morphTargetManager.esm.js +0 -249
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.esm.js +0 -349
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.esm.js +0 -306
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.esm.js +0 -161
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.esm.js +0 -589
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/standardRenderingPipeline.esm.js +0 -512
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderEffect.esm.js +0 -114
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipeline.esm.js +0 -139
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.esm.js +0 -99
- package/dist/node_modules/@babylonjs/core/PostProcesses/RenderPipeline/postProcessRenderPipelineManagerSceneComponent.esm.js +0 -48
- package/dist/node_modules/@babylonjs/core/PostProcesses/bloomEffect.esm.js +0 -76
- package/dist/node_modules/@babylonjs/core/PostProcesses/bloomMergePostProcess.esm.js +0 -40
- package/dist/node_modules/@babylonjs/core/PostProcesses/blurPostProcess.esm.js +0 -165
- package/dist/node_modules/@babylonjs/core/PostProcesses/chromaticAberrationPostProcess.esm.js +0 -61
- package/dist/node_modules/@babylonjs/core/PostProcesses/circleOfConfusionPostProcess.esm.js +0 -62
- package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldBlurPostProcess.esm.js +0 -58
- package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldEffect.esm.js +0 -131
- package/dist/node_modules/@babylonjs/core/PostProcesses/depthOfFieldMergePostProcess.esm.js +0 -48
- package/dist/node_modules/@babylonjs/core/PostProcesses/extractHighlightsPostProcess.esm.js +0 -27
- package/dist/node_modules/@babylonjs/core/PostProcesses/fxaaPostProcess.esm.js +0 -41
- package/dist/node_modules/@babylonjs/core/PostProcesses/grainPostProcess.esm.js +0 -46
- package/dist/node_modules/@babylonjs/core/PostProcesses/imageProcessingPostProcess.esm.js +0 -359
- package/dist/node_modules/@babylonjs/core/PostProcesses/motionBlurPostProcess.esm.js +0 -178
- package/dist/node_modules/@babylonjs/core/PostProcesses/passPostProcess.esm.js +0 -40
- package/dist/node_modules/@babylonjs/core/PostProcesses/postProcess.esm.js +0 -457
- package/dist/node_modules/@babylonjs/core/PostProcesses/postProcessManager.esm.js +0 -94
- package/dist/node_modules/@babylonjs/core/PostProcesses/screenSpaceReflectionPostProcess.esm.js +0 -147
- package/dist/node_modules/@babylonjs/core/PostProcesses/sharpenPostProcess.esm.js +0 -46
- package/dist/node_modules/@babylonjs/core/Probes/reflectionProbe.esm.js +0 -184
- package/dist/node_modules/@babylonjs/core/Rendering/boundingBoxRenderer.esm.js +0 -170
- package/dist/node_modules/@babylonjs/core/Rendering/depthRenderer.esm.js +0 -185
- package/dist/node_modules/@babylonjs/core/Rendering/depthRendererSceneComponent.esm.js +0 -65
- package/dist/node_modules/@babylonjs/core/Rendering/geometryBufferRenderer.esm.js +0 -353
- package/dist/node_modules/@babylonjs/core/Rendering/geometryBufferRendererSceneComponent.esm.js +0 -55
- package/dist/node_modules/@babylonjs/core/Rendering/motionBlurConfiguration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Rendering/renderingGroup.esm.js +0 -223
- package/dist/node_modules/@babylonjs/core/Rendering/renderingManager.esm.js +0 -185
- package/dist/node_modules/@babylonjs/core/Rendering/screenSpaceReflections2Configuration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Rendering/screenSpaceReflectionsConfiguration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Rendering/ssao2Configuration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bakedVertexAnimation.esm.js +0 -48
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.esm.js +0 -24
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bonesDeclaration.esm.js +0 -35
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bonesVertex.esm.js +0 -56
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.esm.js +0 -4
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragment.esm.js +0 -67
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragmentFunctions.esm.js +0 -58
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpFragmentMainFunctions.esm.js +0 -93
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpVertex.esm.js +0 -11
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/bumpVertexDeclaration.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneFragment.esm.js +0 -42
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.esm.js +0 -21
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneVertex.esm.js +0 -21
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/clipPlaneVertexDeclaration.esm.js +0 -27
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalFragment.esm.js +0 -12
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalFragmentDeclaration.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/decalVertexDeclaration.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultFragmentDeclaration.esm.js +0 -86
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultUboDeclaration.esm.js +0 -50
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/defaultVertexDeclaration.esm.js +0 -46
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/depthPrePass.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogFragment.esm.js +0 -10
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.esm.js +0 -34
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogVertex.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/fresnelFunction.esm.js +0 -10
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/geometryUboDeclaration.esm.js +0 -5
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/geometryVertexDeclaration.esm.js +0 -4
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/harmonicsFunctions.esm.js +0 -42
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/hdrFilteringFunctions.esm.js +0 -139
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/helperFunctions.esm.js +0 -166
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/imageProcessingDeclaration.esm.js +0 -32
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/imageProcessingFunctions.esm.js +0 -129
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/importanceSampling.esm.js +0 -22
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.esm.js +0 -31
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/instancesVertex.esm.js +0 -20
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurFragment.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurFragment2.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.esm.js +0 -3
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/kernelBlurVertex.esm.js +0 -3
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightFragment.esm.js +0 -278
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightFragmentDeclaration.esm.js +0 -82
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightUboDeclaration.esm.js +0 -81
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightVxFragmentDeclaration.esm.js +0 -35
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightVxUboDeclaration.esm.js +0 -34
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/lightsFragmentFunctions.esm.js +0 -93
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthDeclaration.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthFragment.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/logDepthVertex.esm.js +0 -7
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/mainUVVaryingDeclaration.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/meshUboDeclaration.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertex.esm.js +0 -32
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexDeclaration.esm.js +0 -17
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexGlobal.esm.js +0 -8
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/mrtFragmentDeclaration.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/oitDeclaration.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/oitFragment.esm.js +0 -40
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/packingFunctions.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBRDFFunctions.esm.js +0 -268
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.esm.js +0 -83
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAlphaFresnel.esm.js +0 -37
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.esm.js +0 -32
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockAnisotropic.esm.js +0 -50
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockClearcoat.esm.js +0 -276
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockDirectLighting.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalColorComposition.esm.js +0 -45
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalLitComponents.esm.js +0 -100
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.esm.js +0 -27
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockGeometryInfo.esm.js +0 -30
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockImageProcessing.esm.js +0 -14
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockIridescence.esm.js +0 -63
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockLightmapInit.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockNormalFinal.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockNormalGeometric.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectance.esm.js +0 -24
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectance0.esm.js +0 -14
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflection.esm.js +0 -270
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockReflectivity.esm.js +0 -131
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockSheen.esm.js +0 -197
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrBlockSubSurface.esm.js +0 -337
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDebug.esm.js +0 -176
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.esm.js +0 -64
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingFunctions.esm.js +0 -130
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.esm.js +0 -53
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentDeclaration.esm.js +0 -179
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.esm.js +0 -18
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.esm.js +0 -101
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrHelperFunctions.esm.js +0 -83
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrIBLFunctions.esm.js +0 -35
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrUboDeclaration.esm.js +0 -65
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pbrVertexDeclaration.esm.js +0 -151
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/pointCloudVertex.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassDeclaration.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassVertex.esm.js +0 -37
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/prePassVertexDeclaration.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/reflectionFunction.esm.js +0 -116
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.esm.js +0 -20
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerFragmentDeclaration.esm.js +0 -21
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerVertexDeclaration.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/samplerVertexImplementation.esm.js +0 -39
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/sceneUboDeclaration.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/screenSpaceRayTrace.esm.js +0 -208
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsFragmentFunctions.esm.js +0 -614
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/shadowsVertex.esm.js +0 -23
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/subSurfaceScatteringFunctions.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/uvAttributeDeclaration.esm.js +0 -6
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/uvVariableDeclaration.esm.js +0 -9
- package/dist/node_modules/@babylonjs/core/Shaders/ShadersInclude/vertexColorMixing.esm.js +0 -16
- package/dist/node_modules/@babylonjs/core/Shaders/bloomMerge.fragment.esm.js +0 -14
- package/dist/node_modules/@babylonjs/core/Shaders/boundingBoxRenderer.fragment.esm.js +0 -11
- package/dist/node_modules/@babylonjs/core/Shaders/boundingBoxRenderer.vertex.esm.js +0 -22
- package/dist/node_modules/@babylonjs/core/Shaders/chromaticAberration.fragment.esm.js +0 -34
- package/dist/node_modules/@babylonjs/core/Shaders/circleOfConfusion.fragment.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Shaders/default.fragment.esm.js +0 -387
- package/dist/node_modules/@babylonjs/core/Shaders/default.vertex.esm.js +0 -171
- package/dist/node_modules/@babylonjs/core/Shaders/depth.fragment.esm.js +0 -47
- package/dist/node_modules/@babylonjs/core/Shaders/depth.vertex.esm.js +0 -72
- package/dist/node_modules/@babylonjs/core/Shaders/depthOfField.fragment.esm.js +0 -137
- package/dist/node_modules/@babylonjs/core/Shaders/depthOfFieldMerge.fragment.esm.js +0 -54
- package/dist/node_modules/@babylonjs/core/Shaders/extractHighlights.fragment.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/fxaa.fragment.esm.js +0 -211
- package/dist/node_modules/@babylonjs/core/Shaders/fxaa.vertex.esm.js +0 -29
- package/dist/node_modules/@babylonjs/core/Shaders/geometry.fragment.esm.js +0 -147
- package/dist/node_modules/@babylonjs/core/Shaders/geometry.vertex.esm.js +0 -164
- package/dist/node_modules/@babylonjs/core/Shaders/glowBlurPostProcess.fragment.esm.js +0 -39
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapGeneration.fragment.esm.js +0 -73
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapGeneration.vertex.esm.js +0 -94
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapMerge.fragment.esm.js +0 -29
- package/dist/node_modules/@babylonjs/core/Shaders/glowMapMerge.vertex.esm.js +0 -12
- package/dist/node_modules/@babylonjs/core/Shaders/grain.fragment.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Shaders/hdrFiltering.fragment.esm.js +0 -19
- package/dist/node_modules/@babylonjs/core/Shaders/hdrFiltering.vertex.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/imageProcessing.fragment.esm.js +0 -26
- package/dist/node_modules/@babylonjs/core/Shaders/kernelBlur.fragment.esm.js +0 -49
- package/dist/node_modules/@babylonjs/core/Shaders/kernelBlur.vertex.esm.js +0 -17
- package/dist/node_modules/@babylonjs/core/Shaders/lensHighlights.fragment.esm.js +0 -115
- package/dist/node_modules/@babylonjs/core/Shaders/motionBlur.fragment.esm.js +0 -74
- package/dist/node_modules/@babylonjs/core/Shaders/pass.fragment.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/passCube.fragment.esm.js +0 -27
- package/dist/node_modules/@babylonjs/core/Shaders/pbr.fragment.esm.js +0 -648
- package/dist/node_modules/@babylonjs/core/Shaders/pbr.vertex.esm.js +0 -236
- package/dist/node_modules/@babylonjs/core/Shaders/postprocess.vertex.esm.js +0 -13
- package/dist/node_modules/@babylonjs/core/Shaders/rgbdDecode.fragment.esm.js +0 -11
- package/dist/node_modules/@babylonjs/core/Shaders/rgbdEncode.fragment.esm.js +0 -11
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection.fragment.esm.js +0 -136
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2.fragment.esm.js +0 -215
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2Blur.fragment.esm.js +0 -52
- package/dist/node_modules/@babylonjs/core/Shaders/screenSpaceReflection2BlurCombiner.fragment.esm.js +0 -59
- package/dist/node_modules/@babylonjs/core/Shaders/sharpen.fragment.esm.js +0 -18
- package/dist/node_modules/@babylonjs/core/Shaders/ssao.fragment.esm.js +0 -55
- package/dist/node_modules/@babylonjs/core/Shaders/ssao2.fragment.esm.js +0 -165
- package/dist/node_modules/@babylonjs/core/Shaders/ssaoCombine.fragment.esm.js +0 -15
- package/dist/node_modules/@babylonjs/core/Shaders/standard.fragment.esm.js +0 -339
- package/dist/node_modules/@babylonjs/core/States/alphaCullingState.esm.js +0 -35
- package/dist/node_modules/@babylonjs/core/States/depthCullingState.esm.js +0 -69
- package/dist/node_modules/@babylonjs/core/States/stencilState.esm.js +0 -62
- package/dist/node_modules/@babylonjs/core/States/stencilStateComposer.esm.js +0 -70
- package/dist/node_modules/@babylonjs/core/abstractScene.esm.js +0 -71
- package/dist/node_modules/@babylonjs/core/assetContainer.esm.js +0 -425
- package/dist/node_modules/@babylonjs/core/node.esm.js +0 -536
- package/dist/node_modules/@babylonjs/core/scene.esm.js +0 -2809
- package/dist/node_modules/@babylonjs/core/sceneComponent.esm.js +0 -102
- package/dist/node_modules/@babylonjs/core/tslib.es6.esm.js +0 -12
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFBinaryExtension.esm.js +0 -37
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoader.esm.js +0 -902
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderInterfaces.esm.js +0 -42
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderUtils.esm.js +0 -195
- package/dist/node_modules/@babylonjs/loaders/glTF/1.0/glTFMaterialsCommonExtension.esm.js +0 -75
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_image_based.esm.js +0 -77
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.esm.js +0 -53
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_meshopt_compression.esm.js +0 -31
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_webp.esm.js +0 -29
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/ExtrasAsMetadata.esm.js +0 -47
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.data.esm.js +0 -173
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.esm.js +0 -82
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_draco_mesh_compression.esm.js +0 -68
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_lights_punctual.esm.js +0 -60
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_anisotropy.esm.js +0 -39
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_clearcoat.esm.js +0 -42
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_emissive_strength.esm.js +0 -32
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_ior.esm.js +0 -35
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_iridescence.esm.js +0 -41
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.esm.js +0 -41
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_sheen.esm.js +0 -41
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_specular.esm.js +0 -41
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_translucency.esm.js +0 -41
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_transmission.esm.js +0 -136
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_unlit.esm.js +0 -37
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_variants.esm.js +0 -178
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume.esm.js +0 -40
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_mesh_quantization.esm.js +0 -17
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_basisu.esm.js +0 -29
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_transform.esm.js +0 -29
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_xmp_json_ld.esm.js +0 -31
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_audio_emitter.esm.js +0 -149
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_lod.esm.js +0 -170
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_minecraftMesh.esm.js +0 -29
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_sRGBFactors.esm.js +0 -29
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoader.esm.js +0 -1562
- package/dist/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderAnimation.esm.js +0 -66
- package/dist/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.esm.js +0 -462
- package/dist/node_modules/@babylonjs/loaders/glTF/glTFValidation.esm.js +0 -81
|
@@ -0,0 +1,690 @@
|
|
|
1
|
+
import { _ as __awaiter } from './_tslib.esm.js';
|
|
2
|
+
import { P as PBRMaterial } from './pbrMaterial.esm.js';
|
|
3
|
+
import { M as Matrix, V as Vector3, b as Vector2, _ as __decorate, c as serializeAsMeshReference, d as serializeAsVector3, S as SerializationHelper } from './webRequest.esm.js';
|
|
4
|
+
import { T as Texture, R as RenderTargetTexture } from './helperFunctions.esm.js';
|
|
5
|
+
import { B as BlurPostProcess } from './blurPostProcess.esm.js';
|
|
6
|
+
import { P as Plane, A as AbstractScene } from './engine.esm.js';
|
|
7
|
+
import './math.axis.esm.js';
|
|
8
|
+
import { a as Color3 } from './math.color.esm.js';
|
|
9
|
+
import './math.path.esm.js';
|
|
10
|
+
import { RenderingConfiguration, REFLECTION_PROBE_RESOLUTION } from './renderConstants.esm.js';
|
|
11
|
+
import './hdrFilteringFunctions.esm.js';
|
|
12
|
+
import './pbrBRDFFunctions.esm.js';
|
|
13
|
+
import './material.esm2.js';
|
|
14
|
+
import './node.esm.js';
|
|
15
|
+
import './compatibilityOptions.esm.js';
|
|
16
|
+
import './bumpVertex.esm.js';
|
|
17
|
+
import './effectFallbacks.esm.js';
|
|
18
|
+
import './math.size.esm.js';
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Mirror texture can be used to simulate the view from a mirror in a scene.
|
|
22
|
+
* It will dynamically be rendered every frame to adapt to the camera point of view.
|
|
23
|
+
* You can then easily use it as a reflectionTexture on a flat surface.
|
|
24
|
+
* In case the surface is not a plane, please consider relying on reflection probes.
|
|
25
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/reflectionTexture#mirrortexture
|
|
26
|
+
*/
|
|
27
|
+
class MirrorTexture extends RenderTargetTexture {
|
|
28
|
+
/**
|
|
29
|
+
* Define the blur ratio used to blur the reflection if needed.
|
|
30
|
+
*/
|
|
31
|
+
set blurRatio(value) {
|
|
32
|
+
if (this._blurRatio === value) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
this._blurRatio = value;
|
|
36
|
+
this._preparePostProcesses();
|
|
37
|
+
}
|
|
38
|
+
get blurRatio() {
|
|
39
|
+
return this._blurRatio;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Define the adaptive blur kernel used to blur the reflection if needed.
|
|
43
|
+
* This will autocompute the closest best match for the `blurKernel`
|
|
44
|
+
*/
|
|
45
|
+
set adaptiveBlurKernel(value) {
|
|
46
|
+
this._adaptiveBlurKernel = value;
|
|
47
|
+
this._autoComputeBlurKernel();
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Define the blur kernel used to blur the reflection if needed.
|
|
51
|
+
* Please consider using `adaptiveBlurKernel` as it could find the closest best value for you.
|
|
52
|
+
*/
|
|
53
|
+
set blurKernel(value) {
|
|
54
|
+
this.blurKernelX = value;
|
|
55
|
+
this.blurKernelY = value;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Define the blur kernel on the X Axis used to blur the reflection if needed.
|
|
59
|
+
* Please consider using `adaptiveBlurKernel` as it could find the closest best value for you.
|
|
60
|
+
*/
|
|
61
|
+
set blurKernelX(value) {
|
|
62
|
+
if (this._blurKernelX === value) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
this._blurKernelX = value;
|
|
66
|
+
this._preparePostProcesses();
|
|
67
|
+
}
|
|
68
|
+
get blurKernelX() {
|
|
69
|
+
return this._blurKernelX;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Define the blur kernel on the Y Axis used to blur the reflection if needed.
|
|
73
|
+
* Please consider using `adaptiveBlurKernel` as it could find the closest best value for you.
|
|
74
|
+
*/
|
|
75
|
+
set blurKernelY(value) {
|
|
76
|
+
if (this._blurKernelY === value) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
this._blurKernelY = value;
|
|
80
|
+
this._preparePostProcesses();
|
|
81
|
+
}
|
|
82
|
+
get blurKernelY() {
|
|
83
|
+
return this._blurKernelY;
|
|
84
|
+
}
|
|
85
|
+
_autoComputeBlurKernel() {
|
|
86
|
+
const engine = this.getScene().getEngine();
|
|
87
|
+
const dw = this.getRenderWidth() / engine.getRenderWidth();
|
|
88
|
+
const dh = this.getRenderHeight() / engine.getRenderHeight();
|
|
89
|
+
this.blurKernelX = this._adaptiveBlurKernel * dw;
|
|
90
|
+
this.blurKernelY = this._adaptiveBlurKernel * dh;
|
|
91
|
+
}
|
|
92
|
+
_onRatioRescale() {
|
|
93
|
+
if (this._sizeRatio) {
|
|
94
|
+
this.resize(this._initialSizeParameter);
|
|
95
|
+
if (!this._adaptiveBlurKernel) {
|
|
96
|
+
this._preparePostProcesses();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
if (this._adaptiveBlurKernel) {
|
|
100
|
+
this._autoComputeBlurKernel();
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
_updateGammaSpace() {
|
|
104
|
+
const scene = this.getScene();
|
|
105
|
+
if (!scene) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
this.gammaSpace = !scene.imageProcessingConfiguration.isEnabled || !scene.imageProcessingConfiguration.applyByPostProcess;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Instantiates a Mirror Texture.
|
|
112
|
+
* Mirror texture can be used to simulate the view from a mirror in a scene.
|
|
113
|
+
* It will dynamically be rendered every frame to adapt to the camera point of view.
|
|
114
|
+
* You can then easily use it as a reflectionTexture on a flat surface.
|
|
115
|
+
* In case the surface is not a plane, please consider relying on reflection probes.
|
|
116
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/reflectionTexture#mirrors
|
|
117
|
+
* @param name
|
|
118
|
+
* @param size
|
|
119
|
+
* @param scene
|
|
120
|
+
* @param generateMipMaps
|
|
121
|
+
* @param type
|
|
122
|
+
* @param samplingMode
|
|
123
|
+
* @param generateDepthBuffer
|
|
124
|
+
*/
|
|
125
|
+
constructor(name, size, scene, generateMipMaps, type = 0, samplingMode = Texture.BILINEAR_SAMPLINGMODE, generateDepthBuffer = true) {
|
|
126
|
+
super(name, size, scene, generateMipMaps, true, type, false, samplingMode, generateDepthBuffer);
|
|
127
|
+
/**
|
|
128
|
+
* Define the reflection plane we want to use. The mirrorPlane is usually set to the constructed reflector.
|
|
129
|
+
* It is possible to directly set the mirrorPlane by directly using a Plane(a, b, c, d) where a, b and c give the plane normal vector (a, b, c) and d is a scalar displacement from the mirrorPlane to the origin. However in all but the very simplest of situations it is more straight forward to set it to the reflector as stated in the doc.
|
|
130
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/materials/using/reflectionTexture#mirrors
|
|
131
|
+
*/
|
|
132
|
+
this.mirrorPlane = new Plane(0, 1, 0, 1);
|
|
133
|
+
this._transformMatrix = Matrix.Zero();
|
|
134
|
+
this._mirrorMatrix = Matrix.Zero();
|
|
135
|
+
this._adaptiveBlurKernel = 0;
|
|
136
|
+
this._blurKernelX = 0;
|
|
137
|
+
this._blurKernelY = 0;
|
|
138
|
+
this._blurRatio = 1.0;
|
|
139
|
+
scene = this.getScene();
|
|
140
|
+
if (!scene) {
|
|
141
|
+
return this;
|
|
142
|
+
}
|
|
143
|
+
this.ignoreCameraViewport = true;
|
|
144
|
+
this._updateGammaSpace();
|
|
145
|
+
this._imageProcessingConfigChangeObserver = scene.imageProcessingConfiguration.onUpdateParameters.add(() => {
|
|
146
|
+
this._updateGammaSpace();
|
|
147
|
+
});
|
|
148
|
+
const engine = scene.getEngine();
|
|
149
|
+
if (engine.supportsUniformBuffers) {
|
|
150
|
+
this._sceneUBO = scene.createSceneUniformBuffer(`Scene for Mirror Texture (name "${name}")`);
|
|
151
|
+
}
|
|
152
|
+
this.onBeforeBindObservable.add(() => {
|
|
153
|
+
var _a;
|
|
154
|
+
(_a = engine._debugPushGroup) === null || _a === void 0 ? void 0 : _a.call(engine, `mirror generation for ${name}`, 1);
|
|
155
|
+
});
|
|
156
|
+
this.onAfterUnbindObservable.add(() => {
|
|
157
|
+
var _a;
|
|
158
|
+
(_a = engine._debugPopGroup) === null || _a === void 0 ? void 0 : _a.call(engine, 1);
|
|
159
|
+
});
|
|
160
|
+
let saveClipPlane;
|
|
161
|
+
this.onBeforeRenderObservable.add(() => {
|
|
162
|
+
if (this._sceneUBO) {
|
|
163
|
+
this._currentSceneUBO = scene.getSceneUniformBuffer();
|
|
164
|
+
scene.setSceneUniformBuffer(this._sceneUBO);
|
|
165
|
+
scene.getSceneUniformBuffer().unbindEffect();
|
|
166
|
+
}
|
|
167
|
+
Matrix.ReflectionToRef(this.mirrorPlane, this._mirrorMatrix);
|
|
168
|
+
this._mirrorMatrix.multiplyToRef(scene.getViewMatrix(), this._transformMatrix);
|
|
169
|
+
scene.setTransformMatrix(this._transformMatrix, scene.getProjectionMatrix());
|
|
170
|
+
saveClipPlane = scene.clipPlane;
|
|
171
|
+
scene.clipPlane = this.mirrorPlane;
|
|
172
|
+
scene._mirroredCameraPosition = Vector3.TransformCoordinates(scene.activeCamera.globalPosition, this._mirrorMatrix);
|
|
173
|
+
});
|
|
174
|
+
this.onAfterRenderObservable.add(() => {
|
|
175
|
+
if (this._sceneUBO) {
|
|
176
|
+
scene.setSceneUniformBuffer(this._currentSceneUBO);
|
|
177
|
+
}
|
|
178
|
+
scene.updateTransformMatrix();
|
|
179
|
+
scene._mirroredCameraPosition = null;
|
|
180
|
+
scene.clipPlane = saveClipPlane;
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
_preparePostProcesses() {
|
|
184
|
+
this.clearPostProcesses(true);
|
|
185
|
+
if (this._blurKernelX && this._blurKernelY) {
|
|
186
|
+
const engine = this.getScene().getEngine();
|
|
187
|
+
const textureType = engine.getCaps().textureFloatRender && engine.getCaps().textureFloatLinearFiltering ? 1 : 2;
|
|
188
|
+
this._blurX = new BlurPostProcess("horizontal blur", new Vector2(1.0, 0), this._blurKernelX, this._blurRatio, null, Texture.BILINEAR_SAMPLINGMODE, engine, false, textureType);
|
|
189
|
+
this._blurX.autoClear = false;
|
|
190
|
+
if (this._blurRatio === 1 && this.samples < 2 && this._texture) {
|
|
191
|
+
this._blurX.inputTexture = this._renderTarget;
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
this._blurX.alwaysForcePOT = true;
|
|
195
|
+
}
|
|
196
|
+
this._blurY = new BlurPostProcess("vertical blur", new Vector2(0, 1.0), this._blurKernelY, this._blurRatio, null, Texture.BILINEAR_SAMPLINGMODE, engine, false, textureType);
|
|
197
|
+
this._blurY.autoClear = false;
|
|
198
|
+
this._blurY.alwaysForcePOT = this._blurRatio !== 1;
|
|
199
|
+
this.addPostProcess(this._blurX);
|
|
200
|
+
this.addPostProcess(this._blurY);
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
if (this._blurY) {
|
|
204
|
+
this.removePostProcess(this._blurY);
|
|
205
|
+
this._blurY.dispose();
|
|
206
|
+
this._blurY = null;
|
|
207
|
+
}
|
|
208
|
+
if (this._blurX) {
|
|
209
|
+
this.removePostProcess(this._blurX);
|
|
210
|
+
this._blurX.dispose();
|
|
211
|
+
this._blurX = null;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Clone the mirror texture.
|
|
217
|
+
* @returns the cloned texture
|
|
218
|
+
*/
|
|
219
|
+
clone() {
|
|
220
|
+
const scene = this.getScene();
|
|
221
|
+
if (!scene) {
|
|
222
|
+
return this;
|
|
223
|
+
}
|
|
224
|
+
const textureSize = this.getSize();
|
|
225
|
+
const newTexture = new MirrorTexture(this.name, textureSize.width, scene, this._renderTargetOptions.generateMipMaps, this._renderTargetOptions.type, this._renderTargetOptions.samplingMode, this._renderTargetOptions.generateDepthBuffer);
|
|
226
|
+
// Base texture
|
|
227
|
+
newTexture.hasAlpha = this.hasAlpha;
|
|
228
|
+
newTexture.level = this.level;
|
|
229
|
+
// Mirror Texture
|
|
230
|
+
newTexture.mirrorPlane = this.mirrorPlane.clone();
|
|
231
|
+
if (this.renderList) {
|
|
232
|
+
newTexture.renderList = this.renderList.slice(0);
|
|
233
|
+
}
|
|
234
|
+
return newTexture;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Serialize the texture to a JSON representation you could use in Parse later on
|
|
238
|
+
* @returns the serialized JSON representation
|
|
239
|
+
*/
|
|
240
|
+
serialize() {
|
|
241
|
+
if (!this.name) {
|
|
242
|
+
return null;
|
|
243
|
+
}
|
|
244
|
+
const serializationObject = super.serialize();
|
|
245
|
+
serializationObject.mirrorPlane = this.mirrorPlane.asArray();
|
|
246
|
+
return serializationObject;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Dispose the texture and release its associated resources.
|
|
250
|
+
*/
|
|
251
|
+
dispose() {
|
|
252
|
+
var _a;
|
|
253
|
+
super.dispose();
|
|
254
|
+
const scene = this.getScene();
|
|
255
|
+
if (scene) {
|
|
256
|
+
scene.imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingConfigChangeObserver);
|
|
257
|
+
}
|
|
258
|
+
(_a = this._sceneUBO) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
Texture._CreateMirror = (name, renderTargetSize, scene, generateMipMaps) => {
|
|
262
|
+
return new MirrorTexture(name, renderTargetSize, scene, generateMipMaps);
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
AbstractScene.prototype.removeReflectionProbe = function (toRemove) {
|
|
266
|
+
if (!this.reflectionProbes) {
|
|
267
|
+
return -1;
|
|
268
|
+
}
|
|
269
|
+
const index = this.reflectionProbes.indexOf(toRemove);
|
|
270
|
+
if (index !== -1) {
|
|
271
|
+
this.reflectionProbes.splice(index, 1);
|
|
272
|
+
}
|
|
273
|
+
return index;
|
|
274
|
+
};
|
|
275
|
+
AbstractScene.prototype.addReflectionProbe = function (newReflectionProbe) {
|
|
276
|
+
if (!this.reflectionProbes) {
|
|
277
|
+
this.reflectionProbes = [];
|
|
278
|
+
}
|
|
279
|
+
this.reflectionProbes.push(newReflectionProbe);
|
|
280
|
+
};
|
|
281
|
+
/**
|
|
282
|
+
* Class used to generate realtime reflection / refraction cube textures
|
|
283
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/environment/reflectionProbes
|
|
284
|
+
*/
|
|
285
|
+
class ReflectionProbe {
|
|
286
|
+
/**
|
|
287
|
+
* Creates a new reflection probe
|
|
288
|
+
* @param name defines the name of the probe
|
|
289
|
+
* @param size defines the texture resolution (for each face)
|
|
290
|
+
* @param scene defines the hosting scene
|
|
291
|
+
* @param generateMipMaps defines if mip maps should be generated automatically (true by default)
|
|
292
|
+
* @param useFloat defines if HDR data (float data) should be used to store colors (false by default)
|
|
293
|
+
* @param linearSpace defines if the probe should be generated in linear space or not (false by default)
|
|
294
|
+
*/
|
|
295
|
+
constructor(
|
|
296
|
+
/** defines the name of the probe */
|
|
297
|
+
name, size, scene, generateMipMaps = true, useFloat = false, linearSpace = false) {
|
|
298
|
+
this.name = name;
|
|
299
|
+
this._viewMatrix = Matrix.Identity();
|
|
300
|
+
this._target = Vector3.Zero();
|
|
301
|
+
this._add = Vector3.Zero();
|
|
302
|
+
this._invertYAxis = false;
|
|
303
|
+
/** Gets or sets probe position (center of the cube map) */
|
|
304
|
+
this.position = Vector3.Zero();
|
|
305
|
+
/**
|
|
306
|
+
* Gets or sets an object used to store user defined information for the reflection probe.
|
|
307
|
+
*/
|
|
308
|
+
this.metadata = null;
|
|
309
|
+
/** @internal */
|
|
310
|
+
this._parentContainer = null;
|
|
311
|
+
this._scene = scene;
|
|
312
|
+
if (scene.getEngine().supportsUniformBuffers) {
|
|
313
|
+
this._sceneUBOs = [];
|
|
314
|
+
for (let i = 0; i < 6; ++i) {
|
|
315
|
+
this._sceneUBOs.push(scene.createSceneUniformBuffer(`Scene for Reflection Probe (name "${name}") face #${i}`));
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
// Create the scene field if not exist.
|
|
319
|
+
if (!this._scene.reflectionProbes) {
|
|
320
|
+
this._scene.reflectionProbes = new Array();
|
|
321
|
+
}
|
|
322
|
+
this._scene.reflectionProbes.push(this);
|
|
323
|
+
let textureType = 0;
|
|
324
|
+
if (useFloat) {
|
|
325
|
+
const caps = this._scene.getEngine().getCaps();
|
|
326
|
+
if (caps.textureHalfFloatRender) {
|
|
327
|
+
textureType = 2;
|
|
328
|
+
}
|
|
329
|
+
else if (caps.textureFloatRender) {
|
|
330
|
+
textureType = 1;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
this._renderTargetTexture = new RenderTargetTexture(name, size, scene, generateMipMaps, true, textureType, true);
|
|
334
|
+
this._renderTargetTexture.gammaSpace = !linearSpace;
|
|
335
|
+
this._renderTargetTexture.invertZ = scene.useRightHandedSystem;
|
|
336
|
+
const useReverseDepthBuffer = scene.getEngine().useReverseDepthBuffer;
|
|
337
|
+
this._renderTargetTexture.onBeforeRenderObservable.add((faceIndex) => {
|
|
338
|
+
if (this._sceneUBOs) {
|
|
339
|
+
scene.setSceneUniformBuffer(this._sceneUBOs[faceIndex]);
|
|
340
|
+
scene.getSceneUniformBuffer().unbindEffect();
|
|
341
|
+
}
|
|
342
|
+
switch (faceIndex) {
|
|
343
|
+
case 0:
|
|
344
|
+
this._add.copyFromFloats(1, 0, 0);
|
|
345
|
+
break;
|
|
346
|
+
case 1:
|
|
347
|
+
this._add.copyFromFloats(-1, 0, 0);
|
|
348
|
+
break;
|
|
349
|
+
case 2:
|
|
350
|
+
this._add.copyFromFloats(0, this._invertYAxis ? 1 : -1, 0);
|
|
351
|
+
break;
|
|
352
|
+
case 3:
|
|
353
|
+
this._add.copyFromFloats(0, this._invertYAxis ? -1 : 1, 0);
|
|
354
|
+
break;
|
|
355
|
+
case 4:
|
|
356
|
+
this._add.copyFromFloats(0, 0, scene.useRightHandedSystem ? -1 : 1);
|
|
357
|
+
break;
|
|
358
|
+
case 5:
|
|
359
|
+
this._add.copyFromFloats(0, 0, scene.useRightHandedSystem ? 1 : -1);
|
|
360
|
+
break;
|
|
361
|
+
}
|
|
362
|
+
if (this._attachedMesh) {
|
|
363
|
+
this.position.copyFrom(this._attachedMesh.getAbsolutePosition());
|
|
364
|
+
}
|
|
365
|
+
this.position.addToRef(this._add, this._target);
|
|
366
|
+
const lookAtFunction = scene.useRightHandedSystem ? Matrix.LookAtRHToRef : Matrix.LookAtLHToRef;
|
|
367
|
+
const perspectiveFunction = scene.useRightHandedSystem ? Matrix.PerspectiveFovRH : Matrix.PerspectiveFovLH;
|
|
368
|
+
lookAtFunction(this.position, this._target, Vector3.Up(), this._viewMatrix);
|
|
369
|
+
if (scene.activeCamera) {
|
|
370
|
+
this._projectionMatrix = perspectiveFunction(Math.PI / 2, 1, useReverseDepthBuffer ? scene.activeCamera.maxZ : scene.activeCamera.minZ, useReverseDepthBuffer ? scene.activeCamera.minZ : scene.activeCamera.maxZ, this._scene.getEngine().isNDCHalfZRange);
|
|
371
|
+
scene.setTransformMatrix(this._viewMatrix, this._projectionMatrix);
|
|
372
|
+
if (scene.activeCamera.isRigCamera && !this._renderTargetTexture.activeCamera) {
|
|
373
|
+
this._renderTargetTexture.activeCamera = scene.activeCamera.rigParent || null;
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
scene._forcedViewPosition = this.position;
|
|
377
|
+
});
|
|
378
|
+
let currentApplyByPostProcess;
|
|
379
|
+
this._renderTargetTexture.onBeforeBindObservable.add(() => {
|
|
380
|
+
var _a, _b;
|
|
381
|
+
this._currentSceneUBO = scene.getSceneUniformBuffer();
|
|
382
|
+
(_b = (_a = scene.getEngine())._debugPushGroup) === null || _b === void 0 ? void 0 : _b.call(_a, `reflection probe generation for ${name}`, 1);
|
|
383
|
+
currentApplyByPostProcess = this._scene.imageProcessingConfiguration.applyByPostProcess;
|
|
384
|
+
if (linearSpace) {
|
|
385
|
+
scene.imageProcessingConfiguration.applyByPostProcess = true;
|
|
386
|
+
}
|
|
387
|
+
});
|
|
388
|
+
this._renderTargetTexture.onAfterUnbindObservable.add(() => {
|
|
389
|
+
var _a, _b;
|
|
390
|
+
scene.imageProcessingConfiguration.applyByPostProcess = currentApplyByPostProcess;
|
|
391
|
+
scene._forcedViewPosition = null;
|
|
392
|
+
if (this._sceneUBOs) {
|
|
393
|
+
scene.setSceneUniformBuffer(this._currentSceneUBO);
|
|
394
|
+
}
|
|
395
|
+
scene.updateTransformMatrix(true);
|
|
396
|
+
(_b = (_a = scene.getEngine())._debugPopGroup) === null || _b === void 0 ? void 0 : _b.call(_a, 1);
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
/** Gets or sets the number of samples to use for multi-sampling (0 by default). Required WebGL2 */
|
|
400
|
+
get samples() {
|
|
401
|
+
return this._renderTargetTexture.samples;
|
|
402
|
+
}
|
|
403
|
+
set samples(value) {
|
|
404
|
+
this._renderTargetTexture.samples = value;
|
|
405
|
+
}
|
|
406
|
+
/** Gets or sets the refresh rate to use (on every frame by default) */
|
|
407
|
+
get refreshRate() {
|
|
408
|
+
return this._renderTargetTexture.refreshRate;
|
|
409
|
+
}
|
|
410
|
+
set refreshRate(value) {
|
|
411
|
+
this._renderTargetTexture.refreshRate = value;
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Gets the hosting scene
|
|
415
|
+
* @returns a Scene
|
|
416
|
+
*/
|
|
417
|
+
getScene() {
|
|
418
|
+
return this._scene;
|
|
419
|
+
}
|
|
420
|
+
/** Gets the internal CubeTexture used to render to */
|
|
421
|
+
get cubeTexture() {
|
|
422
|
+
return this._renderTargetTexture;
|
|
423
|
+
}
|
|
424
|
+
/** Gets the list of meshes to render */
|
|
425
|
+
get renderList() {
|
|
426
|
+
return this._renderTargetTexture.renderList;
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Attach the probe to a specific mesh (Rendering will be done from attached mesh's position)
|
|
430
|
+
* @param mesh defines the mesh to attach to
|
|
431
|
+
*/
|
|
432
|
+
attachToMesh(mesh) {
|
|
433
|
+
this._attachedMesh = mesh;
|
|
434
|
+
}
|
|
435
|
+
/**
|
|
436
|
+
* Specifies whether or not the stencil and depth buffer are cleared between two rendering groups
|
|
437
|
+
* @param renderingGroupId The rendering group id corresponding to its index
|
|
438
|
+
* @param autoClearDepthStencil Automatically clears depth and stencil between groups if true.
|
|
439
|
+
*/
|
|
440
|
+
setRenderingAutoClearDepthStencil(renderingGroupId, autoClearDepthStencil) {
|
|
441
|
+
this._renderTargetTexture.setRenderingAutoClearDepthStencil(renderingGroupId, autoClearDepthStencil);
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* Clean all associated resources
|
|
445
|
+
*/
|
|
446
|
+
dispose() {
|
|
447
|
+
const index = this._scene.reflectionProbes.indexOf(this);
|
|
448
|
+
if (index !== -1) {
|
|
449
|
+
// Remove from the scene if found
|
|
450
|
+
this._scene.reflectionProbes.splice(index, 1);
|
|
451
|
+
}
|
|
452
|
+
if (this._parentContainer) {
|
|
453
|
+
const index = this._parentContainer.reflectionProbes.indexOf(this);
|
|
454
|
+
if (index > -1) {
|
|
455
|
+
this._parentContainer.reflectionProbes.splice(index, 1);
|
|
456
|
+
}
|
|
457
|
+
this._parentContainer = null;
|
|
458
|
+
}
|
|
459
|
+
if (this._renderTargetTexture) {
|
|
460
|
+
this._renderTargetTexture.dispose();
|
|
461
|
+
this._renderTargetTexture = null;
|
|
462
|
+
}
|
|
463
|
+
if (this._sceneUBOs) {
|
|
464
|
+
for (const ubo of this._sceneUBOs) {
|
|
465
|
+
ubo.dispose();
|
|
466
|
+
}
|
|
467
|
+
this._sceneUBOs = [];
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
/**
|
|
471
|
+
* Converts the reflection probe information to a readable string for debug purpose.
|
|
472
|
+
* @param fullDetails Supports for multiple levels of logging within scene loading
|
|
473
|
+
* @returns the human readable reflection probe info
|
|
474
|
+
*/
|
|
475
|
+
toString(fullDetails) {
|
|
476
|
+
let ret = "Name: " + this.name;
|
|
477
|
+
if (fullDetails) {
|
|
478
|
+
ret += ", position: " + this.position.toString();
|
|
479
|
+
if (this._attachedMesh) {
|
|
480
|
+
ret += ", attached mesh: " + this._attachedMesh.name;
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
return ret;
|
|
484
|
+
}
|
|
485
|
+
/**
|
|
486
|
+
* Get the class name of the refection probe.
|
|
487
|
+
* @returns "ReflectionProbe"
|
|
488
|
+
*/
|
|
489
|
+
getClassName() {
|
|
490
|
+
return "ReflectionProbe";
|
|
491
|
+
}
|
|
492
|
+
/**
|
|
493
|
+
* Serialize the reflection probe to a JSON representation we can easily use in the respective Parse function.
|
|
494
|
+
* @returns The JSON representation of the texture
|
|
495
|
+
*/
|
|
496
|
+
serialize() {
|
|
497
|
+
const serializationObject = SerializationHelper.Serialize(this, this._renderTargetTexture.serialize());
|
|
498
|
+
serializationObject.isReflectionProbe = true;
|
|
499
|
+
serializationObject.metadata = this.metadata;
|
|
500
|
+
return serializationObject;
|
|
501
|
+
}
|
|
502
|
+
/**
|
|
503
|
+
* Parse the JSON representation of a reflection probe in order to recreate the reflection probe in the given scene.
|
|
504
|
+
* @param parsedReflectionProbe Define the JSON representation of the reflection probe
|
|
505
|
+
* @param scene Define the scene the parsed reflection probe should be instantiated in
|
|
506
|
+
* @param rootUrl Define the root url of the parsing sequence in the case of relative dependencies
|
|
507
|
+
* @returns The parsed reflection probe if successful
|
|
508
|
+
*/
|
|
509
|
+
static Parse(parsedReflectionProbe, scene, rootUrl) {
|
|
510
|
+
let reflectionProbe = null;
|
|
511
|
+
if (scene.reflectionProbes) {
|
|
512
|
+
for (let index = 0; index < scene.reflectionProbes.length; index++) {
|
|
513
|
+
const rp = scene.reflectionProbes[index];
|
|
514
|
+
if (rp.name === parsedReflectionProbe.name) {
|
|
515
|
+
reflectionProbe = rp;
|
|
516
|
+
break;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
reflectionProbe = SerializationHelper.Parse(() => reflectionProbe || new ReflectionProbe(parsedReflectionProbe.name, parsedReflectionProbe.renderTargetSize, scene, parsedReflectionProbe._generateMipMaps), parsedReflectionProbe, scene, rootUrl);
|
|
521
|
+
reflectionProbe.cubeTexture._waitingRenderList = parsedReflectionProbe.renderList;
|
|
522
|
+
if (parsedReflectionProbe._attachedMesh) {
|
|
523
|
+
reflectionProbe.attachToMesh(scene.getMeshById(parsedReflectionProbe._attachedMesh));
|
|
524
|
+
}
|
|
525
|
+
if (parsedReflectionProbe.metadata) {
|
|
526
|
+
reflectionProbe.metadata = parsedReflectionProbe.metadata;
|
|
527
|
+
}
|
|
528
|
+
return reflectionProbe;
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
__decorate([
|
|
532
|
+
serializeAsMeshReference()
|
|
533
|
+
], ReflectionProbe.prototype, "_attachedMesh", void 0);
|
|
534
|
+
__decorate([
|
|
535
|
+
serializeAsVector3()
|
|
536
|
+
], ReflectionProbe.prototype, "position", void 0);
|
|
537
|
+
|
|
538
|
+
/**
|
|
539
|
+
* We extend the GLTF loader with our own custom logic. This allows us to read nodes
|
|
540
|
+
* and materials as they load in and parse any additional metadata set in the glb file that
|
|
541
|
+
* babylon would ignore otherwise. eg. metadata set by Blender.
|
|
542
|
+
*/
|
|
543
|
+
class GLBLoaderExtension {
|
|
544
|
+
constructor(loader) {
|
|
545
|
+
this.name = 'glbPostProcessor';
|
|
546
|
+
this.enabled = true;
|
|
547
|
+
this.loader = loader;
|
|
548
|
+
}
|
|
549
|
+
onReady() {
|
|
550
|
+
this.applyReflections(this.loader.babylonScene);
|
|
551
|
+
}
|
|
552
|
+
/**
|
|
553
|
+
* Any custom properties set in blender on transform nodes will appear here. We can
|
|
554
|
+
* write the properties into the object metadata for retrieval at runtime.
|
|
555
|
+
*/
|
|
556
|
+
loadNodeAsync(context, node, assign) {
|
|
557
|
+
return this.loader.loadNodeAsync(context, node, function (babylonMesh) {
|
|
558
|
+
node.extras &&
|
|
559
|
+
Object.keys(node.extras).forEach((key) => {
|
|
560
|
+
const value = node.extras[key];
|
|
561
|
+
babylonMesh.metadata[key] = value;
|
|
562
|
+
});
|
|
563
|
+
assign(babylonMesh);
|
|
564
|
+
});
|
|
565
|
+
}
|
|
566
|
+
/**
|
|
567
|
+
* Material properties can be set at load time as we don't depend
|
|
568
|
+
* on the entire scene graph being loaded (for reflection render lists).
|
|
569
|
+
* The need for these properties may go over time as the relevant exporters/importers are updated.
|
|
570
|
+
*/
|
|
571
|
+
loadMaterialPropertiesAsync(context, material, babylonMaterial) {
|
|
572
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
573
|
+
yield this.loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);
|
|
574
|
+
this.enableMaterialExtrasIfRequired(material, babylonMaterial);
|
|
575
|
+
babylonMaterial.needDepthPrePass = true;
|
|
576
|
+
});
|
|
577
|
+
}
|
|
578
|
+
dispose() {
|
|
579
|
+
// Nothing to dispose, we have to implement this however..
|
|
580
|
+
}
|
|
581
|
+
/**
|
|
582
|
+
* With a given material descriptor and babylon material instance, looks for any
|
|
583
|
+
* metadata defined on the descriptor and applies to the babylon material.
|
|
584
|
+
* @param material A material descriptor
|
|
585
|
+
* @param babylonMaterial An instance of a material representation in babylon.
|
|
586
|
+
*/
|
|
587
|
+
enableMaterialExtrasIfRequired(material, babylonMaterial) {
|
|
588
|
+
if (!material.extras || !(babylonMaterial instanceof PBRMaterial)) {
|
|
589
|
+
return;
|
|
590
|
+
}
|
|
591
|
+
if (material.extras.sheen) {
|
|
592
|
+
const mat = babylonMaterial;
|
|
593
|
+
mat.sheen.isEnabled = true;
|
|
594
|
+
mat.sheen.intensity = material.extras.sheen;
|
|
595
|
+
}
|
|
596
|
+
if (material.extras.translucency) {
|
|
597
|
+
const mat = babylonMaterial;
|
|
598
|
+
mat.subSurface.isTranslucencyEnabled = true;
|
|
599
|
+
mat.subSurface.translucencyIntensity = material.extras.translucency;
|
|
600
|
+
if (material.extras.translucencyR &&
|
|
601
|
+
material.extras.translucencyG &&
|
|
602
|
+
material.extras.translucencyB) {
|
|
603
|
+
mat.subSurface.tintColor = new Color3(material.extras.translucencyR, material.extras.translucencyG, material.extras.translucencyB);
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
if (material.extras.refractionIOR) {
|
|
607
|
+
const mat = babylonMaterial;
|
|
608
|
+
mat.subSurface.isRefractionEnabled = true;
|
|
609
|
+
mat.subSurface.volumeIndexOfRefraction = material.extras.refractionIOR;
|
|
610
|
+
}
|
|
611
|
+
if (material.extras.useDepthPrePass) {
|
|
612
|
+
const mat = babylonMaterial;
|
|
613
|
+
mat.needDepthPrePass = true;
|
|
614
|
+
mat.forceIrradianceInFragment = true; // https://forum.babylonjs.com/t/rendering-artificats-on-safari-ios-14-pbrmaterial-depth-prepass-ibl/15670/5
|
|
615
|
+
}
|
|
616
|
+
if (material.extras.useParallax) {
|
|
617
|
+
const mat = babylonMaterial;
|
|
618
|
+
mat.useParallax = true;
|
|
619
|
+
mat.useParallaxOcclusion = true;
|
|
620
|
+
mat.parallaxScaleBias = material.extras.useParallax;
|
|
621
|
+
}
|
|
622
|
+
}
|
|
623
|
+
/**
|
|
624
|
+
* Called with a loaded scene. Will finish initialization
|
|
625
|
+
* of any reflective properties within the scene.
|
|
626
|
+
* @param scene The scene to parse.
|
|
627
|
+
*/
|
|
628
|
+
applyReflections(scene) {
|
|
629
|
+
function getReflectiveMeshes(scene) {
|
|
630
|
+
const reflectiveMeshes = [];
|
|
631
|
+
scene.transformNodes.forEach((node) => {
|
|
632
|
+
if (node.metadata && node.metadata.reflective) {
|
|
633
|
+
reflectiveMeshes.push(...node.getChildMeshes());
|
|
634
|
+
}
|
|
635
|
+
});
|
|
636
|
+
scene.meshes.forEach((mesh) => {
|
|
637
|
+
if (mesh.metadata &&
|
|
638
|
+
mesh.metadata.reflective &&
|
|
639
|
+
!reflectiveMeshes.includes(mesh)) {
|
|
640
|
+
reflectiveMeshes.push(mesh);
|
|
641
|
+
}
|
|
642
|
+
});
|
|
643
|
+
return reflectiveMeshes;
|
|
644
|
+
}
|
|
645
|
+
function buildMirrorTexture(mesh, reflectivity = 1) {
|
|
646
|
+
const mat = mesh.material;
|
|
647
|
+
if (!mat) {
|
|
648
|
+
return;
|
|
649
|
+
}
|
|
650
|
+
// Create a new mirror texture
|
|
651
|
+
const mirrorTex = new MirrorTexture('mirror', RenderingConfiguration.getMirrorTextureResolution(), scene, true);
|
|
652
|
+
mirrorTex.renderList = getReflectiveMeshes(scene);
|
|
653
|
+
// Calculate reflectance plane for mirror based on target mesh transform
|
|
654
|
+
const targetVertices = mesh.getVerticesData('normal');
|
|
655
|
+
if (!targetVertices) {
|
|
656
|
+
throw new Error('Mirror attribute specified on: ' +
|
|
657
|
+
mesh.name +
|
|
658
|
+
'But no normals exist to generate a mirror from!');
|
|
659
|
+
}
|
|
660
|
+
mesh.computeWorldMatrix(true);
|
|
661
|
+
const worldMatrix = mesh.getWorldMatrix();
|
|
662
|
+
const normal = Vector3.TransformNormal(new Vector3(targetVertices[0], targetVertices[1], targetVertices[2]), worldMatrix).normalize();
|
|
663
|
+
const reflector = Plane.FromPositionAndNormal(mesh.position, normal.scale(-1));
|
|
664
|
+
mirrorTex.mirrorPlane = reflector;
|
|
665
|
+
mirrorTex.level = reflectivity;
|
|
666
|
+
mat.reflectionTexture = mirrorTex;
|
|
667
|
+
}
|
|
668
|
+
function buildReflectionProbe(mesh) {
|
|
669
|
+
const mat = mesh.material;
|
|
670
|
+
const probe = new ReflectionProbe('probe-' + mat.name, REFLECTION_PROBE_RESOLUTION, scene);
|
|
671
|
+
probe.attachToMesh(mesh);
|
|
672
|
+
probe.renderList && probe.renderList.push(...getReflectiveMeshes(scene));
|
|
673
|
+
mat.reflectionTexture = probe.cubeTexture;
|
|
674
|
+
}
|
|
675
|
+
scene.meshes.forEach((mesh) => {
|
|
676
|
+
const tags = mesh.metadata;
|
|
677
|
+
if (!tags) {
|
|
678
|
+
return;
|
|
679
|
+
}
|
|
680
|
+
if (tags.mirrorTexture) {
|
|
681
|
+
buildMirrorTexture(mesh, tags.mirrorTexture);
|
|
682
|
+
}
|
|
683
|
+
if (tags.reflectionProbe) {
|
|
684
|
+
buildReflectionProbe(mesh);
|
|
685
|
+
}
|
|
686
|
+
});
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
export { GLBLoaderExtension };
|