@babylonjs/core 8.1.1 → 8.2.1
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/Actions/abstractActionManager.d.ts +4 -4
- package/Actions/action.d.ts +9 -9
- package/Actions/actionEvent.d.ts +5 -5
- package/Actions/actionManager.d.ts +6 -6
- package/Actions/condition.d.ts +1 -1
- package/Actions/directActions.d.ts +3 -3
- package/Actions/directAudioActions.d.ts +3 -3
- package/Actions/index.d.ts +8 -8
- package/Actions/interpolateValueAction.d.ts +3 -3
- package/Animations/animatable.core.d.ts +2 -2
- package/Animations/animatable.d.ts +8 -8
- package/Animations/animatable.interface.d.ts +2 -2
- package/Animations/animation.d.ts +13 -13
- package/Animations/animationGroup.d.ts +8 -8
- package/Animations/animationKey.d.ts +1 -1
- package/Animations/index.d.ts +12 -12
- package/Animations/pathCursor.d.ts +2 -2
- package/Animations/runtimeAnimation.d.ts +4 -4
- package/Audio/Interfaces/IAudioEngine.d.ts +4 -4
- package/Audio/analyser.d.ts +2 -2
- package/Audio/audioEngine.d.ts +4 -4
- package/Audio/audioSceneComponent.d.ts +8 -8
- package/Audio/index.d.ts +8 -8
- package/Audio/sound.d.ts +6 -6
- package/Audio/soundTrack.d.ts +4 -4
- package/Audio/weightedsound.d.ts +1 -1
- package/AudioV2/abstractAudio/abstractAudioBus.d.ts +5 -5
- package/AudioV2/abstractAudio/abstractAudioNode.d.ts +2 -2
- package/AudioV2/abstractAudio/abstractSound.d.ts +12 -12
- package/AudioV2/abstractAudio/abstractSound.js +1 -1
- package/AudioV2/abstractAudio/abstractSound.js.map +1 -1
- package/AudioV2/abstractAudio/abstractSoundInstance.d.ts +4 -4
- package/AudioV2/abstractAudio/audioBus.d.ts +7 -7
- package/AudioV2/abstractAudio/audioEngineV2.d.ts +8 -8
- package/AudioV2/abstractAudio/components/spatialAudioAttacherComponent.d.ts +5 -5
- package/AudioV2/abstractAudio/index.d.ts +10 -10
- package/AudioV2/abstractAudio/mainAudioBus.d.ts +3 -3
- package/AudioV2/abstractAudio/mainAudioOut.d.ts +2 -2
- package/AudioV2/abstractAudio/staticSound.d.ts +5 -5
- package/AudioV2/abstractAudio/staticSoundBuffer.d.ts +1 -1
- package/AudioV2/abstractAudio/staticSoundInstance.d.ts +3 -3
- package/AudioV2/abstractAudio/streamingSound.d.ts +4 -4
- package/AudioV2/abstractAudio/streamingSoundInstance.d.ts +4 -4
- package/AudioV2/abstractAudio/subNodes/abstractAudioSubGraph.d.ts +3 -3
- package/AudioV2/abstractAudio/subNodes/abstractAudioSubNode.d.ts +2 -2
- package/AudioV2/abstractAudio/subNodes/audioAnalyzerSubNode.d.ts +6 -6
- package/AudioV2/abstractAudio/subNodes/spatialAudioSubNode.d.ts +9 -9
- package/AudioV2/abstractAudio/subNodes/stereoAudioSubNode.d.ts +6 -6
- package/AudioV2/abstractAudio/subNodes/volumeAudioSubNode.d.ts +4 -4
- package/AudioV2/abstractAudio/subProperties/abstractSpatialAudio.d.ts +4 -4
- package/AudioV2/abstractAudio/subProperties/abstractSpatialAudioListener.d.ts +4 -4
- package/AudioV2/abstractAudio/subProperties/audioAnalyzer.d.ts +3 -3
- package/AudioV2/abstractAudio/subProperties/index.d.ts +4 -4
- package/AudioV2/abstractAudio/subProperties/spatialAudio.d.ts +6 -6
- package/AudioV2/abstractAudio/subProperties/spatialAudioListener.d.ts +6 -6
- package/AudioV2/abstractAudio/subProperties/stereoAudio.d.ts +2 -2
- package/AudioV2/index.d.ts +4 -4
- package/AudioV2/webAudio/index.d.ts +5 -5
- package/AudioV2/webAudio/subNodes/spatialWebAudioSubNode.d.ts +4 -4
- package/AudioV2/webAudio/subNodes/stereoWebAudioSubNode.d.ts +3 -3
- package/AudioV2/webAudio/subNodes/volumeWebAudioSubNode.d.ts +3 -3
- package/AudioV2/webAudio/subNodes/webAudioAnalyzerSubNode.d.ts +4 -4
- package/AudioV2/webAudio/subNodes/webAudioBaseSubGraph.d.ts +7 -7
- package/AudioV2/webAudio/subNodes/webAudioBusAndSoundSubGraph.d.ts +7 -7
- package/AudioV2/webAudio/subProperties/spatialWebAudio.d.ts +2 -2
- package/AudioV2/webAudio/subProperties/spatialWebAudioListener.d.ts +2 -2
- package/AudioV2/webAudio/webAudioBus.d.ts +7 -7
- package/AudioV2/webAudio/webAudioEngine.d.ts +11 -11
- package/AudioV2/webAudio/webAudioMainBus.d.ts +6 -6
- package/AudioV2/webAudio/webAudioMainOut.d.ts +3 -3
- package/AudioV2/webAudio/webAudioNode.d.ts +4 -4
- package/AudioV2/webAudio/webAudioStaticSound.d.ts +13 -13
- package/AudioV2/webAudio/webAudioStreamingSound.d.ts +10 -10
- package/AudioV2/webAudio/webAudioUnmuteUI.d.ts +1 -1
- package/BakedVertexAnimation/bakedVertexAnimationManager.d.ts +5 -5
- package/BakedVertexAnimation/index.d.ts +2 -2
- package/BakedVertexAnimation/vertexAnimationBaker.d.ts +4 -4
- package/Behaviors/Cameras/autoRotationBehavior.d.ts +3 -3
- package/Behaviors/Cameras/bouncingBehavior.d.ts +3 -3
- package/Behaviors/Cameras/framingBehavior.d.ts +7 -7
- package/Behaviors/Cameras/index.d.ts +3 -3
- package/Behaviors/Meshes/attachToBoxBehavior.d.ts +3 -3
- package/Behaviors/Meshes/baseSixDofDragBehavior.d.ts +9 -9
- package/Behaviors/Meshes/fadeInOutBehavior.d.ts +2 -2
- package/Behaviors/Meshes/followBehavior.d.ts +4 -4
- package/Behaviors/Meshes/handConstraintBehavior.d.ts +4 -4
- package/Behaviors/Meshes/index.d.ts +9 -9
- package/Behaviors/Meshes/multiPointerScaleBehavior.d.ts +2 -2
- package/Behaviors/Meshes/pointerDragBehavior.d.ts +8 -8
- package/Behaviors/Meshes/sixDofDragBehavior.d.ts +4 -4
- package/Behaviors/Meshes/surfaceMagnetismBehavior.d.ts +5 -5
- package/Behaviors/behavior.d.ts +1 -1
- package/Behaviors/index.d.ts +3 -3
- package/Bones/bone.d.ts +8 -8
- package/Bones/boneIKController.d.ts +4 -4
- package/Bones/boneLookController.d.ts +4 -4
- package/Bones/index.d.ts +4 -4
- package/Bones/skeleton.d.ts +13 -13
- package/Buffers/buffer.align.d.ts +2 -2
- package/Buffers/buffer.d.ts +3 -3
- package/Buffers/buffer.nonFloatVertexBuffers.d.ts +3 -3
- package/Buffers/bufferUtils.d.ts +1 -1
- package/Buffers/index.d.ts +5 -5
- package/Buffers/storageBuffer.d.ts +2 -2
- package/Cameras/Inputs/BaseCameraMouseWheelInput.d.ts +3 -3
- package/Cameras/Inputs/BaseCameraPointersInput.d.ts +5 -5
- package/Cameras/Inputs/arcRotateCameraGamepadInput.d.ts +4 -4
- package/Cameras/Inputs/arcRotateCameraKeyboardMoveInput.d.ts +2 -2
- package/Cameras/Inputs/arcRotateCameraMouseWheelInput.d.ts +4 -4
- package/Cameras/Inputs/arcRotateCameraPointersInput.d.ts +5 -5
- package/Cameras/Inputs/arcRotateCameraVRDeviceOrientationInput.d.ts +3 -3
- package/Cameras/Inputs/flyCameraKeyboardInput.d.ts +2 -2
- package/Cameras/Inputs/flyCameraMouseInput.d.ts +2 -2
- package/Cameras/Inputs/followCameraKeyboardMoveInput.d.ts +2 -2
- package/Cameras/Inputs/followCameraMouseWheelInput.d.ts +2 -2
- package/Cameras/Inputs/followCameraPointersInput.d.ts +4 -4
- package/Cameras/Inputs/freeCameraDeviceOrientationInput.d.ts +5 -5
- package/Cameras/Inputs/freeCameraGamepadInput.d.ts +4 -4
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.d.ts +2 -2
- package/Cameras/Inputs/freeCameraMouseInput.d.ts +3 -3
- package/Cameras/Inputs/freeCameraMouseWheelInput.d.ts +4 -4
- package/Cameras/Inputs/freeCameraTouchInput.d.ts +2 -2
- package/Cameras/Inputs/freeCameraVirtualJoystickInput.d.ts +4 -4
- package/Cameras/Inputs/index.d.ts +19 -19
- package/Cameras/RigModes/index.d.ts +3 -3
- package/Cameras/RigModes/stereoscopicAnaglyphRigMode.d.ts +1 -1
- package/Cameras/RigModes/stereoscopicRigMode.d.ts +1 -1
- package/Cameras/RigModes/vrRigMode.d.ts +1 -1
- package/Cameras/Stereoscopic/anaglyphArcRotateCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/anaglyphFreeCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/anaglyphGamepadCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/anaglyphUniversalCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/index.d.ts +9 -9
- package/Cameras/Stereoscopic/stereoscopicArcRotateCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/stereoscopicFreeCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/stereoscopicGamepadCamera.d.ts +3 -3
- package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.d.ts +5 -5
- package/Cameras/Stereoscopic/stereoscopicUniversalCamera.d.ts +3 -3
- package/Cameras/VR/index.d.ts +5 -5
- package/Cameras/VR/vrCameraMetrics.d.ts +1 -1
- package/Cameras/VR/vrDeviceOrientationArcRotateCamera.d.ts +5 -5
- package/Cameras/VR/vrDeviceOrientationFreeCamera.d.ts +4 -4
- package/Cameras/VR/vrDeviceOrientationGamepadCamera.d.ts +5 -5
- package/Cameras/VR/vrExperienceHelper.d.ts +15 -15
- package/Cameras/arcRotateCamera.d.ts +12 -12
- package/Cameras/arcRotateCameraInputsManager.d.ts +2 -2
- package/Cameras/camera.d.ts +16 -16
- package/Cameras/cameraInputsManager.d.ts +2 -2
- package/Cameras/deviceOrientationCamera.d.ts +5 -5
- package/Cameras/flyCamera.d.ts +6 -6
- package/Cameras/flyCameraInputsManager.d.ts +2 -2
- package/Cameras/followCamera.d.ts +6 -6
- package/Cameras/followCameraInputsManager.d.ts +2 -2
- package/Cameras/freeCamera.d.ts +5 -5
- package/Cameras/freeCameraInputsManager.d.ts +5 -5
- package/Cameras/gamepadCamera.d.ts +3 -3
- package/Cameras/index.d.ts +20 -20
- package/Cameras/targetCamera.d.ts +4 -4
- package/Cameras/touchCamera.d.ts +3 -3
- package/Cameras/universalCamera.d.ts +4 -4
- package/Cameras/virtualJoysticksCamera.d.ts +4 -4
- package/Collisions/collider.d.ts +4 -4
- package/Collisions/collisionCoordinator.d.ts +5 -5
- package/Collisions/index.d.ts +10 -10
- package/Collisions/intersectionInfo.d.ts +1 -1
- package/Collisions/meshCollisionData.d.ts +5 -5
- package/Collisions/pickingInfo.d.ts +6 -6
- package/Compat/index.d.ts +1 -1
- package/Compute/computeEffect.d.ts +4 -4
- package/Compute/computeShader.d.ts +8 -8
- package/Compute/index.d.ts +2 -2
- package/Culling/Helper/computeShaderBoundingHelper.d.ts +2 -2
- package/Culling/Helper/transformFeedbackBoundingHelper.d.ts +3 -3
- package/Culling/Octrees/index.d.ts +3 -3
- package/Culling/Octrees/octree.d.ts +7 -7
- package/Culling/Octrees/octreeBlock.d.ts +4 -4
- package/Culling/Octrees/octreeSceneComponent.d.ts +9 -9
- package/Culling/boundingBox.d.ts +6 -6
- package/Culling/boundingInfo.d.ts +7 -7
- package/Culling/boundingSphere.d.ts +3 -3
- package/Culling/index.d.ts +8 -8
- package/Culling/ray.core.d.ts +4 -4
- package/Culling/ray.core.js +1 -1
- package/Culling/ray.core.js.map +1 -1
- package/Culling/ray.d.ts +1 -1
- package/Debug/ISkeletonViewer.d.ts +2 -2
- package/Debug/axesViewer.d.ts +4 -4
- package/Debug/boneAxesViewer.d.ts +6 -6
- package/Debug/debugLayer.d.ts +4 -4
- package/Debug/debugLayer.js +8 -1
- package/Debug/debugLayer.js.map +1 -1
- package/Debug/directionalLightFrustumViewer.d.ts +3 -3
- package/Debug/index.d.ts +8 -8
- package/Debug/physicsViewer.d.ts +11 -11
- package/Debug/rayHelper.d.ts +6 -6
- package/Debug/skeletonViewer.d.ts +9 -9
- package/Decorators/nodeDecorator.d.ts +2 -2
- package/DeviceInput/InputDevices/deviceSource.d.ts +5 -5
- package/DeviceInput/InputDevices/deviceSourceManager.d.ts +8 -8
- package/DeviceInput/InputDevices/deviceTypes.d.ts +1 -1
- package/DeviceInput/eventFactory.d.ts +4 -4
- package/DeviceInput/index.d.ts +4 -4
- package/DeviceInput/inputInterfaces.d.ts +2 -2
- package/DeviceInput/internalDeviceSourceManager.d.ts +8 -8
- package/DeviceInput/nativeDeviceInputSystem.d.ts +3 -3
- package/DeviceInput/webDeviceInputSystem.d.ts +4 -4
- package/Engines/AbstractEngine/abstractEngine.alpha.d.ts +1 -1
- package/Engines/AbstractEngine/abstractEngine.cubeTexture.d.ts +4 -4
- package/Engines/AbstractEngine/abstractEngine.dom.d.ts +3 -3
- package/Engines/AbstractEngine/abstractEngine.loadingScreen.d.ts +2 -2
- package/Engines/AbstractEngine/abstractEngine.query.d.ts +3 -3
- package/Engines/AbstractEngine/abstractEngine.renderPass.d.ts +1 -1
- package/Engines/AbstractEngine/abstractEngine.states.d.ts +3 -3
- package/Engines/AbstractEngine/abstractEngine.texture.d.ts +4 -4
- package/Engines/AbstractEngine/abstractEngine.timeQuery.d.ts +3 -3
- package/Engines/AbstractEngine/abstractEngine.views.d.ts +4 -4
- package/Engines/AbstractEngine/index.d.ts +10 -10
- package/Engines/Extensions/engine.alpha.d.ts +1 -1
- package/Engines/Extensions/engine.computeShader.d.ts +7 -7
- package/Engines/Extensions/engine.cubeTexture.d.ts +5 -5
- package/Engines/Extensions/engine.debugging.d.ts +1 -1
- package/Engines/Extensions/engine.dynamicBuffer.d.ts +3 -3
- package/Engines/Extensions/engine.dynamicTexture.d.ts +4 -4
- package/Engines/Extensions/engine.multiRender.d.ts +5 -5
- package/Engines/Extensions/engine.multiview.d.ts +9 -9
- package/Engines/Extensions/engine.prefilteredCubeTexture.d.ts +4 -4
- package/Engines/Extensions/engine.query.d.ts +7 -7
- package/Engines/Extensions/engine.rawTexture.d.ts +4 -4
- package/Engines/Extensions/engine.readTexture.d.ts +4 -4
- package/Engines/Extensions/engine.renderTarget.d.ts +6 -6
- package/Engines/Extensions/engine.renderTargetCube.d.ts +3 -3
- package/Engines/Extensions/engine.renderTargetTexture.d.ts +3 -3
- package/Engines/Extensions/engine.textureSelector.d.ts +2 -2
- package/Engines/Extensions/engine.transformFeedback.d.ts +3 -3
- package/Engines/Extensions/engine.uniformBuffer.d.ts +4 -4
- package/Engines/Extensions/engine.videoTexture.d.ts +4 -4
- package/Engines/Extensions/engine.views.d.ts +1 -1
- package/Engines/Extensions/index.d.ts +20 -20
- package/Engines/IPipelineContext.d.ts +4 -4
- package/Engines/Native/index.d.ts +2 -2
- package/Engines/Native/nativeDataStream.d.ts +1 -1
- package/Engines/Native/nativeHardwareTexture.d.ts +3 -3
- package/Engines/Native/nativeInterfaces.d.ts +6 -6
- package/Engines/Native/nativePipelineContext.d.ts +8 -8
- package/Engines/Native/nativeRenderTargetWrapper.d.ts +5 -5
- package/Engines/Native/nativeShaderProcessingContext.d.ts +1 -1
- package/Engines/Native/nativeShaderProcessors.d.ts +4 -4
- package/Engines/Native/validatedNativeDataStream.d.ts +2 -2
- package/Engines/Processors/Expressions/Operators/index.d.ts +4 -4
- package/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.js +2 -6
- package/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.js.map +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/index.d.ts +2 -2
- package/Engines/Processors/iShaderProcessor.d.ts +8 -4
- package/Engines/Processors/iShaderProcessor.js.map +1 -1
- package/Engines/Processors/index.d.ts +9 -9
- package/Engines/Processors/shaderCodeConditionNode.d.ts +5 -3
- package/Engines/Processors/shaderCodeConditionNode.js +2 -2
- package/Engines/Processors/shaderCodeConditionNode.js.map +1 -1
- package/Engines/Processors/shaderCodeNode.d.ts +4 -2
- package/Engines/Processors/shaderCodeNode.js +3 -2
- package/Engines/Processors/shaderCodeNode.js.map +1 -1
- package/Engines/Processors/shaderCodeTestNode.d.ts +2 -2
- package/Engines/Processors/shaderProcessingOptions.d.ts +2 -2
- package/Engines/Processors/shaderProcessor.d.ts +6 -6
- package/Engines/Processors/shaderProcessor.js +16 -14
- package/Engines/Processors/shaderProcessor.js.map +1 -1
- package/Engines/WebGL/webGL2ShaderProcessors.d.ts +2 -2
- package/Engines/WebGL/webGLHardwareTexture.d.ts +2 -2
- package/Engines/WebGL/webGLPipelineContext.d.ts +6 -6
- package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +5 -5
- package/Engines/WebGL/webGLShaderProcessors.d.ts +4 -4
- package/Engines/WebGPU/Extensions/engine.alpha.d.ts +2 -2
- package/Engines/WebGPU/Extensions/engine.computeShader.d.ts +7 -7
- package/Engines/WebGPU/Extensions/engine.cubeTexture.d.ts +5 -5
- package/Engines/WebGPU/Extensions/engine.dynamicTexture.d.ts +4 -4
- package/Engines/WebGPU/Extensions/engine.multiRender.d.ts +5 -5
- package/Engines/WebGPU/Extensions/engine.query.d.ts +1 -1
- package/Engines/WebGPU/Extensions/engine.rawTexture.d.ts +4 -4
- package/Engines/WebGPU/Extensions/engine.readTexture.d.ts +3 -3
- package/Engines/WebGPU/Extensions/engine.renderTarget.d.ts +6 -6
- package/Engines/WebGPU/Extensions/engine.renderTargetCube.d.ts +3 -3
- package/Engines/WebGPU/Extensions/engine.renderTargetTexture.d.ts +3 -3
- package/Engines/WebGPU/Extensions/engine.videoTexture.d.ts +4 -4
- package/Engines/WebGPU/Extensions/index.d.ts +13 -13
- package/Engines/WebGPU/webgpuBufferManager.d.ts +4 -4
- package/Engines/WebGPU/webgpuBundleList.d.ts +1 -1
- package/Engines/WebGPU/webgpuCacheBindGroups.d.ts +5 -5
- package/Engines/WebGPU/webgpuCacheRenderPipeline.d.ts +5 -5
- package/Engines/WebGPU/webgpuCacheRenderPipelineString.d.ts +2 -2
- package/Engines/WebGPU/webgpuCacheRenderPipelineTree.d.ts +2 -2
- package/Engines/WebGPU/webgpuCacheSampler.d.ts +2 -2
- package/Engines/WebGPU/webgpuClearQuad.d.ts +7 -7
- package/Engines/WebGPU/webgpuComputeContext.d.ts +3 -3
- package/Engines/WebGPU/webgpuComputePipelineContext.d.ts +3 -3
- package/Engines/WebGPU/webgpuDepthCullingState.d.ts +3 -3
- package/Engines/WebGPU/webgpuDrawContext.d.ts +4 -4
- package/Engines/WebGPU/webgpuExternalTexture.d.ts +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.d.ts +3 -3
- package/Engines/WebGPU/webgpuMaterialContext.d.ts +5 -5
- package/Engines/WebGPU/webgpuOcclusionQuery.d.ts +2 -2
- package/Engines/WebGPU/webgpuPerfCounter.d.ts +1 -1
- package/Engines/WebGPU/webgpuPipelineContext.d.ts +8 -8
- package/Engines/WebGPU/webgpuQuerySet.d.ts +3 -3
- package/Engines/WebGPU/webgpuRenderTargetWrapper.d.ts +4 -4
- package/Engines/WebGPU/webgpuShaderProcessingContext.d.ts +2 -2
- package/Engines/WebGPU/webgpuShaderProcessor.d.ts +4 -4
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.d.ts +5 -5
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.d.ts +22 -18
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +64 -21
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
- package/Engines/WebGPU/webgpuSnapshotRendering.d.ts +2 -2
- package/Engines/WebGPU/webgpuStencilStateComposer.d.ts +2 -2
- package/Engines/WebGPU/webgpuTextureHelper.d.ts +2 -2
- package/Engines/WebGPU/webgpuTextureManager.d.ts +6 -6
- package/Engines/WebGPU/webgpuTimestampQuery.d.ts +4 -4
- package/Engines/abstractEngine.d.ts +41 -41
- package/Engines/abstractEngine.js +2 -2
- package/Engines/abstractEngine.js.map +1 -1
- package/Engines/engine.common.d.ts +3 -3
- package/Engines/engine.d.ts +30 -30
- package/Engines/engineFactory.d.ts +1 -1
- package/Engines/engineStore.d.ts +4 -4
- package/Engines/index.d.ts +39 -39
- package/Engines/nativeEngine.d.ts +27 -27
- package/Engines/nullEngine.d.ts +13 -13
- package/Engines/renderTargetWrapper.d.ts +4 -4
- package/Engines/shaderStore.d.ts +1 -1
- package/Engines/thinEngine.d.ts +27 -27
- package/Engines/thinEngine.functions.d.ts +5 -5
- package/Engines/thinWebGPUEngine.d.ts +8 -8
- package/Engines/webgpuEngine.d.ts +48 -48
- package/Events/deviceInputEvents.d.ts +1 -1
- package/Events/index.d.ts +4 -4
- package/Events/keyboardEvents.d.ts +1 -1
- package/Events/pointerEvents.d.ts +6 -6
- package/FlowGraph/Blocks/Data/Math/flowGraphMathBlocks.d.ts +12 -7
- package/FlowGraph/Blocks/Data/Math/flowGraphMathBlocks.js +26 -7
- package/FlowGraph/Blocks/Data/Math/flowGraphMathBlocks.js.map +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphMathCombineExtractBlocks.d.ts +1 -1
- package/FlowGraph/Blocks/Data/Math/flowGraphMatrixMathBlocks.d.ts +2 -2
- package/FlowGraph/Blocks/Data/Math/flowGraphVectorMathBlocks.d.ts +3 -3
- package/FlowGraph/Blocks/Data/Math/index.d.ts +4 -4
- package/FlowGraph/Blocks/Data/Transformers/flowGraphJsonPointerParserBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Data/Transformers/flowGraphTypeToTypeBlocks.d.ts +1 -1
- package/FlowGraph/Blocks/Data/Transformers/index.d.ts +2 -2
- package/FlowGraph/Blocks/Data/Utils/index.d.ts +5 -5
- package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Data/flowGraphCachedOperationBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Data/flowGraphConstantBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Data/flowGraphGetPropertyBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Data/flowGraphTernaryOperationBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Data/flowGraphTransformCoordinatesSystemBlock.d.ts +6 -6
- package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Data/index.d.ts +12 -12
- package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +6 -6
- package/FlowGraph/Blocks/Event/flowGraphPointerOutEventBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Event/flowGraphPointerOverEventBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +2 -2
- package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Event/flowGraphSendCustomEventBlock.d.ts +3 -3
- package/FlowGraph/Blocks/Event/index.d.ts +7 -7
- package/FlowGraph/Blocks/Execution/Animation/flowGraphInterpolationBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphInterpolationBlock.js +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphInterpolationBlock.js.map +1 -1
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.d.ts +3 -3
- package/FlowGraph/Blocks/Execution/Animation/index.d.ts +6 -6
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCancelDelayBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.d.ts +6 -6
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.d.ts +1 -1
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSequenceBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSetDelayBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.d.ts +5 -5
- package/FlowGraph/Blocks/Execution/ControlFlow/index.d.ts +14 -14
- package/FlowGraph/Blocks/Execution/flowGraphConsoleLogBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +4 -4
- package/FlowGraph/Blocks/Execution/index.d.ts +3 -3
- package/FlowGraph/Blocks/flowGraphBlockFactory.d.ts +2 -2
- package/FlowGraph/Blocks/index.d.ts +5 -5
- package/FlowGraph/CustomTypes/index.d.ts +2 -2
- package/FlowGraph/flowGraph.d.ts +9 -9
- package/FlowGraph/flowGraphAsyncExecutionBlock.d.ts +4 -4
- package/FlowGraph/flowGraphBlock.d.ts +7 -7
- package/FlowGraph/flowGraphContext.d.ts +10 -10
- package/FlowGraph/flowGraphCoordinator.d.ts +4 -4
- package/FlowGraph/flowGraphDataConnection.d.ts +4 -4
- package/FlowGraph/flowGraphEventBlock.d.ts +3 -3
- package/FlowGraph/flowGraphExecutionBlock.d.ts +4 -4
- package/FlowGraph/flowGraphExecutionBlockWithOutSignal.d.ts +3 -3
- package/FlowGraph/flowGraphParser.d.ts +10 -10
- package/FlowGraph/flowGraphPathConverter.d.ts +3 -3
- package/FlowGraph/flowGraphPathConverterComponent.d.ts +6 -6
- package/FlowGraph/flowGraphPathConverterComponent.js +1 -1
- package/FlowGraph/flowGraphPathConverterComponent.js.map +1 -1
- package/FlowGraph/flowGraphRichTypes.d.ts +4 -4
- package/FlowGraph/flowGraphSceneEventCoordinator.d.ts +1 -1
- package/FlowGraph/flowGraphSignalConnection.d.ts +3 -3
- package/FlowGraph/index.d.ts +18 -18
- package/FlowGraph/serialization.d.ts +2 -2
- package/FlowGraph/typeDefinitions.d.ts +1 -1
- package/FlowGraph/utils.d.ts +3 -3
- package/FrameGraph/Node/Blocks/Layers/glowLayerBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Layers/highlightLayerBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/anaglyphPostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/basePostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/blackAndWhitePostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/bloomPostProcessBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/PostProcesses/blurPostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/chromaticAberrationPostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/circleOfConfusionPostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/depthOfFieldPostProcessBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/PostProcesses/extractHighlightsPostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/imageProcessingPostProcessBlock.d.ts +71 -0
- package/FrameGraph/Node/Blocks/PostProcesses/imageProcessingPostProcessBlock.js +246 -0
- package/FrameGraph/Node/Blocks/PostProcesses/imageProcessingPostProcessBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/PostProcesses/passPostProcessBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/PostProcesses/ssrPostProcessBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.d.ts +3 -3
- package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js +4 -4
- package/FrameGraph/Node/Blocks/Rendering/baseObjectRendererBlock.js.map +1 -1
- package/FrameGraph/Node/Blocks/Rendering/baseShadowGeneratorBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Rendering/csmShadowGeneratorBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/Rendering/geometryRendererBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/Rendering/objectRendererBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Rendering/shadowGeneratorBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Rendering/taaObjectRendererBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/Teleport/teleportInBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Teleport/teleportOutBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/Textures/clearBlock.d.ts +3 -3
- package/FrameGraph/Node/Blocks/Textures/copyTextureBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/Textures/generateMipmapsBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/cullObjectsBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/elbowBlock.d.ts +1 -1
- package/FrameGraph/Node/Blocks/executeBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/index.d.ts +30 -29
- package/FrameGraph/Node/Blocks/index.js +1 -0
- package/FrameGraph/Node/Blocks/index.js.map +1 -1
- package/FrameGraph/Node/Blocks/inputBlock.d.ts +3 -3
- package/FrameGraph/Node/Blocks/outputBlock.d.ts +2 -2
- package/FrameGraph/Node/Blocks/resourceContainerBlock.d.ts +1 -1
- package/FrameGraph/Node/nodeRenderGraph.d.ts +4 -4
- package/FrameGraph/Node/nodeRenderGraphBlock.d.ts +3 -3
- package/FrameGraph/Node/nodeRenderGraphBlockConnectionPoint.d.ts +2 -2
- package/FrameGraph/Node/nodeRenderGraphConnectionPointCustomObject.d.ts +2 -2
- package/FrameGraph/Passes/cullPass.d.ts +1 -1
- package/FrameGraph/Passes/renderPass.d.ts +1 -1
- package/FrameGraph/Tasks/Layers/baseLayerTask.d.ts +6 -6
- package/FrameGraph/Tasks/Layers/glowLayerTask.d.ts +1 -1
- package/FrameGraph/Tasks/Layers/highlightLayerTask.d.ts +1 -1
- package/FrameGraph/Tasks/Misc/cullObjectsTask.d.ts +1 -1
- package/FrameGraph/Tasks/Misc/executeTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/anaglyphTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/blackAndWhiteTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/bloomMergeTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/bloomTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/blurTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/chromaticAberrationTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/circleOfConfusionTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldBlurTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldMergeTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/depthOfFieldTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/extractHighlightsTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/imageProcessingTask.d.ts +17 -0
- package/FrameGraph/Tasks/PostProcesses/imageProcessingTask.js +23 -0
- package/FrameGraph/Tasks/PostProcesses/imageProcessingTask.js.map +1 -0
- package/FrameGraph/Tasks/PostProcesses/passTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/postProcessTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/ssrBlurTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/ssrRenderingPipelineTask.d.ts +1 -1
- package/FrameGraph/Tasks/PostProcesses/ssrTask.d.ts +1 -1
- package/FrameGraph/Tasks/Rendering/csmShadowGeneratorTask.d.ts +2 -2
- package/FrameGraph/Tasks/Rendering/geometryRendererTask.d.ts +2 -2
- package/FrameGraph/Tasks/Rendering/objectRendererTask.d.ts +5 -4
- package/FrameGraph/Tasks/Rendering/objectRendererTask.js +5 -4
- package/FrameGraph/Tasks/Rendering/objectRendererTask.js.map +1 -1
- package/FrameGraph/Tasks/Rendering/shadowGeneratorTask.d.ts +2 -2
- package/FrameGraph/Tasks/Rendering/taaObjectRendererTask.d.ts +1 -1
- package/FrameGraph/Tasks/Rendering/taaObjectRendererTask.js +1 -1
- package/FrameGraph/Tasks/Rendering/taaObjectRendererTask.js.map +1 -1
- package/FrameGraph/Tasks/Rendering/utilityLayerRendererTask.d.ts +1 -1
- package/FrameGraph/Tasks/Texture/clearTextureTask.d.ts +2 -2
- package/FrameGraph/Tasks/Texture/copyToBackbufferColorTask.d.ts +1 -1
- package/FrameGraph/Tasks/Texture/copyToTextureTask.d.ts +1 -1
- package/FrameGraph/Tasks/Texture/generateMipMapsTask.d.ts +1 -1
- package/FrameGraph/frameGraph.d.ts +5 -5
- package/FrameGraph/frameGraphRenderContext.d.ts +1 -1
- package/FrameGraph/frameGraphTextureManager.d.ts +2 -2
- package/FrameGraph/index.d.ts +43 -42
- package/FrameGraph/index.js +1 -0
- package/FrameGraph/index.js.map +1 -1
- package/Gamepads/dualShockGamepad.d.ts +2 -2
- package/Gamepads/gamepad.d.ts +1 -1
- package/Gamepads/gamepadManager.d.ts +4 -4
- package/Gamepads/gamepadSceneComponent.d.ts +7 -7
- package/Gamepads/index.d.ts +5 -5
- package/Gamepads/xboxGamepad.d.ts +2 -2
- package/Gizmos/axisDragGizmo.d.ts +16 -16
- package/Gizmos/axisScaleGizmo.d.ts +15 -15
- package/Gizmos/boundingBoxGizmo.d.ts +15 -15
- package/Gizmos/cameraGizmo.d.ts +11 -11
- package/Gizmos/gizmo.d.ts +12 -12
- package/Gizmos/gizmoManager.d.ts +18 -18
- package/Gizmos/index.d.ts +12 -12
- package/Gizmos/lightGizmo.d.ts +13 -13
- package/Gizmos/planeDragGizmo.d.ts +15 -15
- package/Gizmos/planeRotationGizmo.d.ts +17 -17
- package/Gizmos/positionGizmo.d.ts +15 -15
- package/Gizmos/rotationGizmo.d.ts +15 -15
- package/Gizmos/scaleGizmo.d.ts +16 -16
- package/Helpers/environmentHelper.d.ts +10 -10
- package/Helpers/index.d.ts +5 -5
- package/Helpers/photoDome.d.ts +3 -3
- package/Helpers/sceneHelpers.d.ts +13 -13
- package/Helpers/textureDome.d.ts +7 -7
- package/Helpers/videoDome.d.ts +3 -3
- package/IAssetContainer.d.ts +23 -23
- package/Inputs/pointerPickingConfiguration.d.ts +1 -1
- package/Inputs/scene.inputManager.d.ts +8 -8
- package/Instrumentation/engineInstrumentation.d.ts +4 -4
- package/Instrumentation/index.d.ts +3 -3
- package/Instrumentation/sceneInstrumentation.d.ts +2 -2
- package/Instrumentation/timeToken.d.ts +1 -1
- package/Layers/effectLayer.d.ts +16 -16
- package/Layers/effectLayerSceneComponent.d.ts +4 -4
- package/Layers/glowLayer.d.ts +13 -13
- package/Layers/highlightLayer.d.ts +14 -14
- package/Layers/index.d.ts +23 -23
- package/Layers/layer.d.ts +7 -7
- package/Layers/layerSceneComponent.d.ts +2 -2
- package/Layers/thinEffectLayer.d.ts +13 -13
- package/Layers/thinGlowLayer.d.ts +10 -10
- package/Layers/thinHighlightLayer.d.ts +3 -3
- package/LensFlares/index.d.ts +7 -7
- package/LensFlares/lensFlare.d.ts +5 -5
- package/LensFlares/lensFlareSystem.d.ts +5 -5
- package/LensFlares/lensFlareSystemSceneComponent.d.ts +5 -5
- package/Lights/Shadows/cascadedShadowGenerator.d.ts +10 -10
- package/Lights/Shadows/index.d.ts +11 -11
- package/Lights/Shadows/shadowGenerator.d.ts +16 -16
- package/Lights/Shadows/shadowGeneratorSceneComponent.d.ts +2 -2
- package/Lights/areaLight.d.ts +1 -1
- package/Lights/directionalLight.d.ts +8 -8
- package/Lights/hemisphericLight.d.ts +7 -7
- package/Lights/index.d.ts +10 -10
- package/Lights/light.d.ts +12 -12
- package/Lights/pointLight.d.ts +5 -5
- package/Lights/rectAreaLight.d.ts +2 -2
- package/Lights/shadowLight.d.ts +5 -5
- package/Lights/spotLight.d.ts +9 -9
- package/Loading/Plugins/index.d.ts +2 -2
- package/Loading/index.d.ts +4 -4
- package/Loading/sceneLoader.d.ts +16 -16
- package/Materials/Background/backgroundMaterial.d.ts +13 -13
- package/Materials/Background/index.d.ts +5 -5
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.d.ts +19 -11
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.js +28 -1
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.js.map +1 -1
- package/Materials/GreasedLine/greasedLineMaterialDefaults.d.ts +3 -3
- package/Materials/GreasedLine/greasedLineMaterialInterfaces.d.ts +4 -4
- package/Materials/GreasedLine/greasedLinePluginMaterial.d.ts +14 -14
- package/Materials/GreasedLine/greasedLinePluginMaterialShadersGLSL.d.ts +1 -1
- package/Materials/GreasedLine/greasedLinePluginMaterialShadersWGSL.d.ts +1 -1
- package/Materials/GreasedLine/greasedLineSimpleMaterial.d.ts +8 -8
- package/Materials/Node/Blocks/Dual/clipPlanesBlock.d.ts +8 -8
- package/Materials/Node/Blocks/Dual/currentScreenBlock.d.ts +9 -9
- package/Materials/Node/Blocks/Dual/fogBlock.d.ts +7 -7
- package/Materials/Node/Blocks/Dual/imageSourceBlock.d.ts +7 -7
- package/Materials/Node/Blocks/Dual/index.d.ts +37 -37
- package/Materials/Node/Blocks/Dual/lightBlock.d.ts +10 -10
- package/Materials/Node/Blocks/Dual/lightBlock.js +6 -3
- package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.d.ts +12 -12
- package/Materials/Node/Blocks/Dual/reflectionTextureBlock.d.ts +5 -5
- package/Materials/Node/Blocks/Dual/sceneDepthBlock.d.ts +7 -7
- package/Materials/Node/Blocks/Dual/textureBlock.d.ts +12 -12
- package/Materials/Node/Blocks/Fragment/TBNBlock.d.ts +6 -6
- package/Materials/Node/Blocks/Fragment/derivativeBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/discardBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/fragCoordBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/fragDepthBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.d.ts +8 -8
- package/Materials/Node/Blocks/Fragment/frontFacingBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/heightToNormalBlock.d.ts +4 -4
- package/Materials/Node/Blocks/Fragment/imageProcessingBlock.d.ts +8 -8
- package/Materials/Node/Blocks/Fragment/index.d.ts +33 -33
- package/Materials/Node/Blocks/Fragment/perturbNormalBlock.d.ts +8 -8
- package/Materials/Node/Blocks/Fragment/prePassOutputBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/screenSizeBlock.d.ts +4 -4
- package/Materials/Node/Blocks/Fragment/screenSpaceBlock.d.ts +4 -4
- package/Materials/Node/Blocks/Fragment/shadowMapBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Fragment/twirlBlock.d.ts +3 -3
- package/Materials/Node/Blocks/GaussianSplatting/gaussianBlock.d.ts +3 -3
- package/Materials/Node/Blocks/GaussianSplatting/gaussianSplattingBlock.d.ts +3 -3
- package/Materials/Node/Blocks/GaussianSplatting/gaussianSplattingBlock.js +3 -1
- package/Materials/Node/Blocks/GaussianSplatting/gaussianSplattingBlock.js.map +1 -1
- package/Materials/Node/Blocks/GaussianSplatting/index.d.ts +5 -5
- package/Materials/Node/Blocks/GaussianSplatting/splatReaderBlock.d.ts +4 -4
- package/Materials/Node/Blocks/Input/index.d.ts +3 -3
- package/Materials/Node/Blocks/Input/inputBlock.d.ts +13 -13
- package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +6 -6
- package/Materials/Node/Blocks/PBR/anisotropyBlock.d.ts +7 -7
- package/Materials/Node/Blocks/PBR/clearCoatBlock.d.ts +10 -10
- package/Materials/Node/Blocks/PBR/index.d.ts +8 -8
- package/Materials/Node/Blocks/PBR/iridescenceBlock.d.ts +7 -7
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.d.ts +10 -10
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +7 -3
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/reflectionBlock.d.ts +11 -11
- package/Materials/Node/Blocks/PBR/refractionBlock.d.ts +10 -10
- package/Materials/Node/Blocks/PBR/sheenBlock.d.ts +8 -8
- package/Materials/Node/Blocks/PBR/subSurfaceBlock.d.ts +7 -7
- package/Materials/Node/Blocks/Particle/index.d.ts +3 -3
- package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Particle/particleRampGradientBlock.d.ts +3 -3
- package/Materials/Node/Blocks/Particle/particleTextureBlock.d.ts +8 -8
- package/Materials/Node/Blocks/Teleport/index.d.ts +2 -2
- package/Materials/Node/Blocks/Teleport/teleportInBlock.d.ts +4 -4
- package/Materials/Node/Blocks/Teleport/teleportOutBlock.d.ts +7 -7
- package/Materials/Node/Blocks/Vertex/bonesBlock.d.ts +8 -8
- package/Materials/Node/Blocks/Vertex/index.d.ts +17 -17
- package/Materials/Node/Blocks/Vertex/instancesBlock.d.ts +6 -6
- package/Materials/Node/Blocks/Vertex/lightInformationBlock.d.ts +10 -10
- package/Materials/Node/Blocks/Vertex/morphTargetsBlock.d.ts +7 -7
- package/Materials/Node/Blocks/Vertex/vertexOutputBlock.d.ts +3 -3
- package/Materials/Node/Blocks/addBlock.d.ts +2 -2
- package/Materials/Node/Blocks/arcTan2Block.d.ts +3 -3
- package/Materials/Node/Blocks/baseMathBlock.d.ts +2 -2
- package/Materials/Node/Blocks/biPlanarBlock.d.ts +2 -2
- package/Materials/Node/Blocks/clampBlock.d.ts +4 -4
- package/Materials/Node/Blocks/cloudBlock.d.ts +4 -4
- package/Materials/Node/Blocks/colorConverterBlock.d.ts +3 -3
- package/Materials/Node/Blocks/colorMergerBlock.d.ts +4 -4
- package/Materials/Node/Blocks/colorSplitterBlock.d.ts +3 -3
- package/Materials/Node/Blocks/conditionalBlock.d.ts +5 -5
- package/Materials/Node/Blocks/crossBlock.d.ts +3 -3
- package/Materials/Node/Blocks/curveBlock.d.ts +4 -4
- package/Materials/Node/Blocks/customBlock.d.ts +3 -3
- package/Materials/Node/Blocks/debugBlock.d.ts +3 -3
- package/Materials/Node/Blocks/desaturateBlock.d.ts +3 -3
- package/Materials/Node/Blocks/distanceBlock.d.ts +3 -3
- package/Materials/Node/Blocks/divideBlock.d.ts +2 -2
- package/Materials/Node/Blocks/dotBlock.d.ts +3 -3
- package/Materials/Node/Blocks/elbowBlock.d.ts +4 -4
- package/Materials/Node/Blocks/fresnelBlock.d.ts +5 -5
- package/Materials/Node/Blocks/gradientBlock.d.ts +6 -6
- package/Materials/Node/Blocks/index.d.ts +70 -70
- package/Materials/Node/Blocks/lengthBlock.d.ts +3 -3
- package/Materials/Node/Blocks/lerpBlock.d.ts +3 -3
- package/Materials/Node/Blocks/loopBlock.d.ts +3 -3
- package/Materials/Node/Blocks/matrixBuilderBlock.d.ts +3 -3
- package/Materials/Node/Blocks/matrixDeterminantBlock.d.ts +3 -3
- package/Materials/Node/Blocks/matrixSplitterBlock.d.ts +3 -3
- package/Materials/Node/Blocks/matrixTransposeBlock.d.ts +3 -3
- package/Materials/Node/Blocks/maxBlock.d.ts +3 -3
- package/Materials/Node/Blocks/meshAttributeExistsBlock.d.ts +3 -3
- package/Materials/Node/Blocks/minBlock.d.ts +3 -3
- package/Materials/Node/Blocks/modBlock.d.ts +3 -3
- package/Materials/Node/Blocks/multiplyBlock.d.ts +2 -2
- package/Materials/Node/Blocks/nLerpBlock.d.ts +3 -3
- package/Materials/Node/Blocks/negateBlock.d.ts +3 -3
- package/Materials/Node/Blocks/normalBlendBlock.d.ts +3 -3
- package/Materials/Node/Blocks/normalizeBlock.d.ts +3 -3
- package/Materials/Node/Blocks/oneMinusBlock.d.ts +3 -3
- package/Materials/Node/Blocks/posterizeBlock.d.ts +3 -3
- package/Materials/Node/Blocks/powBlock.d.ts +3 -3
- package/Materials/Node/Blocks/randomNumberBlock.d.ts +4 -4
- package/Materials/Node/Blocks/reciprocalBlock.d.ts +3 -3
- package/Materials/Node/Blocks/reflectBlock.d.ts +3 -3
- package/Materials/Node/Blocks/refractBlock.d.ts +3 -3
- package/Materials/Node/Blocks/remapBlock.d.ts +5 -5
- package/Materials/Node/Blocks/replaceColorBlock.d.ts +3 -3
- package/Materials/Node/Blocks/rotate2dBlock.d.ts +3 -3
- package/Materials/Node/Blocks/scaleBlock.d.ts +3 -3
- package/Materials/Node/Blocks/simplexPerlin3DBlock.d.ts +3 -3
- package/Materials/Node/Blocks/smoothStepBlock.d.ts +3 -3
- package/Materials/Node/Blocks/stepBlock.d.ts +3 -3
- package/Materials/Node/Blocks/storageReadBlock.d.ts +3 -3
- package/Materials/Node/Blocks/storageWriteBlock.d.ts +3 -3
- package/Materials/Node/Blocks/subtractBlock.d.ts +2 -2
- package/Materials/Node/Blocks/transformBlock.d.ts +6 -6
- package/Materials/Node/Blocks/triPlanarBlock.d.ts +12 -12
- package/Materials/Node/Blocks/trigonometryBlock.d.ts +4 -4
- package/Materials/Node/Blocks/vectorMergerBlock.d.ts +4 -4
- package/Materials/Node/Blocks/vectorSplitterBlock.d.ts +3 -3
- package/Materials/Node/Blocks/viewDirectionBlock.d.ts +4 -4
- package/Materials/Node/Blocks/voronoiNoiseBlock.d.ts +3 -3
- package/Materials/Node/Blocks/waveBlock.d.ts +4 -4
- package/Materials/Node/Blocks/worleyNoise3DBlock.d.ts +4 -4
- package/Materials/Node/Enums/index.d.ts +5 -5
- package/Materials/Node/Optimizers/index.d.ts +1 -1
- package/Materials/Node/Optimizers/nodeMaterialOptimizer.d.ts +1 -1
- package/Materials/Node/index.d.ts +9 -9
- package/Materials/Node/nodeMaterial.d.ts +36 -36
- package/Materials/Node/nodeMaterialBlock.d.ts +12 -12
- package/Materials/Node/nodeMaterialBlockConnectionPoint.d.ts +6 -6
- package/Materials/Node/nodeMaterialBuildState.d.ts +6 -6
- package/Materials/Node/nodeMaterialBuildStateSharedData.d.ts +6 -6
- package/Materials/Node/nodeMaterialConnectionPointCustomObject.d.ts +4 -4
- package/Materials/Node/nodeMaterialDefault.d.ts +1 -1
- package/Materials/Occlusion/index.d.ts +1 -1
- package/Materials/Occlusion/occlusionMaterial.d.ts +4 -4
- package/Materials/PBR/index.d.ts +15 -15
- package/Materials/PBR/pbrAnisotropicConfiguration.d.ts +11 -11
- package/Materials/PBR/pbrBRDFConfiguration.d.ts +3 -3
- package/Materials/PBR/pbrBaseMaterial.d.ts +24 -24
- package/Materials/PBR/pbrBaseMaterial.js +2 -1
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/PBR/pbrBaseSimpleMaterial.d.ts +5 -5
- package/Materials/PBR/pbrClearCoatConfiguration.d.ts +12 -12
- package/Materials/PBR/pbrIridescenceConfiguration.d.ts +9 -9
- package/Materials/PBR/pbrMaterial.d.ts +7 -7
- package/Materials/PBR/pbrMaterial.decalMap.d.ts +2 -2
- package/Materials/PBR/pbrMetallicRoughnessMaterial.d.ts +5 -5
- package/Materials/PBR/pbrSheenConfiguration.d.ts +12 -12
- package/Materials/PBR/pbrSpecularGlossinessMaterial.d.ts +5 -5
- package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +27 -14
- package/Materials/PBR/pbrSubSurfaceConfiguration.js +17 -0
- package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
- package/Materials/Textures/Filtering/hdrFiltering.d.ts +2 -2
- package/Materials/Textures/Filtering/hdrIrradianceFiltering.d.ts +2 -2
- package/Materials/Textures/Loaders/EXR/exrLoader.compression.d.ts +1 -1
- package/Materials/Textures/Loaders/EXR/exrLoader.compression.huf.d.ts +1 -1
- package/Materials/Textures/Loaders/EXR/exrLoader.decoder.d.ts +3 -3
- package/Materials/Textures/Loaders/EXR/exrLoader.header.d.ts +2 -2
- package/Materials/Textures/Loaders/EXR/exrLoader.interfaces.d.ts +1 -1
- package/Materials/Textures/Loaders/EXR/index.d.ts +7 -7
- package/Materials/Textures/Loaders/basisTextureLoader.d.ts +3 -3
- package/Materials/Textures/Loaders/ddsTextureLoader.d.ts +3 -3
- package/Materials/Textures/Loaders/envTextureLoader.d.ts +3 -3
- package/Materials/Textures/Loaders/exrTextureLoader.d.ts +2 -2
- package/Materials/Textures/Loaders/hdrTextureLoader.d.ts +2 -2
- package/Materials/Textures/Loaders/iesTextureLoader.d.ts +2 -2
- package/Materials/Textures/Loaders/index.d.ts +11 -11
- package/Materials/Textures/Loaders/internalTextureLoader.d.ts +2 -2
- package/Materials/Textures/Loaders/ktxTextureLoader.d.ts +3 -3
- package/Materials/Textures/Loaders/textureLoaderManager.d.ts +2 -2
- package/Materials/Textures/Loaders/tgaTextureLoader.d.ts +2 -2
- package/Materials/Textures/MultiviewRenderTarget.d.ts +2 -2
- package/Materials/Textures/Packer/frame.d.ts +1 -1
- package/Materials/Textures/Packer/index.d.ts +2 -2
- package/Materials/Textures/Packer/packer.d.ts +5 -5
- package/Materials/Textures/Procedurals/customProceduralTexture.d.ts +5 -5
- package/Materials/Textures/Procedurals/index.d.ts +4 -4
- package/Materials/Textures/Procedurals/noiseProceduralTexture.d.ts +5 -5
- package/Materials/Textures/Procedurals/proceduralTexture.d.ts +10 -10
- package/Materials/Textures/Procedurals/proceduralTextureSceneComponent.d.ts +2 -2
- package/Materials/Textures/baseTexture.d.ts +10 -10
- package/Materials/Textures/baseTexture.polynomial.d.ts +3 -3
- package/Materials/Textures/colorGradingTexture.d.ts +5 -5
- package/Materials/Textures/cubeTexture.d.ts +7 -7
- package/Materials/Textures/dynamicTexture.d.ts +6 -6
- package/Materials/Textures/equiRectangularCubeTexture.d.ts +3 -3
- package/Materials/Textures/externalTexture.d.ts +1 -1
- package/Materials/Textures/hdrCubeTexture.d.ts +7 -7
- package/Materials/Textures/htmlElementTexture.d.ts +8 -8
- package/Materials/Textures/index.d.ts +39 -39
- package/Materials/Textures/internalTexture.d.ts +8 -8
- package/Materials/Textures/mirrorTexture.d.ts +3 -3
- package/Materials/Textures/multiRenderTarget.d.ts +6 -6
- package/Materials/Textures/prePassRenderTarget.d.ts +8 -8
- package/Materials/Textures/rawCubeTexture.d.ts +4 -4
- package/Materials/Textures/rawTexture.d.ts +4 -4
- package/Materials/Textures/rawTexture2DArray.d.ts +3 -3
- package/Materials/Textures/rawTexture3D.d.ts +3 -3
- package/Materials/Textures/refractionTexture.d.ts +3 -3
- package/Materials/Textures/renderTargetTexture.d.ts +21 -20
- package/Materials/Textures/renderTargetTexture.js +6 -5
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/Textures/texture.d.ts +12 -12
- package/Materials/Textures/texture.js +3 -2
- package/Materials/Textures/texture.js.map +1 -1
- package/Materials/Textures/textureCreationOptions.d.ts +1 -1
- package/Materials/Textures/textureSampler.d.ts +1 -1
- package/Materials/Textures/thinRenderTargetTexture.d.ts +6 -6
- package/Materials/Textures/thinTexture.d.ts +4 -4
- package/Materials/Textures/videoTexture.d.ts +7 -7
- package/Materials/clipPlaneMaterialHelper.d.ts +2 -2
- package/Materials/colorCurves.d.ts +1 -1
- package/Materials/drawWrapper.d.ts +6 -6
- package/Materials/drawWrapper.functions.d.ts +2 -2
- package/Materials/effect.d.ts +14 -14
- package/Materials/effect.functions.d.ts +2 -2
- package/Materials/effect.webgl.functions.d.ts +1 -1
- package/Materials/effectFallbacks.d.ts +3 -3
- package/Materials/effectRenderer.d.ts +10 -10
- package/Materials/fresnelParameters.d.ts +2 -2
- package/Materials/iEffectFallbacks.d.ts +1 -1
- package/Materials/imageProcessingConfiguration.d.ts +15 -7
- package/Materials/imageProcessingConfiguration.defines.d.ts +1 -1
- package/Materials/imageProcessingConfiguration.functions.d.ts +1 -1
- package/Materials/imageProcessingConfiguration.js +16 -2
- package/Materials/imageProcessingConfiguration.js.map +1 -1
- package/Materials/index.d.ts +49 -49
- package/Materials/material.d.ts +26 -26
- package/Materials/material.decalMap.d.ts +3 -3
- package/Materials/material.decalMapConfiguration.d.ts +5 -5
- package/Materials/material.detailMapConfiguration.d.ts +9 -9
- package/Materials/materialHelper.d.ts +12 -12
- package/Materials/materialHelper.functions.d.ts +12 -12
- package/Materials/materialPluginBase.d.ts +15 -15
- package/Materials/materialPluginEvent.d.ts +10 -10
- package/Materials/materialPluginFactoryExport.d.ts +3 -3
- package/Materials/materialPluginManager.d.ts +8 -8
- package/Materials/materialStencilState.d.ts +2 -2
- package/Materials/meshDebugPluginMaterial.d.ts +8 -8
- package/Materials/multiMaterial.d.ts +6 -6
- package/Materials/prePassConfiguration.d.ts +4 -4
- package/Materials/pushMaterial.d.ts +8 -8
- package/Materials/shaderMaterial.d.ts +15 -15
- package/Materials/shadowDepthWrapper.d.ts +6 -6
- package/Materials/standardMaterial.d.ts +19 -19
- package/Materials/standardMaterial.decalMap.d.ts +2 -2
- package/Materials/uniformBuffer.d.ts +6 -6
- package/Materials/uniformBufferEffectCommonAccessor.d.ts +3 -3
- package/Maths/index.d.ts +8 -8
- package/Maths/math.axis.d.ts +1 -1
- package/Maths/math.color.d.ts +3 -3
- package/Maths/math.d.ts +10 -10
- package/Maths/math.frustum.d.ts +3 -3
- package/Maths/math.functions.d.ts +3 -3
- package/Maths/math.isovector.d.ts +1 -1
- package/Maths/math.like.d.ts +1 -1
- package/Maths/math.path.d.ts +3 -3
- package/Maths/math.plane.d.ts +3 -3
- package/Maths/math.polar.d.ts +2 -2
- package/Maths/math.vector.d.ts +6 -6
- package/Maths/math.vector.functions.d.ts +1 -1
- package/Maths/math.vertexFormat.d.ts +1 -1
- package/Maths/math.viewport.d.ts +1 -1
- package/Maths/sphericalPolynomial.d.ts +2 -2
- package/Maths/tensor.d.ts +1 -1
- package/Meshes/Builders/boxBuilder.d.ts +6 -6
- package/Meshes/Builders/capsuleBuilder.d.ts +5 -5
- package/Meshes/Builders/cylinderBuilder.d.ts +6 -6
- package/Meshes/Builders/decalBuilder.d.ts +3 -3
- package/Meshes/Builders/discBuilder.d.ts +5 -5
- package/Meshes/Builders/geodesicBuilder.d.ts +5 -5
- package/Meshes/Builders/goldbergBuilder.d.ts +5 -5
- package/Meshes/Builders/greasedLineBuilder.d.ts +11 -11
- package/Meshes/Builders/groundBuilder.d.ts +6 -6
- package/Meshes/Builders/hemisphereBuilder.d.ts +2 -2
- package/Meshes/Builders/icoSphereBuilder.d.ts +5 -5
- package/Meshes/Builders/index.d.ts +25 -25
- package/Meshes/Builders/latheBuilder.d.ts +5 -5
- package/Meshes/Builders/linesBuilder.d.ts +7 -7
- package/Meshes/Builders/planeBuilder.d.ts +6 -6
- package/Meshes/Builders/polygonBuilder.d.ts +7 -7
- package/Meshes/Builders/polyhedronBuilder.d.ts +6 -6
- package/Meshes/Builders/ribbonBuilder.d.ts +6 -6
- package/Meshes/Builders/shapeBuilder.d.ts +5 -5
- package/Meshes/Builders/sphereBuilder.d.ts +5 -5
- package/Meshes/Builders/textBuilder.d.ts +6 -6
- package/Meshes/Builders/tiledBoxBuilder.d.ts +6 -6
- package/Meshes/Builders/tiledPlaneBuilder.d.ts +5 -5
- package/Meshes/Builders/torusBuilder.d.ts +4 -4
- package/Meshes/Builders/torusKnotBuilder.d.ts +4 -4
- package/Meshes/Builders/tubeBuilder.d.ts +5 -5
- package/Meshes/Compression/dracoCodec.d.ts +2 -2
- package/Meshes/Compression/dracoCompression.d.ts +6 -6
- package/Meshes/Compression/dracoCompressionWorker.d.ts +1 -1
- package/Meshes/Compression/dracoDecoder.d.ts +6 -6
- package/Meshes/Compression/dracoEncoder.d.ts +5 -5
- package/Meshes/Compression/index.d.ts +4 -4
- package/Meshes/Compression/meshoptCompression.d.ts +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.d.ts +3 -3
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +15 -6
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
- package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +8 -8
- package/Meshes/GreasedLine/greasedLineMesh.d.ts +11 -11
- package/Meshes/GreasedLine/greasedLineRibbonMesh.d.ts +11 -11
- package/Meshes/Node/Blocks/Instances/instantiateBaseBlock.d.ts +5 -5
- package/Meshes/Node/Blocks/Instances/instantiateBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Instances/instantiateLinearBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.d.ts +6 -6
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.d.ts +5 -5
- package/Meshes/Node/Blocks/Instances/instantiateOnVolumeBlock.d.ts +6 -6
- package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Matrices/alignBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Matrices/rotationXBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Matrices/rotationYBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Matrices/rotationZBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Matrices/scalingBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Matrices/translationBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Set/aggregatorBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Set/latticeBlock.d.ts +5 -5
- package/Meshes/Node/Blocks/Set/setColorsBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Set/setMaterialIDBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Set/setNormalsBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Set/setPositionsBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Set/setTangentsBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Set/setUVsBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Sources/boxBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/capsuleBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/cylinderBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/discBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/gridBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/icoSphereBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/Sources/nullBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/Sources/planeBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/pointListBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/sphereBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Sources/torusBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Teleport/teleportInBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/Teleport/teleportOutBlock.d.ts +5 -5
- package/Meshes/Node/Blocks/Textures/geometryTextureBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/booleanGeometryBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/boundingBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/cleanGeometryBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/computeNormalsBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/conditionBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/debugBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/geometryArcTan2Block.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryClampBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryCollectionBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/geometryCrossBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryCurveBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryDesaturateBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryDistanceBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryDotBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryEaseBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/geometryElbowBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/geometryInfoBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryInputBlock.d.ts +6 -6
- package/Meshes/Node/Blocks/geometryInterceptorBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/geometryLengthBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryLerpBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryModBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryNLerpBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryOptimizeBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/geometryOutputBlock.d.ts +4 -4
- package/Meshes/Node/Blocks/geometryPosterizeBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryPowBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryReplaceColorBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryRotate2dBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometrySmoothStepBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryStepBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/geometryTransformBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/geometryTrigonometryBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/intFloatConverterBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/mapRangeBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/mappingBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/mathBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/matrixComposeBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/mergeGeometryBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/noiseBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/normalizeVectorBlock.d.ts +3 -3
- package/Meshes/Node/Blocks/randomBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/subdivideBlock.d.ts +2 -2
- package/Meshes/Node/Blocks/vectorConverterBlock.d.ts +3 -3
- package/Meshes/Node/index.d.ts +87 -87
- package/Meshes/Node/nodeGeometry.d.ts +9 -9
- package/Meshes/Node/nodeGeometryBlock.d.ts +6 -6
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.d.ts +5 -5
- package/Meshes/Node/nodeGeometryBuildState.d.ts +8 -8
- package/Meshes/WebGL/webGLDataBuffer.d.ts +1 -1
- package/Meshes/WebGPU/webgpuDataBuffer.d.ts +2 -2
- package/Meshes/abstractMesh.d.ts +37 -32
- package/Meshes/abstractMesh.decalMap.d.ts +3 -3
- package/Meshes/abstractMesh.hotSpot.d.ts +1 -1
- package/Meshes/abstractMesh.js +1 -1
- package/Meshes/abstractMesh.js.map +1 -1
- package/Meshes/buffer.d.ts +1 -1
- package/Meshes/csg.d.ts +7 -7
- package/Meshes/csg2.d.ts +2 -2
- package/Meshes/geodesicMesh.d.ts +2 -2
- package/Meshes/geometry.d.ts +12 -12
- package/Meshes/goldbergMesh.d.ts +5 -5
- package/Meshes/groundMesh.d.ts +3 -3
- package/Meshes/index.d.ts +55 -55
- package/Meshes/instancedMesh.d.ts +16 -16
- package/Meshes/instancedMesh.js.map +1 -1
- package/Meshes/lattice.d.ts +1 -1
- package/Meshes/lattice.material.d.ts +1 -1
- package/Meshes/linesMesh.d.ts +9 -9
- package/Meshes/mesh.d.ts +30 -30
- package/Meshes/mesh.js +1 -1
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/mesh.vertexData.d.ts +9 -9
- package/Meshes/mesh.vertexData.subdivide.d.ts +1 -1
- package/Meshes/meshBuilder.d.ts +23 -23
- package/Meshes/meshLODLevel.d.ts +2 -2
- package/Meshes/meshSimplification.d.ts +1 -1
- package/Meshes/meshSimplificationSceneComponent.d.ts +6 -6
- package/Meshes/meshUVSpaceRenderer.d.ts +2 -2
- package/Meshes/meshUtils.d.ts +4 -4
- package/Meshes/polygonMesh.d.ts +5 -5
- package/Meshes/subMesh.d.ts +17 -17
- package/Meshes/subMesh.project.d.ts +3 -3
- package/Meshes/thinInstanceMesh.d.ts +4 -4
- package/Meshes/trailMesh.d.ts +3 -3
- package/Meshes/transformNode.d.ts +9 -9
- package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.d.ts +4 -4
- package/Misc/HighDynamicRange/hdr.d.ts +1 -1
- package/Misc/HighDynamicRange/index.d.ts +3 -3
- package/Misc/HighDynamicRange/panoramaToCubemap.d.ts +1 -1
- package/Misc/PerformanceViewer/index.d.ts +4 -4
- package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.d.ts +1 -1
- package/Misc/PerformanceViewer/performanceViewerCollector.d.ts +4 -4
- package/Misc/arrayTools.d.ts +1 -1
- package/Misc/assetsManager.d.ts +15 -15
- package/Misc/basis.d.ts +1 -1
- package/Misc/brdfTextureTools.d.ts +2 -2
- package/Misc/copyTextureToTexture.d.ts +3 -3
- package/Misc/copyTools.d.ts +3 -3
- package/Misc/dds.d.ts +4 -4
- package/Misc/decorators.d.ts +1 -1
- package/Misc/decorators.serialization.d.ts +7 -7
- package/Misc/depthReducer.d.ts +5 -5
- package/Misc/dumpTools.d.ts +1 -1
- package/Misc/environmentTextureTools.d.ts +5 -5
- package/Misc/equirectangularCapture.d.ts +5 -5
- package/Misc/fileRequest.d.ts +1 -1
- package/Misc/fileTools.d.ts +12 -6
- package/Misc/fileTools.js +30 -0
- package/Misc/fileTools.js.map +1 -1
- package/Misc/filesInput.d.ts +4 -4
- package/Misc/gradients.d.ts +2 -2
- package/Misc/greasedLineTools.d.ts +8 -8
- package/Misc/index.d.ts +82 -82
- package/Misc/interfaces/iClipPlanesHolder.d.ts +2 -2
- package/Misc/interfaces/iPerfViewer.d.ts +1 -1
- package/Misc/khronosTextureContainer.d.ts +1 -1
- package/Misc/khronosTextureContainer2.d.ts +5 -5
- package/Misc/meshExploder.d.ts +1 -1
- package/Misc/minMaxReducer.d.ts +9 -9
- package/Misc/observable.d.ts +1 -1
- package/Misc/observable.extensions.d.ts +3 -3
- package/Misc/observableCoroutine.d.ts +2 -2
- package/Misc/pivotTools.d.ts +1 -1
- package/Misc/pressureObserverWrapper.d.ts +1 -1
- package/Misc/reflector.d.ts +1 -1
- package/Misc/retryStrategy.d.ts +1 -1
- package/Misc/rgbdTextureTools.d.ts +3 -3
- package/Misc/sceneOptimizer.d.ts +2 -2
- package/Misc/sceneRecorder.d.ts +1 -1
- package/Misc/sceneSerializer.d.ts +1 -1
- package/Misc/screenshotTools.d.ts +4 -4
- package/Misc/stringDictionary.d.ts +1 -1
- package/Misc/textureTools.d.ts +3 -3
- package/Misc/tga.d.ts +1 -1
- package/Misc/timer.d.ts +4 -4
- package/Misc/tools.d.ts +10 -10
- package/Misc/trajectoryClassifier.d.ts +2 -2
- package/Misc/videoRecorder.d.ts +2 -2
- package/Misc/virtualJoystick.d.ts +2 -2
- package/Misc/webRequest.d.ts +2 -2
- package/Misc/workerPool.d.ts +1 -1
- package/Morph/index.d.ts +2 -2
- package/Morph/morphTarget.d.ts +7 -7
- package/Morph/morphTargetManager.d.ts +5 -5
- package/Navigation/INavigationEngine.d.ts +4 -4
- package/Navigation/Plugins/index.d.ts +1 -1
- package/Navigation/Plugins/recastJSPlugin.d.ts +6 -6
- package/Navigation/index.d.ts +2 -2
- package/ObjectModel/index.d.ts +1 -1
- package/Offline/database.d.ts +1 -1
- package/Offline/index.d.ts +2 -2
- package/Particles/EmitterTypes/IParticleEmitterType.d.ts +6 -6
- package/Particles/EmitterTypes/boxParticleEmitter.d.ts +6 -6
- package/Particles/EmitterTypes/coneParticleEmitter.d.ts +6 -6
- package/Particles/EmitterTypes/customParticleEmitter.d.ts +7 -7
- package/Particles/EmitterTypes/cylinderParticleEmitter.d.ts +6 -6
- package/Particles/EmitterTypes/hemisphericParticleEmitter.d.ts +6 -6
- package/Particles/EmitterTypes/index.d.ts +9 -9
- package/Particles/EmitterTypes/meshParticleEmitter.d.ts +9 -9
- package/Particles/EmitterTypes/pointParticleEmitter.d.ts +6 -6
- package/Particles/EmitterTypes/sphereParticleEmitter.d.ts +6 -6
- package/Particles/IGPUParticleSystemPlatform.d.ts +5 -5
- package/Particles/IParticleSystem.d.ts +13 -13
- package/Particles/baseParticleSystem.d.ts +23 -23
- package/Particles/cloudPoint.d.ts +6 -6
- package/Particles/computeShaderParticleSystem.d.ts +9 -9
- package/Particles/gpuParticleSystem.d.ts +25 -25
- package/Particles/index.d.ts +21 -21
- package/Particles/particle.d.ts +6 -6
- package/Particles/particleHelper.d.ts +6 -6
- package/Particles/particleSystem.d.ts +13 -13
- package/Particles/particleSystem.functions.d.ts +5 -5
- package/Particles/particleSystemComponent.d.ts +5 -5
- package/Particles/particleSystemSet.d.ts +6 -6
- package/Particles/pointsCloudSystem.d.ts +5 -5
- package/Particles/solidParticle.d.ts +9 -9
- package/Particles/solidParticleSystem.d.ts +11 -11
- package/Particles/subEmitter.d.ts +3 -3
- package/Particles/thinParticleSystem.d.ts +16 -16
- package/Particles/webgl2ParticleSystem.d.ts +10 -10
- package/Physics/IPhysicsEngine.d.ts +4 -4
- package/Physics/Plugins/ammoJSPlugin.d.ts +1 -1
- package/Physics/Plugins/cannonJSPlugin.d.ts +1 -1
- package/Physics/Plugins/oimoJSPlugin.d.ts +1 -1
- package/Physics/castingResult.d.ts +3 -3
- package/Physics/index.d.ts +10 -10
- package/Physics/joinedPhysicsEngineComponent.d.ts +9 -9
- package/Physics/physicsEngine.d.ts +1 -1
- package/Physics/physicsEngineComponent.d.ts +3 -3
- package/Physics/physicsHelper.d.ts +6 -6
- package/Physics/physicsImpostor.d.ts +1 -1
- package/Physics/physicsJoint.d.ts +1 -1
- package/Physics/physicsPointProximityQuery.d.ts +3 -3
- package/Physics/physicsRaycastResult.d.ts +2 -2
- package/Physics/physicsShapeCastQuery.d.ts +3 -3
- package/Physics/physicsShapeProximityCastQuery.d.ts +3 -3
- package/Physics/proximityCastResult.d.ts +1 -1
- package/Physics/shapeCastResult.d.ts +1 -1
- package/Physics/v1/IPhysicsEnginePlugin.d.ts +6 -6
- package/Physics/v1/Plugins/ammoJSPlugin.d.ts +7 -7
- package/Physics/v1/Plugins/cannonJSPlugin.d.ts +8 -8
- package/Physics/v1/Plugins/index.d.ts +3 -3
- package/Physics/v1/Plugins/oimoJSPlugin.d.ts +8 -8
- package/Physics/v1/index.d.ts +6 -6
- package/Physics/v1/physicsEngine.d.ts +7 -7
- package/Physics/v1/physicsEngineComponent.d.ts +7 -7
- package/Physics/v1/physicsImpostor.d.ts +11 -11
- package/Physics/v1/physicsJoint.d.ts +2 -2
- package/Physics/v2/IPhysicsEnginePlugin.d.ts +12 -12
- package/Physics/v2/Plugins/havokPlugin.d.ts +18 -18
- package/Physics/v2/Plugins/index.d.ts +1 -1
- package/Physics/v2/characterController.d.ts +10 -5
- package/Physics/v2/characterController.js +7 -0
- package/Physics/v2/characterController.js.map +1 -1
- package/Physics/v2/index.d.ts +10 -10
- package/Physics/v2/physicsAggregate.d.ts +8 -8
- package/Physics/v2/physicsBody.d.ts +9 -9
- package/Physics/v2/physicsConstraint.d.ts +5 -5
- package/Physics/v2/physicsEngine.d.ts +7 -7
- package/Physics/v2/physicsEngineComponent.d.ts +7 -7
- package/Physics/v2/physicsShape.d.ts +10 -10
- package/Physics/v2/ragdoll.d.ts +7 -7
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.d.ts +15 -15
- package/PostProcesses/RenderPipeline/Pipelines/index.d.ts +19 -19
- package/PostProcesses/RenderPipeline/Pipelines/lensRenderingPipeline.d.ts +7 -7
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.d.ts +4 -4
- package/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.d.ts +6 -6
- package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.d.ts +8 -8
- package/PostProcesses/RenderPipeline/Pipelines/standardRenderingPipeline.d.ts +15 -15
- package/PostProcesses/RenderPipeline/Pipelines/taaRenderingPipeline.d.ts +4 -4
- package/PostProcesses/RenderPipeline/index.d.ts +5 -5
- package/PostProcesses/RenderPipeline/postProcessRenderEffect.d.ts +4 -4
- package/PostProcesses/RenderPipeline/postProcessRenderPipeline.d.ts +6 -6
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.d.ts +2 -2
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManagerSceneComponent.d.ts +4 -4
- package/PostProcesses/anaglyphPostProcess.d.ts +3 -3
- package/PostProcesses/blackAndWhitePostProcess.d.ts +7 -7
- package/PostProcesses/bloomEffect.d.ts +6 -6
- package/PostProcesses/bloomMergePostProcess.d.ts +6 -6
- package/PostProcesses/blurPostProcess.d.ts +8 -8
- package/PostProcesses/chromaticAberrationPostProcess.d.ts +8 -8
- package/PostProcesses/circleOfConfusionPostProcess.d.ts +7 -7
- package/PostProcesses/colorCorrectionPostProcess.d.ts +6 -6
- package/PostProcesses/convolutionPostProcess.d.ts +6 -6
- package/PostProcesses/depthOfFieldBlurPostProcess.d.ts +6 -6
- package/PostProcesses/depthOfFieldBlurPostProcess.js +9 -3
- package/PostProcesses/depthOfFieldBlurPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldEffect.d.ts +7 -7
- package/PostProcesses/depthOfFieldMergePostProcess.d.ts +5 -5
- package/PostProcesses/displayPassPostProcess.d.ts +6 -6
- package/PostProcesses/extractHighlightsPostProcess.d.ts +6 -6
- package/PostProcesses/filterPostProcess.d.ts +7 -7
- package/PostProcesses/fxaaPostProcess.d.ts +6 -6
- package/PostProcesses/grainPostProcess.d.ts +6 -6
- package/PostProcesses/highlightsPostProcess.d.ts +4 -4
- package/PostProcesses/imageProcessingPostProcess.d.ts +12 -29
- package/PostProcesses/imageProcessingPostProcess.js +27 -138
- package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
- package/PostProcesses/index.d.ts +93 -92
- package/PostProcesses/index.js +1 -0
- package/PostProcesses/index.js.map +1 -1
- package/PostProcesses/motionBlurPostProcess.d.ts +9 -9
- package/PostProcesses/passPostProcess.d.ts +7 -7
- package/PostProcesses/postProcess.d.ts +21 -21
- package/PostProcesses/postProcessManager.d.ts +6 -6
- package/PostProcesses/refractionPostProcess.d.ts +9 -9
- package/PostProcesses/screenSpaceCurvaturePostProcess.d.ts +8 -8
- package/PostProcesses/screenSpaceReflectionPostProcess.d.ts +7 -7
- package/PostProcesses/sharpenPostProcess.d.ts +7 -7
- package/PostProcesses/stereoscopicInterlacePostProcess.d.ts +3 -3
- package/PostProcesses/subSurfaceScatteringPostProcess.d.ts +12 -12
- package/PostProcesses/thinAnaglyphPostProcess.d.ts +1 -1
- package/PostProcesses/thinBlackAndWhitePostProcess.d.ts +1 -1
- package/PostProcesses/thinBloomEffect.d.ts +3 -3
- package/PostProcesses/thinBloomMergePostProcess.d.ts +1 -1
- package/PostProcesses/thinBlurPostProcess.d.ts +1 -1
- package/PostProcesses/thinBlurPostProcess.js +1 -0
- package/PostProcesses/thinBlurPostProcess.js.map +1 -1
- package/PostProcesses/thinChromaticAberrationPostProcess.d.ts +4 -4
- package/PostProcesses/thinChromaticAberrationPostProcess.js.map +1 -1
- package/PostProcesses/thinCircleOfConfusionPostProcess.d.ts +1 -1
- package/PostProcesses/thinDepthOfFieldBlurPostProcess.d.ts +1 -1
- package/PostProcesses/thinDepthOfFieldEffect.d.ts +5 -5
- package/PostProcesses/thinDepthOfFieldEffect.js +3 -3
- package/PostProcesses/thinDepthOfFieldEffect.js.map +1 -1
- package/PostProcesses/thinDepthOfFieldMergePostProcess.d.ts +1 -1
- package/PostProcesses/thinExtractHighlightsPostProcess.d.ts +1 -1
- package/PostProcesses/thinImageProcessingPostProcess.d.ts +258 -0
- package/PostProcesses/thinImageProcessingPostProcess.js +462 -0
- package/PostProcesses/thinImageProcessingPostProcess.js.map +1 -0
- package/PostProcesses/thinSSRBlurCombinerPostProcess.d.ts +1 -1
- package/PostProcesses/thinSSRBlurPostProcess.d.ts +2 -2
- package/PostProcesses/thinTAAPostProcess.d.ts +1 -1
- package/PostProcesses/tonemapPostProcess.d.ts +3 -3
- package/PostProcesses/volumetricLightScatteringPostProcess.d.ts +13 -13
- package/PostProcesses/vrDistortionCorrectionPostProcess.d.ts +4 -4
- package/PostProcesses/vrMultiviewToSingleviewPostProcess.d.ts +5 -5
- package/Probes/index.d.ts +1 -1
- package/Probes/reflectionProbe.d.ts +6 -6
- package/Rendering/GlobalIllumination/giRSM.d.ts +1 -1
- package/Rendering/GlobalIllumination/giRSMManager.d.ts +1 -1
- package/Rendering/GlobalIllumination/index.d.ts +10 -10
- package/Rendering/IBLShadows/iblShadowsAccumulationPass.d.ts +4 -4
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.d.ts +6 -6
- package/Rendering/IBLShadows/iblShadowsSpatialBlurPass.d.ts +3 -3
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.d.ts +8 -8
- package/Rendering/IBLShadows/iblShadowsVoxelTracingPass.d.ts +4 -4
- package/Rendering/boundingBoxRenderer.d.ts +11 -11
- package/Rendering/depthPeelingRenderer.d.ts +7 -7
- package/Rendering/depthPeelingSceneComponent.d.ts +5 -5
- package/Rendering/depthRenderer.d.ts +10 -10
- package/Rendering/depthRendererSceneComponent.d.ts +6 -6
- package/Rendering/edgesRenderer.d.ts +14 -14
- package/Rendering/fluidRenderer/fluidRenderer.d.ts +3 -3
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.d.ts +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.d.ts +1 -1
- package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.d.ts +2 -2
- package/Rendering/fluidRenderer/index.d.ts +23 -23
- package/Rendering/geometryBufferRenderer.d.ts +11 -11
- package/Rendering/geometryBufferRendererSceneComponent.d.ts +5 -5
- package/Rendering/iblCdfGenerator.d.ts +7 -7
- package/Rendering/iblCdfGeneratorSceneComponent.d.ts +5 -5
- package/Rendering/index.d.ts +86 -86
- package/Rendering/motionBlurConfiguration.d.ts +1 -1
- package/Rendering/objectRenderer.d.ts +7 -7
- package/Rendering/objectRenderer.js +11 -11
- package/Rendering/objectRenderer.js.map +1 -1
- package/Rendering/outlineRenderer.d.ts +6 -6
- package/Rendering/prePassEffectConfiguration.d.ts +1 -1
- package/Rendering/prePassRenderer.d.ts +11 -11
- package/Rendering/prePassRendererSceneComponent.d.ts +7 -7
- package/Rendering/renderingGroup.d.ts +9 -9
- package/Rendering/renderingManager.d.ts +10 -10
- package/Rendering/screenSpaceReflections2Configuration.d.ts +1 -1
- package/Rendering/screenSpaceReflectionsConfiguration.d.ts +1 -1
- package/Rendering/ssao2Configuration.d.ts +1 -1
- package/Rendering/subSurfaceConfiguration.d.ts +4 -4
- package/Rendering/subSurfaceSceneComponent.d.ts +5 -5
- package/Rendering/utilityLayerRenderer.d.ts +7 -7
- package/Shaders/ShadersInclude/backgroundUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/bumpFragmentFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/defaultFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/defaultUboDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/defaultVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/gaussianSplatting.js +9 -1
- package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
- package/Shaders/ShadersInclude/gaussianSplattingFragmentDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/gaussianSplattingUboDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/geometryUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/lightFragment.js +10 -7
- package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
- package/Shaders/ShadersInclude/lightsFragmentFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/lineUboDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/pbrBRDFFunctions.js +5 -1
- package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectivity.js +2 -2
- package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +16 -4
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/pbrUboDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/pbrVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/shadowMapUboDeclaration.d.ts +2 -2
- package/Shaders/ShadersInclude/shadowMapVertexDeclaration.d.ts +2 -2
- package/Shaders/background.fragment.d.ts +18 -18
- package/Shaders/background.vertex.d.ts +18 -18
- package/Shaders/boundingBoxRenderer.fragment.d.ts +2 -2
- package/Shaders/boundingBoxRenderer.vertex.d.ts +2 -2
- package/Shaders/color.fragment.d.ts +4 -4
- package/Shaders/color.vertex.d.ts +11 -11
- package/Shaders/copyTextureToTexture.fragment.d.ts +1 -1
- package/Shaders/default.fragment.d.ts +28 -28
- package/Shaders/default.vertex.d.ts +33 -33
- package/Shaders/depth.fragment.d.ts +3 -3
- package/Shaders/depth.vertex.d.ts +14 -14
- package/Shaders/extractHighlights.fragment.d.ts +1 -1
- package/Shaders/gaussianSplatting.fragment.d.ts +5 -5
- package/Shaders/gaussianSplatting.vertex.d.ts +10 -10
- package/Shaders/gaussianSplatting.vertex.js +2 -2
- package/Shaders/gaussianSplatting.vertex.js.map +1 -1
- package/Shaders/geometry.fragment.d.ts +7 -7
- package/Shaders/geometry.vertex.d.ts +15 -15
- package/Shaders/glowMapGeneration.fragment.d.ts +3 -3
- package/Shaders/glowMapGeneration.vertex.d.ts +12 -12
- package/Shaders/gpuRenderParticles.fragment.d.ts +9 -9
- package/Shaders/gpuRenderParticles.vertex.d.ts +6 -6
- package/Shaders/gpuTransform.vertex.d.ts +8 -8
- package/Shaders/grain.fragment.d.ts +1 -1
- package/Shaders/greasedLine.vertex.d.ts +2 -2
- package/Shaders/hdrFiltering.fragment.d.ts +4 -4
- package/Shaders/hdrIrradianceFiltering.fragment.d.ts +4 -4
- package/Shaders/iblCdfy.fragment.d.ts +1 -1
- package/Shaders/iblIcdf.fragment.d.ts +1 -1
- package/Shaders/iblScaledLuminance.fragment.d.ts +1 -1
- package/Shaders/iblVoxelGrid.vertex.d.ts +10 -10
- package/Shaders/imageProcessing.fragment.d.ts +3 -3
- package/Shaders/kernelBlur.fragment.d.ts +4 -4
- package/Shaders/kernelBlur.vertex.d.ts +2 -2
- package/Shaders/layer.fragment.d.ts +1 -1
- package/Shaders/line.fragment.d.ts +4 -4
- package/Shaders/line.vertex.d.ts +8 -8
- package/Shaders/meshUVSpaceRenderer.vertex.d.ts +10 -10
- package/Shaders/outline.fragment.d.ts +4 -4
- package/Shaders/outline.vertex.d.ts +14 -14
- package/Shaders/particles.fragment.d.ts +9 -9
- package/Shaders/particles.vertex.d.ts +6 -6
- package/Shaders/pbr.fragment.d.ts +58 -58
- package/Shaders/pbr.vertex.d.ts +33 -33
- package/Shaders/picking.vertex.d.ts +10 -10
- package/Shaders/rgbdDecode.fragment.d.ts +1 -1
- package/Shaders/rgbdEncode.fragment.d.ts +1 -1
- package/Shaders/screenSpaceReflection2.fragment.d.ts +3 -3
- package/Shaders/screenSpaceReflection2BlurCombiner.fragment.d.ts +3 -3
- package/Shaders/shadowMap.fragment.d.ts +4 -4
- package/Shaders/shadowMap.vertex.d.ts +17 -17
- package/Shaders/spriteMap.fragment.d.ts +4 -4
- package/Shaders/spriteMap.vertex.d.ts +3 -3
- package/Shaders/sprites.fragment.d.ts +5 -5
- package/Shaders/sprites.vertex.d.ts +3 -3
- package/Shaders/standard.fragment.d.ts +1 -1
- package/Shaders/subSurfaceScattering.fragment.d.ts +4 -4
- package/Shaders/velocity.vertex.d.ts +2 -2
- package/Shaders/volumetricLightScatteringPass.vertex.d.ts +10 -10
- package/ShadersWGSL/ShadersInclude/backgroundUboDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/bumpFragmentFunctions.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/defaultUboDeclaration.d.ts +2 -2
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +11 -2
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/gaussianSplattingFragmentDeclaration.d.ts +2 -2
- package/ShadersWGSL/ShadersInclude/gaussianSplattingUboDeclaration.d.ts +2 -2
- package/ShadersWGSL/ShadersInclude/lightFragment.js +10 -7
- package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js +5 -1
- package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js +2 -2
- package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +24 -8
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/pbrFragmentExtraDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/pbrFragmentSamplersDeclaration.d.ts +2 -2
- package/ShadersWGSL/ShadersInclude/pbrUboDeclaration.d.ts +2 -2
- package/ShadersWGSL/ShadersInclude/shadowMapFragmentExtraDeclaration.d.ts +2 -2
- package/ShadersWGSL/background.fragment.d.ts +16 -16
- package/ShadersWGSL/background.vertex.d.ts +16 -16
- package/ShadersWGSL/color.fragment.d.ts +4 -4
- package/ShadersWGSL/color.vertex.d.ts +11 -11
- package/ShadersWGSL/copyTextureToTexture.fragment.d.ts +1 -1
- package/ShadersWGSL/default.fragment.d.ts +26 -26
- package/ShadersWGSL/default.vertex.d.ts +31 -31
- package/ShadersWGSL/depth.fragment.d.ts +3 -3
- package/ShadersWGSL/depth.vertex.d.ts +12 -12
- package/ShadersWGSL/extractHighlights.fragment.d.ts +1 -1
- package/ShadersWGSL/gaussianSplatting.fragment.d.ts +5 -5
- package/ShadersWGSL/gaussianSplatting.vertex.d.ts +10 -9
- package/ShadersWGSL/gaussianSplatting.vertex.js +6 -3
- package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
- package/ShadersWGSL/geometry.fragment.d.ts +6 -6
- package/ShadersWGSL/geometry.vertex.d.ts +14 -14
- package/ShadersWGSL/glowMapGeneration.fragment.d.ts +3 -3
- package/ShadersWGSL/glowMapGeneration.vertex.d.ts +12 -12
- package/ShadersWGSL/grain.fragment.d.ts +1 -1
- package/ShadersWGSL/greasedLine.vertex.d.ts +4 -4
- package/ShadersWGSL/hdrFiltering.fragment.d.ts +4 -4
- package/ShadersWGSL/hdrIrradianceFiltering.fragment.d.ts +4 -4
- package/ShadersWGSL/iblIcdf.fragment.d.ts +1 -1
- package/ShadersWGSL/iblScaledLuminance.fragment.d.ts +1 -1
- package/ShadersWGSL/iblVoxelGrid.vertex.d.ts +10 -10
- package/ShadersWGSL/imageProcessing.fragment.d.ts +3 -3
- package/ShadersWGSL/kernelBlur.fragment.d.ts +4 -4
- package/ShadersWGSL/kernelBlur.vertex.d.ts +2 -2
- package/ShadersWGSL/layer.fragment.d.ts +1 -1
- package/ShadersWGSL/line.fragment.d.ts +4 -4
- package/ShadersWGSL/line.vertex.d.ts +8 -8
- package/ShadersWGSL/meshUVSpaceRenderer.vertex.d.ts +10 -10
- package/ShadersWGSL/outline.fragment.d.ts +4 -4
- package/ShadersWGSL/outline.vertex.d.ts +14 -14
- package/ShadersWGSL/particles.fragment.d.ts +9 -9
- package/ShadersWGSL/particles.vertex.d.ts +6 -6
- package/ShadersWGSL/pbr.fragment.d.ts +56 -56
- package/ShadersWGSL/pbr.vertex.d.ts +31 -31
- package/ShadersWGSL/picking.vertex.d.ts +10 -10
- package/ShadersWGSL/rgbdDecode.fragment.d.ts +1 -1
- package/ShadersWGSL/rgbdEncode.fragment.d.ts +1 -1
- package/ShadersWGSL/screenSpaceReflection2.fragment.d.ts +3 -3
- package/ShadersWGSL/screenSpaceReflection2BlurCombiner.fragment.d.ts +3 -3
- package/ShadersWGSL/shadowMap.fragment.d.ts +4 -4
- package/ShadersWGSL/shadowMap.vertex.d.ts +17 -17
- package/ShadersWGSL/sprites.fragment.d.ts +5 -5
- package/ShadersWGSL/sprites.vertex.d.ts +3 -3
- package/ShadersWGSL/subSurfaceScattering.fragment.d.ts +4 -4
- package/Sprites/index.d.ts +10 -10
- package/Sprites/sprite.d.ts +9 -9
- package/Sprites/spriteManager.d.ts +9 -9
- package/Sprites/spriteMap.d.ts +7 -7
- package/Sprites/spritePackedManager.d.ts +3 -3
- package/Sprites/spriteRenderer.d.ts +8 -8
- package/Sprites/spriteSceneComponent.d.ts +10 -10
- package/Sprites/thinSprite.d.ts +2 -2
- package/States/alphaCullingState.d.ts +1 -1
- package/States/depthCullingState.d.ts +1 -1
- package/States/index.d.ts +4 -4
- package/States/stencilState.d.ts +1 -1
- package/States/stencilStateComposer.d.ts +1 -1
- package/XR/features/Layers/WebXRProjectionLayer.d.ts +1 -1
- package/XR/features/WebXRAbstractFeature.d.ts +4 -4
- package/XR/features/WebXRAnchorSystem.d.ts +6 -6
- package/XR/features/WebXRBackgroundRemover.d.ts +4 -4
- package/XR/features/WebXRControllerMovement.d.ts +9 -9
- package/XR/features/WebXRControllerPhysics.d.ts +6 -6
- package/XR/features/WebXRControllerPointerSelection.d.ts +10 -10
- package/XR/features/WebXRControllerTeleportation.d.ts +12 -12
- package/XR/features/WebXRDOMOverlay.d.ts +3 -3
- package/XR/features/WebXRDepthSensing.d.ts +6 -6
- package/XR/features/WebXREyeTracking.d.ts +5 -5
- package/XR/features/WebXRFeaturePointSystem.d.ts +4 -4
- package/XR/features/WebXRHandTracking.d.ts +11 -11
- package/XR/features/WebXRHitTest.d.ts +5 -5
- package/XR/features/WebXRHitTestLegacy.d.ts +6 -6
- package/XR/features/WebXRImageTracking.d.ts +5 -5
- package/XR/features/WebXRLayers.d.ts +8 -8
- package/XR/features/WebXRLightEstimation.d.ts +9 -9
- package/XR/features/WebXRMeshDetector.d.ts +6 -6
- package/XR/features/WebXRNearInteraction.d.ts +13 -13
- package/XR/features/WebXRPlaneDetector.d.ts +5 -5
- package/XR/features/WebXRRawCameraAccess.d.ts +4 -4
- package/XR/features/WebXRSpaceWarp.d.ts +10 -10
- package/XR/features/WebXRWalkingLocomotion.d.ts +4 -4
- package/XR/features/index.d.ts +23 -23
- package/XR/index.d.ts +14 -14
- package/XR/motionController/index.d.ts +9 -9
- package/XR/motionController/webXRAbstractMotionController.d.ts +5 -5
- package/XR/motionController/webXRControllerComponent.d.ts +3 -3
- package/XR/motionController/webXRGenericHandController.d.ts +4 -4
- package/XR/motionController/webXRGenericMotionController.d.ts +4 -4
- package/XR/motionController/webXRHTCViveMotionController.d.ts +4 -4
- package/XR/motionController/webXRMicrosoftMixedRealityController.d.ts +4 -4
- package/XR/motionController/webXRMotionControllerManager.d.ts +2 -2
- package/XR/motionController/webXROculusTouchMotionController.d.ts +4 -4
- package/XR/motionController/webXRProfiledMotionController.d.ts +4 -4
- package/XR/native/index.d.ts +2 -2
- package/XR/native/nativeXRRenderTarget.d.ts +7 -7
- package/XR/webXRCamera.d.ts +7 -7
- package/XR/webXRDefaultExperience.d.ts +16 -16
- package/XR/webXREnterExitUI.d.ts +5 -5
- package/XR/webXRExperienceHelper.d.ts +7 -7
- package/XR/webXRFeaturesManager.d.ts +2 -2
- package/XR/webXRInput.d.ts +6 -6
- package/XR/webXRInputSource.d.ts +7 -7
- package/XR/webXRLayerWrapper.d.ts +3 -3
- package/XR/webXRManagedOutputCanvas.d.ts +5 -5
- package/XR/webXRRenderTargetTextureProvider.d.ts +5 -5
- package/XR/webXRSessionManager.d.ts +9 -9
- package/XR/webXRTypes.d.ts +2 -2
- package/XR/webXRWebGLLayer.d.ts +6 -6
- package/assetContainer.d.ts +27 -27
- package/index.d.ts +49 -49
- package/node.d.ts +15 -15
- package/package.json +1 -1
- package/scene.d.ts +62 -62
- package/sceneComponent.d.ts +12 -12
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type { Nullable } from "../types";
|
|
2
|
-
import type { SmartArray } from "../Misc/smartArray";
|
|
3
|
-
import type { ISpriteManager } from "../Sprites/spriteManager";
|
|
4
|
-
import type { IParticleSystem } from "../Particles/IParticleSystem";
|
|
5
|
-
import { RenderingGroup } from "./renderingGroup";
|
|
6
|
-
import type { Scene } from "../scene";
|
|
7
|
-
import type { Camera } from "../Cameras/camera";
|
|
8
|
-
import type { Material } from "../Materials/material";
|
|
9
|
-
import type { SubMesh } from "../Meshes/subMesh";
|
|
10
|
-
import type { AbstractMesh } from "../Meshes/abstractMesh";
|
|
1
|
+
import type { Nullable } from "../types.js";
|
|
2
|
+
import type { SmartArray } from "../Misc/smartArray.js";
|
|
3
|
+
import type { ISpriteManager } from "../Sprites/spriteManager.js";
|
|
4
|
+
import type { IParticleSystem } from "../Particles/IParticleSystem.js";
|
|
5
|
+
import { RenderingGroup } from "./renderingGroup.js";
|
|
6
|
+
import type { Scene } from "../scene.js";
|
|
7
|
+
import type { Camera } from "../Cameras/camera.js";
|
|
8
|
+
import type { Material } from "../Materials/material.js";
|
|
9
|
+
import type { SubMesh } from "../Meshes/subMesh.js";
|
|
10
|
+
import type { AbstractMesh } from "../Meshes/abstractMesh.js";
|
|
11
11
|
/**
|
|
12
12
|
* Interface describing the different options available in the rendering manager
|
|
13
13
|
* regarding Auto Clear between groups.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Scene } from "../scene";
|
|
2
|
-
import { Color3 } from "../Maths/math.color";
|
|
3
|
-
import { SubSurfaceScatteringPostProcess } from "../PostProcesses/subSurfaceScatteringPostProcess";
|
|
4
|
-
import type { PrePassEffectConfiguration } from "./prePassEffectConfiguration";
|
|
1
|
+
import type { Scene } from "../scene.js";
|
|
2
|
+
import { Color3 } from "../Maths/math.color.js";
|
|
3
|
+
import { SubSurfaceScatteringPostProcess } from "../PostProcesses/subSurfaceScatteringPostProcess.js";
|
|
4
|
+
import type { PrePassEffectConfiguration } from "./prePassEffectConfiguration.js";
|
|
5
5
|
/**
|
|
6
6
|
* Contains all parameters needed for the prepass to perform
|
|
7
7
|
* screen space subsurface scattering
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { Nullable } from "../types";
|
|
2
|
-
import { Scene } from "../scene";
|
|
3
|
-
import type { ISceneSerializableComponent } from "../sceneComponent";
|
|
4
|
-
import { SubSurfaceConfiguration } from "./subSurfaceConfiguration";
|
|
5
|
-
declare module "../scene" {
|
|
1
|
+
import type { Nullable } from "../types.js";
|
|
2
|
+
import { Scene } from "../scene.js";
|
|
3
|
+
import type { ISceneSerializableComponent } from "../sceneComponent.js";
|
|
4
|
+
import { SubSurfaceConfiguration } from "./subSurfaceConfiguration.js";
|
|
5
|
+
declare module "../scene.js" {
|
|
6
6
|
interface Scene {
|
|
7
7
|
/** @internal (Backing field) */
|
|
8
8
|
_subSurfaceConfiguration: Nullable<SubSurfaceConfiguration>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { IDisposable } from "../scene";
|
|
2
|
-
import { Scene } from "../scene";
|
|
3
|
-
import type { Nullable } from "../types";
|
|
4
|
-
import { Observable } from "../Misc/observable";
|
|
5
|
-
import type { AbstractMesh } from "../Meshes/abstractMesh";
|
|
6
|
-
import { HemisphericLight } from "../Lights/hemisphericLight";
|
|
7
|
-
import type { Camera } from "../Cameras/camera";
|
|
1
|
+
import type { IDisposable } from "../scene.js";
|
|
2
|
+
import { Scene } from "../scene.js";
|
|
3
|
+
import type { Nullable } from "../types.js";
|
|
4
|
+
import { Observable } from "../Misc/observable.js";
|
|
5
|
+
import type { AbstractMesh } from "../Meshes/abstractMesh.js";
|
|
6
|
+
import { HemisphericLight } from "../Lights/hemisphericLight.js";
|
|
7
|
+
import type { Camera } from "../Cameras/camera.js";
|
|
8
8
|
/**
|
|
9
9
|
* Renders a layer on top of an existing scene
|
|
10
10
|
*/
|
|
@@ -90,7 +90,15 @@ covA.z,covB.y,covB.z
|
|
|
90
90
|
focal.x/camspace.z,0.,-(focal.x*camspace.x)/(camspace.z*camspace.z),
|
|
91
91
|
0.,focal.y/camspace.z,-(focal.y*camspace.y)/(camspace.z*camspace.z),
|
|
92
92
|
0.,0.,0.
|
|
93
|
-
);mat3 invy=mat3(1,0,0,0,-1,0,0,0,1);mat3 T=invy*transpose(mat3(modelView))*J;mat3 cov2d=transpose(T)*Vrk*T;
|
|
93
|
+
);mat3 invy=mat3(1,0,0,0,-1,0,0,0,1);mat3 T=invy*transpose(mat3(modelView))*J;mat3 cov2d=transpose(T)*Vrk*T;
|
|
94
|
+
#if COMPENSATION
|
|
95
|
+
float c00=cov2d[0][0];float c11=cov2d[1][1];float c01=cov2d[0][1];float detOrig=c00*c11-c01*c01;
|
|
96
|
+
#endif
|
|
97
|
+
cov2d[0][0]+=kernelSize;cov2d[1][1]+=kernelSize;
|
|
98
|
+
#if COMPENSATION
|
|
99
|
+
vec3 c2d=vec3(cov2d[0][0],c01,cov2d[1][1]);float detBlur=c2d.x*c2d.z-c2d.y*c2d.y;float compensation=sqrt(max(0.,detOrig/detBlur));vColor.w*=compensation;
|
|
100
|
+
#endif
|
|
101
|
+
float mid=(cov2d[0][0]+cov2d[1][1])/2.0;float radius=length(vec2((cov2d[0][0]-cov2d[1][1])/2.0,cov2d[0][1]));float epsilon=0.0001;float lambda1=mid+radius+epsilon,lambda2=mid-radius+epsilon;if (lambda2<0.0)
|
|
94
102
|
{return vec4(0.0,0.0,2.0,1.0);}
|
|
95
103
|
vec2 diagonalVector=normalize(vec2(cov2d[0][1],lambda1-cov2d[0][0]));vec2 majorAxis=min(sqrt(2.0*lambda1),1024.0)*diagonalVector;vec2 minorAxis=min(sqrt(2.0*lambda2),1024.0)*vec2(diagonalVector.y,-diagonalVector.x);vec2 vCenter=vec2(pos2d);return vec4(
|
|
96
104
|
vCenter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gaussianSplatting.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/gaussianSplatting.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,mBAAmB,CAAC;AACjC,MAAM,MAAM,GAAG
|
|
1
|
+
{"version":3,"file":"gaussianSplatting.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/gaussianSplatting.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,mBAAmB,CAAC;AACjC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8DAsG+C,CAAC;AAC/D,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"gaussianSplatting\";\nconst shader = `#if !defined(WEBGL2) && !defined(WEBGPU) && !defined(NATIVE)\nmat3 transpose(mat3 matrix) {return mat3(matrix[0][0],matrix[1][0],matrix[2][0],\nmatrix[0][1],matrix[1][1],matrix[2][1],\nmatrix[0][2],matrix[1][2],matrix[2][2]);}\n#endif\nvec2 getDataUV(float index,vec2 textureSize) {float y=floor(index/textureSize.x);float x=index-y*textureSize.x;return vec2((x+0.5)/textureSize.x,(y+0.5)/textureSize.y);}\n#if SH_DEGREE>0\nivec2 getDataUVint(float index,vec2 textureSize) {float y=floor(index/textureSize.x);float x=index-y*textureSize.x;return ivec2(uint(x+0.5),uint(y+0.5));}\n#endif\nstruct Splat {vec4 center;vec4 color;vec4 covA;vec4 covB;\n#if SH_DEGREE>0\nuvec4 sh0; \n#endif\n#if SH_DEGREE>1\nuvec4 sh1;\n#endif\n#if SH_DEGREE>2\nuvec4 sh2;\n#endif\n};Splat readSplat(float splatIndex)\n{Splat splat;vec2 splatUV=getDataUV(splatIndex,dataTextureSize);splat.center=texture2D(centersTexture,splatUV);splat.color=texture2D(colorsTexture,splatUV);splat.covA=texture2D(covariancesATexture,splatUV)*splat.center.w;splat.covB=texture2D(covariancesBTexture,splatUV)*splat.center.w;\n#if SH_DEGREE>0\nivec2 splatUVint=getDataUVint(splatIndex,dataTextureSize);splat.sh0=texelFetch(shTexture0,splatUVint,0);\n#endif\n#if SH_DEGREE>1\nsplat.sh1=texelFetch(shTexture1,splatUVint,0);\n#endif\n#if SH_DEGREE>2\nsplat.sh2=texelFetch(shTexture2,splatUVint,0);\n#endif\nreturn splat;}\n#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)\nvec3 computeColorFromSHDegree(vec3 dir,const vec3 sh[16])\n{const float SH_C0=0.28209479;const float SH_C1=0.48860251;float SH_C2[5];SH_C2[0]=1.092548430;SH_C2[1]=-1.09254843;SH_C2[2]=0.315391565;SH_C2[3]=-1.09254843;SH_C2[4]=0.546274215;float SH_C3[7];SH_C3[0]=-0.59004358;SH_C3[1]=2.890611442;SH_C3[2]=-0.45704579;SH_C3[3]=0.373176332;SH_C3[4]=-0.45704579;SH_C3[5]=1.445305721;SH_C3[6]=-0.59004358;vec3 result=/*SH_C0**/sh[0];\n#if SH_DEGREE>0\nfloat x=dir.x;float y=dir.y;float z=dir.z;result+=- SH_C1*y*sh[1]+SH_C1*z*sh[2]-SH_C1*x*sh[3];\n#if SH_DEGREE>1\nfloat xx=x*x,yy=y*y,zz=z*z;float xy=x*y,yz=y*z,xz=x*z;result+=\nSH_C2[0]*xy*sh[4] +\nSH_C2[1]*yz*sh[5] +\nSH_C2[2]*(2.0*zz-xx-yy)*sh[6] +\nSH_C2[3]*xz*sh[7] +\nSH_C2[4]*(xx-yy)*sh[8];\n#if SH_DEGREE>2\nresult+=\nSH_C3[0]*y*(3.0*xx-yy)*sh[9] +\nSH_C3[1]*xy*z*sh[10] +\nSH_C3[2]*y*(4.0*zz-xx-yy)*sh[11] +\nSH_C3[3]*z*(2.0*zz-3.0*xx-3.0*yy)*sh[12] +\nSH_C3[4]*x*(4.0*zz-xx-yy)*sh[13] +\nSH_C3[5]*z*(xx-yy)*sh[14] +\nSH_C3[6]*x*(xx-3.0*yy)*sh[15];\n#endif\n#endif\n#endif\nreturn result;}\nvec4 decompose(uint value)\n{vec4 components=vec4(\nfloat((value ) & 255u),\nfloat((value>>uint( 8)) & 255u),\nfloat((value>>uint(16)) & 255u),\nfloat((value>>uint(24)) & 255u));return components*vec4(2./255.)-vec4(1.);}\nvec3 computeSH(Splat splat,vec3 color,vec3 dir)\n{vec3 sh[16];sh[0]=color;\n#if SH_DEGREE>0\nvec4 sh00=decompose(splat.sh0.x);vec4 sh01=decompose(splat.sh0.y);vec4 sh02=decompose(splat.sh0.z);sh[1]=vec3(sh00.x,sh00.y,sh00.z);sh[2]=vec3(sh00.w,sh01.x,sh01.y);sh[3]=vec3(sh01.z,sh01.w,sh02.x);\n#endif\n#if SH_DEGREE>1\nvec4 sh03=decompose(splat.sh0.w);vec4 sh04=decompose(splat.sh1.x);vec4 sh05=decompose(splat.sh1.y);sh[4]=vec3(sh02.y,sh02.z,sh02.w);sh[5]=vec3(sh03.x,sh03.y,sh03.z);sh[6]=vec3(sh03.w,sh04.x,sh04.y);sh[7]=vec3(sh04.z,sh04.w,sh05.x);sh[8]=vec3(sh05.y,sh05.z,sh05.w);\n#endif\n#if SH_DEGREE>2\nvec4 sh06=decompose(splat.sh1.z);vec4 sh07=decompose(splat.sh1.w);vec4 sh08=decompose(splat.sh2.x);vec4 sh09=decompose(splat.sh2.y);vec4 sh10=decompose(splat.sh2.z);vec4 sh11=decompose(splat.sh2.w);sh[9]=vec3(sh06.x,sh06.y,sh06.z);sh[10]=vec3(sh06.w,sh07.x,sh07.y);sh[11]=vec3(sh07.z,sh07.w,sh08.x);sh[12]=vec3(sh08.y,sh08.z,sh08.w);sh[13]=vec3(sh09.x,sh09.y,sh09.z);sh[14]=vec3(sh09.w,sh10.x,sh10.y);sh[15]=vec3(sh10.z,sh10.w,sh11.x); \n#endif\nreturn computeColorFromSHDegree(dir,sh);}\n#else\nvec3 computeSH(Splat splat,vec3 color,vec3 dir)\n{return color;}\n#endif\nvec4 gaussianSplatting(vec2 meshPos,vec3 worldPos,vec2 scale,vec3 covA,vec3 covB,mat4 worldMatrix,mat4 viewMatrix,mat4 projectionMatrix)\n{mat4 modelView=viewMatrix*worldMatrix;vec4 camspace=viewMatrix*vec4(worldPos,1.);vec4 pos2d=projectionMatrix*camspace;float bounds=1.2*pos2d.w;if (pos2d.z<-pos2d.w || pos2d.x<-bounds || pos2d.x>bounds\n|| pos2d.y<-bounds || pos2d.y>bounds) {return vec4(0.0,0.0,2.0,1.0);}\nmat3 Vrk=mat3(\ncovA.x,covA.y,covA.z,\ncovA.y,covB.x,covB.y,\ncovA.z,covB.y,covB.z\n);mat3 J=mat3(\nfocal.x/camspace.z,0.,-(focal.x*camspace.x)/(camspace.z*camspace.z),\n0.,focal.y/camspace.z,-(focal.y*camspace.y)/(camspace.z*camspace.z),\n0.,0.,0.\n);mat3 invy=mat3(1,0,0,0,-1,0,0,0,1);mat3 T=invy*transpose(mat3(modelView))*J;mat3 cov2d=transpose(T)*Vrk*T;\n#if COMPENSATION\nfloat c00=cov2d[0][0];float c11=cov2d[1][1];float c01=cov2d[0][1];float detOrig=c00*c11-c01*c01;\n#endif\ncov2d[0][0]+=kernelSize;cov2d[1][1]+=kernelSize;\n#if COMPENSATION\nvec3 c2d=vec3(cov2d[0][0],c01,cov2d[1][1]);float detBlur=c2d.x*c2d.z-c2d.y*c2d.y;float compensation=sqrt(max(0.,detOrig/detBlur));vColor.w*=compensation;\n#endif\nfloat mid=(cov2d[0][0]+cov2d[1][1])/2.0;float radius=length(vec2((cov2d[0][0]-cov2d[1][1])/2.0,cov2d[0][1]));float epsilon=0.0001;float lambda1=mid+radius+epsilon,lambda2=mid-radius+epsilon;if (lambda2<0.0)\n{return vec4(0.0,0.0,2.0,1.0);}\nvec2 diagonalVector=normalize(vec2(cov2d[0][1],lambda1-cov2d[0][0]));vec2 majorAxis=min(sqrt(2.0*lambda1),1024.0)*diagonalVector;vec2 minorAxis=min(sqrt(2.0*lambda2),1024.0)*vec2(diagonalVector.y,-diagonalVector.x);vec2 vCenter=vec2(pos2d);return vec4(\nvCenter \n+ ((meshPos.x*majorAxis\n+ meshPos.y*minorAxis)*invViewport*pos2d.w)*scale,pos2d.zw);}`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const gaussianSplatting = { name, shader };\n"]}
|
|
@@ -74,11 +74,14 @@ preInfo.iridescenceIntensity=iridescenceIntensity;
|
|
|
74
74
|
info.diffuse=computeHemisphericDiffuseLighting(preInfo,diffuse{X}.rgb,light{X}.vLightGround);
|
|
75
75
|
#elif defined(AREALIGHT{X})
|
|
76
76
|
info.diffuse=computeAreaDiffuseLighting(preInfo,diffuse{X}.rgb);
|
|
77
|
+
#elif defined(SS_TRANSLUCENCY)
|
|
78
|
+
#ifndef SS_TRANSLUCENCY_LEGACY
|
|
79
|
+
info.diffuse=computeDiffuseLighting(preInfo,diffuse{X}.rgb)*(1.0-subSurfaceOut.translucencyIntensity);info.diffuseTransmission=computeDiffuseTransmittedLighting(preInfo,diffuse{X}.rgb,subSurfaceOut.transmittance);
|
|
77
80
|
#else
|
|
78
|
-
info.diffuse=
|
|
79
|
-
#ifdef SS_TRANSLUCENCY
|
|
80
|
-
info.diffuse*=(1.0-subSurfaceOut.translucencyIntensity);info.transmission=computeTransmittedLighting(preInfo,diffuse{X}.rgb,subSurfaceOut.transmittance);
|
|
81
|
+
info.diffuse=computeDiffuseTransmittedLighting(preInfo,diffuse{X}.rgb,subSurfaceOut.transmittance);info.diffuseTransmission=vec3(0.0);
|
|
81
82
|
#endif
|
|
83
|
+
#else
|
|
84
|
+
info.diffuse=computeDiffuseLighting(preInfo,diffuse{X}.rgb);
|
|
82
85
|
#endif
|
|
83
86
|
#ifdef SPECULARTERM
|
|
84
87
|
#if AREALIGHT{X}
|
|
@@ -87,7 +90,7 @@ info.specular=computeAreaSpecularLighting(preInfo,light{X}.vLightSpecular.rgb);
|
|
|
87
90
|
#ifdef ANISOTROPIC
|
|
88
91
|
info.specular=computeAnisotropicSpecularLighting(preInfo,viewDirectionW,normalW,anisotropicOut.anisotropicTangent,anisotropicOut.anisotropicBitangent,anisotropicOut.anisotropy,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);
|
|
89
92
|
#else
|
|
90
|
-
info.specular=computeSpecularLighting(preInfo,normalW,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);
|
|
93
|
+
info.specular=computeSpecularLighting(preInfo,normalW,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb,vReflectivityColor.b);
|
|
91
94
|
#endif
|
|
92
95
|
#endif
|
|
93
96
|
#endif
|
|
@@ -114,7 +117,7 @@ info.clearCoat=computeClearCoatLighting(preInfo,clearcoatOut.clearCoatNormalW,cl
|
|
|
114
117
|
#ifdef CLEARCOAT_TINT
|
|
115
118
|
absorption=computeClearCoatLightingAbsorption(clearcoatOut.clearCoatNdotVRefract,preInfo.L,clearcoatOut.clearCoatNormalW,clearcoatOut.clearCoatColor,clearcoatOut.clearCoatThickness,clearcoatOut.clearCoatIntensity);info.diffuse*=absorption;
|
|
116
119
|
#ifdef SS_TRANSLUCENCY
|
|
117
|
-
info.
|
|
120
|
+
info.diffuseTransmission*=absorption;
|
|
118
121
|
#endif
|
|
119
122
|
#ifdef SPECULARTERM
|
|
120
123
|
info.specular*=absorption;
|
|
@@ -122,7 +125,7 @@ info.specular*=absorption;
|
|
|
122
125
|
#endif
|
|
123
126
|
info.diffuse*=info.clearCoat.w;
|
|
124
127
|
#ifdef SS_TRANSLUCENCY
|
|
125
|
-
info.
|
|
128
|
+
info.diffuseTransmission*=info.clearCoat.w;
|
|
126
129
|
#endif
|
|
127
130
|
#ifdef SPECULARTERM
|
|
128
131
|
info.specular*=info.clearCoat.w;
|
|
@@ -303,7 +306,7 @@ diffuseBase+=info.diffuse*shadowDebug{X};
|
|
|
303
306
|
diffuseBase+=info.diffuse*shadow;
|
|
304
307
|
#endif
|
|
305
308
|
#ifdef SS_TRANSLUCENCY
|
|
306
|
-
|
|
309
|
+
diffuseTransmissionBase+=info.diffuseTransmission*shadow;
|
|
307
310
|
#endif
|
|
308
311
|
#ifdef SPECULARTERM
|
|
309
312
|
specularBase+=info.specular*shadow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lightFragment.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/lightFragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,eAAe,CAAC;AAC7B,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Td,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"lightFragment\";\nconst shader = `#ifdef LIGHT{X}\n#if defined(SHADOWONLY) || defined(LIGHTMAP) && defined(LIGHTMAPEXCLUDED{X}) && defined(LIGHTMAPNOSPECULAR{X})\n#else\nvec4 diffuse{X}=light{X}.vLightDiffuse;\n#define CUSTOM_LIGHT{X}_COLOR \n#ifdef PBR\n#ifdef SPOTLIGHT{X}\npreInfo=computePointAndSpotPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW,vPositionW);\n#elif defined(POINTLIGHT{X})\npreInfo=computePointAndSpotPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW,vPositionW);\n#elif defined(HEMILIGHT{X})\npreInfo=computeHemisphericPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW);\n#elif defined(DIRLIGHT{X})\npreInfo=computeDirectionalPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW);\n#elif defined(AREALIGHT{X}) && defined(AREALIGHTSUPPORTED)\npreInfo=computeAreaPreLightingInfo(areaLightsLTC1Sampler,areaLightsLTC2Sampler,viewDirectionW,normalW,vPositionW,light{X}.vLightData,light{X}.vLightWidth.xyz,light{X}.vLightHeight.xyz,roughness);\n#endif\npreInfo.NdotV=NdotV;\n#ifdef SPOTLIGHT{X}\n#ifdef LIGHT_FALLOFF_GLTF{X}\npreInfo.attenuation=computeDistanceLightFalloff_GLTF(preInfo.lightDistanceSquared,light{X}.vLightFalloff.y);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff_GLTF(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightFalloff.z,light{X}.vLightFalloff.w);\n#endif\n#elif defined(LIGHT_FALLOFF_PHYSICAL{X})\npreInfo.attenuation=computeDistanceLightFalloff_Physical(preInfo.lightDistanceSquared);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff_Physical(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightDirection.w);\n#endif\n#elif defined(LIGHT_FALLOFF_STANDARD{X})\npreInfo.attenuation=computeDistanceLightFalloff_Standard(preInfo.lightOffset,light{X}.vLightFalloff.x);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff_Standard(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightDirection.w,light{X}.vLightData.w);\n#endif\n#else\npreInfo.attenuation=computeDistanceLightFalloff(preInfo.lightOffset,preInfo.lightDistanceSquared,light{X}.vLightFalloff.x,light{X}.vLightFalloff.y);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightDirection.w,light{X}.vLightData.w,light{X}.vLightFalloff.z,light{X}.vLightFalloff.w);\n#endif \n#endif\n#elif defined(POINTLIGHT{X})\n#ifdef LIGHT_FALLOFF_GLTF{X}\npreInfo.attenuation=computeDistanceLightFalloff_GLTF(preInfo.lightDistanceSquared,light{X}.vLightFalloff.y);\n#elif defined(LIGHT_FALLOFF_PHYSICAL{X})\npreInfo.attenuation=computeDistanceLightFalloff_Physical(preInfo.lightDistanceSquared);\n#elif defined(LIGHT_FALLOFF_STANDARD{X})\npreInfo.attenuation=computeDistanceLightFalloff_Standard(preInfo.lightOffset,light{X}.vLightFalloff.x);\n#else\npreInfo.attenuation=computeDistanceLightFalloff(preInfo.lightOffset,preInfo.lightDistanceSquared,light{X}.vLightFalloff.x,light{X}.vLightFalloff.y);\n#endif\n#else\npreInfo.attenuation=1.0;\n#endif\n#if defined(HEMILIGHT{X}) || defined(AREALIGHT{X})\npreInfo.roughness=roughness;\n#else\npreInfo.roughness=adjustRoughnessFromLightProperties(roughness,light{X}.vLightSpecular.a,preInfo.lightDistance);\n#endif\n#ifdef IRIDESCENCE\npreInfo.iridescenceIntensity=iridescenceIntensity;\n#endif\n#ifdef HEMILIGHT{X}\ninfo.diffuse=computeHemisphericDiffuseLighting(preInfo,diffuse{X}.rgb,light{X}.vLightGround);\n#elif defined(AREALIGHT{X})\ninfo.diffuse=computeAreaDiffuseLighting(preInfo,diffuse{X}.rgb);\n#else\ninfo.diffuse=computeDiffuseLighting(preInfo,diffuse{X}.rgb);\n#ifdef SS_TRANSLUCENCY\ninfo.diffuse*=(1.0-subSurfaceOut.translucencyIntensity);info.transmission=computeTransmittedLighting(preInfo,diffuse{X}.rgb,subSurfaceOut.transmittance);\n#endif\n#endif\n#ifdef SPECULARTERM\n#if AREALIGHT{X}\ninfo.specular=computeAreaSpecularLighting(preInfo,light{X}.vLightSpecular.rgb);\n#else\n#ifdef ANISOTROPIC\ninfo.specular=computeAnisotropicSpecularLighting(preInfo,viewDirectionW,normalW,anisotropicOut.anisotropicTangent,anisotropicOut.anisotropicBitangent,anisotropicOut.anisotropy,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);\n#else\ninfo.specular=computeSpecularLighting(preInfo,normalW,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);\n#endif\n#endif\n#endif\n#ifndef AREALIGHT{X}\n#ifdef SHEEN\n#ifdef SHEEN_LINKWITHALBEDO\npreInfo.roughness=sheenOut.sheenIntensity;\n#else\n#ifdef HEMILIGHT{X}\npreInfo.roughness=sheenOut.sheenRoughness;\n#else\npreInfo.roughness=adjustRoughnessFromLightProperties(sheenOut.sheenRoughness,light{X}.vLightSpecular.a,preInfo.lightDistance);\n#endif\n#endif\ninfo.sheen=computeSheenLighting(preInfo,normalW,sheenOut.sheenColor,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);\n#endif\n#ifdef CLEARCOAT\n#ifdef HEMILIGHT{X}\npreInfo.roughness=clearcoatOut.clearCoatRoughness;\n#else\npreInfo.roughness=adjustRoughnessFromLightProperties(clearcoatOut.clearCoatRoughness,light{X}.vLightSpecular.a,preInfo.lightDistance);\n#endif\ninfo.clearCoat=computeClearCoatLighting(preInfo,clearcoatOut.clearCoatNormalW,clearcoatOut.clearCoatAARoughnessFactors.x,clearcoatOut.clearCoatIntensity,diffuse{X}.rgb);\n#ifdef CLEARCOAT_TINT\nabsorption=computeClearCoatLightingAbsorption(clearcoatOut.clearCoatNdotVRefract,preInfo.L,clearcoatOut.clearCoatNormalW,clearcoatOut.clearCoatColor,clearcoatOut.clearCoatThickness,clearcoatOut.clearCoatIntensity);info.diffuse*=absorption;\n#ifdef SS_TRANSLUCENCY\ninfo.transmission*=absorption;\n#endif\n#ifdef SPECULARTERM\ninfo.specular*=absorption;\n#endif\n#endif\ninfo.diffuse*=info.clearCoat.w;\n#ifdef SS_TRANSLUCENCY\ninfo.transmission*=info.clearCoat.w;\n#endif\n#ifdef SPECULARTERM\ninfo.specular*=info.clearCoat.w;\n#endif\n#ifdef SHEEN\ninfo.sheen*=info.clearCoat.w;\n#endif\n#endif\n#endif\n#else\n#ifdef SPOTLIGHT{X}\n#ifdef IESLIGHTTEXTURE{X}\ninfo=computeIESSpotLighting(viewDirectionW,normalW,light{X}.vLightData,light{X}.vLightDirection,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,diffuse{X}.a,glossiness,iesLightTexture{X});\n#else\ninfo=computeSpotLighting(viewDirectionW,normalW,light{X}.vLightData,light{X}.vLightDirection,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,diffuse{X}.a,glossiness);\n#endif\n#elif defined(HEMILIGHT{X})\ninfo=computeHemisphericLighting(viewDirectionW,normalW,light{X}.vLightData,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,light{X}.vLightGround,glossiness);\n#elif defined(POINTLIGHT{X}) || defined(DIRLIGHT{X})\ninfo=computeLighting(viewDirectionW,normalW,light{X}.vLightData,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,diffuse{X}.a,glossiness);\n#elif defined(AREALIGHT{X}) && defined(AREALIGHTSUPPORTED)\ninfo=computeAreaLighting(areaLightsLTC1Sampler,areaLightsLTC2Sampler,viewDirectionW,normalW,vPositionW,light{X}.vLightData.xyz,light{X}.vLightWidth.rgb,light{X}.vLightHeight.rgb,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,\n#ifdef AREALIGHTNOROUGHTNESS\n0.5\n#else\nvReflectionInfos.y\n#endif\n);\n#endif\n#endif\n#ifdef PROJECTEDLIGHTTEXTURE{X}\ninfo.diffuse*=computeProjectionTextureDiffuseLighting(projectionLightTexture{X},textureProjectionMatrix{X},vPositionW);\n#endif\n#endif\n#ifdef SHADOW{X}\n#ifdef SHADOWCSM{X}\nfor (int i=0; i<SHADOWCSMNUM_CASCADES{X}; i++) \n{\n#ifdef SHADOWCSM_RIGHTHANDED{X}\ndiff{X}=viewFrustumZ{X}[i]+vPositionFromCamera{X}.z;\n#else\ndiff{X}=viewFrustumZ{X}[i]-vPositionFromCamera{X}.z;\n#endif\nif (diff{X}>=0.) {index{X}=i;break;}}\n#ifdef SHADOWCSMUSESHADOWMAXZ{X}\nif (index{X}>=0)\n#endif\n{\n#if defined(SHADOWPCF{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithCSMPCF1(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithCSMPCF3(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nshadow=computeShadowWithCSMPCF5(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCSS{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithCSMPCSS16(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithCSMPCSS32(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#else\nshadow=computeShadowWithCSMPCSS64(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#endif\n#else\nshadow=computeShadowCSM(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#ifdef SHADOWCSMDEBUG{X}\nshadowDebug{X}=vec3(shadow)*vCascadeColorsMultiplier{X}[index{X}];\n#endif\n#ifndef SHADOWCSMNOBLEND{X}\nfloat frustumLength=frustumLengths{X}[index{X}];float diffRatio=clamp(diff{X}/frustumLength,0.,1.)*cascadeBlendFactor{X};if (index{X}<(SHADOWCSMNUM_CASCADES{X}-1) && diffRatio<1.)\n{index{X}+=1;float nextShadow=0.;\n#if defined(SHADOWPCF{X})\n#if defined(SHADOWLOWQUALITY{X})\nnextShadow=computeShadowWithCSMPCF1(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nnextShadow=computeShadowWithCSMPCF3(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nnextShadow=computeShadowWithCSMPCF5(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCSS{X})\n#if defined(SHADOWLOWQUALITY{X})\nnextShadow=computeShadowWithCSMPCSS16(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#elif defined(SHADOWMEDIUMQUALITY{X})\nnextShadow=computeShadowWithCSMPCSS32(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#else\nnextShadow=computeShadowWithCSMPCSS64(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#endif\n#else\nnextShadow=computeShadowCSM(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\nshadow=mix(nextShadow,shadow,diffRatio);\n#ifdef SHADOWCSMDEBUG{X}\nshadowDebug{X}=mix(vec3(nextShadow)*vCascadeColorsMultiplier{X}[index{X}],shadowDebug{X},diffRatio);\n#endif\n}\n#endif\n}\n#elif defined(SHADOWCLOSEESM{X})\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowWithCloseESMCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.depthValues);\n#else\nshadow=computeShadowWithCloseESM(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWESM{X})\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowWithESMCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.depthValues);\n#else\nshadow=computeShadowWithESM(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPOISSON{X})\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowWithPoissonSamplingCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.x,light{X}.depthValues);\n#else\nshadow=computeShadowWithPoissonSampling(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCF{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithPCF1(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithPCF3(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nshadow=computeShadowWithPCF5(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCSS{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithPCSS16(vPositionFromLight{X},vDepthMetric{X},depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithPCSS32(vPositionFromLight{X},vDepthMetric{X},depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nshadow=computeShadowWithPCSS64(vPositionFromLight{X},vDepthMetric{X},depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#else\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.x,light{X}.depthValues);\n#else\nshadow=computeShadow(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#endif\n#ifdef SHADOWONLY\n#ifndef SHADOWINUSE\n#define SHADOWINUSE\n#endif\nglobalShadow+=shadow;shadowLightCount+=1.0;\n#endif\n#else\nshadow=1.;\n#endif\naggShadow+=shadow;numLights+=1.0;\n#ifndef SHADOWONLY\n#ifdef CUSTOMUSERLIGHTING\ndiffuseBase+=computeCustomDiffuseLighting(info,diffuseBase,shadow);\n#ifdef SPECULARTERM\nspecularBase+=computeCustomSpecularLighting(info,specularBase,shadow);\n#endif\n#elif defined(LIGHTMAP) && defined(LIGHTMAPEXCLUDED{X})\ndiffuseBase+=lightmapColor.rgb*shadow;\n#ifdef SPECULARTERM\n#ifndef LIGHTMAPNOSPECULAR{X}\nspecularBase+=info.specular*shadow*lightmapColor.rgb;\n#endif\n#endif\n#ifdef CLEARCOAT\n#ifndef LIGHTMAPNOSPECULAR{X}\nclearCoatBase+=info.clearCoat.rgb*shadow*lightmapColor.rgb;\n#endif\n#endif\n#ifdef SHEEN\n#ifndef LIGHTMAPNOSPECULAR{X}\nsheenBase+=info.sheen.rgb*shadow;\n#endif\n#endif\n#else\n#ifdef SHADOWCSMDEBUG{X}\ndiffuseBase+=info.diffuse*shadowDebug{X};\n#else \ndiffuseBase+=info.diffuse*shadow;\n#endif\n#ifdef SS_TRANSLUCENCY\ntransmissionBase+=info.transmission*shadow;\n#endif\n#ifdef SPECULARTERM\nspecularBase+=info.specular*shadow;\n#endif\n#ifdef CLEARCOAT\nclearCoatBase+=info.clearCoat.rgb*shadow;\n#endif\n#ifdef SHEEN\nsheenBase+=info.sheen.rgb*shadow;\n#endif\n#endif\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const lightFragment = { name, shader };\n"]}
|
|
1
|
+
{"version":3,"file":"lightFragment.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/lightFragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,eAAe,CAAC;AAC7B,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Td,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"lightFragment\";\nconst shader = `#ifdef LIGHT{X}\n#if defined(SHADOWONLY) || defined(LIGHTMAP) && defined(LIGHTMAPEXCLUDED{X}) && defined(LIGHTMAPNOSPECULAR{X})\n#else\nvec4 diffuse{X}=light{X}.vLightDiffuse;\n#define CUSTOM_LIGHT{X}_COLOR \n#ifdef PBR\n#ifdef SPOTLIGHT{X}\npreInfo=computePointAndSpotPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW,vPositionW);\n#elif defined(POINTLIGHT{X})\npreInfo=computePointAndSpotPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW,vPositionW);\n#elif defined(HEMILIGHT{X})\npreInfo=computeHemisphericPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW);\n#elif defined(DIRLIGHT{X})\npreInfo=computeDirectionalPreLightingInfo(light{X}.vLightData,viewDirectionW,normalW);\n#elif defined(AREALIGHT{X}) && defined(AREALIGHTSUPPORTED)\npreInfo=computeAreaPreLightingInfo(areaLightsLTC1Sampler,areaLightsLTC2Sampler,viewDirectionW,normalW,vPositionW,light{X}.vLightData,light{X}.vLightWidth.xyz,light{X}.vLightHeight.xyz,roughness);\n#endif\npreInfo.NdotV=NdotV;\n#ifdef SPOTLIGHT{X}\n#ifdef LIGHT_FALLOFF_GLTF{X}\npreInfo.attenuation=computeDistanceLightFalloff_GLTF(preInfo.lightDistanceSquared,light{X}.vLightFalloff.y);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff_GLTF(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightFalloff.z,light{X}.vLightFalloff.w);\n#endif\n#elif defined(LIGHT_FALLOFF_PHYSICAL{X})\npreInfo.attenuation=computeDistanceLightFalloff_Physical(preInfo.lightDistanceSquared);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff_Physical(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightDirection.w);\n#endif\n#elif defined(LIGHT_FALLOFF_STANDARD{X})\npreInfo.attenuation=computeDistanceLightFalloff_Standard(preInfo.lightOffset,light{X}.vLightFalloff.x);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff_Standard(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightDirection.w,light{X}.vLightData.w);\n#endif\n#else\npreInfo.attenuation=computeDistanceLightFalloff(preInfo.lightOffset,preInfo.lightDistanceSquared,light{X}.vLightFalloff.x,light{X}.vLightFalloff.y);\n#ifdef IESLIGHTTEXTURE{X}\npreInfo.attenuation*=computeDirectionalLightFalloff_IES(light{X}.vLightDirection.xyz,preInfo.L,iesLightTexture{X});\n#else\npreInfo.attenuation*=computeDirectionalLightFalloff(light{X}.vLightDirection.xyz,preInfo.L,light{X}.vLightDirection.w,light{X}.vLightData.w,light{X}.vLightFalloff.z,light{X}.vLightFalloff.w);\n#endif \n#endif\n#elif defined(POINTLIGHT{X})\n#ifdef LIGHT_FALLOFF_GLTF{X}\npreInfo.attenuation=computeDistanceLightFalloff_GLTF(preInfo.lightDistanceSquared,light{X}.vLightFalloff.y);\n#elif defined(LIGHT_FALLOFF_PHYSICAL{X})\npreInfo.attenuation=computeDistanceLightFalloff_Physical(preInfo.lightDistanceSquared);\n#elif defined(LIGHT_FALLOFF_STANDARD{X})\npreInfo.attenuation=computeDistanceLightFalloff_Standard(preInfo.lightOffset,light{X}.vLightFalloff.x);\n#else\npreInfo.attenuation=computeDistanceLightFalloff(preInfo.lightOffset,preInfo.lightDistanceSquared,light{X}.vLightFalloff.x,light{X}.vLightFalloff.y);\n#endif\n#else\npreInfo.attenuation=1.0;\n#endif\n#if defined(HEMILIGHT{X}) || defined(AREALIGHT{X})\npreInfo.roughness=roughness;\n#else\npreInfo.roughness=adjustRoughnessFromLightProperties(roughness,light{X}.vLightSpecular.a,preInfo.lightDistance);\n#endif\n#ifdef IRIDESCENCE\npreInfo.iridescenceIntensity=iridescenceIntensity;\n#endif\n#ifdef HEMILIGHT{X}\ninfo.diffuse=computeHemisphericDiffuseLighting(preInfo,diffuse{X}.rgb,light{X}.vLightGround);\n#elif defined(AREALIGHT{X})\ninfo.diffuse=computeAreaDiffuseLighting(preInfo,diffuse{X}.rgb);\n#elif defined(SS_TRANSLUCENCY)\n#ifndef SS_TRANSLUCENCY_LEGACY\ninfo.diffuse=computeDiffuseLighting(preInfo,diffuse{X}.rgb)*(1.0-subSurfaceOut.translucencyIntensity);info.diffuseTransmission=computeDiffuseTransmittedLighting(preInfo,diffuse{X}.rgb,subSurfaceOut.transmittance); \n#else\ninfo.diffuse=computeDiffuseTransmittedLighting(preInfo,diffuse{X}.rgb,subSurfaceOut.transmittance);info.diffuseTransmission=vec3(0.0);\n#endif\n#else\ninfo.diffuse=computeDiffuseLighting(preInfo,diffuse{X}.rgb);\n#endif\n#ifdef SPECULARTERM\n#if AREALIGHT{X}\ninfo.specular=computeAreaSpecularLighting(preInfo,light{X}.vLightSpecular.rgb);\n#else\n#ifdef ANISOTROPIC\ninfo.specular=computeAnisotropicSpecularLighting(preInfo,viewDirectionW,normalW,anisotropicOut.anisotropicTangent,anisotropicOut.anisotropicBitangent,anisotropicOut.anisotropy,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);\n#else\ninfo.specular=computeSpecularLighting(preInfo,normalW,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb,vReflectivityColor.b);\n#endif\n#endif\n#endif\n#ifndef AREALIGHT{X}\n#ifdef SHEEN\n#ifdef SHEEN_LINKWITHALBEDO\npreInfo.roughness=sheenOut.sheenIntensity;\n#else\n#ifdef HEMILIGHT{X}\npreInfo.roughness=sheenOut.sheenRoughness;\n#else\npreInfo.roughness=adjustRoughnessFromLightProperties(sheenOut.sheenRoughness,light{X}.vLightSpecular.a,preInfo.lightDistance);\n#endif\n#endif\ninfo.sheen=computeSheenLighting(preInfo,normalW,sheenOut.sheenColor,specularEnvironmentR90,AARoughnessFactors.x,diffuse{X}.rgb);\n#endif\n#ifdef CLEARCOAT\n#ifdef HEMILIGHT{X}\npreInfo.roughness=clearcoatOut.clearCoatRoughness;\n#else\npreInfo.roughness=adjustRoughnessFromLightProperties(clearcoatOut.clearCoatRoughness,light{X}.vLightSpecular.a,preInfo.lightDistance);\n#endif\ninfo.clearCoat=computeClearCoatLighting(preInfo,clearcoatOut.clearCoatNormalW,clearcoatOut.clearCoatAARoughnessFactors.x,clearcoatOut.clearCoatIntensity,diffuse{X}.rgb);\n#ifdef CLEARCOAT_TINT\nabsorption=computeClearCoatLightingAbsorption(clearcoatOut.clearCoatNdotVRefract,preInfo.L,clearcoatOut.clearCoatNormalW,clearcoatOut.clearCoatColor,clearcoatOut.clearCoatThickness,clearcoatOut.clearCoatIntensity);info.diffuse*=absorption;\n#ifdef SS_TRANSLUCENCY\ninfo.diffuseTransmission*=absorption;\n#endif\n#ifdef SPECULARTERM\ninfo.specular*=absorption;\n#endif\n#endif\ninfo.diffuse*=info.clearCoat.w;\n#ifdef SS_TRANSLUCENCY\ninfo.diffuseTransmission*=info.clearCoat.w;\n#endif\n#ifdef SPECULARTERM\ninfo.specular*=info.clearCoat.w;\n#endif\n#ifdef SHEEN\ninfo.sheen*=info.clearCoat.w;\n#endif\n#endif\n#endif\n#else\n#ifdef SPOTLIGHT{X}\n#ifdef IESLIGHTTEXTURE{X}\ninfo=computeIESSpotLighting(viewDirectionW,normalW,light{X}.vLightData,light{X}.vLightDirection,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,diffuse{X}.a,glossiness,iesLightTexture{X});\n#else\ninfo=computeSpotLighting(viewDirectionW,normalW,light{X}.vLightData,light{X}.vLightDirection,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,diffuse{X}.a,glossiness);\n#endif\n#elif defined(HEMILIGHT{X})\ninfo=computeHemisphericLighting(viewDirectionW,normalW,light{X}.vLightData,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,light{X}.vLightGround,glossiness);\n#elif defined(POINTLIGHT{X}) || defined(DIRLIGHT{X})\ninfo=computeLighting(viewDirectionW,normalW,light{X}.vLightData,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,diffuse{X}.a,glossiness);\n#elif defined(AREALIGHT{X}) && defined(AREALIGHTSUPPORTED)\ninfo=computeAreaLighting(areaLightsLTC1Sampler,areaLightsLTC2Sampler,viewDirectionW,normalW,vPositionW,light{X}.vLightData.xyz,light{X}.vLightWidth.rgb,light{X}.vLightHeight.rgb,diffuse{X}.rgb,light{X}.vLightSpecular.rgb,\n#ifdef AREALIGHTNOROUGHTNESS\n0.5\n#else\nvReflectionInfos.y\n#endif\n);\n#endif\n#endif\n#ifdef PROJECTEDLIGHTTEXTURE{X}\ninfo.diffuse*=computeProjectionTextureDiffuseLighting(projectionLightTexture{X},textureProjectionMatrix{X},vPositionW);\n#endif\n#endif\n#ifdef SHADOW{X}\n#ifdef SHADOWCSM{X}\nfor (int i=0; i<SHADOWCSMNUM_CASCADES{X}; i++) \n{\n#ifdef SHADOWCSM_RIGHTHANDED{X}\ndiff{X}=viewFrustumZ{X}[i]+vPositionFromCamera{X}.z;\n#else\ndiff{X}=viewFrustumZ{X}[i]-vPositionFromCamera{X}.z;\n#endif\nif (diff{X}>=0.) {index{X}=i;break;}}\n#ifdef SHADOWCSMUSESHADOWMAXZ{X}\nif (index{X}>=0)\n#endif\n{\n#if defined(SHADOWPCF{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithCSMPCF1(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithCSMPCF3(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nshadow=computeShadowWithCSMPCF5(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCSS{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithCSMPCSS16(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithCSMPCSS32(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#else\nshadow=computeShadowWithCSMPCSS64(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#endif\n#else\nshadow=computeShadowCSM(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#ifdef SHADOWCSMDEBUG{X}\nshadowDebug{X}=vec3(shadow)*vCascadeColorsMultiplier{X}[index{X}];\n#endif\n#ifndef SHADOWCSMNOBLEND{X}\nfloat frustumLength=frustumLengths{X}[index{X}];float diffRatio=clamp(diff{X}/frustumLength,0.,1.)*cascadeBlendFactor{X};if (index{X}<(SHADOWCSMNUM_CASCADES{X}-1) && diffRatio<1.)\n{index{X}+=1;float nextShadow=0.;\n#if defined(SHADOWPCF{X})\n#if defined(SHADOWLOWQUALITY{X})\nnextShadow=computeShadowWithCSMPCF1(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nnextShadow=computeShadowWithCSMPCF3(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nnextShadow=computeShadowWithCSMPCF5(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCSS{X})\n#if defined(SHADOWLOWQUALITY{X})\nnextShadow=computeShadowWithCSMPCSS16(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#elif defined(SHADOWMEDIUMQUALITY{X})\nnextShadow=computeShadowWithCSMPCSS32(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#else\nnextShadow=computeShadowWithCSMPCSS64(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w,lightSizeUVCorrection{X}[index{X}],depthCorrection{X}[index{X}],penumbraDarkness{X});\n#endif\n#else\nnextShadow=computeShadowCSM(float(index{X}),vPositionFromLight{X}[index{X}],vDepthMetric{X}[index{X}],shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\nshadow=mix(nextShadow,shadow,diffRatio);\n#ifdef SHADOWCSMDEBUG{X}\nshadowDebug{X}=mix(vec3(nextShadow)*vCascadeColorsMultiplier{X}[index{X}],shadowDebug{X},diffRatio);\n#endif\n}\n#endif\n}\n#elif defined(SHADOWCLOSEESM{X})\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowWithCloseESMCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.depthValues);\n#else\nshadow=computeShadowWithCloseESM(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWESM{X})\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowWithESMCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.depthValues);\n#else\nshadow=computeShadowWithESM(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.z,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPOISSON{X})\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowWithPoissonSamplingCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.x,light{X}.depthValues);\n#else\nshadow=computeShadowWithPoissonSampling(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCF{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithPCF1(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithPCF3(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nshadow=computeShadowWithPCF5(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.yz,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#elif defined(SHADOWPCSS{X})\n#if defined(SHADOWLOWQUALITY{X})\nshadow=computeShadowWithPCSS16(vPositionFromLight{X},vDepthMetric{X},depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#elif defined(SHADOWMEDIUMQUALITY{X})\nshadow=computeShadowWithPCSS32(vPositionFromLight{X},vDepthMetric{X},depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#else\nshadow=computeShadowWithPCSS64(vPositionFromLight{X},vDepthMetric{X},depthTexture{X},shadowTexture{X},light{X}.shadowsInfo.y,light{X}.shadowsInfo.z,light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#else\n#if defined(SHADOWCUBE{X})\nshadow=computeShadowCube(vPositionW,light{X}.vLightData.xyz,shadowTexture{X},light{X}.shadowsInfo.x,light{X}.depthValues);\n#else\nshadow=computeShadow(vPositionFromLight{X},vDepthMetric{X},shadowTexture{X},light{X}.shadowsInfo.x,light{X}.shadowsInfo.w);\n#endif\n#endif\n#ifdef SHADOWONLY\n#ifndef SHADOWINUSE\n#define SHADOWINUSE\n#endif\nglobalShadow+=shadow;shadowLightCount+=1.0;\n#endif\n#else\nshadow=1.;\n#endif\naggShadow+=shadow;numLights+=1.0;\n#ifndef SHADOWONLY\n#ifdef CUSTOMUSERLIGHTING\ndiffuseBase+=computeCustomDiffuseLighting(info,diffuseBase,shadow);\n#ifdef SPECULARTERM\nspecularBase+=computeCustomSpecularLighting(info,specularBase,shadow);\n#endif\n#elif defined(LIGHTMAP) && defined(LIGHTMAPEXCLUDED{X})\ndiffuseBase+=lightmapColor.rgb*shadow;\n#ifdef SPECULARTERM\n#ifndef LIGHTMAPNOSPECULAR{X}\nspecularBase+=info.specular*shadow*lightmapColor.rgb;\n#endif\n#endif\n#ifdef CLEARCOAT\n#ifndef LIGHTMAPNOSPECULAR{X}\nclearCoatBase+=info.clearCoat.rgb*shadow*lightmapColor.rgb;\n#endif\n#endif\n#ifdef SHEEN\n#ifndef LIGHTMAPNOSPECULAR{X}\nsheenBase+=info.sheen.rgb*shadow;\n#endif\n#endif\n#else\n#ifdef SHADOWCSMDEBUG{X}\ndiffuseBase+=info.diffuse*shadowDebug{X};\n#else \ndiffuseBase+=info.diffuse*shadow;\n#endif\n#ifdef SS_TRANSLUCENCY\ndiffuseTransmissionBase+=info.diffuseTransmission*shadow;\n#endif\n#ifdef SPECULARTERM\nspecularBase+=info.specular*shadow;\n#endif\n#ifdef CLEARCOAT\nclearCoatBase+=info.clearCoat.rgb*shadow;\n#endif\n#ifdef SHEEN\nsheenBase+=info.sheen.rgb*shadow;\n#endif\n#endif\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const lightFragment = { name, shader };\n"]}
|
|
@@ -11,9 +11,13 @@ vec3 getBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(NdotV,pe
|
|
|
11
11
|
brdfLookup.rgb=fromRGBD(brdfLookup.rgba);
|
|
12
12
|
#endif
|
|
13
13
|
return brdfLookup.rgb;}
|
|
14
|
-
vec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 specularEnvironmentR90,const vec3 environmentBrdf) {
|
|
14
|
+
vec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 specularEnvironmentR90,const float ior,const vec3 environmentBrdf) {
|
|
15
15
|
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
16
|
+
#ifdef METALLICWORKFLOW
|
|
17
|
+
vec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*clamp(environmentBrdf.x*2.0*(ior-1.0),0.0,1.0)+specularEnvironmentR0*environmentBrdf.y;
|
|
18
|
+
#else
|
|
16
19
|
vec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*environmentBrdf.x+specularEnvironmentR0*environmentBrdf.y;
|
|
20
|
+
#endif
|
|
17
21
|
#else
|
|
18
22
|
vec3 reflectance=specularEnvironmentR0*environmentBrdf.x+specularEnvironmentR90*environmentBrdf.y;
|
|
19
23
|
#endif
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbrBRDFFunctions.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBRDFFunctions.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAChC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkId,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBRDFFunctions\";\nconst shader = `#define FRESNEL_MAXIMUM_ON_ROUGH 0.25\n#ifdef MS_BRDF_ENERGY_CONSERVATION\nvec3 getEnergyConservationFactor(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {return 1.0+specularEnvironmentR0*(1.0/environmentBrdf.y-1.0);}\n#endif\n#ifdef ENVIRONMENTBRDF\nvec3 getBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(NdotV,perceptualRoughness);vec4 brdfLookup=texture2D(environmentBrdfSampler,UV);\n#ifdef ENVIRONMENTBRDF_RGBD\nbrdfLookup.rgb=fromRGBD(brdfLookup.rgba);\n#endif\nreturn brdfLookup.rgb;}\nvec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 specularEnvironmentR90,const vec3 environmentBrdf) {\n#ifdef BRDF_V_HEIGHT_CORRELATED\nvec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*environmentBrdf.x+specularEnvironmentR0*environmentBrdf.y;\n#else\nvec3 reflectance=specularEnvironmentR0*environmentBrdf.x+specularEnvironmentR90*environmentBrdf.y;\n#endif\nreturn reflectance;}\nvec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {\n#ifdef BRDF_V_HEIGHT_CORRELATED\nvec3 reflectance=mix(environmentBrdf.xxx,environmentBrdf.yyy,specularEnvironmentR0);\n#else\nvec3 reflectance=specularEnvironmentR0*environmentBrdf.x+environmentBrdf.y;\n#endif\nreturn reflectance;}\n#endif\n/* NOT USED\n#if defined(SHEEN) && defined(SHEEN_SOFTER)\nfloat getBRDFLookupCharlieSheen(float NdotV,float perceptualRoughness)\n{float c=1.0-NdotV;float c3=c*c*c;return 0.65584461*c3+1.0/(4.16526551+exp(-7.97291361*perceptualRoughness+6.33516894));}\n#endif\n*/\n#if !defined(ENVIRONMENTBRDF) || defined(REFLECTIONMAP_SKYBOX) || defined(ALPHAFRESNEL)\nvec3 getReflectanceFromAnalyticalBRDFLookup_Jones(float VdotN,vec3 reflectance0,vec3 reflectance90,float smoothness)\n{float weight=mix(FRESNEL_MAXIMUM_ON_ROUGH,1.0,smoothness);return reflectance0+weight*(reflectance90-reflectance0)*pow5(saturate(1.0-VdotN));}\n#endif\n#if defined(SHEEN) && defined(ENVIRONMENTBRDF)\n/**\n* The sheen BRDF not containing F can be easily stored in the blue channel of the BRDF texture.\n* The blue channel contains DCharlie*VAshikhmin*NdotL as a lokkup table\n*/\nvec3 getSheenReflectanceFromBRDFLookup(const vec3 reflectance0,const vec3 environmentBrdf) {vec3 sheenEnvironmentReflectance=reflectance0*environmentBrdf.b;return sheenEnvironmentReflectance;}\n#endif\nvec3 fresnelSchlickGGX(float VdotH,vec3 reflectance0,vec3 reflectance90)\n{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}\nfloat fresnelSchlickGGX(float VdotH,float reflectance0,float reflectance90)\n{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}\n#ifdef CLEARCOAT\nvec3 getR0RemappedForClearCoat(vec3 f0) {\n#ifdef CLEARCOAT_DEFAULTIOR\n#ifdef MOBILE\nreturn saturate(f0*(f0*0.526868+0.529324)-0.0482256);\n#else\nreturn saturate(f0*(f0*(0.941892-0.263008*f0)+0.346479)-0.0285998);\n#endif\n#else\nvec3 s=sqrt(f0);vec3 t=(vClearCoatRefractionParams.z+vClearCoatRefractionParams.w*s)/(vClearCoatRefractionParams.w+vClearCoatRefractionParams.z*s);return square(t);\n#endif\n}\n#endif\n#ifdef IRIDESCENCE\nconst mat3 XYZ_TO_REC709=mat3(\n3.2404542,-0.9692660, 0.0556434,\n-1.5371385, 1.8760108,-0.2040259,\n-0.4985314, 0.0415560, 1.0572252\n);vec3 getIORTfromAirToSurfaceR0(vec3 f0) {vec3 sqrtF0=sqrt(f0);return (1.+sqrtF0)/(1.-sqrtF0);}\nvec3 getR0fromIORs(vec3 iorT,float iorI) {return square((iorT-vec3(iorI))/(iorT+vec3(iorI)));}\nfloat getR0fromIORs(float iorT,float iorI) {return square((iorT-iorI)/(iorT+iorI));}\nvec3 evalSensitivity(float opd,vec3 shift) {float phase=2.0*PI*opd*1.0e-9;const vec3 val=vec3(5.4856e-13,4.4201e-13,5.2481e-13);const vec3 pos=vec3(1.6810e+06,1.7953e+06,2.2084e+06);const vec3 var=vec3(4.3278e+09,9.3046e+09,6.6121e+09);vec3 xyz=val*sqrt(2.0*PI*var)*cos(pos*phase+shift)*exp(-square(phase)*var);xyz.x+=9.7470e-14*sqrt(2.0*PI*4.5282e+09)*cos(2.2399e+06*phase+shift[0])*exp(-4.5282e+09*square(phase));xyz/=1.0685e-7;vec3 srgb=XYZ_TO_REC709*xyz;return srgb;}\nvec3 evalIridescence(float outsideIOR,float eta2,float cosTheta1,float thinFilmThickness,vec3 baseF0) {vec3 I=vec3(1.0);float iridescenceIOR=mix(outsideIOR,eta2,smoothstep(0.0,0.03,thinFilmThickness));float sinTheta2Sq=square(outsideIOR/iridescenceIOR)*(1.0-square(cosTheta1));float cosTheta2Sq=1.0-sinTheta2Sq;if (cosTheta2Sq<0.0) {return I;}\nfloat cosTheta2=sqrt(cosTheta2Sq);float R0=getR0fromIORs(iridescenceIOR,outsideIOR);float R12=fresnelSchlickGGX(cosTheta1,R0,1.);float R21=R12;float T121=1.0-R12;float phi12=0.0;if (iridescenceIOR<outsideIOR) phi12=PI;float phi21=PI-phi12;vec3 baseIOR=getIORTfromAirToSurfaceR0(clamp(baseF0,0.0,0.9999)); \nvec3 R1=getR0fromIORs(baseIOR,iridescenceIOR);vec3 R23=fresnelSchlickGGX(cosTheta2,R1,vec3(1.));vec3 phi23=vec3(0.0);if (baseIOR[0]<iridescenceIOR) phi23[0]=PI;if (baseIOR[1]<iridescenceIOR) phi23[1]=PI;if (baseIOR[2]<iridescenceIOR) phi23[2]=PI;float opd=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;vec3 phi=vec3(phi21)+phi23;vec3 R123=clamp(R12*R23,1e-5,0.9999);vec3 r123=sqrt(R123);vec3 Rs=square(T121)*R23/(vec3(1.0)-R123);vec3 C0=R12+Rs;I=C0;vec3 Cm=Rs-T121;for (int m=1; m<=2; ++m)\n{Cm*=r123;vec3 Sm=2.0*evalSensitivity(float(m)*opd,float(m)*phi);I+=Cm*Sm;}\nreturn max(I,vec3(0.0));}\n#endif\nfloat normalDistributionFunction_TrowbridgeReitzGGX(float NdotH,float alphaG)\n{float a2=square(alphaG);float d=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}\n#ifdef SHEEN\nfloat normalDistributionFunction_CharlieSheen(float NdotH,float alphaG)\n{float invR=1./alphaG;float cos2h=NdotH*NdotH;float sin2h=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}\n#endif\n#ifdef ANISOTROPIC\nfloat normalDistributionFunction_BurleyGGX_Anisotropic(float NdotH,float TdotH,float BdotH,const vec2 alphaTB) {float a2=alphaTB.x*alphaTB.y;vec3 v=vec3(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);float v2=dot(v,v);float w2=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}\n#endif\n#ifdef BRDF_V_HEIGHT_CORRELATED\nfloat smithVisibility_GGXCorrelated(float NdotL,float NdotV,float alphaG) {\n#ifdef MOBILE\nfloat GGXV=NdotL*(NdotV*(1.0-alphaG)+alphaG);float GGXL=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);\n#else\nfloat a2=alphaG*alphaG;float GGXV=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);float GGXL=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);\n#endif\n}\n#else\nfloat smithVisibilityG1_TrowbridgeReitzGGXFast(float dot,float alphaG)\n{\n#ifdef MOBILE\nreturn 1.0/(dot+alphaG+(1.0-alphaG)*dot ));\n#else\nfloat alphaSquared=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));\n#endif\n}\nfloat smithVisibility_TrowbridgeReitzGGXFast(float NdotL,float NdotV,float alphaG)\n{float visibility=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}\n#endif\n#ifdef ANISOTROPIC\nfloat smithVisibility_GGXCorrelated_Anisotropic(float NdotL,float NdotV,float TdotV,float BdotV,float TdotL,float BdotL,const vec2 alphaTB) {float lambdaV=NdotL*length(vec3(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));float lambdaL=NdotV*length(vec3(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));float v=0.5/(lambdaV+lambdaL);return v;}\n#endif\n#ifdef CLEARCOAT\nfloat visibility_Kelemen(float VdotH) {return 0.25/(VdotH*VdotH); }\n#endif\n#ifdef SHEEN\nfloat visibility_Ashikhmin(float NdotL,float NdotV)\n{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}\n/* NOT USED\n#ifdef SHEEN_SOFTER\nfloat l(float x,float alphaG)\n{float oneMinusAlphaSq=(1.0-alphaG)*(1.0-alphaG);float a=mix(21.5473,25.3245,oneMinusAlphaSq);float b=mix(3.82987,3.32435,oneMinusAlphaSq);float c=mix(0.19823,0.16801,oneMinusAlphaSq);float d=mix(-1.97760,-1.27393,oneMinusAlphaSq);float e=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}\nfloat lambdaSheen(float cosTheta,float alphaG)\n{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}\nfloat visibility_CharlieSheen(float NdotL,float NdotV,float alphaG)\n{float G=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}\n#endif\n*/\n#endif\nfloat diffuseBRDF_Burley(float NdotL,float NdotV,float VdotH,float roughness) {float diffuseFresnelNV=pow5(saturateEps(1.0-NdotL));float diffuseFresnelNL=pow5(saturateEps(1.0-NdotV));float diffuseFresnel90=0.5+2.0*VdotH*VdotH*roughness;float fresnel =\n(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *\n(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}\n#ifdef SS_TRANSLUCENCY\nvec3 transmittanceBRDF_Burley(const vec3 tintColor,const vec3 diffusionDistance,float thickness) {vec3 S=1./maxEps(diffusionDistance);vec3 temp=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}\nfloat computeWrappedDiffuseNdotL(float NdotL,float w) {float t=1.0+w;float invt2=1.0/square(t);return saturate((NdotL+w)*invt2);}\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBRDFFunctions = { name, shader };\n"]}
|
|
1
|
+
{"version":3,"file":"pbrBRDFFunctions.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBRDFFunctions.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAChC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsId,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBRDFFunctions\";\nconst shader = `#define FRESNEL_MAXIMUM_ON_ROUGH 0.25\n#ifdef MS_BRDF_ENERGY_CONSERVATION\nvec3 getEnergyConservationFactor(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {return 1.0+specularEnvironmentR0*(1.0/environmentBrdf.y-1.0);}\n#endif\n#ifdef ENVIRONMENTBRDF\nvec3 getBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(NdotV,perceptualRoughness);vec4 brdfLookup=texture2D(environmentBrdfSampler,UV);\n#ifdef ENVIRONMENTBRDF_RGBD\nbrdfLookup.rgb=fromRGBD(brdfLookup.rgba);\n#endif\nreturn brdfLookup.rgb;}\nvec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 specularEnvironmentR90,const float ior,const vec3 environmentBrdf) {\n#ifdef BRDF_V_HEIGHT_CORRELATED\n#ifdef METALLICWORKFLOW\nvec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*clamp(environmentBrdf.x*2.0*(ior-1.0),0.0,1.0)+specularEnvironmentR0*environmentBrdf.y;\n#else\nvec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*environmentBrdf.x+specularEnvironmentR0*environmentBrdf.y;\n#endif\n#else\nvec3 reflectance=specularEnvironmentR0*environmentBrdf.x+specularEnvironmentR90*environmentBrdf.y;\n#endif\nreturn reflectance;}\nvec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {\n#ifdef BRDF_V_HEIGHT_CORRELATED\nvec3 reflectance=mix(environmentBrdf.xxx,environmentBrdf.yyy,specularEnvironmentR0);\n#else\nvec3 reflectance=specularEnvironmentR0*environmentBrdf.x+environmentBrdf.y;\n#endif\nreturn reflectance;}\n#endif\n/* NOT USED\n#if defined(SHEEN) && defined(SHEEN_SOFTER)\nfloat getBRDFLookupCharlieSheen(float NdotV,float perceptualRoughness)\n{float c=1.0-NdotV;float c3=c*c*c;return 0.65584461*c3+1.0/(4.16526551+exp(-7.97291361*perceptualRoughness+6.33516894));}\n#endif\n*/\n#if !defined(ENVIRONMENTBRDF) || defined(REFLECTIONMAP_SKYBOX) || defined(ALPHAFRESNEL)\nvec3 getReflectanceFromAnalyticalBRDFLookup_Jones(float VdotN,vec3 reflectance0,vec3 reflectance90,float smoothness)\n{float weight=mix(FRESNEL_MAXIMUM_ON_ROUGH,1.0,smoothness);return reflectance0+weight*(reflectance90-reflectance0)*pow5(saturate(1.0-VdotN));}\n#endif\n#if defined(SHEEN) && defined(ENVIRONMENTBRDF)\n/**\n* The sheen BRDF not containing F can be easily stored in the blue channel of the BRDF texture.\n* The blue channel contains DCharlie*VAshikhmin*NdotL as a lokkup table\n*/\nvec3 getSheenReflectanceFromBRDFLookup(const vec3 reflectance0,const vec3 environmentBrdf) {vec3 sheenEnvironmentReflectance=reflectance0*environmentBrdf.b;return sheenEnvironmentReflectance;}\n#endif\nvec3 fresnelSchlickGGX(float VdotH,vec3 reflectance0,vec3 reflectance90)\n{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}\nfloat fresnelSchlickGGX(float VdotH,float reflectance0,float reflectance90)\n{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}\n#ifdef CLEARCOAT\nvec3 getR0RemappedForClearCoat(vec3 f0) {\n#ifdef CLEARCOAT_DEFAULTIOR\n#ifdef MOBILE\nreturn saturate(f0*(f0*0.526868+0.529324)-0.0482256);\n#else\nreturn saturate(f0*(f0*(0.941892-0.263008*f0)+0.346479)-0.0285998);\n#endif\n#else\nvec3 s=sqrt(f0);vec3 t=(vClearCoatRefractionParams.z+vClearCoatRefractionParams.w*s)/(vClearCoatRefractionParams.w+vClearCoatRefractionParams.z*s);return square(t);\n#endif\n}\n#endif\n#ifdef IRIDESCENCE\nconst mat3 XYZ_TO_REC709=mat3(\n3.2404542,-0.9692660, 0.0556434,\n-1.5371385, 1.8760108,-0.2040259,\n-0.4985314, 0.0415560, 1.0572252\n);vec3 getIORTfromAirToSurfaceR0(vec3 f0) {vec3 sqrtF0=sqrt(f0);return (1.+sqrtF0)/(1.-sqrtF0);}\nvec3 getR0fromIORs(vec3 iorT,float iorI) {return square((iorT-vec3(iorI))/(iorT+vec3(iorI)));}\nfloat getR0fromIORs(float iorT,float iorI) {return square((iorT-iorI)/(iorT+iorI));}\nvec3 evalSensitivity(float opd,vec3 shift) {float phase=2.0*PI*opd*1.0e-9;const vec3 val=vec3(5.4856e-13,4.4201e-13,5.2481e-13);const vec3 pos=vec3(1.6810e+06,1.7953e+06,2.2084e+06);const vec3 var=vec3(4.3278e+09,9.3046e+09,6.6121e+09);vec3 xyz=val*sqrt(2.0*PI*var)*cos(pos*phase+shift)*exp(-square(phase)*var);xyz.x+=9.7470e-14*sqrt(2.0*PI*4.5282e+09)*cos(2.2399e+06*phase+shift[0])*exp(-4.5282e+09*square(phase));xyz/=1.0685e-7;vec3 srgb=XYZ_TO_REC709*xyz;return srgb;}\nvec3 evalIridescence(float outsideIOR,float eta2,float cosTheta1,float thinFilmThickness,vec3 baseF0) {vec3 I=vec3(1.0);float iridescenceIOR=mix(outsideIOR,eta2,smoothstep(0.0,0.03,thinFilmThickness));float sinTheta2Sq=square(outsideIOR/iridescenceIOR)*(1.0-square(cosTheta1));float cosTheta2Sq=1.0-sinTheta2Sq;if (cosTheta2Sq<0.0) {return I;}\nfloat cosTheta2=sqrt(cosTheta2Sq);float R0=getR0fromIORs(iridescenceIOR,outsideIOR);float R12=fresnelSchlickGGX(cosTheta1,R0,1.);float R21=R12;float T121=1.0-R12;float phi12=0.0;if (iridescenceIOR<outsideIOR) phi12=PI;float phi21=PI-phi12;vec3 baseIOR=getIORTfromAirToSurfaceR0(clamp(baseF0,0.0,0.9999)); \nvec3 R1=getR0fromIORs(baseIOR,iridescenceIOR);vec3 R23=fresnelSchlickGGX(cosTheta2,R1,vec3(1.));vec3 phi23=vec3(0.0);if (baseIOR[0]<iridescenceIOR) phi23[0]=PI;if (baseIOR[1]<iridescenceIOR) phi23[1]=PI;if (baseIOR[2]<iridescenceIOR) phi23[2]=PI;float opd=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;vec3 phi=vec3(phi21)+phi23;vec3 R123=clamp(R12*R23,1e-5,0.9999);vec3 r123=sqrt(R123);vec3 Rs=square(T121)*R23/(vec3(1.0)-R123);vec3 C0=R12+Rs;I=C0;vec3 Cm=Rs-T121;for (int m=1; m<=2; ++m)\n{Cm*=r123;vec3 Sm=2.0*evalSensitivity(float(m)*opd,float(m)*phi);I+=Cm*Sm;}\nreturn max(I,vec3(0.0));}\n#endif\nfloat normalDistributionFunction_TrowbridgeReitzGGX(float NdotH,float alphaG)\n{float a2=square(alphaG);float d=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}\n#ifdef SHEEN\nfloat normalDistributionFunction_CharlieSheen(float NdotH,float alphaG)\n{float invR=1./alphaG;float cos2h=NdotH*NdotH;float sin2h=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}\n#endif\n#ifdef ANISOTROPIC\nfloat normalDistributionFunction_BurleyGGX_Anisotropic(float NdotH,float TdotH,float BdotH,const vec2 alphaTB) {float a2=alphaTB.x*alphaTB.y;vec3 v=vec3(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);float v2=dot(v,v);float w2=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}\n#endif\n#ifdef BRDF_V_HEIGHT_CORRELATED\nfloat smithVisibility_GGXCorrelated(float NdotL,float NdotV,float alphaG) {\n#ifdef MOBILE\nfloat GGXV=NdotL*(NdotV*(1.0-alphaG)+alphaG);float GGXL=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);\n#else\nfloat a2=alphaG*alphaG;float GGXV=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);float GGXL=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);\n#endif\n}\n#else\nfloat smithVisibilityG1_TrowbridgeReitzGGXFast(float dot,float alphaG)\n{\n#ifdef MOBILE\nreturn 1.0/(dot+alphaG+(1.0-alphaG)*dot ));\n#else\nfloat alphaSquared=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));\n#endif\n}\nfloat smithVisibility_TrowbridgeReitzGGXFast(float NdotL,float NdotV,float alphaG)\n{float visibility=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}\n#endif\n#ifdef ANISOTROPIC\nfloat smithVisibility_GGXCorrelated_Anisotropic(float NdotL,float NdotV,float TdotV,float BdotV,float TdotL,float BdotL,const vec2 alphaTB) {float lambdaV=NdotL*length(vec3(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));float lambdaL=NdotV*length(vec3(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));float v=0.5/(lambdaV+lambdaL);return v;}\n#endif\n#ifdef CLEARCOAT\nfloat visibility_Kelemen(float VdotH) {return 0.25/(VdotH*VdotH); }\n#endif\n#ifdef SHEEN\nfloat visibility_Ashikhmin(float NdotL,float NdotV)\n{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}\n/* NOT USED\n#ifdef SHEEN_SOFTER\nfloat l(float x,float alphaG)\n{float oneMinusAlphaSq=(1.0-alphaG)*(1.0-alphaG);float a=mix(21.5473,25.3245,oneMinusAlphaSq);float b=mix(3.82987,3.32435,oneMinusAlphaSq);float c=mix(0.19823,0.16801,oneMinusAlphaSq);float d=mix(-1.97760,-1.27393,oneMinusAlphaSq);float e=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}\nfloat lambdaSheen(float cosTheta,float alphaG)\n{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}\nfloat visibility_CharlieSheen(float NdotL,float NdotV,float alphaG)\n{float G=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}\n#endif\n*/\n#endif\nfloat diffuseBRDF_Burley(float NdotL,float NdotV,float VdotH,float roughness) {float diffuseFresnelNV=pow5(saturateEps(1.0-NdotL));float diffuseFresnelNL=pow5(saturateEps(1.0-NdotV));float diffuseFresnel90=0.5+2.0*VdotH*VdotH*roughness;float fresnel =\n(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *\n(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}\n#ifdef SS_TRANSLUCENCY\nvec3 transmittanceBRDF_Burley(const vec3 tintColor,const vec3 diffusionDistance,float thickness) {vec3 S=1./maxEps(diffusionDistance);vec3 temp=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}\nfloat computeWrappedDiffuseNdotL(float NdotL,float w) {float t=1.0+w;float invt2=1.0/square(t);return saturate((NdotL+w)*invt2);}\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBRDFFunctions = { name, shader };\n"]}
|
|
@@ -3,7 +3,7 @@ import { ShaderStore } from "../../Engines/shaderStore.js";
|
|
|
3
3
|
const name = "pbrBlockDirectLighting";
|
|
4
4
|
const shader = `vec3 diffuseBase=vec3(0.,0.,0.);
|
|
5
5
|
#ifdef SS_TRANSLUCENCY
|
|
6
|
-
vec3
|
|
6
|
+
vec3 diffuseTransmissionBase=vec3(0.,0.,0.);
|
|
7
7
|
#endif
|
|
8
8
|
#ifdef SPECULARTERM
|
|
9
9
|
vec3 specularBase=vec3(0.,0.,0.);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbrBlockDirectLighting.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockDirectLighting.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,wBAAwB,CAAC;AACtC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;CAkBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockDirectLighting\";\nconst shader = `vec3 diffuseBase=vec3(0.,0.,0.);\n#ifdef SS_TRANSLUCENCY\nvec3
|
|
1
|
+
{"version":3,"file":"pbrBlockDirectLighting.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockDirectLighting.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,wBAAwB,CAAC;AACtC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;CAkBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockDirectLighting\";\nconst shader = `vec3 diffuseBase=vec3(0.,0.,0.);\n#ifdef SS_TRANSLUCENCY\nvec3 diffuseTransmissionBase=vec3(0.,0.,0.);\n#endif\n#ifdef SPECULARTERM\nvec3 specularBase=vec3(0.,0.,0.);\n#endif\n#ifdef CLEARCOAT\nvec3 clearCoatBase=vec3(0.,0.,0.);\n#endif\n#ifdef SHEEN\nvec3 sheenBase=vec3(0.,0.,0.);\n#endif\npreLightingInfo preInfo;lightingInfo info;float shadow=1.; \nfloat aggShadow=0.;float numLights=0.;\n#if defined(CLEARCOAT) && defined(CLEARCOAT_TINT)\nvec3 absorption=vec3(0.);\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBlockDirectLighting = { name, shader };\n"]}
|
|
@@ -3,7 +3,7 @@ import { ShaderStore } from "../../Engines/shaderStore.js";
|
|
|
3
3
|
const name = "pbrBlockFinalUnlitComponents";
|
|
4
4
|
const shader = `vec3 finalDiffuse=diffuseBase;finalDiffuse*=surfaceAlbedo;
|
|
5
5
|
#if defined(SS_TRANSLUCENCY) && !defined(UNLIT)
|
|
6
|
-
finalDiffuse+=
|
|
6
|
+
finalDiffuse+=diffuseTransmissionBase;
|
|
7
7
|
#endif
|
|
8
8
|
finalDiffuse=max(finalDiffuse,0.0);finalDiffuse*=vLightingIntensity.x;vec3 finalAmbient=vAmbientColor;finalAmbient*=surfaceAlbedo.rgb;vec3 finalEmissive=vEmissiveColor;
|
|
9
9
|
#ifdef EMISSIVE
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbrBlockFinalUnlitComponents.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockFinalUnlitComponents\";\nconst shader = `vec3 finalDiffuse=diffuseBase;finalDiffuse*=surfaceAlbedo;\n#if defined(SS_TRANSLUCENCY) && !defined(UNLIT)\nfinalDiffuse+=
|
|
1
|
+
{"version":3,"file":"pbrBlockFinalUnlitComponents.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockFinalUnlitComponents\";\nconst shader = `vec3 finalDiffuse=diffuseBase;finalDiffuse*=surfaceAlbedo;\n#if defined(SS_TRANSLUCENCY) && !defined(UNLIT)\nfinalDiffuse+=diffuseTransmissionBase;\n#endif\nfinalDiffuse=max(finalDiffuse,0.0);finalDiffuse*=vLightingIntensity.x;vec3 finalAmbient=vAmbientColor;finalAmbient*=surfaceAlbedo.rgb;vec3 finalEmissive=vEmissiveColor;\n#ifdef EMISSIVE\nvec3 emissiveColorTex=texture2D(emissiveSampler,vEmissiveUV+uvOffset).rgb;\n#ifdef GAMMAEMISSIVE\nfinalEmissive*=toLinearSpace(emissiveColorTex.rgb);\n#else\nfinalEmissive*=emissiveColorTex.rgb;\n#endif\nfinalEmissive*= vEmissiveInfos.y;\n#endif\nfinalEmissive*=vLightingIntensity.y;\n#ifdef AMBIENT\nvec3 ambientOcclusionForDirectDiffuse=mix(vec3(1.),aoOut.ambientOcclusionColor,vAmbientInfos.w);\n#else\nvec3 ambientOcclusionForDirectDiffuse=aoOut.ambientOcclusionColor;\n#endif\nfinalAmbient*=aoOut.ambientOcclusionColor;finalDiffuse*=ambientOcclusionForDirectDiffuse;\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBlockFinalUnlitComponents = { name, shader };\n"]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { ShaderStore } from "../../Engines/shaderStore.js";
|
|
3
3
|
const name = "pbrBlockReflectance";
|
|
4
4
|
const shader = `#if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)
|
|
5
|
-
vec3 specularEnvironmentReflectance=getReflectanceFromBRDFLookup(clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,environmentBrdf);
|
|
5
|
+
vec3 specularEnvironmentReflectance=getReflectanceFromBRDFLookup(clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,vReflectivityColor.b,environmentBrdf);
|
|
6
6
|
#ifdef RADIANCEOCCLUSION
|
|
7
7
|
specularEnvironmentReflectance*=seo;
|
|
8
8
|
#endif
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbrBlockReflectance.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockReflectance.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockReflectance\";\nconst shader = `#if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)\nvec3 specularEnvironmentReflectance=getReflectanceFromBRDFLookup(clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,environmentBrdf);\n#ifdef RADIANCEOCCLUSION\nspecularEnvironmentReflectance*=seo;\n#endif\n#ifdef HORIZONOCCLUSION\n#ifdef BUMP\n#ifdef REFLECTIONMAP_3D\nspecularEnvironmentReflectance*=eho;\n#endif\n#endif\n#endif\n#else\nvec3 specularEnvironmentReflectance=getReflectanceFromAnalyticalBRDFLookup_Jones(NdotV,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,sqrt(microSurface));\n#endif\n#ifdef CLEARCOAT\nspecularEnvironmentReflectance*=clearcoatOut.conservationFactor;\n#if defined(CLEARCOAT_TINT)\nspecularEnvironmentReflectance*=clearcoatOut.absorption;\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBlockReflectance = { name, shader };\n"]}
|
|
1
|
+
{"version":3,"file":"pbrBlockReflectance.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockReflectance.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockReflectance\";\nconst shader = `#if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)\nvec3 specularEnvironmentReflectance=getReflectanceFromBRDFLookup(clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,vReflectivityColor.b,environmentBrdf);\n#ifdef RADIANCEOCCLUSION\nspecularEnvironmentReflectance*=seo;\n#endif\n#ifdef HORIZONOCCLUSION\n#ifdef BUMP\n#ifdef REFLECTIONMAP_3D\nspecularEnvironmentReflectance*=eho;\n#endif\n#endif\n#endif\n#else\nvec3 specularEnvironmentReflectance=getReflectanceFromAnalyticalBRDFLookup_Jones(NdotV,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,sqrt(microSurface));\n#endif\n#ifdef CLEARCOAT\nspecularEnvironmentReflectance*=clearcoatOut.conservationFactor;\n#if defined(CLEARCOAT_TINT)\nspecularEnvironmentReflectance*=clearcoatOut.absorption;\n#endif\n#endif\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBlockReflectance = { name, shader };\n"]}
|
|
@@ -27,7 +27,7 @@ vec4 surfaceReflectivityColorMap;
|
|
|
27
27
|
};
|
|
28
28
|
#define pbr_inline
|
|
29
29
|
reflectivityOutParams reflectivityBlock(
|
|
30
|
-
in vec4
|
|
30
|
+
in vec4 reflectivityColor
|
|
31
31
|
#ifdef METALLICWORKFLOW
|
|
32
32
|
,in vec3 surfaceAlbedo
|
|
33
33
|
,in vec4 metallicReflectanceFactors
|
|
@@ -47,7 +47,7 @@ in vec4 vReflectivityColor
|
|
|
47
47
|
,in vec4 vDetailInfos
|
|
48
48
|
#endif
|
|
49
49
|
)
|
|
50
|
-
{reflectivityOutParams outParams;float microSurface=
|
|
50
|
+
{reflectivityOutParams outParams;float microSurface=reflectivityColor.a;vec3 surfaceReflectivityColor=reflectivityColor.rgb;
|
|
51
51
|
#ifdef METALLICWORKFLOW
|
|
52
52
|
vec2 metallicRoughness=surfaceReflectivityColor.rg;
|
|
53
53
|
#ifdef REFLECTIVITY
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbrBlockReflectivity.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockReflectivity.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Gd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockReflectivity\";\nconst shader = `struct reflectivityOutParams\n{float microSurface;float roughness;vec3 surfaceReflectivityColor;\n#ifdef METALLICWORKFLOW\nvec3 surfaceAlbedo;\n#endif\n#if defined(METALLICWORKFLOW) && defined(REFLECTIVITY) && defined(AOSTOREINMETALMAPRED)\nvec3 ambientOcclusionColor;\n#endif\n#if DEBUGMODE>0\n#ifdef METALLICWORKFLOW\nvec2 metallicRoughness;\n#ifdef REFLECTIVITY\nvec4 surfaceMetallicColorMap;\n#endif\n#ifndef FROSTBITE_REFLECTANCE\nvec3 metallicF0;\n#endif\n#else\n#ifdef REFLECTIVITY\nvec4 surfaceReflectivityColorMap;\n#endif\n#endif\n#endif\n};\n#define pbr_inline\nreflectivityOutParams reflectivityBlock(\nin vec4
|
|
1
|
+
{"version":3,"file":"pbrBlockReflectivity.js","sourceRoot":"","sources":["../../../../../dev/core/src/Shaders/ShadersInclude/pbrBlockReflectivity.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Gd,CAAC;AACF,aAAa;AACb,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1C,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,CAAC;AACD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockReflectivity\";\nconst shader = `struct reflectivityOutParams\n{float microSurface;float roughness;vec3 surfaceReflectivityColor;\n#ifdef METALLICWORKFLOW\nvec3 surfaceAlbedo;\n#endif\n#if defined(METALLICWORKFLOW) && defined(REFLECTIVITY) && defined(AOSTOREINMETALMAPRED)\nvec3 ambientOcclusionColor;\n#endif\n#if DEBUGMODE>0\n#ifdef METALLICWORKFLOW\nvec2 metallicRoughness;\n#ifdef REFLECTIVITY\nvec4 surfaceMetallicColorMap;\n#endif\n#ifndef FROSTBITE_REFLECTANCE\nvec3 metallicF0;\n#endif\n#else\n#ifdef REFLECTIVITY\nvec4 surfaceReflectivityColorMap;\n#endif\n#endif\n#endif\n};\n#define pbr_inline\nreflectivityOutParams reflectivityBlock(\nin vec4 reflectivityColor\n#ifdef METALLICWORKFLOW\n,in vec3 surfaceAlbedo\n,in vec4 metallicReflectanceFactors\n#endif\n#ifdef REFLECTIVITY\n,in vec3 reflectivityInfos\n,in vec4 surfaceMetallicOrReflectivityColorMap\n#endif\n#if defined(METALLICWORKFLOW) && defined(REFLECTIVITY) && defined(AOSTOREINMETALMAPRED)\n,in vec3 ambientOcclusionColorIn\n#endif\n#ifdef MICROSURFACEMAP\n,in vec4 microSurfaceTexel\n#endif\n#ifdef DETAIL\n,in vec4 detailColor\n,in vec4 vDetailInfos\n#endif\n)\n{reflectivityOutParams outParams;float microSurface=reflectivityColor.a;vec3 surfaceReflectivityColor=reflectivityColor.rgb;\n#ifdef METALLICWORKFLOW\nvec2 metallicRoughness=surfaceReflectivityColor.rg;\n#ifdef REFLECTIVITY\n#if DEBUGMODE>0\noutParams.surfaceMetallicColorMap=surfaceMetallicOrReflectivityColorMap;\n#endif\n#ifdef AOSTOREINMETALMAPRED\nvec3 aoStoreInMetalMap=vec3(surfaceMetallicOrReflectivityColorMap.r,surfaceMetallicOrReflectivityColorMap.r,surfaceMetallicOrReflectivityColorMap.r);outParams.ambientOcclusionColor=mix(ambientOcclusionColorIn,aoStoreInMetalMap,reflectivityInfos.z);\n#endif\n#ifdef METALLNESSSTOREINMETALMAPBLUE\nmetallicRoughness.r*=surfaceMetallicOrReflectivityColorMap.b;\n#else\nmetallicRoughness.r*=surfaceMetallicOrReflectivityColorMap.r;\n#endif\n#ifdef ROUGHNESSSTOREINMETALMAPALPHA\nmetallicRoughness.g*=surfaceMetallicOrReflectivityColorMap.a;\n#else\n#ifdef ROUGHNESSSTOREINMETALMAPGREEN\nmetallicRoughness.g*=surfaceMetallicOrReflectivityColorMap.g;\n#endif\n#endif\n#endif\n#ifdef DETAIL\nfloat detailRoughness=mix(0.5,detailColor.b,vDetailInfos.w);float loLerp=mix(0.,metallicRoughness.g,detailRoughness*2.);float hiLerp=mix(metallicRoughness.g,1.,(detailRoughness-0.5)*2.);metallicRoughness.g=mix(loLerp,hiLerp,step(detailRoughness,0.5));\n#endif\n#ifdef MICROSURFACEMAP\nmetallicRoughness.g*=microSurfaceTexel.r;\n#endif\n#if DEBUGMODE>0\noutParams.metallicRoughness=metallicRoughness;\n#endif\n#define CUSTOM_FRAGMENT_UPDATE_METALLICROUGHNESS\nmicroSurface=1.0-metallicRoughness.g;vec3 baseColor=surfaceAlbedo;\n#ifdef FROSTBITE_REFLECTANCE\noutParams.surfaceAlbedo=baseColor.rgb*(1.0-metallicRoughness.r);surfaceReflectivityColor=mix(0.16*reflectance*reflectance,baseColor,metallicRoughness.r);\n#else\nvec3 metallicF0=metallicReflectanceFactors.rgb;\n#if DEBUGMODE>0\noutParams.metallicF0=metallicF0;\n#endif\noutParams.surfaceAlbedo=mix(baseColor.rgb*(1.0-metallicF0),vec3(0.,0.,0.),metallicRoughness.r);surfaceReflectivityColor=mix(metallicF0,baseColor,metallicRoughness.r);\n#endif\n#else\n#ifdef REFLECTIVITY\nsurfaceReflectivityColor*=surfaceMetallicOrReflectivityColorMap.rgb;\n#if DEBUGMODE>0\noutParams.surfaceReflectivityColorMap=surfaceMetallicOrReflectivityColorMap;\n#endif\n#ifdef MICROSURFACEFROMREFLECTIVITYMAP\nmicroSurface*=surfaceMetallicOrReflectivityColorMap.a;microSurface*=reflectivityInfos.z;\n#else\n#ifdef MICROSURFACEAUTOMATIC\nmicroSurface*=computeDefaultMicroSurface(microSurface,surfaceReflectivityColor);\n#endif\n#ifdef MICROSURFACEMAP\nmicroSurface*=microSurfaceTexel.r;\n#endif\n#define CUSTOM_FRAGMENT_UPDATE_MICROSURFACE\n#endif\n#endif\n#endif\nmicroSurface=saturate(microSurface);float roughness=1.-microSurface;outParams.microSurface=microSurface;outParams.roughness=roughness;outParams.surfaceReflectivityColor=surfaceReflectivityColor;return outParams;}\n`;\n// Sideeffect\nif (!ShaderStore.IncludesShadersStore[name]) {\n ShaderStore.IncludesShadersStore[name] = shader;\n}\n/** @internal */\nexport const pbrBlockReflectivity = { name, shader };\n"]}
|
|
@@ -5,7 +5,7 @@ const shader = `#define CLEARCOATREFLECTANCE90 1.0
|
|
|
5
5
|
struct lightingInfo
|
|
6
6
|
{vec3 diffuse;
|
|
7
7
|
#ifdef SS_TRANSLUCENCY
|
|
8
|
-
vec3
|
|
8
|
+
vec3 diffuseTransmission;
|
|
9
9
|
#endif
|
|
10
10
|
#ifdef SPECULARTERM
|
|
11
11
|
vec3 specular;
|
|
@@ -31,11 +31,23 @@ vec3 computeDiffuseLighting(preLightingInfo info,vec3 lightColor) {float diffuse
|
|
|
31
31
|
#define inline
|
|
32
32
|
vec3 computeProjectionTextureDiffuseLighting(sampler2D projectionLightSampler,mat4 textureProjectionMatrix,vec3 posW){vec4 strq=textureProjectionMatrix*vec4(posW,1.0);strq/=strq.w;vec3 textureColor=texture2D(projectionLightSampler,strq.xy).rgb;return toLinearSpace(textureColor);}
|
|
33
33
|
#ifdef SS_TRANSLUCENCY
|
|
34
|
-
vec3
|
|
35
|
-
|
|
34
|
+
vec3 computeDiffuseTransmittedLighting(preLightingInfo info,vec3 lightColor,vec3 transmittance) {vec3 transmittanceNdotL=vec3(0.);float NdotL=absEps(info.NdotLUnclamped);
|
|
35
|
+
#ifndef SS_TRANSLUCENCY_LEGACY
|
|
36
|
+
if (info.NdotLUnclamped<0.0) {
|
|
37
|
+
#endif
|
|
38
|
+
float wrapNdotL=computeWrappedDiffuseNdotL(NdotL,0.02);float trAdapt=step(0.,info.NdotLUnclamped);transmittanceNdotL=mix(transmittance*wrapNdotL,vec3(wrapNdotL),trAdapt);
|
|
39
|
+
#ifndef SS_TRANSLUCENCY_LEGACY
|
|
40
|
+
}
|
|
41
|
+
return (transmittanceNdotL/PI)*info.attenuation*lightColor;
|
|
42
|
+
#endif
|
|
43
|
+
float diffuseTerm=diffuseBRDF_Burley(NdotL,info.NdotV,info.VdotH,info.roughness);return diffuseTerm*transmittanceNdotL*info.attenuation*lightColor;}
|
|
36
44
|
#endif
|
|
37
45
|
#ifdef SPECULARTERM
|
|
38
|
-
vec3 computeSpecularLighting(preLightingInfo info,vec3 N,vec3 reflectance0,vec3 reflectance90,float geometricRoughnessFactor,vec3 lightColor) {float NdotH=saturateEps(dot(N,info.H));float roughness=max(info.roughness,geometricRoughnessFactor);float alphaG=convertRoughnessToAverageSlope(roughness);
|
|
46
|
+
vec3 computeSpecularLighting(preLightingInfo info,vec3 N,vec3 reflectance0,vec3 reflectance90,float geometricRoughnessFactor,vec3 lightColor,float ior) {float NdotH=saturateEps(dot(N,info.H));float roughness=max(info.roughness,geometricRoughnessFactor);float alphaG=convertRoughnessToAverageSlope(roughness);
|
|
47
|
+
#ifdef METALLICWORKFLOW
|
|
48
|
+
reflectance90=clamp(reflectance90*2.0*(ior-1.0),0.0,1.0);
|
|
49
|
+
#endif
|
|
50
|
+
vec3 fresnel=fresnelSchlickGGX(info.VdotH,reflectance0,reflectance90);
|
|
39
51
|
#ifdef IRIDESCENCE
|
|
40
52
|
fresnel=mix(fresnel,reflectance0,info.iridescenceIntensity);
|
|
41
53
|
#endif
|