three-stdlib 2.35.3 → 2.35.4
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/_polyfill/CapsuleGeometry.cjs +20 -17
- package/_polyfill/CapsuleGeometry.cjs.map +1 -1
- package/_polyfill/CapsuleGeometry.js +20 -17
- package/_polyfill/CapsuleGeometry.js.map +1 -1
- package/_polyfill/constants.cjs +1 -1
- package/_polyfill/constants.cjs.map +1 -1
- package/_polyfill/constants.js +1 -1
- package/_polyfill/constants.js.map +1 -1
- package/animation/AnimationClipCreator.cjs +13 -13
- package/animation/AnimationClipCreator.cjs.map +1 -1
- package/animation/AnimationClipCreator.js +13 -13
- package/animation/AnimationClipCreator.js.map +1 -1
- package/animation/CCDIKSolver.cjs +11 -11
- package/animation/CCDIKSolver.cjs.map +1 -1
- package/animation/CCDIKSolver.js +12 -12
- package/animation/CCDIKSolver.js.map +1 -1
- package/animation/MMDAnimationHelper.cjs +1 -1
- package/animation/MMDAnimationHelper.cjs.map +1 -1
- package/animation/MMDAnimationHelper.js +1 -1
- package/animation/MMDAnimationHelper.js.map +1 -1
- package/animation/MMDPhysics.cjs +4 -4
- package/animation/MMDPhysics.cjs.map +1 -1
- package/animation/MMDPhysics.js +4 -4
- package/animation/MMDPhysics.js.map +1 -1
- package/controls/ArcballControls.cjs +2 -2
- package/controls/ArcballControls.cjs.map +1 -1
- package/controls/ArcballControls.js +3 -3
- package/controls/ArcballControls.js.map +1 -1
- package/controls/FirstPersonControls.cjs +1 -1
- package/controls/FirstPersonControls.cjs.map +1 -1
- package/controls/FirstPersonControls.js +1 -1
- package/controls/FirstPersonControls.js.map +1 -1
- package/controls/OrbitControls.cjs +2 -2
- package/controls/OrbitControls.cjs.map +1 -1
- package/controls/OrbitControls.js +3 -3
- package/controls/OrbitControls.js.map +1 -1
- package/controls/PointerLockControls.cjs +2 -2
- package/controls/PointerLockControls.cjs.map +1 -1
- package/controls/PointerLockControls.js +3 -3
- package/controls/PointerLockControls.js.map +1 -1
- package/csm/CSM.cjs +4 -4
- package/csm/CSM.cjs.map +1 -1
- package/csm/CSM.js +5 -5
- package/csm/CSM.js.map +1 -1
- package/csm/CSMFrustum.cjs +1 -1
- package/csm/CSMFrustum.cjs.map +1 -1
- package/csm/CSMFrustum.js +2 -2
- package/csm/CSMFrustum.js.map +1 -1
- package/deprecated/Geometry.cjs +722 -715
- package/deprecated/Geometry.cjs.map +1 -1
- package/deprecated/Geometry.js +723 -716
- package/deprecated/Geometry.js.map +1 -1
- package/effects/AnaglyphEffect.cjs +2 -1
- package/effects/AnaglyphEffect.cjs.map +1 -1
- package/effects/AnaglyphEffect.js +3 -2
- package/effects/AnaglyphEffect.js.map +1 -1
- package/effects/OutlineEffect.cjs +2 -1
- package/effects/OutlineEffect.cjs.map +1 -1
- package/effects/OutlineEffect.js +3 -2
- package/effects/OutlineEffect.js.map +1 -1
- package/effects/ParallaxBarrierEffect.cjs +2 -1
- package/effects/ParallaxBarrierEffect.cjs.map +1 -1
- package/effects/ParallaxBarrierEffect.js +3 -2
- package/effects/ParallaxBarrierEffect.js.map +1 -1
- package/exporters/DRACOExporter.cjs +133 -122
- package/exporters/DRACOExporter.cjs.map +1 -1
- package/exporters/DRACOExporter.d.ts +23 -21
- package/exporters/DRACOExporter.js +133 -122
- package/exporters/DRACOExporter.js.map +1 -1
- package/exporters/GLTFExporter.cjs +170 -167
- package/exporters/GLTFExporter.cjs.map +1 -1
- package/exporters/GLTFExporter.js +170 -167
- package/exporters/GLTFExporter.js.map +1 -1
- package/geometries/LightningStrike.cjs +524 -515
- package/geometries/LightningStrike.cjs.map +1 -1
- package/geometries/LightningStrike.js +524 -515
- package/geometries/LightningStrike.js.map +1 -1
- package/geometries/RoundedBoxGeometry.cjs +1 -1
- package/geometries/RoundedBoxGeometry.cjs.map +1 -1
- package/geometries/RoundedBoxGeometry.js +2 -2
- package/geometries/RoundedBoxGeometry.js.map +1 -1
- package/helpers/RaycasterHelper.cjs +2 -2
- package/helpers/RaycasterHelper.cjs.map +1 -1
- package/helpers/RaycasterHelper.js +3 -3
- package/helpers/RaycasterHelper.js.map +1 -1
- package/helpers/VertexNormalsHelper.cjs +3 -3
- package/helpers/VertexNormalsHelper.cjs.map +1 -1
- package/helpers/VertexNormalsHelper.js +4 -4
- package/helpers/VertexNormalsHelper.js.map +1 -1
- package/helpers/VertexTangentsHelper.cjs +2 -2
- package/helpers/VertexTangentsHelper.cjs.map +1 -1
- package/helpers/VertexTangentsHelper.js +3 -3
- package/helpers/VertexTangentsHelper.js.map +1 -1
- package/interactive/InteractiveGroup.cjs +1 -1
- package/interactive/InteractiveGroup.cjs.map +1 -1
- package/interactive/InteractiveGroup.js +2 -2
- package/interactive/InteractiveGroup.js.map +1 -1
- package/interactive/SelectionBox.cjs +15 -15
- package/interactive/SelectionBox.cjs.map +1 -1
- package/interactive/SelectionBox.js +16 -16
- package/interactive/SelectionBox.js.map +1 -1
- package/libs/chevrotain.cjs +1 -1
- package/libs/chevrotain.cjs.map +1 -1
- package/libs/chevrotain.js +1 -1
- package/libs/chevrotain.js.map +1 -1
- package/libs/lottie.cjs +1 -1
- package/libs/lottie.cjs.map +1 -1
- package/libs/lottie.js +1 -1
- package/libs/lottie.js.map +1 -1
- package/libs/opentype.cjs +1 -1
- package/libs/opentype.cjs.map +1 -1
- package/libs/opentype.js +1 -1
- package/libs/opentype.js.map +1 -1
- package/lights/LightProbeGenerator.cjs +5 -5
- package/lights/LightProbeGenerator.cjs.map +1 -1
- package/lights/LightProbeGenerator.js +5 -5
- package/lights/LightProbeGenerator.js.map +1 -1
- package/lights/RectAreaLightUniformsLib.cjs +3 -3
- package/lights/RectAreaLightUniformsLib.cjs.map +1 -1
- package/lights/RectAreaLightUniformsLib.js +3 -3
- package/lights/RectAreaLightUniformsLib.js.map +1 -1
- package/lines/LineMaterial.cjs +2 -1
- package/lines/LineMaterial.cjs.map +1 -1
- package/lines/LineMaterial.js +3 -2
- package/lines/LineMaterial.js.map +1 -1
- package/lines/LineSegments2.cjs +13 -13
- package/lines/LineSegments2.cjs.map +1 -1
- package/lines/LineSegments2.js +14 -14
- package/lines/LineSegments2.js.map +1 -1
- package/lines/LineSegmentsGeometry.cjs +2 -2
- package/lines/LineSegmentsGeometry.cjs.map +1 -1
- package/lines/LineSegmentsGeometry.js +3 -3
- package/lines/LineSegmentsGeometry.js.map +1 -1
- package/lines/Wireframe.cjs +3 -3
- package/lines/Wireframe.cjs.map +1 -1
- package/lines/Wireframe.js +4 -4
- package/lines/Wireframe.js.map +1 -1
- package/loaders/BasisTextureLoader.cjs +441 -435
- package/loaders/BasisTextureLoader.cjs.map +1 -1
- package/loaders/BasisTextureLoader.js +441 -435
- package/loaders/BasisTextureLoader.js.map +1 -1
- package/loaders/EXRLoader.cjs +2 -1
- package/loaders/EXRLoader.cjs.map +1 -1
- package/loaders/EXRLoader.js +3 -2
- package/loaders/EXRLoader.js.map +1 -1
- package/loaders/FBXLoader.cjs +2 -2
- package/loaders/FBXLoader.cjs.map +1 -1
- package/loaders/FBXLoader.js +2 -2
- package/loaders/FBXLoader.js.map +1 -1
- package/loaders/FontLoader.cjs +2 -2
- package/loaders/FontLoader.cjs.map +1 -1
- package/loaders/FontLoader.d.ts +2 -2
- package/loaders/FontLoader.js +2 -2
- package/loaders/FontLoader.js.map +1 -1
- package/loaders/GLTFLoader.cjs +2 -2
- package/loaders/GLTFLoader.cjs.map +1 -1
- package/loaders/GLTFLoader.js +2 -2
- package/loaders/GLTFLoader.js.map +1 -1
- package/loaders/KTX2Loader.cjs +377 -374
- package/loaders/KTX2Loader.cjs.map +1 -1
- package/loaders/KTX2Loader.js +377 -374
- package/loaders/KTX2Loader.js.map +1 -1
- package/loaders/LDrawLoader.cjs +5 -4
- package/loaders/LDrawLoader.cjs.map +1 -1
- package/loaders/LDrawLoader.js +6 -5
- package/loaders/LDrawLoader.js.map +1 -1
- package/loaders/OBJLoader.cjs +5 -5
- package/loaders/OBJLoader.cjs.map +1 -1
- package/loaders/OBJLoader.js +6 -6
- package/loaders/OBJLoader.js.map +1 -1
- package/loaders/PRWMLoader.cjs +46 -43
- package/loaders/PRWMLoader.cjs.map +1 -1
- package/loaders/PRWMLoader.js +46 -43
- package/loaders/PRWMLoader.js.map +1 -1
- package/loaders/SVGLoader.cjs +1694 -1688
- package/loaders/SVGLoader.cjs.map +1 -1
- package/loaders/SVGLoader.js +1694 -1688
- package/loaders/SVGLoader.js.map +1 -1
- package/loaders/XLoader.cjs +1 -1
- package/loaders/XLoader.cjs.map +1 -1
- package/loaders/XLoader.js +1 -1
- package/loaders/XLoader.js.map +1 -1
- package/math/Capsule.cjs +3 -3
- package/math/Capsule.cjs.map +1 -1
- package/math/Capsule.js +3 -3
- package/math/Capsule.js.map +1 -1
- package/math/ColorConverter.cjs +9 -9
- package/math/ColorConverter.cjs.map +1 -1
- package/math/ColorConverter.js +9 -9
- package/math/ColorConverter.js.map +1 -1
- package/math/ConvexHull.cjs +53 -50
- package/math/ConvexHull.cjs.map +1 -1
- package/math/ConvexHull.js +53 -50
- package/math/ConvexHull.js.map +1 -1
- package/math/ImprovedNoise.cjs +1 -1
- package/math/ImprovedNoise.cjs.map +1 -1
- package/math/ImprovedNoise.js +1 -1
- package/math/ImprovedNoise.js.map +1 -1
- package/math/MeshSurfaceSampler.cjs +2 -2
- package/math/MeshSurfaceSampler.cjs.map +1 -1
- package/math/MeshSurfaceSampler.js +2 -2
- package/math/MeshSurfaceSampler.js.map +1 -1
- package/math/OBB.cjs +14 -14
- package/math/OBB.cjs.map +1 -1
- package/math/OBB.js +15 -15
- package/math/OBB.js.map +1 -1
- package/math/Octree.cjs +7 -7
- package/math/Octree.cjs.map +1 -1
- package/math/Octree.js +8 -8
- package/math/Octree.js.map +1 -1
- package/misc/ConvexObjectBreaker.cjs +271 -268
- package/misc/ConvexObjectBreaker.cjs.map +1 -1
- package/misc/ConvexObjectBreaker.js +272 -269
- package/misc/ConvexObjectBreaker.js.map +1 -1
- package/misc/Gyroscope.cjs +6 -6
- package/misc/Gyroscope.cjs.map +1 -1
- package/misc/Gyroscope.js +7 -7
- package/misc/Gyroscope.js.map +1 -1
- package/modifiers/CurveModifier.cjs +1 -1
- package/modifiers/CurveModifier.cjs.map +1 -1
- package/modifiers/CurveModifier.js +2 -2
- package/modifiers/CurveModifier.js.map +1 -1
- package/modifiers/SimplifyModifier.cjs +2 -2
- package/modifiers/SimplifyModifier.cjs.map +1 -1
- package/modifiers/SimplifyModifier.js +2 -2
- package/modifiers/SimplifyModifier.js.map +1 -1
- package/objects/BatchedMesh.cjs +2 -2
- package/objects/BatchedMesh.cjs.map +1 -1
- package/objects/BatchedMesh.js +3 -3
- package/objects/BatchedMesh.js.map +1 -1
- package/objects/GroundProjectedEnv.cjs +2 -1
- package/objects/GroundProjectedEnv.cjs.map +1 -1
- package/objects/GroundProjectedEnv.js +3 -2
- package/objects/GroundProjectedEnv.js.map +1 -1
- package/objects/Lensflare.cjs +209 -206
- package/objects/Lensflare.cjs.map +1 -1
- package/objects/Lensflare.js +209 -206
- package/objects/Lensflare.js.map +1 -1
- package/objects/Reflector.cjs +154 -146
- package/objects/Reflector.cjs.map +1 -1
- package/objects/Reflector.js +154 -146
- package/objects/Reflector.js.map +1 -1
- package/objects/ReflectorForSSRPass.cjs +183 -180
- package/objects/ReflectorForSSRPass.cjs.map +1 -1
- package/objects/ReflectorForSSRPass.js +183 -180
- package/objects/ReflectorForSSRPass.js.map +1 -1
- package/objects/Refractor.cjs +164 -161
- package/objects/Refractor.cjs.map +1 -1
- package/objects/Refractor.js +164 -161
- package/objects/Refractor.js.map +1 -1
- package/objects/ShadowMesh.cjs +1 -1
- package/objects/ShadowMesh.cjs.map +1 -1
- package/objects/ShadowMesh.js +2 -2
- package/objects/ShadowMesh.js.map +1 -1
- package/objects/Sky.cjs +35 -32
- package/objects/Sky.cjs.map +1 -1
- package/objects/Sky.d.ts +100 -6
- package/objects/Sky.js +35 -32
- package/objects/Sky.js.map +1 -1
- package/objects/Water.cjs +2 -1
- package/objects/Water.cjs.map +1 -1
- package/objects/Water.js +3 -2
- package/objects/Water.js.map +1 -1
- package/objects/Water2.cjs +143 -140
- package/objects/Water2.cjs.map +1 -1
- package/objects/Water2.js +143 -140
- package/objects/Water2.js.map +1 -1
- package/package.json +1 -1
- package/postprocessing/SAOPass.cjs +267 -264
- package/postprocessing/SAOPass.cjs.map +1 -1
- package/postprocessing/SAOPass.js +267 -264
- package/postprocessing/SAOPass.js.map +1 -1
- package/postprocessing/SSAOPass.cjs +253 -250
- package/postprocessing/SSAOPass.cjs.map +1 -1
- package/postprocessing/SSAOPass.js +253 -250
- package/postprocessing/SSAOPass.js.map +1 -1
- package/postprocessing/SSRPass.cjs +379 -376
- package/postprocessing/SSRPass.cjs.map +1 -1
- package/postprocessing/SSRPass.js +379 -376
- package/postprocessing/SSRPass.js.map +1 -1
- package/postprocessing/UnrealBloomPass.cjs +205 -202
- package/postprocessing/UnrealBloomPass.cjs.map +1 -1
- package/postprocessing/UnrealBloomPass.js +205 -202
- package/postprocessing/UnrealBloomPass.js.map +1 -1
- package/renderers/CSS2DRenderer.cjs +5 -5
- package/renderers/CSS2DRenderer.cjs.map +1 -1
- package/renderers/CSS2DRenderer.js +5 -5
- package/renderers/CSS2DRenderer.js.map +1 -1
- package/renderers/CSS3DRenderer.cjs +5 -5
- package/renderers/CSS3DRenderer.cjs.map +1 -1
- package/renderers/CSS3DRenderer.js +6 -6
- package/renderers/CSS3DRenderer.js.map +1 -1
- package/shaders/ACESFilmicToneMappingShader.cjs +71 -46
- package/shaders/ACESFilmicToneMappingShader.cjs.map +1 -1
- package/shaders/ACESFilmicToneMappingShader.js +71 -46
- package/shaders/ACESFilmicToneMappingShader.js.map +1 -1
- package/shaders/AfterimageShader.cjs +41 -22
- package/shaders/AfterimageShader.cjs.map +1 -1
- package/shaders/AfterimageShader.js +41 -22
- package/shaders/AfterimageShader.js.map +1 -1
- package/shaders/BasicShader.cjs +20 -6
- package/shaders/BasicShader.cjs.map +1 -1
- package/shaders/BasicShader.js +20 -6
- package/shaders/BasicShader.js.map +1 -1
- package/shaders/BleachBypassShader.cjs +46 -26
- package/shaders/BleachBypassShader.cjs.map +1 -1
- package/shaders/BleachBypassShader.js +46 -26
- package/shaders/BleachBypassShader.js.map +1 -1
- package/shaders/BlendShader.cjs +33 -19
- package/shaders/BlendShader.cjs.map +1 -1
- package/shaders/BlendShader.js +33 -19
- package/shaders/BlendShader.js.map +1 -1
- package/shaders/BokehShader.cjs +117 -90
- package/shaders/BokehShader.cjs.map +1 -1
- package/shaders/BokehShader.js +117 -90
- package/shaders/BokehShader.js.map +1 -1
- package/shaders/BokehShader2.cjs +333 -232
- package/shaders/BokehShader2.cjs.map +1 -1
- package/shaders/BokehShader2.js +333 -232
- package/shaders/BokehShader2.js.map +1 -1
- package/shaders/BrightnessContrastShader.cjs +38 -22
- package/shaders/BrightnessContrastShader.cjs.map +1 -1
- package/shaders/BrightnessContrastShader.js +38 -22
- package/shaders/BrightnessContrastShader.js.map +1 -1
- package/shaders/ColorCorrectionShader.cjs +35 -21
- package/shaders/ColorCorrectionShader.cjs.map +1 -1
- package/shaders/ColorCorrectionShader.js +35 -21
- package/shaders/ColorCorrectionShader.js.map +1 -1
- package/shaders/ColorifyShader.cjs +34 -19
- package/shaders/ColorifyShader.cjs.map +1 -1
- package/shaders/ColorifyShader.js +34 -19
- package/shaders/ColorifyShader.js.map +1 -1
- package/shaders/ConvolutionShader.cjs +43 -24
- package/shaders/ConvolutionShader.cjs.map +1 -1
- package/shaders/ConvolutionShader.js +43 -24
- package/shaders/ConvolutionShader.js.map +1 -1
- package/shaders/CopyShader.cjs +30 -16
- package/shaders/CopyShader.cjs.map +1 -1
- package/shaders/CopyShader.js +30 -16
- package/shaders/CopyShader.js.map +1 -1
- package/shaders/DOFMipMapShader.cjs +38 -21
- package/shaders/DOFMipMapShader.cjs.map +1 -1
- package/shaders/DOFMipMapShader.js +38 -21
- package/shaders/DOFMipMapShader.js.map +1 -1
- package/shaders/DepthLimitedBlurShader.cjs +98 -69
- package/shaders/DepthLimitedBlurShader.cjs.map +1 -1
- package/shaders/DepthLimitedBlurShader.js +98 -69
- package/shaders/DepthLimitedBlurShader.js.map +1 -1
- package/shaders/DigitalGlitch.cjs +70 -59
- package/shaders/DigitalGlitch.cjs.map +1 -1
- package/shaders/DigitalGlitch.js +70 -59
- package/shaders/DigitalGlitch.js.map +1 -1
- package/shaders/DotScreenShader.cjs +49 -28
- package/shaders/DotScreenShader.cjs.map +1 -1
- package/shaders/DotScreenShader.js +49 -28
- package/shaders/DotScreenShader.js.map +1 -1
- package/shaders/FXAAShader.cjs +1098 -1089
- package/shaders/FXAAShader.cjs.map +1 -1
- package/shaders/FXAAShader.js +1098 -1089
- package/shaders/FXAAShader.js.map +1 -1
- package/shaders/FilmShader.cjs +57 -29
- package/shaders/FilmShader.cjs.map +1 -1
- package/shaders/FilmShader.js +57 -29
- package/shaders/FilmShader.js.map +1 -1
- package/shaders/FocusShader.cjs +70 -43
- package/shaders/FocusShader.cjs.map +1 -1
- package/shaders/FocusShader.js +70 -43
- package/shaders/FocusShader.js.map +1 -1
- package/shaders/FreiChenShader.cjs +74 -53
- package/shaders/FreiChenShader.cjs.map +1 -1
- package/shaders/FreiChenShader.js +74 -53
- package/shaders/FreiChenShader.js.map +1 -1
- package/shaders/FresnelShader.cjs +55 -35
- package/shaders/FresnelShader.cjs.map +1 -1
- package/shaders/FresnelShader.js +55 -35
- package/shaders/FresnelShader.js.map +1 -1
- package/shaders/GammaCorrectionShader.cjs +33 -19
- package/shaders/GammaCorrectionShader.cjs.map +1 -1
- package/shaders/GammaCorrectionShader.js +33 -19
- package/shaders/GammaCorrectionShader.js.map +1 -1
- package/shaders/GodRaysShader.cjs +193 -116
- package/shaders/GodRaysShader.cjs.map +1 -1
- package/shaders/GodRaysShader.js +193 -116
- package/shaders/GodRaysShader.js.map +1 -1
- package/shaders/HalftoneShader.cjs +270 -192
- package/shaders/HalftoneShader.cjs.map +1 -1
- package/shaders/HalftoneShader.js +270 -192
- package/shaders/HalftoneShader.js.map +1 -1
- package/shaders/HorizontalTiltShiftShader.cjs +43 -27
- package/shaders/HorizontalTiltShiftShader.cjs.map +1 -1
- package/shaders/HorizontalTiltShiftShader.js +43 -27
- package/shaders/HorizontalTiltShiftShader.js.map +1 -1
- package/shaders/HueSaturationShader.cjs +47 -31
- package/shaders/HueSaturationShader.cjs.map +1 -1
- package/shaders/HueSaturationShader.js +47 -31
- package/shaders/HueSaturationShader.js.map +1 -1
- package/shaders/KaleidoShader.cjs +37 -24
- package/shaders/KaleidoShader.cjs.map +1 -1
- package/shaders/KaleidoShader.js +37 -24
- package/shaders/KaleidoShader.js.map +1 -1
- package/shaders/LuminosityHighPassShader.cjs +43 -24
- package/shaders/LuminosityHighPassShader.cjs.map +1 -1
- package/shaders/LuminosityHighPassShader.js +43 -24
- package/shaders/LuminosityHighPassShader.js.map +1 -1
- package/shaders/LuminosityShader.cjs +34 -17
- package/shaders/LuminosityShader.cjs.map +1 -1
- package/shaders/LuminosityShader.js +34 -17
- package/shaders/LuminosityShader.js.map +1 -1
- package/shaders/MirrorShader.cjs +39 -26
- package/shaders/MirrorShader.cjs.map +1 -1
- package/shaders/MirrorShader.js +39 -26
- package/shaders/MirrorShader.js.map +1 -1
- package/shaders/NormalMapShader.cjs +36 -21
- package/shaders/NormalMapShader.cjs.map +1 -1
- package/shaders/NormalMapShader.js +36 -21
- package/shaders/NormalMapShader.js.map +1 -1
- package/shaders/ParallaxShader.cjs +147 -97
- package/shaders/ParallaxShader.cjs.map +1 -1
- package/shaders/ParallaxShader.js +147 -97
- package/shaders/ParallaxShader.js.map +1 -1
- package/shaders/PixelShader.cjs +31 -18
- package/shaders/PixelShader.cjs.map +1 -1
- package/shaders/PixelShader.js +31 -18
- package/shaders/PixelShader.js.map +1 -1
- package/shaders/RGBShiftShader.cjs +33 -20
- package/shaders/RGBShiftShader.cjs.map +1 -1
- package/shaders/RGBShiftShader.js +33 -20
- package/shaders/RGBShiftShader.js.map +1 -1
- package/shaders/SAOShader.cjs +154 -117
- package/shaders/SAOShader.cjs.map +1 -1
- package/shaders/SAOShader.js +154 -117
- package/shaders/SAOShader.js.map +1 -1
- package/shaders/SMAAShader.cjs +358 -270
- package/shaders/SMAAShader.cjs.map +1 -1
- package/shaders/SMAAShader.js +358 -270
- package/shaders/SMAAShader.js.map +1 -1
- package/shaders/SSAOShader.cjs +236 -142
- package/shaders/SSAOShader.cjs.map +1 -1
- package/shaders/SSAOShader.js +236 -142
- package/shaders/SSAOShader.js.map +1 -1
- package/shaders/SSRShader.cjs +4 -4
- package/shaders/SSRShader.cjs.map +1 -1
- package/shaders/SSRShader.js +4 -4
- package/shaders/SSRShader.js.map +1 -1
- package/shaders/SepiaShader.cjs +36 -20
- package/shaders/SepiaShader.cjs.map +1 -1
- package/shaders/SepiaShader.js +36 -20
- package/shaders/SepiaShader.js.map +1 -1
- package/shaders/SobelOperatorShader.cjs +64 -37
- package/shaders/SobelOperatorShader.cjs.map +1 -1
- package/shaders/SobelOperatorShader.js +64 -37
- package/shaders/SobelOperatorShader.js.map +1 -1
- package/shaders/TechnicolorShader.cjs +29 -16
- package/shaders/TechnicolorShader.cjs.map +1 -1
- package/shaders/TechnicolorShader.js +29 -16
- package/shaders/TechnicolorShader.js.map +1 -1
- package/shaders/ToneMapShader.cjs +55 -35
- package/shaders/ToneMapShader.cjs.map +1 -1
- package/shaders/ToneMapShader.js +55 -35
- package/shaders/ToneMapShader.js.map +1 -1
- package/shaders/ToonShader.cjs +275 -165
- package/shaders/ToonShader.cjs.map +1 -1
- package/shaders/ToonShader.js +275 -165
- package/shaders/ToonShader.js.map +1 -1
- package/shaders/TriangleBlurShader.cjs +50 -27
- package/shaders/TriangleBlurShader.cjs.map +1 -1
- package/shaders/TriangleBlurShader.js +50 -27
- package/shaders/TriangleBlurShader.js.map +1 -1
- package/shaders/UnpackDepthRGBAShader.cjs +32 -17
- package/shaders/UnpackDepthRGBAShader.cjs.map +1 -1
- package/shaders/UnpackDepthRGBAShader.js +32 -17
- package/shaders/UnpackDepthRGBAShader.js.map +1 -1
- package/shaders/VerticalTiltShiftShader.cjs +43 -27
- package/shaders/VerticalTiltShiftShader.cjs.map +1 -1
- package/shaders/VerticalTiltShiftShader.js +43 -27
- package/shaders/VerticalTiltShiftShader.js.map +1 -1
- package/shaders/VignetteShader.cjs +43 -27
- package/shaders/VignetteShader.cjs.map +1 -1
- package/shaders/VignetteShader.js +43 -27
- package/shaders/VignetteShader.js.map +1 -1
- package/shaders/VolumeShader.cjs +264 -213
- package/shaders/VolumeShader.cjs.map +1 -1
- package/shaders/VolumeShader.js +264 -213
- package/shaders/VolumeShader.js.map +1 -1
- package/shaders/WaterRefractionShader.cjs +63 -35
- package/shaders/WaterRefractionShader.cjs.map +1 -1
- package/shaders/WaterRefractionShader.js +63 -35
- package/shaders/WaterRefractionShader.js.map +1 -1
- package/utils/GeometryCompressionUtils.cjs +2 -1
- package/utils/GeometryCompressionUtils.cjs.map +1 -1
- package/utils/GeometryCompressionUtils.js +3 -2
- package/utils/GeometryCompressionUtils.js.map +1 -1
- package/utils/RoughnessMipmapper.cjs +3 -3
- package/utils/RoughnessMipmapper.cjs.map +1 -1
- package/utils/RoughnessMipmapper.js +4 -4
- package/utils/RoughnessMipmapper.js.map +1 -1
- package/webxr/ARButton.cjs +109 -106
- package/webxr/ARButton.cjs.map +1 -1
- package/webxr/ARButton.d.ts +4 -3
- package/webxr/ARButton.js +109 -106
- package/webxr/ARButton.js.map +1 -1
- package/webxr/OculusHandPointerModel.cjs +2 -2
- package/webxr/OculusHandPointerModel.cjs.map +1 -1
- package/webxr/OculusHandPointerModel.js +2 -2
- package/webxr/OculusHandPointerModel.js.map +1 -1
- package/webxr/VRButton.cjs +98 -95
- package/webxr/VRButton.cjs.map +1 -1
- package/webxr/VRButton.d.ts +6 -5
- package/webxr/VRButton.js +98 -95
- package/webxr/VRButton.js.map +1 -1
- package/webxr/XRHandPrimitiveModel.cjs +2 -2
- package/webxr/XRHandPrimitiveModel.cjs.map +1 -1
- package/webxr/XRHandPrimitiveModel.js +3 -3
- package/webxr/XRHandPrimitiveModel.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BokehShader2.cjs","sources":["../../src/shaders/BokehShader2.ts"],"sourcesContent":["import { IUniform, Texture, Vector2 } from 'three'\n\nexport interface BokehShader2Uniforms {\n textureWidth: IUniform<number>\n textureHeight: IUniform<number>\n\n focalDepth: IUniform<number>\n focalLength: IUniform<number>\n fstop: IUniform<number>\n\n tColor: IUniform<Texture | null>\n tDepth: IUniform<Texture | null>\n\n maxblur: IUniform<number>\n\n showFocus: IUniform<number>\n manualdof: IUniform<number>\n vignetting: IUniform<number>\n depthblur: IUniform<number>\n\n threshold: IUniform<number>\n gain: IUniform<number>\n bias: IUniform<number>\n fringe: IUniform<number>\n\n znear: IUniform<number>\n zfar: IUniform<number>\n\n noise: IUniform<number>\n dithering: IUniform<number>\n pentagon: IUniform<number>\n\n shaderFocus: IUniform<number>\n focusCoords: IUniform<Vector2>\n}\n\n/**\n * Depth-of-field shader with bokeh\n * ported from GLSL shader by Martins Upitis\n * http://blenderartists.org/forum/showthread.php?237488-GLSL-depth-of-field-with-bokeh-v2-4-(update)\n *\n * Requires #define RINGS and SAMPLES integers\n */\n\nexport const BokehShader2: {\n uniforms: BokehShader2Uniforms\n vertexShader: string\n fragmentShader: string\n} = {\n uniforms: {\n textureWidth: { value: 1.0 },\n textureHeight: { value: 1.0 },\n\n focalDepth: { value: 1.0 },\n focalLength: { value: 24.0 },\n fstop: { value: 0.9 },\n\n tColor: { value: null },\n tDepth: { value: null },\n\n maxblur: { value: 1.0 },\n\n showFocus: { value: 0 },\n manualdof: { value: 0 },\n vignetting: { value: 0 },\n depthblur: { value: 0 },\n\n threshold: { value: 0.5 },\n gain: { value: 2.0 },\n bias: { value: 0.5 },\n fringe: { value: 0.7 },\n\n znear: { value: 0.1 },\n zfar: { value: 100 },\n\n noise: { value: 1 },\n dithering: { value: 0.0001 },\n pentagon: { value: 0 },\n\n shaderFocus: { value: 1 },\n focusCoords: { value: new Vector2() },\n },\n\n vertexShader: [\n 'varying vec2 vUv;',\n\n 'void main() {',\n\n '\tvUv = uv;',\n '\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );',\n\n '}',\n ].join('\\n'),\n\n fragmentShader: [\n '#include <common>',\n\n 'varying vec2 vUv;',\n\n 'uniform sampler2D tColor;',\n 'uniform sampler2D tDepth;',\n 'uniform float textureWidth;',\n 'uniform float textureHeight;',\n\n 'uniform float focalDepth; //focal distance value in meters, but you may use autofocus option below',\n 'uniform float focalLength; //focal length in mm',\n 'uniform float fstop; //f-stop value',\n 'uniform bool showFocus; //show debug focus point and focal range (red = focal point, green = focal range)',\n\n '/*',\n 'make sure that these two values are the same for your camera, otherwise distances will be wrong.',\n '*/',\n\n 'uniform float znear; // camera clipping start',\n 'uniform float zfar; // camera clipping end',\n\n '//------------------------------------------',\n '//user variables',\n\n 'const int samples = SAMPLES; //samples on the first ring',\n 'const int rings = RINGS; //ring count',\n\n 'const int maxringsamples = rings * samples;',\n\n 'uniform bool manualdof; // manual dof calculation',\n 'float ndofstart = 1.0; // near dof blur start',\n 'float ndofdist = 2.0; // near dof blur falloff distance',\n 'float fdofstart = 1.0; // far dof blur start',\n 'float fdofdist = 3.0; // far dof blur falloff distance',\n\n 'float CoC = 0.03; //circle of confusion size in mm (35mm film = 0.03mm)',\n\n 'uniform bool vignetting; // use optical lens vignetting',\n\n 'float vignout = 1.3; // vignetting outer border',\n 'float vignin = 0.0; // vignetting inner border',\n 'float vignfade = 22.0; // f-stops till vignete fades',\n\n 'uniform bool shaderFocus;',\n '// disable if you use external focalDepth value',\n\n 'uniform vec2 focusCoords;',\n '// autofocus point on screen (0.0,0.0 - left lower corner, 1.0,1.0 - upper right)',\n '// if center of screen use vec2(0.5, 0.5);',\n\n 'uniform float maxblur;',\n '//clamp value of max blur (0.0 = no blur, 1.0 default)',\n\n 'uniform float threshold; // highlight threshold;',\n 'uniform float gain; // highlight gain;',\n\n 'uniform float bias; // bokeh edge bias',\n 'uniform float fringe; // bokeh chromatic aberration / fringing',\n\n 'uniform bool noise; //use noise instead of pattern for sample dithering',\n\n 'uniform float dithering;',\n\n 'uniform bool depthblur; // blur the depth buffer',\n 'float dbsize = 1.25; // depth blur size',\n\n '/*',\n 'next part is experimental',\n 'not looking good with small sample and ring count',\n 'looks okay starting from samples = 4, rings = 4',\n '*/',\n\n 'uniform bool pentagon; //use pentagon as bokeh shape?',\n 'float feather = 0.4; //pentagon shape feather',\n\n '//------------------------------------------',\n\n 'float penta(vec2 coords) {',\n '\t//pentagonal shape',\n '\tfloat scale = float(rings) - 1.3;',\n '\tvec4 HS0 = vec4( 1.0, 0.0, 0.0, 1.0);',\n '\tvec4 HS1 = vec4( 0.309016994, 0.951056516, 0.0, 1.0);',\n '\tvec4 HS2 = vec4(-0.809016994, 0.587785252, 0.0, 1.0);',\n '\tvec4 HS3 = vec4(-0.809016994,-0.587785252, 0.0, 1.0);',\n '\tvec4 HS4 = vec4( 0.309016994,-0.951056516, 0.0, 1.0);',\n '\tvec4 HS5 = vec4( 0.0 ,0.0 , 1.0, 1.0);',\n\n '\tvec4 one = vec4( 1.0 );',\n\n '\tvec4 P = vec4((coords),vec2(scale, scale));',\n\n '\tvec4 dist = vec4(0.0);',\n '\tfloat inorout = -4.0;',\n\n '\tdist.x = dot( P, HS0 );',\n '\tdist.y = dot( P, HS1 );',\n '\tdist.z = dot( P, HS2 );',\n '\tdist.w = dot( P, HS3 );',\n\n '\tdist = smoothstep( -feather, feather, dist );',\n\n '\tinorout += dot( dist, one );',\n\n '\tdist.x = dot( P, HS4 );',\n '\tdist.y = HS5.w - abs( P.z );',\n\n '\tdist = smoothstep( -feather, feather, dist );',\n '\tinorout += dist.x;',\n\n '\treturn clamp( inorout, 0.0, 1.0 );',\n '}',\n\n 'float bdepth(vec2 coords) {',\n '\t// Depth buffer blur',\n '\tfloat d = 0.0;',\n '\tfloat kernel[9];',\n '\tvec2 offset[9];',\n\n '\tvec2 wh = vec2(1.0/textureWidth,1.0/textureHeight) * dbsize;',\n\n '\toffset[0] = vec2(-wh.x,-wh.y);',\n '\toffset[1] = vec2( 0.0, -wh.y);',\n '\toffset[2] = vec2( wh.x -wh.y);',\n\n '\toffset[3] = vec2(-wh.x, 0.0);',\n '\toffset[4] = vec2( 0.0, 0.0);',\n '\toffset[5] = vec2( wh.x, 0.0);',\n\n '\toffset[6] = vec2(-wh.x, wh.y);',\n '\toffset[7] = vec2( 0.0, wh.y);',\n '\toffset[8] = vec2( wh.x, wh.y);',\n\n '\tkernel[0] = 1.0/16.0; kernel[1] = 2.0/16.0; kernel[2] = 1.0/16.0;',\n '\tkernel[3] = 2.0/16.0; kernel[4] = 4.0/16.0; kernel[5] = 2.0/16.0;',\n '\tkernel[6] = 1.0/16.0; kernel[7] = 2.0/16.0; kernel[8] = 1.0/16.0;',\n\n '\tfor( int i=0; i<9; i++ ) {',\n '\t\tfloat tmp = texture2D(tDepth, coords + offset[i]).r;',\n '\t\td += tmp * kernel[i];',\n '\t}',\n\n '\treturn d;',\n '}',\n\n 'vec3 color(vec2 coords,float blur) {',\n '\t//processing the sample',\n\n '\tvec3 col = vec3(0.0);',\n '\tvec2 texel = vec2(1.0/textureWidth,1.0/textureHeight);',\n\n '\tcol.r = texture2D(tColor,coords + vec2(0.0,1.0)*texel*fringe*blur).r;',\n '\tcol.g = texture2D(tColor,coords + vec2(-0.866,-0.5)*texel*fringe*blur).g;',\n '\tcol.b = texture2D(tColor,coords + vec2(0.866,-0.5)*texel*fringe*blur).b;',\n\n '\tvec3 lumcoeff = vec3(0.299,0.587,0.114);',\n '\tfloat lum = dot(col.rgb, lumcoeff);',\n '\tfloat thresh = max((lum-threshold)*gain, 0.0);',\n '\treturn col+mix(vec3(0.0),col,thresh*blur);',\n '}',\n\n 'vec3 debugFocus(vec3 col, float blur, float depth) {',\n '\tfloat edge = 0.002*depth; //distance based edge smoothing',\n '\tfloat m = clamp(smoothstep(0.0,edge,blur),0.0,1.0);',\n '\tfloat e = clamp(smoothstep(1.0-edge,1.0,blur),0.0,1.0);',\n\n '\tcol = mix(col,vec3(1.0,0.5,0.0),(1.0-m)*0.6);',\n '\tcol = mix(col,vec3(0.0,0.5,1.0),((1.0-e)-(1.0-m))*0.2);',\n\n '\treturn col;',\n '}',\n\n 'float linearize(float depth) {',\n '\treturn -zfar * znear / (depth * (zfar - znear) - zfar);',\n '}',\n\n 'float vignette() {',\n '\tfloat dist = distance(vUv.xy, vec2(0.5,0.5));',\n '\tdist = smoothstep(vignout+(fstop/vignfade), vignin+(fstop/vignfade), dist);',\n '\treturn clamp(dist,0.0,1.0);',\n '}',\n\n 'float gather(float i, float j, int ringsamples, inout vec3 col, float w, float h, float blur) {',\n '\tfloat rings2 = float(rings);',\n '\tfloat step = PI*2.0 / float(ringsamples);',\n '\tfloat pw = cos(j*step)*i;',\n '\tfloat ph = sin(j*step)*i;',\n '\tfloat p = 1.0;',\n '\tif (pentagon) {',\n '\t\tp = penta(vec2(pw,ph));',\n '\t}',\n '\tcol += color(vUv.xy + vec2(pw*w,ph*h), blur) * mix(1.0, i/rings2, bias) * p;',\n '\treturn 1.0 * mix(1.0, i /rings2, bias) * p;',\n '}',\n\n 'void main() {',\n '\t//scene depth calculation',\n\n '\tfloat depth = linearize(texture2D(tDepth,vUv.xy).x);',\n\n '\t// Blur depth?',\n '\tif ( depthblur ) {',\n '\t\tdepth = linearize(bdepth(vUv.xy));',\n '\t}',\n\n '\t//focal plane calculation',\n\n '\tfloat fDepth = focalDepth;',\n\n '\tif (shaderFocus) {',\n\n '\t\tfDepth = linearize(texture2D(tDepth,focusCoords).x);',\n\n '\t}',\n\n '\t// dof blur factor calculation',\n\n '\tfloat blur = 0.0;',\n\n '\tif (manualdof) {',\n '\t\tfloat a = depth-fDepth; // Focal plane',\n '\t\tfloat b = (a-fdofstart)/fdofdist; // Far DoF',\n '\t\tfloat c = (-a-ndofstart)/ndofdist; // Near Dof',\n '\t\tblur = (a>0.0) ? b : c;',\n '\t} else {',\n '\t\tfloat f = focalLength; // focal length in mm',\n '\t\tfloat d = fDepth*1000.0; // focal plane in mm',\n '\t\tfloat o = depth*1000.0; // depth in mm',\n\n '\t\tfloat a = (o*f)/(o-f);',\n '\t\tfloat b = (d*f)/(d-f);',\n '\t\tfloat c = (d-f)/(d*fstop*CoC);',\n\n '\t\tblur = abs(a-b)*c;',\n '\t}',\n\n '\tblur = clamp(blur,0.0,1.0);',\n\n '\t// calculation of pattern for dithering',\n\n '\tvec2 noise = vec2(rand(vUv.xy), rand( vUv.xy + vec2( 0.4, 0.6 ) ) )*dithering*blur;',\n\n '\t// getting blur x and y step factor',\n\n '\tfloat w = (1.0/textureWidth)*blur*maxblur+noise.x;',\n '\tfloat h = (1.0/textureHeight)*blur*maxblur+noise.y;',\n\n '\t// calculation of final color',\n\n '\tvec3 col = vec3(0.0);',\n\n '\tif(blur < 0.05) {',\n '\t\t//some optimization thingy',\n '\t\tcol = texture2D(tColor, vUv.xy).rgb;',\n '\t} else {',\n '\t\tcol = texture2D(tColor, vUv.xy).rgb;',\n '\t\tfloat s = 1.0;',\n '\t\tint ringsamples;',\n\n '\t\tfor (int i = 1; i <= rings; i++) {',\n '\t\t\t/*unboxstart*/',\n '\t\t\tringsamples = i * samples;',\n\n '\t\t\tfor (int j = 0 ; j < maxringsamples ; j++) {',\n '\t\t\t\tif (j >= ringsamples) break;',\n '\t\t\t\ts += gather(float(i), float(j), ringsamples, col, w, h, blur);',\n '\t\t\t}',\n '\t\t\t/*unboxend*/',\n '\t\t}',\n\n '\t\tcol /= s; //divide by sample count',\n '\t}',\n\n '\tif (showFocus) {',\n '\t\tcol = debugFocus(col, blur, depth);',\n '\t}',\n\n '\tif (vignetting) {',\n '\t\tcol *= vignette();',\n '\t}',\n\n '\tgl_FragColor.rgb = col;',\n '\tgl_FragColor.a = 1.0;',\n '} ',\n ].join('\\n'),\n}\n\nexport const BokehDepthShader = {\n uniforms: {\n mNear: { value: 1.0 },\n mFar: { value: 1000.0 },\n },\n\n vertexShader: [\n 'varying float vViewZDepth;',\n\n 'void main() {',\n\n '\t#include <begin_vertex>',\n '\t#include <project_vertex>',\n\n '\tvViewZDepth = - mvPosition.z;',\n\n '}',\n ].join('\\n'),\n\n fragmentShader: [\n 'uniform float mNear;',\n 'uniform float mFar;',\n\n 'varying float vViewZDepth;',\n\n 'void main() {',\n\n '\tfloat color = 1.0 - smoothstep( mNear, mFar, vViewZDepth );',\n '\tgl_FragColor = vec4( vec3( color ), 1.0 );',\n\n '} ',\n ].join('\\n'),\n}\n"],"names":["Vector2"],"mappings":";;;AA4CO,MAAM,eAIT;AAAA,EACF,UAAU;AAAA,IACR,cAAc,EAAE,OAAO,EAAI;AAAA,IAC3B,eAAe,EAAE,OAAO,EAAI;AAAA,IAE5B,YAAY,EAAE,OAAO,EAAI;AAAA,IACzB,aAAa,EAAE,OAAO,GAAK;AAAA,IAC3B,OAAO,EAAE,OAAO,IAAI;AAAA,IAEpB,QAAQ,EAAE,OAAO,KAAK;AAAA,IACtB,QAAQ,EAAE,OAAO,KAAK;AAAA,IAEtB,SAAS,EAAE,OAAO,EAAI;AAAA,IAEtB,WAAW,EAAE,OAAO,EAAE;AAAA,IACtB,WAAW,EAAE,OAAO,EAAE;AAAA,IACtB,YAAY,EAAE,OAAO,EAAE;AAAA,IACvB,WAAW,EAAE,OAAO,EAAE;AAAA,IAEtB,WAAW,EAAE,OAAO,IAAI;AAAA,IACxB,MAAM,EAAE,OAAO,EAAI;AAAA,IACnB,MAAM,EAAE,OAAO,IAAI;AAAA,IACnB,QAAQ,EAAE,OAAO,IAAI;AAAA,IAErB,OAAO,EAAE,OAAO,IAAI;AAAA,IACpB,MAAM,EAAE,OAAO,IAAI;AAAA,IAEnB,OAAO,EAAE,OAAO,EAAE;AAAA,IAClB,WAAW,EAAE,OAAO,KAAO;AAAA,IAC3B,UAAU,EAAE,OAAO,EAAE;AAAA,IAErB,aAAa,EAAE,OAAO,EAAE;AAAA,IACxB,aAAa,EAAE,OAAO,IAAIA,MAAAA,UAAU;AAAA,EACtC;AAAA,EAEA,cAAc;AAAA,IACZ;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,EAAA,EACA,KAAK,IAAI;AAAA,EAEX,gBAAgB;AAAA,IACd;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,EACA,KAAK,IAAI;AACb;AAEO,MAAM,mBAAmB;AAAA,EAC9B,UAAU;AAAA,IACR,OAAO,EAAE,OAAO,EAAI;AAAA,IACpB,MAAM,EAAE,OAAO,IAAO;AAAA,EACxB;AAAA,EAEA,cAAc;AAAA,IACZ;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,EAAA,EACA,KAAK,IAAI;AAAA,EAEX,gBAAgB;AAAA,IACd;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,EAAA,EACA,KAAK,IAAI;AACb;;;"}
|
|
1
|
+
{"version":3,"file":"BokehShader2.cjs","sources":["../../src/shaders/BokehShader2.ts"],"sourcesContent":["import { IUniform, Texture, Vector2 } from 'three'\n\nexport interface BokehShader2Uniforms {\n textureWidth: IUniform<number>\n textureHeight: IUniform<number>\n\n focalDepth: IUniform<number>\n focalLength: IUniform<number>\n fstop: IUniform<number>\n\n tColor: IUniform<Texture | null>\n tDepth: IUniform<Texture | null>\n\n maxblur: IUniform<number>\n\n showFocus: IUniform<number>\n manualdof: IUniform<number>\n vignetting: IUniform<number>\n depthblur: IUniform<number>\n\n threshold: IUniform<number>\n gain: IUniform<number>\n bias: IUniform<number>\n fringe: IUniform<number>\n\n znear: IUniform<number>\n zfar: IUniform<number>\n\n noise: IUniform<number>\n dithering: IUniform<number>\n pentagon: IUniform<number>\n\n shaderFocus: IUniform<number>\n focusCoords: IUniform<Vector2>\n}\n\n/**\n * Depth-of-field shader with bokeh\n * ported from GLSL shader by Martins Upitis\n * http://blenderartists.org/forum/showthread.php?237488-GLSL-depth-of-field-with-bokeh-v2-4-(update)\n *\n * Requires #define RINGS and SAMPLES integers\n */\n\nexport const BokehShader2: {\n uniforms: BokehShader2Uniforms\n vertexShader: string\n fragmentShader: string\n} = {\n uniforms: {\n textureWidth: { value: 1.0 },\n textureHeight: { value: 1.0 },\n\n focalDepth: { value: 1.0 },\n focalLength: { value: 24.0 },\n fstop: { value: 0.9 },\n\n tColor: { value: null },\n tDepth: { value: null },\n\n maxblur: { value: 1.0 },\n\n showFocus: { value: 0 },\n manualdof: { value: 0 },\n vignetting: { value: 0 },\n depthblur: { value: 0 },\n\n threshold: { value: 0.5 },\n gain: { value: 2.0 },\n bias: { value: 0.5 },\n fringe: { value: 0.7 },\n\n znear: { value: 0.1 },\n zfar: { value: 100 },\n\n noise: { value: 1 },\n dithering: { value: 0.0001 },\n pentagon: { value: 0 },\n\n shaderFocus: { value: 1 },\n focusCoords: { value: /* @__PURE__ */ new Vector2() },\n },\n\n vertexShader: /* glsl */ `\n varying vec2 vUv;\n\n void main() {\n\n \tvUv = uv;\n \tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n }\n `,\n\n fragmentShader: /* glsl */ `\n #include <common>\n\n varying vec2 vUv;\n\n uniform sampler2D tColor;\n uniform sampler2D tDepth;\n uniform float textureWidth;\n uniform float textureHeight;\n\n uniform float focalDepth; //focal distance value in meters, but you may use autofocus option below\n uniform float focalLength; //focal length in mm\n uniform float fstop; //f-stop value\n uniform bool showFocus; //show debug focus point and focal range (red = focal point, green = focal range)\n\n /*\n make sure that these two values are the same for your camera, otherwise distances will be wrong.\n */\n\n uniform float znear; // camera clipping start\n uniform float zfar; // camera clipping end\n\n //------------------------------------------\n //user variables\n\n const int samples = SAMPLES; //samples on the first ring\n const int rings = RINGS; //ring count\n\n const int maxringsamples = rings * samples;\n\n uniform bool manualdof; // manual dof calculation\n float ndofstart = 1.0; // near dof blur start\n float ndofdist = 2.0; // near dof blur falloff distance\n float fdofstart = 1.0; // far dof blur start\n float fdofdist = 3.0; // far dof blur falloff distance\n\n float CoC = 0.03; //circle of confusion size in mm (35mm film = 0.03mm)\n\n uniform bool vignetting; // use optical lens vignetting\n\n float vignout = 1.3; // vignetting outer border\n float vignin = 0.0; // vignetting inner border\n float vignfade = 22.0; // f-stops till vignete fades\n\n uniform bool shaderFocus;\n // disable if you use external focalDepth value\n\n uniform vec2 focusCoords;\n // autofocus point on screen (0.0,0.0 - left lower corner, 1.0,1.0 - upper right)\n // if center of screen use vec2(0.5, 0.5);\n\n uniform float maxblur;\n //clamp value of max blur (0.0 = no blur, 1.0 default)\n\n uniform float threshold; // highlight threshold;\n uniform float gain; // highlight gain;\n\n uniform float bias; // bokeh edge bias\n uniform float fringe; // bokeh chromatic aberration / fringing\n\n uniform bool noise; //use noise instead of pattern for sample dithering\n\n uniform float dithering;\n\n uniform bool depthblur; // blur the depth buffer\n float dbsize = 1.25; // depth blur size\n\n /*\n next part is experimental\n not looking good with small sample and ring count\n looks okay starting from samples = 4, rings = 4\n */\n\n uniform bool pentagon; //use pentagon as bokeh shape?\n float feather = 0.4; //pentagon shape feather\n\n //------------------------------------------\n\n float penta(vec2 coords) {\n \t//pentagonal shape\n \tfloat scale = float(rings) - 1.3;\n \tvec4 HS0 = vec4( 1.0, 0.0, 0.0, 1.0);\n \tvec4 HS1 = vec4( 0.309016994, 0.951056516, 0.0, 1.0);\n \tvec4 HS2 = vec4(-0.809016994, 0.587785252, 0.0, 1.0);\n \tvec4 HS3 = vec4(-0.809016994,-0.587785252, 0.0, 1.0);\n \tvec4 HS4 = vec4( 0.309016994,-0.951056516, 0.0, 1.0);\n \tvec4 HS5 = vec4( 0.0 ,0.0 , 1.0, 1.0);\n\n \tvec4 one = vec4( 1.0 );\n\n \tvec4 P = vec4((coords),vec2(scale, scale));\n\n \tvec4 dist = vec4(0.0);\n \tfloat inorout = -4.0;\n\n \tdist.x = dot( P, HS0 );\n \tdist.y = dot( P, HS1 );\n \tdist.z = dot( P, HS2 );\n \tdist.w = dot( P, HS3 );\n\n \tdist = smoothstep( -feather, feather, dist );\n\n \tinorout += dot( dist, one );\n\n \tdist.x = dot( P, HS4 );\n \tdist.y = HS5.w - abs( P.z );\n\n \tdist = smoothstep( -feather, feather, dist );\n \tinorout += dist.x;\n\n \treturn clamp( inorout, 0.0, 1.0 );\n }\n\n float bdepth(vec2 coords) {\n \t// Depth buffer blur\n \tfloat d = 0.0;\n \tfloat kernel[9];\n \tvec2 offset[9];\n\n \tvec2 wh = vec2(1.0/textureWidth,1.0/textureHeight) * dbsize;\n\n \toffset[0] = vec2(-wh.x,-wh.y);\n \toffset[1] = vec2( 0.0, -wh.y);\n \toffset[2] = vec2( wh.x -wh.y);\n\n \toffset[3] = vec2(-wh.x, 0.0);\n \toffset[4] = vec2( 0.0, 0.0);\n \toffset[5] = vec2( wh.x, 0.0);\n\n \toffset[6] = vec2(-wh.x, wh.y);\n \toffset[7] = vec2( 0.0, wh.y);\n \toffset[8] = vec2( wh.x, wh.y);\n\n \tkernel[0] = 1.0/16.0; kernel[1] = 2.0/16.0; kernel[2] = 1.0/16.0;\n \tkernel[3] = 2.0/16.0; kernel[4] = 4.0/16.0; kernel[5] = 2.0/16.0;\n \tkernel[6] = 1.0/16.0; kernel[7] = 2.0/16.0; kernel[8] = 1.0/16.0;\n\n \tfor( int i=0; i<9; i++ ) {\n \t\tfloat tmp = texture2D(tDepth, coords + offset[i]).r;\n \t\td += tmp * kernel[i];\n \t}\n\n \treturn d;\n }\n\n vec3 color(vec2 coords,float blur) {\n \t//processing the sample\n\n \tvec3 col = vec3(0.0);\n \tvec2 texel = vec2(1.0/textureWidth,1.0/textureHeight);\n\n \tcol.r = texture2D(tColor,coords + vec2(0.0,1.0)*texel*fringe*blur).r;\n \tcol.g = texture2D(tColor,coords + vec2(-0.866,-0.5)*texel*fringe*blur).g;\n \tcol.b = texture2D(tColor,coords + vec2(0.866,-0.5)*texel*fringe*blur).b;\n\n \tvec3 lumcoeff = vec3(0.299,0.587,0.114);\n \tfloat lum = dot(col.rgb, lumcoeff);\n \tfloat thresh = max((lum-threshold)*gain, 0.0);\n \treturn col+mix(vec3(0.0),col,thresh*blur);\n }\n\n vec3 debugFocus(vec3 col, float blur, float depth) {\n \tfloat edge = 0.002*depth; //distance based edge smoothing\n \tfloat m = clamp(smoothstep(0.0,edge,blur),0.0,1.0);\n \tfloat e = clamp(smoothstep(1.0-edge,1.0,blur),0.0,1.0);\n\n \tcol = mix(col,vec3(1.0,0.5,0.0),(1.0-m)*0.6);\n \tcol = mix(col,vec3(0.0,0.5,1.0),((1.0-e)-(1.0-m))*0.2);\n\n \treturn col;\n }\n\n float linearize(float depth) {\n \treturn -zfar * znear / (depth * (zfar - znear) - zfar);\n }\n\n float vignette() {\n \tfloat dist = distance(vUv.xy, vec2(0.5,0.5));\n \tdist = smoothstep(vignout+(fstop/vignfade), vignin+(fstop/vignfade), dist);\n \treturn clamp(dist,0.0,1.0);\n }\n\n float gather(float i, float j, int ringsamples, inout vec3 col, float w, float h, float blur) {\n \tfloat rings2 = float(rings);\n \tfloat step = PI*2.0 / float(ringsamples);\n \tfloat pw = cos(j*step)*i;\n \tfloat ph = sin(j*step)*i;\n \tfloat p = 1.0;\n \tif (pentagon) {\n \t\tp = penta(vec2(pw,ph));\n \t}\n \tcol += color(vUv.xy + vec2(pw*w,ph*h), blur) * mix(1.0, i/rings2, bias) * p;\n \treturn 1.0 * mix(1.0, i /rings2, bias) * p;\n }\n\n void main() {\n \t//scene depth calculation\n\n \tfloat depth = linearize(texture2D(tDepth,vUv.xy).x);\n\n \t// Blur depth?\n \tif ( depthblur ) {\n \t\tdepth = linearize(bdepth(vUv.xy));\n \t}\n\n \t//focal plane calculation\n\n \tfloat fDepth = focalDepth;\n\n \tif (shaderFocus) {\n\n \t\tfDepth = linearize(texture2D(tDepth,focusCoords).x);\n\n \t}\n\n \t// dof blur factor calculation\n\n \tfloat blur = 0.0;\n\n \tif (manualdof) {\n \t\tfloat a = depth-fDepth; // Focal plane\n \t\tfloat b = (a-fdofstart)/fdofdist; // Far DoF\n \t\tfloat c = (-a-ndofstart)/ndofdist; // Near Dof\n \t\tblur = (a>0.0) ? b : c;\n \t} else {\n \t\tfloat f = focalLength; // focal length in mm\n \t\tfloat d = fDepth*1000.0; // focal plane in mm\n \t\tfloat o = depth*1000.0; // depth in mm\n\n \t\tfloat a = (o*f)/(o-f);\n \t\tfloat b = (d*f)/(d-f);\n \t\tfloat c = (d-f)/(d*fstop*CoC);\n\n \t\tblur = abs(a-b)*c;\n \t}\n\n \tblur = clamp(blur,0.0,1.0);\n\n \t// calculation of pattern for dithering\n\n \tvec2 noise = vec2(rand(vUv.xy), rand( vUv.xy + vec2( 0.4, 0.6 ) ) )*dithering*blur;\n\n \t// getting blur x and y step factor\n\n \tfloat w = (1.0/textureWidth)*blur*maxblur+noise.x;\n \tfloat h = (1.0/textureHeight)*blur*maxblur+noise.y;\n\n \t// calculation of final color\n\n \tvec3 col = vec3(0.0);\n\n \tif(blur < 0.05) {\n \t\t//some optimization thingy\n \t\tcol = texture2D(tColor, vUv.xy).rgb;\n \t} else {\n \t\tcol = texture2D(tColor, vUv.xy).rgb;\n \t\tfloat s = 1.0;\n \t\tint ringsamples;\n\n \t\tfor (int i = 1; i <= rings; i++) {\n \t\t\t/*unboxstart*/\n \t\t\tringsamples = i * samples;\n\n \t\t\tfor (int j = 0 ; j < maxringsamples ; j++) {\n \t\t\t\tif (j >= ringsamples) break;\n \t\t\t\ts += gather(float(i), float(j), ringsamples, col, w, h, blur);\n \t\t\t}\n \t\t\t/*unboxend*/\n \t\t}\n\n \t\tcol /= s; //divide by sample count\n \t}\n\n \tif (showFocus) {\n \t\tcol = debugFocus(col, blur, depth);\n \t}\n\n \tif (vignetting) {\n \t\tcol *= vignette();\n \t}\n\n \tgl_FragColor.rgb = col;\n \tgl_FragColor.a = 1.0;\n } \n `,\n}\n\nexport const BokehDepthShader = {\n uniforms: {\n mNear: { value: 1.0 },\n mFar: { value: 1000.0 },\n },\n\n vertexShader: /* glsl */ `\n varying float vViewZDepth;\n\n void main() {\n\n \t#include <begin_vertex>\n \t#include <project_vertex>\n\n \tvViewZDepth = - mvPosition.z;\n\n }\n `,\n\n fragmentShader: /* glsl */ `\n uniform float mNear;\n uniform float mFar;\n\n varying float vViewZDepth;\n\n void main() {\n\n \tfloat color = 1.0 - smoothstep( mNear, mFar, vViewZDepth );\n \tgl_FragColor = vec4( vec3( color ), 1.0 );\n\n } \n `,\n}\n"],"names":["Vector2"],"mappings":"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"}
|