@react-three/postprocessing 2.19.1 → 3.0.0-rc.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/LICENSE +21 -21
- package/README.md +81 -81
- package/dist/index.d.ts +1 -38
- package/dist/index.js +554 -88
- package/dist/index.js.map +1 -1
- package/package.json +68 -96
- package/src/EffectComposer.test.tsx +126 -0
- package/src/EffectComposer.tsx +200 -0
- package/src/Selection.tsx +46 -0
- package/src/effects/ASCII.tsx +135 -0
- package/src/effects/Autofocus.tsx +153 -0
- package/src/effects/Bloom.tsx +6 -0
- package/src/effects/BrightnessContrast.tsx +4 -0
- package/src/effects/ChromaticAberration.tsx +5 -0
- package/src/effects/ColorAverage.tsx +15 -0
- package/src/effects/ColorDepth.tsx +4 -0
- package/src/effects/Depth.tsx +4 -0
- package/src/effects/DepthOfField.tsx +89 -0
- package/src/effects/DotScreen.tsx +4 -0
- package/src/effects/FXAA.tsx +4 -0
- package/src/effects/Glitch.tsx +40 -0
- package/src/effects/GodRays.tsx +16 -0
- package/src/effects/Grid.tsx +21 -0
- package/src/effects/HueSaturation.tsx +4 -0
- package/src/effects/LUT.tsx +26 -0
- package/{dist/effects/LensFlare.js → src/effects/LensFlare.tsx} +611 -556
- package/src/effects/N8AO.tsx +81 -0
- package/src/effects/Noise.tsx +4 -0
- package/src/effects/Outline.tsx +117 -0
- package/src/effects/Pixelation.tsx +15 -0
- package/{dist/effects/Ramp.js → src/effects/Ramp.tsx} +150 -156
- package/src/effects/SMAA.tsx +4 -0
- package/src/effects/SSAO.tsx +41 -0
- package/src/effects/ScanlineEffect.tsx +7 -0
- package/src/effects/SelectiveBloom.tsx +126 -0
- package/src/effects/Sepia.tsx +4 -0
- package/src/effects/ShockWave.tsx +4 -0
- package/src/effects/Texture.tsx +23 -0
- package/src/effects/TiltShift.tsx +4 -0
- package/{dist/effects/TiltShift2.js → src/effects/TiltShift2.tsx} +90 -98
- package/src/effects/ToneMapping.tsx +6 -0
- package/src/effects/Vignette.tsx +4 -0
- package/{dist/effects/Water.js → src/effects/Water.tsx} +35 -38
- package/src/index.ts +40 -0
- package/src/util.tsx +55 -0
- package/dist/EffectComposer.cjs +0 -137
- package/dist/EffectComposer.cjs.map +0 -1
- package/dist/EffectComposer.d.ts +0 -27
- package/dist/EffectComposer.js +0 -137
- package/dist/EffectComposer.js.map +0 -1
- package/dist/EffectComposer.test.d.ts +0 -4
- package/dist/Selection.cjs +0 -36
- package/dist/Selection.cjs.map +0 -1
- package/dist/Selection.d.ts +0 -16
- package/dist/Selection.js +0 -36
- package/dist/Selection.js.map +0 -1
- package/dist/compat.cjs +0 -77
- package/dist/compat.cjs.map +0 -1
- package/dist/compat.js +0 -60
- package/dist/compat.js.map +0 -1
- package/dist/effects/ASCII.cjs +0 -113
- package/dist/effects/ASCII.cjs.map +0 -1
- package/dist/effects/ASCII.d.ts +0 -18
- package/dist/effects/ASCII.js +0 -113
- package/dist/effects/ASCII.js.map +0 -1
- package/dist/effects/Autofocus.cjs +0 -126
- package/dist/effects/Autofocus.cjs.map +0 -1
- package/dist/effects/Autofocus.d.ts +0 -22
- package/dist/effects/Autofocus.js +0 -109
- package/dist/effects/Autofocus.js.map +0 -1
- package/dist/effects/Bloom.cjs +0 -9
- package/dist/effects/Bloom.cjs.map +0 -1
- package/dist/effects/Bloom.d.ts +0 -6
- package/dist/effects/Bloom.js +0 -9
- package/dist/effects/Bloom.js.map +0 -1
- package/dist/effects/BrightnessContrast.cjs +0 -7
- package/dist/effects/BrightnessContrast.cjs.map +0 -1
- package/dist/effects/BrightnessContrast.d.ts +0 -10
- package/dist/effects/BrightnessContrast.js +0 -7
- package/dist/effects/BrightnessContrast.js.map +0 -1
- package/dist/effects/ChromaticAberration.cjs +0 -7
- package/dist/effects/ChromaticAberration.cjs.map +0 -1
- package/dist/effects/ChromaticAberration.d.ts +0 -13
- package/dist/effects/ChromaticAberration.js +0 -7
- package/dist/effects/ChromaticAberration.js.map +0 -1
- package/dist/effects/ColorAverage.cjs +0 -11
- package/dist/effects/ColorAverage.cjs.map +0 -1
- package/dist/effects/ColorAverage.d.ts +0 -8
- package/dist/effects/ColorAverage.js +0 -11
- package/dist/effects/ColorAverage.js.map +0 -1
- package/dist/effects/ColorDepth.cjs +0 -7
- package/dist/effects/ColorDepth.cjs.map +0 -1
- package/dist/effects/ColorDepth.d.ts +0 -9
- package/dist/effects/ColorDepth.js +0 -7
- package/dist/effects/ColorDepth.js.map +0 -1
- package/dist/effects/Depth.cjs +0 -7
- package/dist/effects/Depth.cjs.map +0 -1
- package/dist/effects/Depth.d.ts +0 -9
- package/dist/effects/Depth.js +0 -7
- package/dist/effects/Depth.js.map +0 -1
- package/dist/effects/DepthOfField.cjs +0 -74
- package/dist/effects/DepthOfField.cjs.map +0 -1
- package/dist/effects/DepthOfField.d.ts +0 -25
- package/dist/effects/DepthOfField.js +0 -74
- package/dist/effects/DepthOfField.js.map +0 -1
- package/dist/effects/DotScreen.cjs +0 -7
- package/dist/effects/DotScreen.cjs.map +0 -1
- package/dist/effects/DotScreen.d.ts +0 -10
- package/dist/effects/DotScreen.js +0 -7
- package/dist/effects/DotScreen.js.map +0 -1
- package/dist/effects/FXAA.cjs +0 -7
- package/dist/effects/FXAA.cjs.map +0 -1
- package/dist/effects/FXAA.d.ts +0 -8
- package/dist/effects/FXAA.js +0 -7
- package/dist/effects/FXAA.js.map +0 -1
- package/dist/effects/Glitch.cjs +0 -31
- package/dist/effects/Glitch.cjs.map +0 -1
- package/dist/effects/Glitch.d.ts +0 -30
- package/dist/effects/Glitch.js +0 -31
- package/dist/effects/Glitch.js.map +0 -1
- package/dist/effects/GodRays.cjs +0 -15
- package/dist/effects/GodRays.cjs.map +0 -1
- package/dist/effects/GodRays.d.ts +0 -21
- package/dist/effects/GodRays.js +0 -15
- package/dist/effects/GodRays.js.map +0 -1
- package/dist/effects/Grid.cjs +0 -18
- package/dist/effects/Grid.cjs.map +0 -1
- package/dist/effects/Grid.d.ts +0 -12
- package/dist/effects/Grid.js +0 -18
- package/dist/effects/Grid.js.map +0 -1
- package/dist/effects/HueSaturation.cjs +0 -7
- package/dist/effects/HueSaturation.cjs.map +0 -1
- package/dist/effects/HueSaturation.d.ts +0 -10
- package/dist/effects/HueSaturation.js +0 -7
- package/dist/effects/HueSaturation.js.map +0 -1
- package/dist/effects/LUT.cjs +0 -20
- package/dist/effects/LUT.cjs.map +0 -1
- package/dist/effects/LUT.d.ts +0 -9
- package/dist/effects/LUT.js +0 -20
- package/dist/effects/LUT.js.map +0 -1
- package/dist/effects/LensFlare.cjs +0 -573
- package/dist/effects/LensFlare.cjs.map +0 -1
- package/dist/effects/LensFlare.d.ts +0 -55
- package/dist/effects/LensFlare.js.map +0 -1
- package/dist/effects/N8AO/BlueNoise.cjs +0 -4
- package/dist/effects/N8AO/BlueNoise.cjs.map +0 -1
- package/dist/effects/N8AO/BlueNoise.js +0 -5
- package/dist/effects/N8AO/BlueNoise.js.map +0 -1
- package/dist/effects/N8AO/DepthDownSample.cjs +0 -183
- package/dist/effects/N8AO/DepthDownSample.cjs.map +0 -1
- package/dist/effects/N8AO/DepthDownSample.js +0 -166
- package/dist/effects/N8AO/DepthDownSample.js.map +0 -1
- package/dist/effects/N8AO/EffectCompositer.cjs +0 -278
- package/dist/effects/N8AO/EffectCompositer.cjs.map +0 -1
- package/dist/effects/N8AO/EffectCompositer.js +0 -261
- package/dist/effects/N8AO/EffectCompositer.js.map +0 -1
- package/dist/effects/N8AO/EffectShader.cjs +0 -236
- package/dist/effects/N8AO/EffectShader.cjs.map +0 -1
- package/dist/effects/N8AO/EffectShader.js +0 -219
- package/dist/effects/N8AO/EffectShader.js.map +0 -1
- package/dist/effects/N8AO/FullScreenTriangle.cjs +0 -59
- package/dist/effects/N8AO/FullScreenTriangle.cjs.map +0 -1
- package/dist/effects/N8AO/FullScreenTriangle.js +0 -42
- package/dist/effects/N8AO/FullScreenTriangle.js.map +0 -1
- package/dist/effects/N8AO/N8AOPostPass.cjs +0 -502
- package/dist/effects/N8AO/N8AOPostPass.cjs.map +0 -1
- package/dist/effects/N8AO/N8AOPostPass.js +0 -485
- package/dist/effects/N8AO/N8AOPostPass.js.map +0 -1
- package/dist/effects/N8AO/PoissionBlur.cjs +0 -186
- package/dist/effects/N8AO/PoissionBlur.cjs.map +0 -1
- package/dist/effects/N8AO/PoissionBlur.js +0 -169
- package/dist/effects/N8AO/PoissionBlur.js.map +0 -1
- package/dist/effects/N8AO/index.cjs +0 -60
- package/dist/effects/N8AO/index.cjs.map +0 -1
- package/dist/effects/N8AO/index.d.ts +0 -18
- package/dist/effects/N8AO/index.js +0 -60
- package/dist/effects/N8AO/index.js.map +0 -1
- package/dist/effects/Noise.cjs +0 -7
- package/dist/effects/Noise.cjs.map +0 -1
- package/dist/effects/Noise.d.ts +0 -9
- package/dist/effects/Noise.js +0 -7
- package/dist/effects/Noise.js.map +0 -1
- package/dist/effects/Outline.cjs +0 -100
- package/dist/effects/Outline.cjs.map +0 -1
- package/dist/effects/Outline.d.ts +0 -30
- package/dist/effects/Outline.js +0 -100
- package/dist/effects/Outline.js.map +0 -1
- package/dist/effects/Pixelation.cjs +0 -11
- package/dist/effects/Pixelation.cjs.map +0 -1
- package/dist/effects/Pixelation.d.ts +0 -6
- package/dist/effects/Pixelation.js +0 -11
- package/dist/effects/Pixelation.js.map +0 -1
- package/dist/effects/Ramp.cjs +0 -156
- package/dist/effects/Ramp.cjs.map +0 -1
- package/dist/effects/Ramp.d.ts +0 -88
- package/dist/effects/Ramp.js.map +0 -1
- package/dist/effects/SMAA.cjs +0 -7
- package/dist/effects/SMAA.cjs.map +0 -1
- package/dist/effects/SMAA.d.ts +0 -10
- package/dist/effects/SMAA.js +0 -7
- package/dist/effects/SMAA.js.map +0 -1
- package/dist/effects/SSAO.cjs +0 -37
- package/dist/effects/SSAO.cjs.map +0 -1
- package/dist/effects/SSAO.d.ts +0 -30
- package/dist/effects/SSAO.js +0 -37
- package/dist/effects/SSAO.js.map +0 -1
- package/dist/effects/SSR/index.cjs +0 -33
- package/dist/effects/SSR/index.cjs.map +0 -1
- package/dist/effects/SSR/index.d.ts +0 -55
- package/dist/effects/SSR/index.js +0 -33
- package/dist/effects/SSR/index.js.map +0 -1
- package/dist/effects/SSR/screen-space-reflections.cjs +0 -1699
- package/dist/effects/SSR/screen-space-reflections.cjs.map +0 -1
- package/dist/effects/SSR/screen-space-reflections.js +0 -1699
- package/dist/effects/SSR/screen-space-reflections.js.map +0 -1
- package/dist/effects/ScanlineEffect.cjs +0 -7
- package/dist/effects/ScanlineEffect.cjs.map +0 -1
- package/dist/effects/ScanlineEffect.d.ts +0 -9
- package/dist/effects/ScanlineEffect.js +0 -7
- package/dist/effects/ScanlineEffect.js.map +0 -1
- package/dist/effects/SelectiveBloom.cjs +0 -104
- package/dist/effects/SelectiveBloom.cjs.map +0 -1
- package/dist/effects/SelectiveBloom.d.ts +0 -20
- package/dist/effects/SelectiveBloom.js +0 -104
- package/dist/effects/SelectiveBloom.js.map +0 -1
- package/dist/effects/Sepia.cjs +0 -7
- package/dist/effects/Sepia.cjs.map +0 -1
- package/dist/effects/Sepia.d.ts +0 -9
- package/dist/effects/Sepia.js +0 -7
- package/dist/effects/Sepia.js.map +0 -1
- package/dist/effects/ShockWave.cjs +0 -7
- package/dist/effects/ShockWave.cjs.map +0 -1
- package/dist/effects/ShockWave.d.ts +0 -6
- package/dist/effects/ShockWave.js +0 -7
- package/dist/effects/ShockWave.js.map +0 -1
- package/dist/effects/Texture.cjs +0 -21
- package/dist/effects/Texture.cjs.map +0 -1
- package/dist/effects/Texture.d.ts +0 -11
- package/dist/effects/Texture.js +0 -21
- package/dist/effects/Texture.js.map +0 -1
- package/dist/effects/TiltShift.cjs +0 -7
- package/dist/effects/TiltShift.cjs.map +0 -1
- package/dist/effects/TiltShift.d.ts +0 -17
- package/dist/effects/TiltShift.js +0 -7
- package/dist/effects/TiltShift.js.map +0 -1
- package/dist/effects/TiltShift2.cjs +0 -98
- package/dist/effects/TiltShift2.cjs.map +0 -1
- package/dist/effects/TiltShift2.d.ts +0 -30
- package/dist/effects/TiltShift2.js.map +0 -1
- package/dist/effects/ToneMapping.cjs +0 -7
- package/dist/effects/ToneMapping.cjs.map +0 -1
- package/dist/effects/ToneMapping.d.ts +0 -19
- package/dist/effects/ToneMapping.js +0 -7
- package/dist/effects/ToneMapping.js.map +0 -1
- package/dist/effects/Vignette.cjs +0 -7
- package/dist/effects/Vignette.cjs.map +0 -1
- package/dist/effects/Vignette.d.ts +0 -12
- package/dist/effects/Vignette.js +0 -7
- package/dist/effects/Vignette.js.map +0 -1
- package/dist/effects/Water.cjs +0 -38
- package/dist/effects/Water.cjs.map +0 -1
- package/dist/effects/Water.d.ts +0 -15
- package/dist/effects/Water.js.map +0 -1
- package/dist/index.cjs +0 -89
- package/dist/index.cjs.map +0 -1
- package/dist/util.cjs +0 -69
- package/dist/util.cjs.map +0 -1
- package/dist/util.d.ts +0 -13
- package/dist/util.js +0 -52
- package/dist/util.js.map +0 -1
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { TextureEffect } from 'postprocessing';
|
|
3
|
-
export declare const Texture: import("react").ForwardRefExoticComponent<{
|
|
4
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
5
|
-
texture?: import("three").Texture | undefined;
|
|
6
|
-
aspectCorrection?: boolean | undefined;
|
|
7
|
-
} & {
|
|
8
|
-
textureSrc: string;
|
|
9
|
-
/** opacity of provided texture */
|
|
10
|
-
opacity?: number | undefined;
|
|
11
|
-
} & import("react").RefAttributes<TextureEffect>>;
|
package/dist/effects/Texture.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { TextureEffect } from "postprocessing";
|
|
3
|
-
import { forwardRef, useLayoutEffect, useMemo } from "react";
|
|
4
|
-
import { useLoader } from "@react-three/fiber";
|
|
5
|
-
import { TextureLoader, RepeatWrapping } from "three";
|
|
6
|
-
const Texture = forwardRef(function Texture2({ textureSrc, texture, opacity = 1, ...props }, ref) {
|
|
7
|
-
const t = useLoader(TextureLoader, textureSrc);
|
|
8
|
-
useLayoutEffect(() => {
|
|
9
|
-
if ("encoding" in t)
|
|
10
|
-
t.encoding = 3001;
|
|
11
|
-
else
|
|
12
|
-
t.colorSpace = "srgb";
|
|
13
|
-
t.wrapS = t.wrapT = RepeatWrapping;
|
|
14
|
-
}, [t]);
|
|
15
|
-
const effect = useMemo(() => new TextureEffect({ ...props, texture: t || texture }), [props, t, texture]);
|
|
16
|
-
return /* @__PURE__ */ jsx("primitive", { ref, object: effect, "blendMode-opacity-value": opacity, dispose: null });
|
|
17
|
-
});
|
|
18
|
-
export {
|
|
19
|
-
Texture
|
|
20
|
-
};
|
|
21
|
-
//# sourceMappingURL=Texture.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Texture.js","sources":["../../src/effects/Texture.tsx"],"sourcesContent":["import { TextureEffect } from 'postprocessing'\nimport { Ref, forwardRef, useMemo, useLayoutEffect } from 'react'\nimport { useLoader } from '@react-three/fiber'\nimport { TextureLoader, RepeatWrapping } from 'three'\n\ntype TextureProps = ConstructorParameters<typeof TextureEffect>[0] & {\n textureSrc: string\n /** opacity of provided texture */\n opacity?: number\n}\n\nexport const Texture = forwardRef<TextureEffect, TextureProps>(function Texture(\n { textureSrc, texture, opacity = 1, ...props }: TextureProps,\n ref: Ref<TextureEffect>\n) {\n const t = useLoader(TextureLoader, textureSrc)\n useLayoutEffect(() => {\n // @ts-ignore\n if ('encoding' in t) t.encoding = 3001 // sRGBEncoding\n // @ts-ignore\n else t.colorSpace = 'srgb'\n t.wrapS = t.wrapT = RepeatWrapping\n }, [t])\n const effect = useMemo(() => new TextureEffect({ ...props, texture: t || texture }), [props, t, texture])\n return <primitive ref={ref} object={effect} blendMode-opacity-value={opacity} dispose={null} />\n})\n"],"names":["Texture"],"mappings":";;;;;AAWO,MAAM,UAAU,WAAwC,SAASA,SACtE,EAAE,YAAY,SAAS,UAAU,GAAG,GAAG,MAAM,GAC7C,KACA;AACM,QAAA,IAAI,UAAU,eAAe,UAAU;AAC7C,kBAAgB,MAAM;AAEpB,QAAI,cAAc;AAAG,QAAE,WAAW;AAAA;AAE7B,QAAE,aAAa;AAClB,MAAA,QAAQ,EAAE,QAAQ;AAAA,EAAA,GACnB,CAAC,CAAC,CAAC;AACN,QAAM,SAAS,QAAQ,MAAM,IAAI,cAAc,EAAE,GAAG,OAAO,SAAS,KAAK,QAAS,CAAA,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;AACjG,SAAA,oBAAC,eAAU,KAAU,QAAQ,QAAQ,2BAAyB,SAAS,SAAS,KAAM,CAAA;AAC/F,CAAC;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const postprocessing = require("postprocessing");
|
|
4
|
-
const util = require("../util.cjs");
|
|
5
|
-
const TiltShift = util.wrapEffect(postprocessing.TiltShiftEffect, { blendFunction: postprocessing.BlendFunction.ADD });
|
|
6
|
-
exports.TiltShift = TiltShift;
|
|
7
|
-
//# sourceMappingURL=TiltShift.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TiltShift.cjs","sources":["../../src/effects/TiltShift.tsx"],"sourcesContent":["import { TiltShiftEffect, BlendFunction } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nexport const TiltShift = wrapEffect(TiltShiftEffect, { blendFunction: BlendFunction.ADD })\n"],"names":["wrapEffect","TiltShiftEffect","BlendFunction"],"mappings":";;;;AAGO,MAAM,YAAYA,KAAW,WAAAC,eAAA,iBAAiB,EAAE,eAAeC,eAAAA,cAAc,IAAK,CAAA;;"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { TiltShiftEffect, BlendFunction } from 'postprocessing';
|
|
3
|
-
export declare const TiltShift: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<TiltShiftEffect>, import("@react-three/fiber").NodeProps<TiltShiftEffect, typeof TiltShiftEffect>>> & {
|
|
4
|
-
blendFunction?: BlendFunction | undefined;
|
|
5
|
-
offset?: number | undefined;
|
|
6
|
-
rotation?: number | undefined;
|
|
7
|
-
focusArea?: number | undefined;
|
|
8
|
-
feather?: number | undefined;
|
|
9
|
-
bias?: number | undefined;
|
|
10
|
-
kernelSize?: import("postprocessing").KernelSize | undefined;
|
|
11
|
-
resolutionScale?: number | undefined;
|
|
12
|
-
resolutionX?: number | undefined;
|
|
13
|
-
resolutionY?: number | undefined;
|
|
14
|
-
} & {
|
|
15
|
-
blendFunction?: BlendFunction | undefined;
|
|
16
|
-
opacity?: number | undefined;
|
|
17
|
-
}, "ref"> & import("react").RefAttributes<typeof TiltShiftEffect>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TiltShift.js","sources":["../../src/effects/TiltShift.tsx"],"sourcesContent":["import { TiltShiftEffect, BlendFunction } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nexport const TiltShift = wrapEffect(TiltShiftEffect, { blendFunction: BlendFunction.ADD })\n"],"names":[],"mappings":";;AAGO,MAAM,YAAY,WAAW,iBAAiB,EAAE,eAAe,cAAc,IAAK,CAAA;"}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const THREE = require("three");
|
|
4
|
-
const postprocessing = require("postprocessing");
|
|
5
|
-
const util = require("../util.cjs");
|
|
6
|
-
const TiltShiftShader = {
|
|
7
|
-
fragmentShader: `
|
|
8
|
-
|
|
9
|
-
// original shader by Evan Wallace
|
|
10
|
-
|
|
11
|
-
#define MAX_ITERATIONS 100
|
|
12
|
-
|
|
13
|
-
uniform float blur;
|
|
14
|
-
uniform float taper;
|
|
15
|
-
uniform vec2 start;
|
|
16
|
-
uniform vec2 end;
|
|
17
|
-
uniform vec2 direction;
|
|
18
|
-
uniform int samples;
|
|
19
|
-
|
|
20
|
-
float random(vec3 scale, float seed) {
|
|
21
|
-
/* use the fragment position for a different seed per-pixel */
|
|
22
|
-
return fract(sin(dot(gl_FragCoord.xyz + seed, scale)) * 43758.5453 + seed);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {
|
|
26
|
-
vec4 color = vec4(0.0);
|
|
27
|
-
float total = 0.0;
|
|
28
|
-
vec2 startPixel = vec2(start.x * resolution.x, start.y * resolution.y);
|
|
29
|
-
vec2 endPixel = vec2(end.x * resolution.x, end.y * resolution.y);
|
|
30
|
-
float f_samples = float(samples);
|
|
31
|
-
float half_samples = f_samples / 2.0;
|
|
32
|
-
|
|
33
|
-
// use screen diagonal to normalize blur radii
|
|
34
|
-
float maxScreenDistance = distance(vec2(0.0), resolution); // diagonal distance
|
|
35
|
-
float gradientRadius = taper * (maxScreenDistance);
|
|
36
|
-
float blurRadius = blur * (maxScreenDistance / 16.0);
|
|
37
|
-
|
|
38
|
-
/* randomize the lookup values to hide the fixed number of samples */
|
|
39
|
-
float offset = random(vec3(12.9898, 78.233, 151.7182), 0.0);
|
|
40
|
-
vec2 normal = normalize(vec2(startPixel.y - endPixel.y, endPixel.x - startPixel.x));
|
|
41
|
-
float radius = smoothstep(0.0, 1.0, abs(dot(uv * resolution - startPixel, normal)) / gradientRadius) * blurRadius;
|
|
42
|
-
|
|
43
|
-
#pragma unroll_loop_start
|
|
44
|
-
for (int i = 0; i <= MAX_ITERATIONS; i++) {
|
|
45
|
-
if (i >= samples) { break; } // return early if over sample count
|
|
46
|
-
float f_i = float(i);
|
|
47
|
-
float s_i = -half_samples + f_i;
|
|
48
|
-
float percent = (s_i + offset - 0.5) / half_samples;
|
|
49
|
-
float weight = 1.0 - abs(percent);
|
|
50
|
-
vec4 sample_i = texture2D(inputBuffer, uv + normalize(direction) / resolution * percent * radius);
|
|
51
|
-
/* switch to pre-multiplied alpha to correctly blur transparent images */
|
|
52
|
-
sample_i.rgb *= sample_i.a;
|
|
53
|
-
color += sample_i * weight;
|
|
54
|
-
total += weight;
|
|
55
|
-
}
|
|
56
|
-
#pragma unroll_loop_end
|
|
57
|
-
|
|
58
|
-
outputColor = color / total;
|
|
59
|
-
|
|
60
|
-
/* switch back from pre-multiplied alpha */
|
|
61
|
-
outputColor.rgb /= outputColor.a + 0.00001;
|
|
62
|
-
}
|
|
63
|
-
`
|
|
64
|
-
};
|
|
65
|
-
class TiltShiftEffect extends postprocessing.Effect {
|
|
66
|
-
constructor({
|
|
67
|
-
blendFunction = postprocessing.BlendFunction.NORMAL,
|
|
68
|
-
blur = 0.15,
|
|
69
|
-
// [0, 1], can go beyond 1 for extra
|
|
70
|
-
taper = 0.5,
|
|
71
|
-
// [0, 1], can go beyond 1 for extra
|
|
72
|
-
start = [0.5, 0],
|
|
73
|
-
// [0,1] percentage x,y of screenspace
|
|
74
|
-
end = [0.5, 1],
|
|
75
|
-
// [0,1] percentage x,y of screenspace
|
|
76
|
-
samples = 10,
|
|
77
|
-
// number of blur samples
|
|
78
|
-
direction = [1, 1]
|
|
79
|
-
// direction of blur
|
|
80
|
-
} = {}) {
|
|
81
|
-
super("TiltShiftEffect", TiltShiftShader.fragmentShader, {
|
|
82
|
-
blendFunction,
|
|
83
|
-
attributes: postprocessing.EffectAttribute.CONVOLUTION,
|
|
84
|
-
uniforms: /* @__PURE__ */ new Map([
|
|
85
|
-
["blur", new THREE.Uniform(blur)],
|
|
86
|
-
["taper", new THREE.Uniform(taper)],
|
|
87
|
-
["start", new THREE.Uniform(start)],
|
|
88
|
-
["end", new THREE.Uniform(end)],
|
|
89
|
-
["samples", new THREE.Uniform(samples)],
|
|
90
|
-
["direction", new THREE.Uniform(direction)]
|
|
91
|
-
])
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
const TiltShift2 = util.wrapEffect(TiltShiftEffect, { blendFunction: postprocessing.BlendFunction.NORMAL });
|
|
96
|
-
exports.TiltShift2 = TiltShift2;
|
|
97
|
-
exports.TiltShiftEffect = TiltShiftEffect;
|
|
98
|
-
//# sourceMappingURL=TiltShift2.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TiltShift2.cjs","sources":["../../src/effects/TiltShift2.tsx"],"sourcesContent":["import { Uniform } from 'three'\nimport { BlendFunction, Effect, EffectAttribute } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nconst TiltShiftShader = {\n fragmentShader: `\n\n // original shader by Evan Wallace\n\n #define MAX_ITERATIONS 100\n\n uniform float blur;\n uniform float taper;\n uniform vec2 start;\n uniform vec2 end;\n uniform vec2 direction;\n uniform int samples;\n\n float random(vec3 scale, float seed) {\n /* use the fragment position for a different seed per-pixel */\n return fract(sin(dot(gl_FragCoord.xyz + seed, scale)) * 43758.5453 + seed);\n }\n\n void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec4 color = vec4(0.0);\n float total = 0.0;\n vec2 startPixel = vec2(start.x * resolution.x, start.y * resolution.y);\n vec2 endPixel = vec2(end.x * resolution.x, end.y * resolution.y);\n float f_samples = float(samples);\n float half_samples = f_samples / 2.0;\n\n // use screen diagonal to normalize blur radii\n float maxScreenDistance = distance(vec2(0.0), resolution); // diagonal distance\n float gradientRadius = taper * (maxScreenDistance);\n float blurRadius = blur * (maxScreenDistance / 16.0);\n\n /* randomize the lookup values to hide the fixed number of samples */\n float offset = random(vec3(12.9898, 78.233, 151.7182), 0.0);\n vec2 normal = normalize(vec2(startPixel.y - endPixel.y, endPixel.x - startPixel.x));\n float radius = smoothstep(0.0, 1.0, abs(dot(uv * resolution - startPixel, normal)) / gradientRadius) * blurRadius;\n\n #pragma unroll_loop_start\n for (int i = 0; i <= MAX_ITERATIONS; i++) {\n if (i >= samples) { break; } // return early if over sample count\n float f_i = float(i);\n float s_i = -half_samples + f_i;\n float percent = (s_i + offset - 0.5) / half_samples;\n float weight = 1.0 - abs(percent);\n vec4 sample_i = texture2D(inputBuffer, uv + normalize(direction) / resolution * percent * radius);\n /* switch to pre-multiplied alpha to correctly blur transparent images */\n sample_i.rgb *= sample_i.a;\n color += sample_i * weight;\n total += weight;\n }\n #pragma unroll_loop_end\n\n outputColor = color / total;\n\n /* switch back from pre-multiplied alpha */\n outputColor.rgb /= outputColor.a + 0.00001;\n }\n `,\n}\n\nexport class TiltShiftEffect extends Effect {\n constructor({\n blendFunction = BlendFunction.NORMAL,\n blur = 0.15, // [0, 1], can go beyond 1 for extra\n taper = 0.5, // [0, 1], can go beyond 1 for extra\n start = [0.5, 0.0], // [0,1] percentage x,y of screenspace\n end = [0.5, 1.0], // [0,1] percentage x,y of screenspace\n samples = 10.0, // number of blur samples\n direction = [1, 1], // direction of blur\n } = {}) {\n super('TiltShiftEffect', TiltShiftShader.fragmentShader, {\n blendFunction,\n attributes: EffectAttribute.CONVOLUTION,\n uniforms: new Map<string, Uniform<number | number[]>>([\n ['blur', new Uniform(blur)],\n ['taper', new Uniform(taper)],\n ['start', new Uniform(start)],\n ['end', new Uniform(end)],\n ['samples', new Uniform(samples)],\n ['direction', new Uniform(direction)],\n ]),\n })\n }\n}\n\nexport const TiltShift2 = wrapEffect(TiltShiftEffect, { blendFunction: BlendFunction.NORMAL })\n"],"names":["Effect","BlendFunction","EffectAttribute","Uniform","wrapEffect"],"mappings":";;;;;AAIA,MAAM,kBAAkB;AAAA,EACtB,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyDlB;AAEO,MAAM,wBAAwBA,eAAAA,OAAO;AAAA,EAC1C,YAAY;AAAA,IACV,gBAAgBC,eAAc,cAAA;AAAA,IAC9B,OAAO;AAAA;AAAA,IACP,QAAQ;AAAA;AAAA,IACR,QAAQ,CAAC,KAAK,CAAG;AAAA;AAAA,IACjB,MAAM,CAAC,KAAK,CAAG;AAAA;AAAA,IACf,UAAU;AAAA;AAAA,IACV,YAAY,CAAC,GAAG,CAAC;AAAA;AAAA,EACnB,IAAI,IAAI;AACA,UAAA,mBAAmB,gBAAgB,gBAAgB;AAAA,MACvD;AAAA,MACA,YAAYC,eAAgB,gBAAA;AAAA,MAC5B,8BAAc,IAAwC;AAAA,QACpD,CAAC,QAAQ,IAAIC,cAAQ,IAAI,CAAC;AAAA,QAC1B,CAAC,SAAS,IAAIA,cAAQ,KAAK,CAAC;AAAA,QAC5B,CAAC,SAAS,IAAIA,cAAQ,KAAK,CAAC;AAAA,QAC5B,CAAC,OAAO,IAAIA,cAAQ,GAAG,CAAC;AAAA,QACxB,CAAC,WAAW,IAAIA,cAAQ,OAAO,CAAC;AAAA,QAChC,CAAC,aAAa,IAAIA,cAAQ,SAAS,CAAC;AAAA,MAAA,CACrC;AAAA,IAAA,CACF;AAAA,EACH;AACF;AAEO,MAAM,aAAaC,KAAW,WAAA,iBAAiB,EAAE,eAAeH,eAAAA,cAAc,OAAQ,CAAA;;;"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { BlendFunction, Effect } from 'postprocessing';
|
|
3
|
-
export declare class TiltShiftEffect extends Effect {
|
|
4
|
-
constructor({ blendFunction, blur, // [0, 1], can go beyond 1 for extra
|
|
5
|
-
taper, // [0, 1], can go beyond 1 for extra
|
|
6
|
-
start, // [0,1] percentage x,y of screenspace
|
|
7
|
-
end, // [0,1] percentage x,y of screenspace
|
|
8
|
-
samples, // number of blur samples
|
|
9
|
-
direction, }?: {
|
|
10
|
-
blendFunction?: BlendFunction | undefined;
|
|
11
|
-
blur?: number | undefined;
|
|
12
|
-
taper?: number | undefined;
|
|
13
|
-
start?: number[] | undefined;
|
|
14
|
-
end?: number[] | undefined;
|
|
15
|
-
samples?: number | undefined;
|
|
16
|
-
direction?: number[] | undefined;
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
export declare const TiltShift2: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<TiltShiftEffect>, import("@react-three/fiber").NodeProps<TiltShiftEffect, typeof TiltShiftEffect>>> & {
|
|
20
|
-
blendFunction?: BlendFunction | undefined;
|
|
21
|
-
blur?: number | undefined;
|
|
22
|
-
taper?: number | undefined;
|
|
23
|
-
start?: number[] | undefined;
|
|
24
|
-
end?: number[] | undefined;
|
|
25
|
-
samples?: number | undefined;
|
|
26
|
-
direction?: number[] | undefined;
|
|
27
|
-
} & {
|
|
28
|
-
blendFunction?: BlendFunction | undefined;
|
|
29
|
-
opacity?: number | undefined;
|
|
30
|
-
}, "ref"> & import("react").RefAttributes<typeof TiltShiftEffect>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TiltShift2.js","sources":["../../src/effects/TiltShift2.tsx"],"sourcesContent":["import { Uniform } from 'three'\nimport { BlendFunction, Effect, EffectAttribute } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nconst TiltShiftShader = {\n fragmentShader: `\n\n // original shader by Evan Wallace\n\n #define MAX_ITERATIONS 100\n\n uniform float blur;\n uniform float taper;\n uniform vec2 start;\n uniform vec2 end;\n uniform vec2 direction;\n uniform int samples;\n\n float random(vec3 scale, float seed) {\n /* use the fragment position for a different seed per-pixel */\n return fract(sin(dot(gl_FragCoord.xyz + seed, scale)) * 43758.5453 + seed);\n }\n\n void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec4 color = vec4(0.0);\n float total = 0.0;\n vec2 startPixel = vec2(start.x * resolution.x, start.y * resolution.y);\n vec2 endPixel = vec2(end.x * resolution.x, end.y * resolution.y);\n float f_samples = float(samples);\n float half_samples = f_samples / 2.0;\n\n // use screen diagonal to normalize blur radii\n float maxScreenDistance = distance(vec2(0.0), resolution); // diagonal distance\n float gradientRadius = taper * (maxScreenDistance);\n float blurRadius = blur * (maxScreenDistance / 16.0);\n\n /* randomize the lookup values to hide the fixed number of samples */\n float offset = random(vec3(12.9898, 78.233, 151.7182), 0.0);\n vec2 normal = normalize(vec2(startPixel.y - endPixel.y, endPixel.x - startPixel.x));\n float radius = smoothstep(0.0, 1.0, abs(dot(uv * resolution - startPixel, normal)) / gradientRadius) * blurRadius;\n\n #pragma unroll_loop_start\n for (int i = 0; i <= MAX_ITERATIONS; i++) {\n if (i >= samples) { break; } // return early if over sample count\n float f_i = float(i);\n float s_i = -half_samples + f_i;\n float percent = (s_i + offset - 0.5) / half_samples;\n float weight = 1.0 - abs(percent);\n vec4 sample_i = texture2D(inputBuffer, uv + normalize(direction) / resolution * percent * radius);\n /* switch to pre-multiplied alpha to correctly blur transparent images */\n sample_i.rgb *= sample_i.a;\n color += sample_i * weight;\n total += weight;\n }\n #pragma unroll_loop_end\n\n outputColor = color / total;\n\n /* switch back from pre-multiplied alpha */\n outputColor.rgb /= outputColor.a + 0.00001;\n }\n `,\n}\n\nexport class TiltShiftEffect extends Effect {\n constructor({\n blendFunction = BlendFunction.NORMAL,\n blur = 0.15, // [0, 1], can go beyond 1 for extra\n taper = 0.5, // [0, 1], can go beyond 1 for extra\n start = [0.5, 0.0], // [0,1] percentage x,y of screenspace\n end = [0.5, 1.0], // [0,1] percentage x,y of screenspace\n samples = 10.0, // number of blur samples\n direction = [1, 1], // direction of blur\n } = {}) {\n super('TiltShiftEffect', TiltShiftShader.fragmentShader, {\n blendFunction,\n attributes: EffectAttribute.CONVOLUTION,\n uniforms: new Map<string, Uniform<number | number[]>>([\n ['blur', new Uniform(blur)],\n ['taper', new Uniform(taper)],\n ['start', new Uniform(start)],\n ['end', new Uniform(end)],\n ['samples', new Uniform(samples)],\n ['direction', new Uniform(direction)],\n ]),\n })\n }\n}\n\nexport const TiltShift2 = wrapEffect(TiltShiftEffect, { blendFunction: BlendFunction.NORMAL })\n"],"names":[],"mappings":";;;AAIA,MAAM,kBAAkB;AAAA,EACtB,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyDlB;AAEO,MAAM,wBAAwB,OAAO;AAAA,EAC1C,YAAY;AAAA,IACV,gBAAgB,cAAc;AAAA,IAC9B,OAAO;AAAA;AAAA,IACP,QAAQ;AAAA;AAAA,IACR,QAAQ,CAAC,KAAK,CAAG;AAAA;AAAA,IACjB,MAAM,CAAC,KAAK,CAAG;AAAA;AAAA,IACf,UAAU;AAAA;AAAA,IACV,YAAY,CAAC,GAAG,CAAC;AAAA;AAAA,EACnB,IAAI,IAAI;AACA,UAAA,mBAAmB,gBAAgB,gBAAgB;AAAA,MACvD;AAAA,MACA,YAAY,gBAAgB;AAAA,MAC5B,8BAAc,IAAwC;AAAA,QACpD,CAAC,QAAQ,IAAI,QAAQ,IAAI,CAAC;AAAA,QAC1B,CAAC,SAAS,IAAI,QAAQ,KAAK,CAAC;AAAA,QAC5B,CAAC,SAAS,IAAI,QAAQ,KAAK,CAAC;AAAA,QAC5B,CAAC,OAAO,IAAI,QAAQ,GAAG,CAAC;AAAA,QACxB,CAAC,WAAW,IAAI,QAAQ,OAAO,CAAC;AAAA,QAChC,CAAC,aAAa,IAAI,QAAQ,SAAS,CAAC;AAAA,MAAA,CACrC;AAAA,IAAA,CACF;AAAA,EACH;AACF;AAEO,MAAM,aAAa,WAAW,iBAAiB,EAAE,eAAe,cAAc,OAAQ,CAAA;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const postprocessing = require("postprocessing");
|
|
4
|
-
const util = require("../util.cjs");
|
|
5
|
-
const ToneMapping = util.wrapEffect(postprocessing.ToneMappingEffect);
|
|
6
|
-
exports.ToneMapping = ToneMapping;
|
|
7
|
-
//# sourceMappingURL=ToneMapping.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToneMapping.cjs","sources":["../../src/effects/ToneMapping.tsx"],"sourcesContent":["import { ToneMappingEffect } from 'postprocessing'\nimport { type EffectProps, wrapEffect } from '../util'\n\nexport type ToneMappingProps = EffectProps<typeof ToneMappingEffect>\n\nexport const ToneMapping = wrapEffect(ToneMappingEffect)\n"],"names":["wrapEffect","ToneMappingEffect"],"mappings":";;;;AAKa,MAAA,cAAcA,gBAAWC,eAAiB,iBAAA;;"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { ToneMappingEffect } from 'postprocessing';
|
|
3
|
-
import { type EffectProps } from '../util';
|
|
4
|
-
export type ToneMappingProps = EffectProps<typeof ToneMappingEffect>;
|
|
5
|
-
export declare const ToneMapping: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<ToneMappingEffect>, import("@react-three/fiber").NodeProps<ToneMappingEffect, typeof ToneMappingEffect>>> & {
|
|
6
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
7
|
-
adaptive?: boolean | undefined;
|
|
8
|
-
mode?: import("postprocessing").ToneMappingMode | undefined;
|
|
9
|
-
resolution?: number | undefined;
|
|
10
|
-
maxLuminance?: number | undefined;
|
|
11
|
-
whitePoint?: number | undefined;
|
|
12
|
-
middleGrey?: number | undefined;
|
|
13
|
-
minLuminance?: number | undefined;
|
|
14
|
-
averageLuminance?: number | undefined;
|
|
15
|
-
adaptationRate?: number | undefined;
|
|
16
|
-
} & {
|
|
17
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
18
|
-
opacity?: number | undefined;
|
|
19
|
-
}, "ref"> & import("react").RefAttributes<typeof ToneMappingEffect>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToneMapping.js","sources":["../../src/effects/ToneMapping.tsx"],"sourcesContent":["import { ToneMappingEffect } from 'postprocessing'\nimport { type EffectProps, wrapEffect } from '../util'\n\nexport type ToneMappingProps = EffectProps<typeof ToneMappingEffect>\n\nexport const ToneMapping = wrapEffect(ToneMappingEffect)\n"],"names":[],"mappings":";;AAKa,MAAA,cAAc,WAAW,iBAAiB;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const postprocessing = require("postprocessing");
|
|
4
|
-
const util = require("../util.cjs");
|
|
5
|
-
const Vignette = util.wrapEffect(postprocessing.VignetteEffect);
|
|
6
|
-
exports.Vignette = Vignette;
|
|
7
|
-
//# sourceMappingURL=Vignette.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Vignette.cjs","sources":["../../src/effects/Vignette.tsx"],"sourcesContent":["import { VignetteEffect } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nexport const Vignette = wrapEffect(VignetteEffect)\n"],"names":["wrapEffect","VignetteEffect"],"mappings":";;;;AAGa,MAAA,WAAWA,gBAAWC,eAAc,cAAA;;"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { VignetteEffect } from 'postprocessing';
|
|
3
|
-
export declare const Vignette: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<VignetteEffect>, import("@react-three/fiber").NodeProps<VignetteEffect, typeof VignetteEffect>>> & {
|
|
4
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
5
|
-
technique?: import("postprocessing").VignetteTechnique | undefined;
|
|
6
|
-
eskil?: boolean | undefined;
|
|
7
|
-
offset?: number | undefined;
|
|
8
|
-
darkness?: number | undefined;
|
|
9
|
-
} & {
|
|
10
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
11
|
-
opacity?: number | undefined;
|
|
12
|
-
}, "ref"> & import("react").RefAttributes<typeof VignetteEffect>>;
|
package/dist/effects/Vignette.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Vignette.js","sources":["../../src/effects/Vignette.tsx"],"sourcesContent":["import { VignetteEffect } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nexport const Vignette = wrapEffect(VignetteEffect)\n"],"names":[],"mappings":";;AAGa,MAAA,WAAW,WAAW,cAAc;"}
|
package/dist/effects/Water.cjs
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const THREE = require("three");
|
|
4
|
-
const postprocessing = require("postprocessing");
|
|
5
|
-
const util = require("../util.cjs");
|
|
6
|
-
const WaterShader = {
|
|
7
|
-
fragmentShader: (
|
|
8
|
-
/* glsl */
|
|
9
|
-
`
|
|
10
|
-
uniform float factor;
|
|
11
|
-
|
|
12
|
-
void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {
|
|
13
|
-
vec2 vUv = uv;
|
|
14
|
-
float frequency = 6.0 * factor;
|
|
15
|
-
float amplitude = 0.015 * factor;
|
|
16
|
-
float x = vUv.y * frequency + time * 0.7;
|
|
17
|
-
float y = vUv.x * frequency + time * 0.3;
|
|
18
|
-
vUv.x += cos(x + y) * amplitude * cos(y);
|
|
19
|
-
vUv.y += sin(x - y) * amplitude * cos(y);
|
|
20
|
-
vec4 rgba = texture(inputBuffer, vUv);
|
|
21
|
-
outputColor = rgba;
|
|
22
|
-
}
|
|
23
|
-
`
|
|
24
|
-
)
|
|
25
|
-
};
|
|
26
|
-
class WaterEffectImpl extends postprocessing.Effect {
|
|
27
|
-
constructor({ blendFunction = postprocessing.BlendFunction.NORMAL, factor = 0 } = {}) {
|
|
28
|
-
super("WaterEffect", WaterShader.fragmentShader, {
|
|
29
|
-
blendFunction,
|
|
30
|
-
attributes: postprocessing.EffectAttribute.CONVOLUTION,
|
|
31
|
-
uniforms: /* @__PURE__ */ new Map([["factor", new THREE.Uniform(factor)]])
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
const WaterEffect = util.wrapEffect(WaterEffectImpl, { blendFunction: postprocessing.BlendFunction.NORMAL });
|
|
36
|
-
exports.WaterEffect = WaterEffect;
|
|
37
|
-
exports.WaterEffectImpl = WaterEffectImpl;
|
|
38
|
-
//# sourceMappingURL=Water.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Water.cjs","sources":["../../src/effects/Water.tsx"],"sourcesContent":["import { Uniform } from 'three'\nimport { BlendFunction, Effect, EffectAttribute } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nconst WaterShader = {\n fragmentShader: /* glsl */ `\n uniform float factor;\n\n void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec2 vUv = uv;\n float frequency = 6.0 * factor;\n float amplitude = 0.015 * factor;\n float x = vUv.y * frequency + time * 0.7; \n float y = vUv.x * frequency + time * 0.3;\n vUv.x += cos(x + y) * amplitude * cos(y);\n vUv.y += sin(x - y) * amplitude * cos(y);\n vec4 rgba = texture(inputBuffer, vUv);\n outputColor = rgba;\n }\n `,\n}\n\nexport class WaterEffectImpl extends Effect {\n constructor({ blendFunction = BlendFunction.NORMAL, factor = 0 } = {}) {\n super('WaterEffect', WaterShader.fragmentShader, {\n blendFunction,\n attributes: EffectAttribute.CONVOLUTION,\n uniforms: new Map<string, Uniform<number | number[]>>([['factor', new Uniform(factor)]]),\n })\n }\n}\n\nexport const WaterEffect = wrapEffect(WaterEffectImpl, { blendFunction: BlendFunction.NORMAL })\n"],"names":["Effect","BlendFunction","EffectAttribute","Uniform","wrapEffect"],"mappings":";;;;;AAIA,MAAM,cAAc;AAAA,EAClB;AAAA;AAAA,IAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe7B;AAEO,MAAM,wBAAwBA,eAAAA,OAAO;AAAA,EAC1C,YAAY,EAAE,gBAAgBC,eAAA,cAAc,QAAQ,SAAS,EAAM,IAAA,IAAI;AAC/D,UAAA,eAAe,YAAY,gBAAgB;AAAA,MAC/C;AAAA,MACA,YAAYC,eAAgB,gBAAA;AAAA,MAC5B,UAAc,oBAAA,IAAwC,CAAC,CAAC,UAAU,IAAIC,cAAQ,MAAM,CAAC,CAAC,CAAC;AAAA,IAAA,CACxF;AAAA,EACH;AACF;AAEO,MAAM,cAAcC,KAAW,WAAA,iBAAiB,EAAE,eAAeH,eAAAA,cAAc,OAAQ,CAAA;;;"}
|
package/dist/effects/Water.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { BlendFunction, Effect } from 'postprocessing';
|
|
3
|
-
export declare class WaterEffectImpl extends Effect {
|
|
4
|
-
constructor({ blendFunction, factor }?: {
|
|
5
|
-
blendFunction?: BlendFunction | undefined;
|
|
6
|
-
factor?: number | undefined;
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
export declare const WaterEffect: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<WaterEffectImpl>, import("@react-three/fiber").NodeProps<WaterEffectImpl, typeof WaterEffectImpl>>> & {
|
|
10
|
-
blendFunction?: BlendFunction | undefined;
|
|
11
|
-
factor?: number | undefined;
|
|
12
|
-
} & {
|
|
13
|
-
blendFunction?: BlendFunction | undefined;
|
|
14
|
-
opacity?: number | undefined;
|
|
15
|
-
}, "ref"> & import("react").RefAttributes<typeof WaterEffectImpl>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Water.js","sources":["../../src/effects/Water.tsx"],"sourcesContent":["import { Uniform } from 'three'\nimport { BlendFunction, Effect, EffectAttribute } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nconst WaterShader = {\n fragmentShader: /* glsl */ `\n uniform float factor;\n\n void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec2 vUv = uv;\n float frequency = 6.0 * factor;\n float amplitude = 0.015 * factor;\n float x = vUv.y * frequency + time * 0.7; \n float y = vUv.x * frequency + time * 0.3;\n vUv.x += cos(x + y) * amplitude * cos(y);\n vUv.y += sin(x - y) * amplitude * cos(y);\n vec4 rgba = texture(inputBuffer, vUv);\n outputColor = rgba;\n }\n `,\n}\n\nexport class WaterEffectImpl extends Effect {\n constructor({ blendFunction = BlendFunction.NORMAL, factor = 0 } = {}) {\n super('WaterEffect', WaterShader.fragmentShader, {\n blendFunction,\n attributes: EffectAttribute.CONVOLUTION,\n uniforms: new Map<string, Uniform<number | number[]>>([['factor', new Uniform(factor)]]),\n })\n }\n}\n\nexport const WaterEffect = wrapEffect(WaterEffectImpl, { blendFunction: BlendFunction.NORMAL })\n"],"names":[],"mappings":";;;AAIA,MAAM,cAAc;AAAA,EAClB;AAAA;AAAA,IAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe7B;AAEO,MAAM,wBAAwB,OAAO;AAAA,EAC1C,YAAY,EAAE,gBAAgB,cAAc,QAAQ,SAAS,EAAM,IAAA,IAAI;AAC/D,UAAA,eAAe,YAAY,gBAAgB;AAAA,MAC/C;AAAA,MACA,YAAY,gBAAgB;AAAA,MAC5B,UAAc,oBAAA,IAAwC,CAAC,CAAC,UAAU,IAAI,QAAQ,MAAM,CAAC,CAAC,CAAC;AAAA,IAAA,CACxF;AAAA,EACH;AACF;AAEO,MAAM,cAAc,WAAW,iBAAiB,EAAE,eAAe,cAAc,OAAQ,CAAA;"}
|
package/dist/index.cjs
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const Selection = require("./Selection.cjs");
|
|
4
|
-
const EffectComposer = require("./EffectComposer.cjs");
|
|
5
|
-
const util = require("./util.cjs");
|
|
6
|
-
const Autofocus = require("./effects/Autofocus.cjs");
|
|
7
|
-
const LensFlare = require("./effects/LensFlare.cjs");
|
|
8
|
-
const Bloom = require("./effects/Bloom.cjs");
|
|
9
|
-
const BrightnessContrast = require("./effects/BrightnessContrast.cjs");
|
|
10
|
-
const ChromaticAberration = require("./effects/ChromaticAberration.cjs");
|
|
11
|
-
const ColorAverage = require("./effects/ColorAverage.cjs");
|
|
12
|
-
const ColorDepth = require("./effects/ColorDepth.cjs");
|
|
13
|
-
const Depth = require("./effects/Depth.cjs");
|
|
14
|
-
const DepthOfField = require("./effects/DepthOfField.cjs");
|
|
15
|
-
const DotScreen = require("./effects/DotScreen.cjs");
|
|
16
|
-
const Glitch = require("./effects/Glitch.cjs");
|
|
17
|
-
const GodRays = require("./effects/GodRays.cjs");
|
|
18
|
-
const Grid = require("./effects/Grid.cjs");
|
|
19
|
-
const HueSaturation = require("./effects/HueSaturation.cjs");
|
|
20
|
-
const Noise = require("./effects/Noise.cjs");
|
|
21
|
-
const Outline = require("./effects/Outline.cjs");
|
|
22
|
-
const Pixelation = require("./effects/Pixelation.cjs");
|
|
23
|
-
const ScanlineEffect = require("./effects/ScanlineEffect.cjs");
|
|
24
|
-
const SelectiveBloom = require("./effects/SelectiveBloom.cjs");
|
|
25
|
-
const Sepia = require("./effects/Sepia.cjs");
|
|
26
|
-
const SSAO = require("./effects/SSAO.cjs");
|
|
27
|
-
const SMAA = require("./effects/SMAA.cjs");
|
|
28
|
-
const FXAA = require("./effects/FXAA.cjs");
|
|
29
|
-
const Ramp = require("./effects/Ramp.cjs");
|
|
30
|
-
const Texture = require("./effects/Texture.cjs");
|
|
31
|
-
const ToneMapping = require("./effects/ToneMapping.cjs");
|
|
32
|
-
const Vignette = require("./effects/Vignette.cjs");
|
|
33
|
-
const ShockWave = require("./effects/ShockWave.cjs");
|
|
34
|
-
const LUT = require("./effects/LUT.cjs");
|
|
35
|
-
const TiltShift = require("./effects/TiltShift.cjs");
|
|
36
|
-
const TiltShift2 = require("./effects/TiltShift2.cjs");
|
|
37
|
-
const ASCII = require("./effects/ASCII.cjs");
|
|
38
|
-
const Water = require("./effects/Water.cjs");
|
|
39
|
-
const index = require("./effects/SSR/index.cjs");
|
|
40
|
-
const index$1 = require("./effects/N8AO/index.cjs");
|
|
41
|
-
exports.Select = Selection.Select;
|
|
42
|
-
exports.Selection = Selection.Selection;
|
|
43
|
-
exports.selectionContext = Selection.selectionContext;
|
|
44
|
-
exports.EffectComposer = EffectComposer.EffectComposer;
|
|
45
|
-
exports.EffectComposerContext = EffectComposer.EffectComposerContext;
|
|
46
|
-
exports.resolveRef = util.resolveRef;
|
|
47
|
-
exports.useVector2 = util.useVector2;
|
|
48
|
-
exports.wrapEffect = util.wrapEffect;
|
|
49
|
-
exports.Autofocus = Autofocus.Autofocus;
|
|
50
|
-
exports.LensFlare = LensFlare.LensFlare;
|
|
51
|
-
exports.LensFlareEffect = LensFlare.LensFlareEffect;
|
|
52
|
-
exports.Bloom = Bloom.Bloom;
|
|
53
|
-
exports.BrightnessContrast = BrightnessContrast.BrightnessContrast;
|
|
54
|
-
exports.ChromaticAberration = ChromaticAberration.ChromaticAberration;
|
|
55
|
-
exports.ColorAverage = ColorAverage.ColorAverage;
|
|
56
|
-
exports.ColorDepth = ColorDepth.ColorDepth;
|
|
57
|
-
exports.Depth = Depth.Depth;
|
|
58
|
-
exports.DepthOfField = DepthOfField.DepthOfField;
|
|
59
|
-
exports.DotScreen = DotScreen.DotScreen;
|
|
60
|
-
exports.Glitch = Glitch.Glitch;
|
|
61
|
-
exports.GodRays = GodRays.GodRays;
|
|
62
|
-
exports.Grid = Grid.Grid;
|
|
63
|
-
exports.HueSaturation = HueSaturation.HueSaturation;
|
|
64
|
-
exports.Noise = Noise.Noise;
|
|
65
|
-
exports.Outline = Outline.Outline;
|
|
66
|
-
exports.Pixelation = Pixelation.Pixelation;
|
|
67
|
-
exports.Scanline = ScanlineEffect.Scanline;
|
|
68
|
-
exports.SelectiveBloom = SelectiveBloom.SelectiveBloom;
|
|
69
|
-
exports.Sepia = Sepia.Sepia;
|
|
70
|
-
exports.SSAO = SSAO.SSAO;
|
|
71
|
-
exports.SMAA = SMAA.SMAA;
|
|
72
|
-
exports.FXAA = FXAA.FXAA;
|
|
73
|
-
exports.Ramp = Ramp.Ramp;
|
|
74
|
-
exports.RampEffect = Ramp.RampEffect;
|
|
75
|
-
exports.RampType = Ramp.RampType;
|
|
76
|
-
exports.Texture = Texture.Texture;
|
|
77
|
-
exports.ToneMapping = ToneMapping.ToneMapping;
|
|
78
|
-
exports.Vignette = Vignette.Vignette;
|
|
79
|
-
exports.ShockWave = ShockWave.ShockWave;
|
|
80
|
-
exports.LUT = LUT.LUT;
|
|
81
|
-
exports.TiltShift = TiltShift.TiltShift;
|
|
82
|
-
exports.TiltShift2 = TiltShift2.TiltShift2;
|
|
83
|
-
exports.TiltShiftEffect = TiltShift2.TiltShiftEffect;
|
|
84
|
-
exports.ASCII = ASCII.ASCII;
|
|
85
|
-
exports.WaterEffect = Water.WaterEffect;
|
|
86
|
-
exports.WaterEffectImpl = Water.WaterEffectImpl;
|
|
87
|
-
exports.SSR = index.SSR;
|
|
88
|
-
exports.N8AO = index$1.N8AO;
|
|
89
|
-
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/util.cjs
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const THREE = require("three");
|
|
6
|
-
const fiber = require("@react-three/fiber");
|
|
7
|
-
function _interopNamespaceDefault(e) {
|
|
8
|
-
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
9
|
-
if (e) {
|
|
10
|
-
for (const k in e) {
|
|
11
|
-
if (k !== "default") {
|
|
12
|
-
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: () => e[k]
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
n.default = e;
|
|
21
|
-
return Object.freeze(n);
|
|
22
|
-
}
|
|
23
|
-
const THREE__namespace = /* @__PURE__ */ _interopNamespaceDefault(THREE);
|
|
24
|
-
const resolveRef = (ref) => typeof ref === "object" && ref != null && "current" in ref ? ref.current : ref;
|
|
25
|
-
let i = 0;
|
|
26
|
-
const components = /* @__PURE__ */ new WeakMap();
|
|
27
|
-
const wrapEffect = (effect, defaults) => /* @__PURE__ */ React.forwardRef(function Effect({ blendFunction = defaults == null ? void 0 : defaults.blendFunction, opacity = defaults == null ? void 0 : defaults.opacity, ...props }, ref) {
|
|
28
|
-
let Component = components.get(effect);
|
|
29
|
-
if (!Component) {
|
|
30
|
-
const key = `@react-three/postprocessing/${effect.name}-${i++}`;
|
|
31
|
-
fiber.extend({ [key]: effect });
|
|
32
|
-
components.set(effect, Component = key);
|
|
33
|
-
}
|
|
34
|
-
const camera = fiber.useThree((state) => state.camera);
|
|
35
|
-
const args = React.useMemo(
|
|
36
|
-
() => {
|
|
37
|
-
var _a, _b;
|
|
38
|
-
return [...(_a = defaults == null ? void 0 : defaults.args) != null ? _a : [], ...(_b = props.args) != null ? _b : [{ ...defaults, ...props }]];
|
|
39
|
-
},
|
|
40
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
41
|
-
[JSON.stringify(props)]
|
|
42
|
-
);
|
|
43
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
44
|
-
Component,
|
|
45
|
-
{
|
|
46
|
-
camera,
|
|
47
|
-
"blendMode-blendFunction": blendFunction,
|
|
48
|
-
"blendMode-opacity-value": opacity,
|
|
49
|
-
...props,
|
|
50
|
-
ref,
|
|
51
|
-
args
|
|
52
|
-
}
|
|
53
|
-
);
|
|
54
|
-
});
|
|
55
|
-
const useVector2 = (props, key) => {
|
|
56
|
-
const value = props[key];
|
|
57
|
-
return React.useMemo(() => {
|
|
58
|
-
if (typeof value === "number")
|
|
59
|
-
return new THREE__namespace.Vector2(value, value);
|
|
60
|
-
else if (value)
|
|
61
|
-
return new THREE__namespace.Vector2(...value);
|
|
62
|
-
else
|
|
63
|
-
return new THREE__namespace.Vector2();
|
|
64
|
-
}, [value]);
|
|
65
|
-
};
|
|
66
|
-
exports.resolveRef = resolveRef;
|
|
67
|
-
exports.useVector2 = useVector2;
|
|
68
|
-
exports.wrapEffect = wrapEffect;
|
|
69
|
-
//# sourceMappingURL=util.cjs.map
|
package/dist/util.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util.cjs","sources":["../src/util.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react'\nimport { Vector2 } from 'three'\nimport * as THREE from 'three'\nimport { type ReactThreeFiber, extend, useThree } from '@react-three/fiber'\nimport type { Effect, BlendFunction } from 'postprocessing'\n\nexport const resolveRef = <T,>(ref: T | React.MutableRefObject<T>) =>\n typeof ref === 'object' && ref != null && 'current' in ref ? ref.current : ref\n\nexport type EffectConstructor = new (...args: any[]) => Effect\n\nexport type EffectProps<T extends EffectConstructor> = ReactThreeFiber.Node<\n T extends Function ? T['prototype'] : InstanceType<T>,\n T\n> &\n ConstructorParameters<T>[0] & {\n blendFunction?: BlendFunction\n opacity?: number\n }\n\nlet i = 0\nconst components = new WeakMap<EffectConstructor, React.ExoticComponent<any> | string>()\n\nexport const wrapEffect = <T extends EffectConstructor>(effect: T, defaults?: EffectProps<T>) =>\n /* @__PURE__ */ React.forwardRef<T, EffectProps<T>>(function Effect(\n { blendFunction = defaults?.blendFunction, opacity = defaults?.opacity, ...props },\n ref\n ) {\n let Component = components.get(effect)\n if (!Component) {\n const key = `@react-three/postprocessing/${effect.name}-${i++}`\n extend({ [key]: effect })\n components.set(effect, (Component = key))\n }\n\n const camera = useThree((state) => state.camera)\n const args = React.useMemo(\n () => [...((defaults?.args ?? []) as any[]), ...((props.args ?? [{ ...defaults, ...props }]) as any[])],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [JSON.stringify(props)]\n )\n\n return (\n <Component\n camera={camera}\n blendMode-blendFunction={blendFunction}\n blendMode-opacity-value={opacity}\n {...props}\n ref={ref}\n args={args}\n />\n )\n })\n\nexport const useVector2 = (props: Record<string, unknown>, key: string): THREE.Vector2 => {\n const value = props[key] as ReactThreeFiber.Vector2 | undefined\n return React.useMemo(() => {\n if (typeof value === 'number') return new THREE.Vector2(value, value)\n else if (value) return new THREE.Vector2(...(value as THREE.Vector2Tuple))\n else return new THREE.Vector2()\n }, [value])\n}\n"],"names":["extend","useThree","jsx","THREE"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAMa,MAAA,aAAa,CAAK,QAC7B,OAAO,QAAQ,YAAY,OAAO,QAAQ,aAAa,MAAM,IAAI,UAAU;AAa7E,IAAI,IAAI;AACR,MAAM,iCAAiB;AAEhB,MAAM,aAAa,CAA8B,QAAW,aAC3C,sBAAA,WAA8B,SAAS,OAC3D,EAAE,gBAAgB,qCAAU,eAAe,UAAU,qCAAU,SAAS,GAAG,SAC3E,KACA;AACI,MAAA,YAAY,WAAW,IAAI,MAAM;AACrC,MAAI,CAAC,WAAW;AACR,UAAA,MAAM,+BAA+B,OAAO,QAAQ;AAC1DA,UAAAA,OAAO,EAAE,CAAC,GAAG,GAAG,OAAQ,CAAA;AACb,eAAA,IAAI,QAAS,YAAY,GAAI;AAAA,EAC1C;AAEA,QAAM,SAASC,MAAAA,SAAS,CAAC,UAAU,MAAM,MAAM;AAC/C,QAAM,OAAO,MAAM;AAAA,IACjB,MAAA;;AAAM,cAAC,IAAK,0CAAU,SAAV,YAAkB,CAAe,GAAA,IAAK,WAAM,SAAN,YAAc,CAAC,EAAE,GAAG,UAAU,GAAG,MAAO,CAAA,CAAY;AAAA;AAAA;AAAA,IAEtG,CAAC,KAAK,UAAU,KAAK,CAAC;AAAA,EAAA;AAItB,SAAAC,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,2BAAyB;AAAA,MACzB,2BAAyB;AAAA,MACxB,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;AAEU,MAAA,aAAa,CAAC,OAAgC,QAA+B;AAClF,QAAA,QAAQ,MAAM,GAAG;AAChB,SAAA,MAAM,QAAQ,MAAM;AACzB,QAAI,OAAO,UAAU;AAAU,aAAO,IAAIC,iBAAM,QAAQ,OAAO,KAAK;AAAA,aAC3D;AAAO,aAAO,IAAIA,iBAAM,QAAQ,GAAI,KAA4B;AAAA;AAC7D,aAAA,IAAIA,iBAAM;EAAQ,GAC7B,CAAC,KAAK,CAAC;AACZ;;;;"}
|
package/dist/util.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React, { MutableRefObject } from 'react';
|
|
2
|
-
import { Vector2 } from 'three';
|
|
3
|
-
import * as THREE from 'three';
|
|
4
|
-
import { type ReactThreeFiber } from '@react-three/fiber';
|
|
5
|
-
import type { Effect, BlendFunction } from 'postprocessing';
|
|
6
|
-
export declare const resolveRef: <T>(ref: T | React.MutableRefObject<T>) => T;
|
|
7
|
-
export type EffectConstructor = new (...args: any[]) => Effect;
|
|
8
|
-
export type EffectProps<T extends EffectConstructor> = ReactThreeFiber.Node<T extends Function ? T['prototype'] : InstanceType<T>, T> & ConstructorParameters<T>[0] & {
|
|
9
|
-
blendFunction?: BlendFunction;
|
|
10
|
-
opacity?: number;
|
|
11
|
-
};
|
|
12
|
-
export declare const wrapEffect: <T extends EffectConstructor>(effect: T, defaults?: EffectProps<T> | undefined) => React.ForwardRefExoticComponent<React.PropsWithoutRef<EffectProps<T>> & React.RefAttributes<T>>;
|
|
13
|
-
export declare const useVector2: (props: Record<string, unknown>, key: string) => THREE.Vector2;
|
package/dist/util.js
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import * as THREE from "three";
|
|
4
|
-
import { extend, useThree } from "@react-three/fiber";
|
|
5
|
-
const resolveRef = (ref) => typeof ref === "object" && ref != null && "current" in ref ? ref.current : ref;
|
|
6
|
-
let i = 0;
|
|
7
|
-
const components = /* @__PURE__ */ new WeakMap();
|
|
8
|
-
const wrapEffect = (effect, defaults) => /* @__PURE__ */ React.forwardRef(function Effect({ blendFunction = defaults == null ? void 0 : defaults.blendFunction, opacity = defaults == null ? void 0 : defaults.opacity, ...props }, ref) {
|
|
9
|
-
let Component = components.get(effect);
|
|
10
|
-
if (!Component) {
|
|
11
|
-
const key = `@react-three/postprocessing/${effect.name}-${i++}`;
|
|
12
|
-
extend({ [key]: effect });
|
|
13
|
-
components.set(effect, Component = key);
|
|
14
|
-
}
|
|
15
|
-
const camera = useThree((state) => state.camera);
|
|
16
|
-
const args = React.useMemo(
|
|
17
|
-
() => {
|
|
18
|
-
var _a, _b;
|
|
19
|
-
return [...(_a = defaults == null ? void 0 : defaults.args) != null ? _a : [], ...(_b = props.args) != null ? _b : [{ ...defaults, ...props }]];
|
|
20
|
-
},
|
|
21
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
22
|
-
[JSON.stringify(props)]
|
|
23
|
-
);
|
|
24
|
-
return /* @__PURE__ */ jsx(
|
|
25
|
-
Component,
|
|
26
|
-
{
|
|
27
|
-
camera,
|
|
28
|
-
"blendMode-blendFunction": blendFunction,
|
|
29
|
-
"blendMode-opacity-value": opacity,
|
|
30
|
-
...props,
|
|
31
|
-
ref,
|
|
32
|
-
args
|
|
33
|
-
}
|
|
34
|
-
);
|
|
35
|
-
});
|
|
36
|
-
const useVector2 = (props, key) => {
|
|
37
|
-
const value = props[key];
|
|
38
|
-
return React.useMemo(() => {
|
|
39
|
-
if (typeof value === "number")
|
|
40
|
-
return new THREE.Vector2(value, value);
|
|
41
|
-
else if (value)
|
|
42
|
-
return new THREE.Vector2(...value);
|
|
43
|
-
else
|
|
44
|
-
return new THREE.Vector2();
|
|
45
|
-
}, [value]);
|
|
46
|
-
};
|
|
47
|
-
export {
|
|
48
|
-
resolveRef,
|
|
49
|
-
useVector2,
|
|
50
|
-
wrapEffect
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=util.js.map
|