@react-three/postprocessing 2.19.0 → 3.0.0-rc.0
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 +69 -96
- package/src/EffectComposer.test.tsx +126 -0
- package/src/EffectComposer.tsx +202 -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 -17
- 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 -94
- package/dist/effects/SelectiveBloom.cjs.map +0 -1
- package/dist/effects/SelectiveBloom.d.ts +0 -20
- package/dist/effects/SelectiveBloom.js +0 -94
- 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
package/dist/effects/Outline.cjs
DELETED
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const postprocessing = require("postprocessing");
|
|
5
|
-
const React = require("react");
|
|
6
|
-
const fiber = require("@react-three/fiber");
|
|
7
|
-
const EffectComposer = require("../EffectComposer.cjs");
|
|
8
|
-
const Selection = require("../Selection.cjs");
|
|
9
|
-
const util = require("../util.cjs");
|
|
10
|
-
const Outline = React.forwardRef(function Outline2({
|
|
11
|
-
selection = [],
|
|
12
|
-
selectionLayer = 10,
|
|
13
|
-
blendFunction,
|
|
14
|
-
patternTexture,
|
|
15
|
-
edgeStrength,
|
|
16
|
-
pulseSpeed,
|
|
17
|
-
visibleEdgeColor,
|
|
18
|
-
hiddenEdgeColor,
|
|
19
|
-
width,
|
|
20
|
-
height,
|
|
21
|
-
kernelSize,
|
|
22
|
-
blur,
|
|
23
|
-
xRay,
|
|
24
|
-
...props
|
|
25
|
-
}, forwardRef2) {
|
|
26
|
-
const invalidate = fiber.useThree((state) => state.invalidate);
|
|
27
|
-
const { scene, camera } = React.useContext(EffectComposer.EffectComposerContext);
|
|
28
|
-
const effect = React.useMemo(
|
|
29
|
-
() => new postprocessing.OutlineEffect(scene, camera, {
|
|
30
|
-
blendFunction,
|
|
31
|
-
patternTexture,
|
|
32
|
-
edgeStrength,
|
|
33
|
-
pulseSpeed,
|
|
34
|
-
visibleEdgeColor,
|
|
35
|
-
hiddenEdgeColor,
|
|
36
|
-
width,
|
|
37
|
-
height,
|
|
38
|
-
kernelSize,
|
|
39
|
-
blur,
|
|
40
|
-
xRay,
|
|
41
|
-
...props
|
|
42
|
-
}),
|
|
43
|
-
// NOTE: `props` is an unstable reference, so we can't memoize it
|
|
44
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
45
|
-
[
|
|
46
|
-
blendFunction,
|
|
47
|
-
blur,
|
|
48
|
-
camera,
|
|
49
|
-
edgeStrength,
|
|
50
|
-
height,
|
|
51
|
-
hiddenEdgeColor,
|
|
52
|
-
kernelSize,
|
|
53
|
-
patternTexture,
|
|
54
|
-
pulseSpeed,
|
|
55
|
-
scene,
|
|
56
|
-
visibleEdgeColor,
|
|
57
|
-
width,
|
|
58
|
-
xRay
|
|
59
|
-
]
|
|
60
|
-
);
|
|
61
|
-
const api = React.useContext(Selection.selectionContext);
|
|
62
|
-
React.useEffect(() => {
|
|
63
|
-
if (!api && selection) {
|
|
64
|
-
effect.selection.set(
|
|
65
|
-
Array.isArray(selection) ? selection.map(util.resolveRef) : [util.resolveRef(selection)]
|
|
66
|
-
);
|
|
67
|
-
invalidate();
|
|
68
|
-
return () => {
|
|
69
|
-
effect.selection.clear();
|
|
70
|
-
invalidate();
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
}, [effect, selection, api, invalidate]);
|
|
74
|
-
React.useEffect(() => {
|
|
75
|
-
effect.selectionLayer = selectionLayer;
|
|
76
|
-
invalidate();
|
|
77
|
-
}, [effect, invalidate, selectionLayer]);
|
|
78
|
-
React.useRef();
|
|
79
|
-
React.useEffect(() => {
|
|
80
|
-
var _a;
|
|
81
|
-
if (api && api.enabled) {
|
|
82
|
-
if ((_a = api.selected) == null ? void 0 : _a.length) {
|
|
83
|
-
effect.selection.set(api.selected);
|
|
84
|
-
invalidate();
|
|
85
|
-
return () => {
|
|
86
|
-
effect.selection.clear();
|
|
87
|
-
invalidate();
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}, [api, effect.selection, invalidate]);
|
|
92
|
-
React.useEffect(() => {
|
|
93
|
-
return () => {
|
|
94
|
-
effect.dispose();
|
|
95
|
-
};
|
|
96
|
-
}, [effect]);
|
|
97
|
-
return /* @__PURE__ */ jsxRuntime.jsx("primitive", { ref: forwardRef2, object: effect });
|
|
98
|
-
});
|
|
99
|
-
exports.Outline = Outline;
|
|
100
|
-
//# sourceMappingURL=Outline.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Outline.cjs","sources":["../../src/effects/Outline.tsx"],"sourcesContent":["import { OutlineEffect } from 'postprocessing'\nimport { Ref, MutableRefObject, forwardRef, useMemo, useEffect, useContext, useRef } from 'react'\nimport { Object3D } from 'three'\nimport { useThree } from '@react-three/fiber'\nimport { EffectComposerContext } from '../EffectComposer'\nimport { selectionContext } from '../Selection'\nimport { resolveRef } from '../util'\n\ntype ObjectRef = MutableRefObject<Object3D>\n\nexport type OutlineProps = ConstructorParameters<typeof OutlineEffect>[2] &\n Partial<{\n selection: Object3D | Object3D[] | ObjectRef | ObjectRef[]\n selectionLayer: number\n }>\n\nexport const Outline = forwardRef(function Outline(\n {\n selection = [],\n selectionLayer = 10,\n blendFunction,\n patternTexture,\n edgeStrength,\n pulseSpeed,\n visibleEdgeColor,\n hiddenEdgeColor,\n width,\n height,\n kernelSize,\n blur,\n xRay,\n ...props\n }: OutlineProps,\n forwardRef: Ref<OutlineEffect>\n) {\n const invalidate = useThree((state) => state.invalidate)\n const { scene, camera } = useContext(EffectComposerContext)\n\n const effect = useMemo(\n () =>\n new OutlineEffect(scene, camera, {\n blendFunction,\n patternTexture,\n edgeStrength,\n pulseSpeed,\n visibleEdgeColor,\n hiddenEdgeColor,\n width,\n height,\n kernelSize,\n blur,\n xRay,\n ...props,\n }),\n // NOTE: `props` is an unstable reference, so we can't memoize it\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n blendFunction,\n blur,\n camera,\n edgeStrength,\n height,\n hiddenEdgeColor,\n kernelSize,\n patternTexture,\n pulseSpeed,\n scene,\n visibleEdgeColor,\n width,\n xRay,\n ]\n )\n\n const api = useContext(selectionContext)\n\n useEffect(() => {\n // Do not allow array selection if declarative selection is active\n // TODO: array selection should probably be deprecated altogether\n if (!api && selection) {\n effect.selection.set(\n Array.isArray(selection) ? (selection as Object3D[]).map(resolveRef) : [resolveRef(selection) as Object3D]\n )\n invalidate()\n return () => {\n effect.selection.clear()\n invalidate()\n }\n }\n }, [effect, selection, api, invalidate])\n\n useEffect(() => {\n effect.selectionLayer = selectionLayer\n invalidate()\n }, [effect, invalidate, selectionLayer])\n\n const ref = useRef<OutlineEffect>()\n useEffect(() => {\n if (api && api.enabled) {\n if (api.selected?.length) {\n effect.selection.set(api.selected)\n invalidate()\n return () => {\n effect.selection.clear()\n invalidate()\n }\n }\n }\n }, [api, effect.selection, invalidate])\n\n useEffect(() => {\n return () => {\n effect.dispose()\n }\n }, [effect])\n\n return <primitive ref={forwardRef} object={effect} />\n})\n"],"names":["forwardRef","Outline","useThree","useContext","EffectComposerContext","useMemo","OutlineEffect","selectionContext","useEffect","resolveRef","useRef","jsx"],"mappings":";;;;;;;;;AAgBa,MAAA,UAAUA,MAAAA,WAAW,SAASC,SACzC;AAAA,EACE,YAAY,CAAC;AAAA,EACb,iBAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GACAD,aACA;AACA,QAAM,aAAaE,MAAAA,SAAS,CAAC,UAAU,MAAM,UAAU;AACvD,QAAM,EAAE,OAAO,OAAO,IAAIC,iBAAWC,eAAqB,qBAAA;AAE1D,QAAM,SAASC,MAAA;AAAA,IACb,MACE,IAAIC,eAAAA,cAAc,OAAO,QAAQ;AAAA,MAC/B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IAAA,CACJ;AAAA;AAAA;AAAA,IAGH;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EAAA;AAGI,QAAA,MAAMH,iBAAWI,UAAAA,gBAAgB;AAEvCC,QAAAA,UAAU,MAAM;AAGV,QAAA,CAAC,OAAO,WAAW;AACrB,aAAO,UAAU;AAAA,QACf,MAAM,QAAQ,SAAS,IAAK,UAAyB,IAAIC,KAAAA,UAAU,IAAI,CAACA,gBAAW,SAAS,CAAa;AAAA,MAAA;AAEhG;AACX,aAAO,MAAM;AACX,eAAO,UAAU;AACN;MAAA;AAAA,IAEf;AAAA,KACC,CAAC,QAAQ,WAAW,KAAK,UAAU,CAAC;AAEvCD,QAAAA,UAAU,MAAM;AACd,WAAO,iBAAiB;AACb;EACV,GAAA,CAAC,QAAQ,YAAY,cAAc,CAAC;AAE3BE,eAAsB;AAClCF,QAAAA,UAAU,MAAM;;AACV,QAAA,OAAO,IAAI,SAAS;AAClB,WAAA,SAAI,aAAJ,mBAAc,QAAQ;AACjB,eAAA,UAAU,IAAI,IAAI,QAAQ;AACtB;AACX,eAAO,MAAM;AACX,iBAAO,UAAU;AACN;QAAA;AAAA,MAEf;AAAA,IACF;AAAA,KACC,CAAC,KAAK,OAAO,WAAW,UAAU,CAAC;AAEtCA,QAAAA,UAAU,MAAM;AACd,WAAO,MAAM;AACX,aAAO,QAAQ;AAAA,IAAA;AAAA,EACjB,GACC,CAAC,MAAM,CAAC;AAEX,SAAQG,2BAAAA,IAAA,aAAA,EAAU,KAAKX,aAAY,QAAQ,OAAQ,CAAA;AACrD,CAAC;;"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { OutlineEffect } from 'postprocessing';
|
|
2
|
-
import { MutableRefObject } from 'react';
|
|
3
|
-
import { Object3D } from 'three';
|
|
4
|
-
type ObjectRef = MutableRefObject<Object3D>;
|
|
5
|
-
export type OutlineProps = ConstructorParameters<typeof OutlineEffect>[2] & Partial<{
|
|
6
|
-
selection: Object3D | Object3D[] | ObjectRef | ObjectRef[];
|
|
7
|
-
selectionLayer: number;
|
|
8
|
-
}>;
|
|
9
|
-
export declare const Outline: import("react").ForwardRefExoticComponent<{
|
|
10
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
11
|
-
patternTexture?: import("three").Texture | undefined;
|
|
12
|
-
patternScale?: number | undefined;
|
|
13
|
-
edgeStrength?: number | undefined;
|
|
14
|
-
pulseSpeed?: number | undefined;
|
|
15
|
-
visibleEdgeColor?: number | undefined;
|
|
16
|
-
hiddenEdgeColor?: number | undefined;
|
|
17
|
-
multisampling?: number | undefined;
|
|
18
|
-
resolutionScale?: number | undefined;
|
|
19
|
-
resolutionX?: number | undefined;
|
|
20
|
-
resolutionY?: number | undefined;
|
|
21
|
-
width?: number | undefined;
|
|
22
|
-
height?: number | undefined;
|
|
23
|
-
kernelSize?: import("postprocessing").KernelSize | undefined;
|
|
24
|
-
blur?: boolean | undefined;
|
|
25
|
-
xRay?: boolean | undefined;
|
|
26
|
-
} & Partial<{
|
|
27
|
-
selection: Object3D | Object3D[] | ObjectRef | ObjectRef[];
|
|
28
|
-
selectionLayer: number;
|
|
29
|
-
}> & import("react").RefAttributes<OutlineEffect>>;
|
|
30
|
-
export {};
|
package/dist/effects/Outline.js
DELETED
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { OutlineEffect } from "postprocessing";
|
|
3
|
-
import { forwardRef, useContext, useMemo, useEffect, useRef } from "react";
|
|
4
|
-
import { useThree } from "@react-three/fiber";
|
|
5
|
-
import { EffectComposerContext } from "../EffectComposer.js";
|
|
6
|
-
import { selectionContext } from "../Selection.js";
|
|
7
|
-
import { resolveRef } from "../util.js";
|
|
8
|
-
const Outline = forwardRef(function Outline2({
|
|
9
|
-
selection = [],
|
|
10
|
-
selectionLayer = 10,
|
|
11
|
-
blendFunction,
|
|
12
|
-
patternTexture,
|
|
13
|
-
edgeStrength,
|
|
14
|
-
pulseSpeed,
|
|
15
|
-
visibleEdgeColor,
|
|
16
|
-
hiddenEdgeColor,
|
|
17
|
-
width,
|
|
18
|
-
height,
|
|
19
|
-
kernelSize,
|
|
20
|
-
blur,
|
|
21
|
-
xRay,
|
|
22
|
-
...props
|
|
23
|
-
}, forwardRef2) {
|
|
24
|
-
const invalidate = useThree((state) => state.invalidate);
|
|
25
|
-
const { scene, camera } = useContext(EffectComposerContext);
|
|
26
|
-
const effect = useMemo(
|
|
27
|
-
() => new OutlineEffect(scene, camera, {
|
|
28
|
-
blendFunction,
|
|
29
|
-
patternTexture,
|
|
30
|
-
edgeStrength,
|
|
31
|
-
pulseSpeed,
|
|
32
|
-
visibleEdgeColor,
|
|
33
|
-
hiddenEdgeColor,
|
|
34
|
-
width,
|
|
35
|
-
height,
|
|
36
|
-
kernelSize,
|
|
37
|
-
blur,
|
|
38
|
-
xRay,
|
|
39
|
-
...props
|
|
40
|
-
}),
|
|
41
|
-
// NOTE: `props` is an unstable reference, so we can't memoize it
|
|
42
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
43
|
-
[
|
|
44
|
-
blendFunction,
|
|
45
|
-
blur,
|
|
46
|
-
camera,
|
|
47
|
-
edgeStrength,
|
|
48
|
-
height,
|
|
49
|
-
hiddenEdgeColor,
|
|
50
|
-
kernelSize,
|
|
51
|
-
patternTexture,
|
|
52
|
-
pulseSpeed,
|
|
53
|
-
scene,
|
|
54
|
-
visibleEdgeColor,
|
|
55
|
-
width,
|
|
56
|
-
xRay
|
|
57
|
-
]
|
|
58
|
-
);
|
|
59
|
-
const api = useContext(selectionContext);
|
|
60
|
-
useEffect(() => {
|
|
61
|
-
if (!api && selection) {
|
|
62
|
-
effect.selection.set(
|
|
63
|
-
Array.isArray(selection) ? selection.map(resolveRef) : [resolveRef(selection)]
|
|
64
|
-
);
|
|
65
|
-
invalidate();
|
|
66
|
-
return () => {
|
|
67
|
-
effect.selection.clear();
|
|
68
|
-
invalidate();
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
}, [effect, selection, api, invalidate]);
|
|
72
|
-
useEffect(() => {
|
|
73
|
-
effect.selectionLayer = selectionLayer;
|
|
74
|
-
invalidate();
|
|
75
|
-
}, [effect, invalidate, selectionLayer]);
|
|
76
|
-
useRef();
|
|
77
|
-
useEffect(() => {
|
|
78
|
-
var _a;
|
|
79
|
-
if (api && api.enabled) {
|
|
80
|
-
if ((_a = api.selected) == null ? void 0 : _a.length) {
|
|
81
|
-
effect.selection.set(api.selected);
|
|
82
|
-
invalidate();
|
|
83
|
-
return () => {
|
|
84
|
-
effect.selection.clear();
|
|
85
|
-
invalidate();
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}, [api, effect.selection, invalidate]);
|
|
90
|
-
useEffect(() => {
|
|
91
|
-
return () => {
|
|
92
|
-
effect.dispose();
|
|
93
|
-
};
|
|
94
|
-
}, [effect]);
|
|
95
|
-
return /* @__PURE__ */ jsx("primitive", { ref: forwardRef2, object: effect });
|
|
96
|
-
});
|
|
97
|
-
export {
|
|
98
|
-
Outline
|
|
99
|
-
};
|
|
100
|
-
//# sourceMappingURL=Outline.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Outline.js","sources":["../../src/effects/Outline.tsx"],"sourcesContent":["import { OutlineEffect } from 'postprocessing'\nimport { Ref, MutableRefObject, forwardRef, useMemo, useEffect, useContext, useRef } from 'react'\nimport { Object3D } from 'three'\nimport { useThree } from '@react-three/fiber'\nimport { EffectComposerContext } from '../EffectComposer'\nimport { selectionContext } from '../Selection'\nimport { resolveRef } from '../util'\n\ntype ObjectRef = MutableRefObject<Object3D>\n\nexport type OutlineProps = ConstructorParameters<typeof OutlineEffect>[2] &\n Partial<{\n selection: Object3D | Object3D[] | ObjectRef | ObjectRef[]\n selectionLayer: number\n }>\n\nexport const Outline = forwardRef(function Outline(\n {\n selection = [],\n selectionLayer = 10,\n blendFunction,\n patternTexture,\n edgeStrength,\n pulseSpeed,\n visibleEdgeColor,\n hiddenEdgeColor,\n width,\n height,\n kernelSize,\n blur,\n xRay,\n ...props\n }: OutlineProps,\n forwardRef: Ref<OutlineEffect>\n) {\n const invalidate = useThree((state) => state.invalidate)\n const { scene, camera } = useContext(EffectComposerContext)\n\n const effect = useMemo(\n () =>\n new OutlineEffect(scene, camera, {\n blendFunction,\n patternTexture,\n edgeStrength,\n pulseSpeed,\n visibleEdgeColor,\n hiddenEdgeColor,\n width,\n height,\n kernelSize,\n blur,\n xRay,\n ...props,\n }),\n // NOTE: `props` is an unstable reference, so we can't memoize it\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n blendFunction,\n blur,\n camera,\n edgeStrength,\n height,\n hiddenEdgeColor,\n kernelSize,\n patternTexture,\n pulseSpeed,\n scene,\n visibleEdgeColor,\n width,\n xRay,\n ]\n )\n\n const api = useContext(selectionContext)\n\n useEffect(() => {\n // Do not allow array selection if declarative selection is active\n // TODO: array selection should probably be deprecated altogether\n if (!api && selection) {\n effect.selection.set(\n Array.isArray(selection) ? (selection as Object3D[]).map(resolveRef) : [resolveRef(selection) as Object3D]\n )\n invalidate()\n return () => {\n effect.selection.clear()\n invalidate()\n }\n }\n }, [effect, selection, api, invalidate])\n\n useEffect(() => {\n effect.selectionLayer = selectionLayer\n invalidate()\n }, [effect, invalidate, selectionLayer])\n\n const ref = useRef<OutlineEffect>()\n useEffect(() => {\n if (api && api.enabled) {\n if (api.selected?.length) {\n effect.selection.set(api.selected)\n invalidate()\n return () => {\n effect.selection.clear()\n invalidate()\n }\n }\n }\n }, [api, effect.selection, invalidate])\n\n useEffect(() => {\n return () => {\n effect.dispose()\n }\n }, [effect])\n\n return <primitive ref={forwardRef} object={effect} />\n})\n"],"names":["Outline","forwardRef"],"mappings":";;;;;;;AAgBa,MAAA,UAAU,WAAW,SAASA,SACzC;AAAA,EACE,YAAY,CAAC;AAAA,EACb,iBAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GACAC,aACA;AACA,QAAM,aAAa,SAAS,CAAC,UAAU,MAAM,UAAU;AACvD,QAAM,EAAE,OAAO,OAAO,IAAI,WAAW,qBAAqB;AAE1D,QAAM,SAAS;AAAA,IACb,MACE,IAAI,cAAc,OAAO,QAAQ;AAAA,MAC/B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IAAA,CACJ;AAAA;AAAA;AAAA,IAGH;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EAAA;AAGI,QAAA,MAAM,WAAW,gBAAgB;AAEvC,YAAU,MAAM;AAGV,QAAA,CAAC,OAAO,WAAW;AACrB,aAAO,UAAU;AAAA,QACf,MAAM,QAAQ,SAAS,IAAK,UAAyB,IAAI,UAAU,IAAI,CAAC,WAAW,SAAS,CAAa;AAAA,MAAA;AAEhG;AACX,aAAO,MAAM;AACX,eAAO,UAAU;AACN;MAAA;AAAA,IAEf;AAAA,KACC,CAAC,QAAQ,WAAW,KAAK,UAAU,CAAC;AAEvC,YAAU,MAAM;AACd,WAAO,iBAAiB;AACb;EACV,GAAA,CAAC,QAAQ,YAAY,cAAc,CAAC;AAE3B,SAAsB;AAClC,YAAU,MAAM;;AACV,QAAA,OAAO,IAAI,SAAS;AAClB,WAAA,SAAI,aAAJ,mBAAc,QAAQ;AACjB,eAAA,UAAU,IAAI,IAAI,QAAQ;AACtB;AACX,eAAO,MAAM;AACX,iBAAO,UAAU;AACN;QAAA;AAAA,MAEf;AAAA,IACF;AAAA,KACC,CAAC,KAAK,OAAO,WAAW,UAAU,CAAC;AAEtC,YAAU,MAAM;AACd,WAAO,MAAM;AACX,aAAO,QAAQ;AAAA,IAAA;AAAA,EACjB,GACC,CAAC,MAAM,CAAC;AAEX,SAAQ,oBAAA,aAAA,EAAU,KAAKA,aAAY,QAAQ,OAAQ,CAAA;AACrD,CAAC;"}
|
|
@@ -1,11 +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 postprocessing = require("postprocessing");
|
|
6
|
-
const Pixelation = React.forwardRef(function Pixelation2({ granularity = 5 }, ref) {
|
|
7
|
-
const effect = React.useMemo(() => new postprocessing.PixelationEffect(granularity), [granularity]);
|
|
8
|
-
return /* @__PURE__ */ jsxRuntime.jsx("primitive", { ref, object: effect, dispose: null });
|
|
9
|
-
});
|
|
10
|
-
exports.Pixelation = Pixelation;
|
|
11
|
-
//# sourceMappingURL=Pixelation.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Pixelation.cjs","sources":["../../src/effects/Pixelation.tsx"],"sourcesContent":["import { forwardRef, useMemo, Ref } from 'react'\nimport { PixelationEffect } from 'postprocessing'\n\nexport type PixelationProps = {\n granularity?: number\n}\n\nexport const Pixelation = forwardRef<PixelationEffect, PixelationProps>(function Pixelation(\n { granularity = 5 }: PixelationProps,\n ref: Ref<PixelationEffect>\n) {\n /** Because GlitchEffect granularity is not an object but a number, we have to define a custom prop \"granularity\" */\n const effect = useMemo(() => new PixelationEffect(granularity), [granularity])\n return <primitive ref={ref} object={effect} dispose={null} />\n})\n"],"names":["forwardRef","Pixelation","useMemo","PixelationEffect"],"mappings":";;;;;AAOa,MAAA,aAAaA,iBAA8C,SAASC,YAC/E,EAAE,cAAc,KAChB,KACA;AAEM,QAAA,SAASC,cAAQ,MAAM,IAAIC,eAAAA,iBAAiB,WAAW,GAAG,CAAC,WAAW,CAAC;AAC7E,wCAAQ,aAAU,EAAA,KAAU,QAAQ,QAAQ,SAAS,KAAM,CAAA;AAC7D,CAAC;;"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { PixelationEffect } from 'postprocessing';
|
|
3
|
-
export type PixelationProps = {
|
|
4
|
-
granularity?: number;
|
|
5
|
-
};
|
|
6
|
-
export declare const Pixelation: import("react").ForwardRefExoticComponent<PixelationProps & import("react").RefAttributes<PixelationEffect>>;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef, useMemo } from "react";
|
|
3
|
-
import { PixelationEffect } from "postprocessing";
|
|
4
|
-
const Pixelation = forwardRef(function Pixelation2({ granularity = 5 }, ref) {
|
|
5
|
-
const effect = useMemo(() => new PixelationEffect(granularity), [granularity]);
|
|
6
|
-
return /* @__PURE__ */ jsx("primitive", { ref, object: effect, dispose: null });
|
|
7
|
-
});
|
|
8
|
-
export {
|
|
9
|
-
Pixelation
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=Pixelation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Pixelation.js","sources":["../../src/effects/Pixelation.tsx"],"sourcesContent":["import { forwardRef, useMemo, Ref } from 'react'\nimport { PixelationEffect } from 'postprocessing'\n\nexport type PixelationProps = {\n granularity?: number\n}\n\nexport const Pixelation = forwardRef<PixelationEffect, PixelationProps>(function Pixelation(\n { granularity = 5 }: PixelationProps,\n ref: Ref<PixelationEffect>\n) {\n /** Because GlitchEffect granularity is not an object but a number, we have to define a custom prop \"granularity\" */\n const effect = useMemo(() => new PixelationEffect(granularity), [granularity])\n return <primitive ref={ref} object={effect} dispose={null} />\n})\n"],"names":["Pixelation"],"mappings":";;;AAOa,MAAA,aAAa,WAA8C,SAASA,YAC/E,EAAE,cAAc,KAChB,KACA;AAEM,QAAA,SAAS,QAAQ,MAAM,IAAI,iBAAiB,WAAW,GAAG,CAAC,WAAW,CAAC;AAC7E,6BAAQ,aAAU,EAAA,KAAU,QAAQ,QAAQ,SAAS,KAAM,CAAA;AAC7D,CAAC;"}
|
package/dist/effects/Ramp.cjs
DELETED
|
@@ -1,156 +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 RampShader = {
|
|
7
|
-
fragmentShader: (
|
|
8
|
-
/* glsl */
|
|
9
|
-
`
|
|
10
|
-
uniform int rampType;
|
|
11
|
-
|
|
12
|
-
uniform vec2 rampStart;
|
|
13
|
-
uniform vec2 rampEnd;
|
|
14
|
-
|
|
15
|
-
uniform vec4 startColor;
|
|
16
|
-
uniform vec4 endColor;
|
|
17
|
-
|
|
18
|
-
uniform float rampBias;
|
|
19
|
-
uniform float rampGain;
|
|
20
|
-
|
|
21
|
-
uniform bool rampMask;
|
|
22
|
-
uniform bool rampInvert;
|
|
23
|
-
|
|
24
|
-
float getBias(float time, float bias) {
|
|
25
|
-
return time / (((1.0 / bias) - 2.0) * (1.0 - time) + 1.0);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
float getGain(float time, float gain) {
|
|
29
|
-
if (time < 0.5)
|
|
30
|
-
return getBias(time * 2.0, gain) / 2.0;
|
|
31
|
-
else
|
|
32
|
-
return getBias(time * 2.0 - 1.0, 1.0 - gain) / 2.0 + 0.5;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {
|
|
36
|
-
vec2 centerPixel = uv * resolution;
|
|
37
|
-
vec2 startPixel = rampStart * resolution;
|
|
38
|
-
vec2 endPixel = rampEnd * resolution;
|
|
39
|
-
|
|
40
|
-
float rampAlpha;
|
|
41
|
-
|
|
42
|
-
if (rampType == 1) {
|
|
43
|
-
vec2 fuv = centerPixel / resolution.y;
|
|
44
|
-
vec2 suv = startPixel / resolution.y;
|
|
45
|
-
vec2 euv = endPixel / resolution.y;
|
|
46
|
-
|
|
47
|
-
float radius = length(suv - euv);
|
|
48
|
-
float falloff = length(fuv - suv);
|
|
49
|
-
rampAlpha = smoothstep(0.0, radius, falloff);
|
|
50
|
-
} else {
|
|
51
|
-
float radius = length(startPixel - endPixel);
|
|
52
|
-
vec2 direction = normalize(vec2(endPixel.x - startPixel.x, -(startPixel.y - endPixel.y)));
|
|
53
|
-
|
|
54
|
-
float fade = dot(centerPixel - startPixel, direction);
|
|
55
|
-
if (rampType == 2) fade = abs(fade);
|
|
56
|
-
|
|
57
|
-
rampAlpha = smoothstep(0.0, 1.0, fade / radius);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
rampAlpha = abs((rampInvert ? 1.0 : 0.0) - getBias(rampAlpha, rampBias) * getGain(rampAlpha, rampGain));
|
|
61
|
-
|
|
62
|
-
if (rampMask) {
|
|
63
|
-
vec4 inputBuff = texture2D(inputBuffer, uv);
|
|
64
|
-
outputColor = mix(inputBuff, inputColor, rampAlpha);
|
|
65
|
-
} else {
|
|
66
|
-
outputColor = mix(startColor, endColor, rampAlpha);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
`
|
|
70
|
-
)
|
|
71
|
-
};
|
|
72
|
-
var RampType = /* @__PURE__ */ ((RampType2) => {
|
|
73
|
-
RampType2[RampType2["Linear"] = 0] = "Linear";
|
|
74
|
-
RampType2[RampType2["Radial"] = 1] = "Radial";
|
|
75
|
-
RampType2[RampType2["MirroredLinear"] = 2] = "MirroredLinear";
|
|
76
|
-
return RampType2;
|
|
77
|
-
})(RampType || {});
|
|
78
|
-
class RampEffect extends postprocessing.Effect {
|
|
79
|
-
constructor({
|
|
80
|
-
/**
|
|
81
|
-
* Type of ramp gradient.
|
|
82
|
-
*/
|
|
83
|
-
rampType = 0,
|
|
84
|
-
/**
|
|
85
|
-
* Starting point of the ramp gradient in normalized coordinates.
|
|
86
|
-
*
|
|
87
|
-
* Ranges from `[0 - 1]` as `[x, y]`. Default is `[0.5, 0.5]`.
|
|
88
|
-
*/
|
|
89
|
-
rampStart = [0.5, 0.5],
|
|
90
|
-
/**
|
|
91
|
-
* Ending point of the ramp gradient in normalized coordinates.
|
|
92
|
-
*
|
|
93
|
-
* Ranges from `[0 - 1]` as `[x, y]`. Default is `[1, 1]`
|
|
94
|
-
*/
|
|
95
|
-
rampEnd = [1, 1],
|
|
96
|
-
/**
|
|
97
|
-
* Color at the starting point of the gradient.
|
|
98
|
-
*
|
|
99
|
-
* Default is black: `[0, 0, 0, 1]`
|
|
100
|
-
*/
|
|
101
|
-
startColor = [0, 0, 0, 1],
|
|
102
|
-
/**
|
|
103
|
-
* Color at the ending point of the gradient.
|
|
104
|
-
*
|
|
105
|
-
* Default is white: `[1, 1, 1, 1]`
|
|
106
|
-
*/
|
|
107
|
-
endColor = [1, 1, 1, 1],
|
|
108
|
-
/**
|
|
109
|
-
* Bias for the interpolation curve when both bias and gain are 0.5.
|
|
110
|
-
*
|
|
111
|
-
* Ranges from `[0 - 1]`. Default is `0.5`.
|
|
112
|
-
*/
|
|
113
|
-
rampBias = 0.5,
|
|
114
|
-
/**
|
|
115
|
-
* Gain for the interpolation curve when both bias and gain are 0.5.
|
|
116
|
-
*
|
|
117
|
-
* Ranges from `[0 - 1]`. Default is `0.5`.
|
|
118
|
-
*/
|
|
119
|
-
rampGain = 0.5,
|
|
120
|
-
/**
|
|
121
|
-
* When enabled, the ramp gradient is used as an effect mask, and colors are ignored.
|
|
122
|
-
*
|
|
123
|
-
* Default is `false`.
|
|
124
|
-
*/
|
|
125
|
-
rampMask = false,
|
|
126
|
-
/**
|
|
127
|
-
* Controls whether the ramp gradient is inverted.
|
|
128
|
-
*
|
|
129
|
-
* When disabled, rampStart is transparent and rampEnd is opaque.
|
|
130
|
-
*
|
|
131
|
-
* Default is `false`.
|
|
132
|
-
*/
|
|
133
|
-
rampInvert = false,
|
|
134
|
-
...params
|
|
135
|
-
} = {}) {
|
|
136
|
-
super("RampEffect", RampShader.fragmentShader, {
|
|
137
|
-
...params,
|
|
138
|
-
uniforms: /* @__PURE__ */ new Map([
|
|
139
|
-
["rampType", new THREE.Uniform(rampType)],
|
|
140
|
-
["rampStart", new THREE.Uniform(rampStart)],
|
|
141
|
-
["rampEnd", new THREE.Uniform(rampEnd)],
|
|
142
|
-
["startColor", new THREE.Uniform(startColor)],
|
|
143
|
-
["endColor", new THREE.Uniform(endColor)],
|
|
144
|
-
["rampBias", new THREE.Uniform(rampBias)],
|
|
145
|
-
["rampGain", new THREE.Uniform(rampGain)],
|
|
146
|
-
["rampMask", new THREE.Uniform(rampMask)],
|
|
147
|
-
["rampInvert", new THREE.Uniform(rampInvert)]
|
|
148
|
-
])
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
const Ramp = /* @__PURE__ */ util.wrapEffect(RampEffect);
|
|
153
|
-
exports.Ramp = Ramp;
|
|
154
|
-
exports.RampEffect = RampEffect;
|
|
155
|
-
exports.RampType = RampType;
|
|
156
|
-
//# sourceMappingURL=Ramp.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Ramp.cjs","sources":["../../src/effects/Ramp.tsx"],"sourcesContent":["import { Uniform } from 'three'\nimport { Effect } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nconst RampShader = {\n fragmentShader: /* glsl */ `\n uniform int rampType;\n\n uniform vec2 rampStart;\n uniform vec2 rampEnd;\n\n uniform vec4 startColor;\n uniform vec4 endColor;\n\n uniform float rampBias;\n uniform float rampGain;\n\n uniform bool rampMask;\n uniform bool rampInvert;\n\n float getBias(float time, float bias) {\n return time / (((1.0 / bias) - 2.0) * (1.0 - time) + 1.0);\n }\n\n float getGain(float time, float gain) {\n if (time < 0.5)\n return getBias(time * 2.0, gain) / 2.0;\n else\n return getBias(time * 2.0 - 1.0, 1.0 - gain) / 2.0 + 0.5;\n }\n\n void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec2 centerPixel = uv * resolution;\n vec2 startPixel = rampStart * resolution;\n vec2 endPixel = rampEnd * resolution;\n\n float rampAlpha;\n\n if (rampType == 1) {\n vec2 fuv = centerPixel / resolution.y;\n vec2 suv = startPixel / resolution.y;\n vec2 euv = endPixel / resolution.y;\n\n float radius = length(suv - euv);\n float falloff = length(fuv - suv);\n rampAlpha = smoothstep(0.0, radius, falloff);\n } else {\n float radius = length(startPixel - endPixel);\n vec2 direction = normalize(vec2(endPixel.x - startPixel.x, -(startPixel.y - endPixel.y)));\n\n float fade = dot(centerPixel - startPixel, direction);\n if (rampType == 2) fade = abs(fade);\n\n rampAlpha = smoothstep(0.0, 1.0, fade / radius);\n }\n\n rampAlpha = abs((rampInvert ? 1.0 : 0.0) - getBias(rampAlpha, rampBias) * getGain(rampAlpha, rampGain));\n\n if (rampMask) {\n vec4 inputBuff = texture2D(inputBuffer, uv);\n outputColor = mix(inputBuff, inputColor, rampAlpha);\n } else {\n outputColor = mix(startColor, endColor, rampAlpha);\n }\n }\n `,\n}\n\nexport enum RampType {\n Linear,\n Radial,\n MirroredLinear,\n}\n\nexport class RampEffect extends Effect {\n constructor({\n /**\n * Type of ramp gradient.\n */\n rampType = RampType.Linear,\n /**\n * Starting point of the ramp gradient in normalized coordinates.\n *\n * Ranges from `[0 - 1]` as `[x, y]`. Default is `[0.5, 0.5]`.\n */\n rampStart = [0.5, 0.5],\n /**\n * Ending point of the ramp gradient in normalized coordinates.\n *\n * Ranges from `[0 - 1]` as `[x, y]`. Default is `[1, 1]`\n */\n rampEnd = [1, 1],\n /**\n * Color at the starting point of the gradient.\n *\n * Default is black: `[0, 0, 0, 1]`\n */\n startColor = [0, 0, 0, 1],\n /**\n * Color at the ending point of the gradient.\n *\n * Default is white: `[1, 1, 1, 1]`\n */\n endColor = [1, 1, 1, 1],\n /**\n * Bias for the interpolation curve when both bias and gain are 0.5.\n *\n * Ranges from `[0 - 1]`. Default is `0.5`.\n */\n rampBias = 0.5,\n /**\n * Gain for the interpolation curve when both bias and gain are 0.5.\n *\n * Ranges from `[0 - 1]`. Default is `0.5`.\n */\n rampGain = 0.5,\n /**\n * When enabled, the ramp gradient is used as an effect mask, and colors are ignored.\n *\n * Default is `false`.\n */\n rampMask = false,\n /**\n * Controls whether the ramp gradient is inverted.\n *\n * When disabled, rampStart is transparent and rampEnd is opaque.\n *\n * Default is `false`.\n */\n rampInvert = false,\n ...params\n } = {}) {\n super('RampEffect', RampShader.fragmentShader, {\n ...params,\n uniforms: new Map<string, Uniform>([\n ['rampType', new Uniform(rampType)],\n ['rampStart', new Uniform(rampStart)],\n ['rampEnd', new Uniform(rampEnd)],\n ['startColor', new Uniform(startColor)],\n ['endColor', new Uniform(endColor)],\n ['rampBias', new Uniform(rampBias)],\n ['rampGain', new Uniform(rampGain)],\n ['rampMask', new Uniform(rampMask)],\n ['rampInvert', new Uniform(rampInvert)],\n ]),\n })\n }\n}\n\nexport const Ramp = /* @__PURE__ */ wrapEffect(RampEffect)\n"],"names":["RampType","Effect","Uniform"],"mappings":";;;;;AAIA,MAAM,aAAa;AAAA,EACjB;AAAA;AAAA,IAA2B;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;AAAA;AAAA;AAAA;AAAA;AAAA;AA6D7B;AAEY,IAAA,6BAAAA,cAAL;AACLA,YAAA,UAAA,QAAA,IAAA,CAAA,IAAA;AACAA,YAAA,UAAA,QAAA,IAAA,CAAA,IAAA;AACAA,YAAA,UAAA,gBAAA,IAAA,CAAA,IAAA;AAHUA,SAAAA;AAAA,GAAA,YAAA,CAAA,CAAA;AAML,MAAM,mBAAmBC,eAAAA,OAAO;AAAA,EACrC,YAAY;AAAA;AAAA;AAAA;AAAA,IAIV,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,YAAY,CAAC,KAAK,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMrB,UAAU,CAAC,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMf,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMxB,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMtB,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQX,aAAa;AAAA,IACb,GAAG;AAAA,EACL,IAAI,IAAI;AACA,UAAA,cAAc,WAAW,gBAAgB;AAAA,MAC7C,GAAG;AAAA,MACH,8BAAc,IAAqB;AAAA,QACjC,CAAC,YAAY,IAAIC,cAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,aAAa,IAAIA,cAAQ,SAAS,CAAC;AAAA,QACpC,CAAC,WAAW,IAAIA,cAAQ,OAAO,CAAC;AAAA,QAChC,CAAC,cAAc,IAAIA,cAAQ,UAAU,CAAC;AAAA,QACtC,CAAC,YAAY,IAAIA,cAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,YAAY,IAAIA,cAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,YAAY,IAAIA,cAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,YAAY,IAAIA,cAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,cAAc,IAAIA,cAAQ,UAAU,CAAC;AAAA,MAAA,CACvC;AAAA,IAAA,CACF;AAAA,EACH;AACF;AAEa,MAAA,uCAAkC,UAAU;;;;"}
|
package/dist/effects/Ramp.d.ts
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { Effect } from 'postprocessing';
|
|
3
|
-
export declare enum RampType {
|
|
4
|
-
Linear = 0,
|
|
5
|
-
Radial = 1,
|
|
6
|
-
MirroredLinear = 2
|
|
7
|
-
}
|
|
8
|
-
export declare class RampEffect extends Effect {
|
|
9
|
-
constructor({
|
|
10
|
-
/**
|
|
11
|
-
* Type of ramp gradient.
|
|
12
|
-
*/
|
|
13
|
-
rampType,
|
|
14
|
-
/**
|
|
15
|
-
* Starting point of the ramp gradient in normalized coordinates.
|
|
16
|
-
*
|
|
17
|
-
* Ranges from `[0 - 1]` as `[x, y]`. Default is `[0.5, 0.5]`.
|
|
18
|
-
*/
|
|
19
|
-
rampStart,
|
|
20
|
-
/**
|
|
21
|
-
* Ending point of the ramp gradient in normalized coordinates.
|
|
22
|
-
*
|
|
23
|
-
* Ranges from `[0 - 1]` as `[x, y]`. Default is `[1, 1]`
|
|
24
|
-
*/
|
|
25
|
-
rampEnd,
|
|
26
|
-
/**
|
|
27
|
-
* Color at the starting point of the gradient.
|
|
28
|
-
*
|
|
29
|
-
* Default is black: `[0, 0, 0, 1]`
|
|
30
|
-
*/
|
|
31
|
-
startColor,
|
|
32
|
-
/**
|
|
33
|
-
* Color at the ending point of the gradient.
|
|
34
|
-
*
|
|
35
|
-
* Default is white: `[1, 1, 1, 1]`
|
|
36
|
-
*/
|
|
37
|
-
endColor,
|
|
38
|
-
/**
|
|
39
|
-
* Bias for the interpolation curve when both bias and gain are 0.5.
|
|
40
|
-
*
|
|
41
|
-
* Ranges from `[0 - 1]`. Default is `0.5`.
|
|
42
|
-
*/
|
|
43
|
-
rampBias,
|
|
44
|
-
/**
|
|
45
|
-
* Gain for the interpolation curve when both bias and gain are 0.5.
|
|
46
|
-
*
|
|
47
|
-
* Ranges from `[0 - 1]`. Default is `0.5`.
|
|
48
|
-
*/
|
|
49
|
-
rampGain,
|
|
50
|
-
/**
|
|
51
|
-
* When enabled, the ramp gradient is used as an effect mask, and colors are ignored.
|
|
52
|
-
*
|
|
53
|
-
* Default is `false`.
|
|
54
|
-
*/
|
|
55
|
-
rampMask,
|
|
56
|
-
/**
|
|
57
|
-
* Controls whether the ramp gradient is inverted.
|
|
58
|
-
*
|
|
59
|
-
* When disabled, rampStart is transparent and rampEnd is opaque.
|
|
60
|
-
*
|
|
61
|
-
* Default is `false`.
|
|
62
|
-
*/
|
|
63
|
-
rampInvert, ...params }?: {
|
|
64
|
-
rampType?: RampType | undefined;
|
|
65
|
-
rampStart?: number[] | undefined;
|
|
66
|
-
rampEnd?: number[] | undefined;
|
|
67
|
-
startColor?: number[] | undefined;
|
|
68
|
-
endColor?: number[] | undefined;
|
|
69
|
-
rampBias?: number | undefined;
|
|
70
|
-
rampGain?: number | undefined;
|
|
71
|
-
rampMask?: boolean | undefined;
|
|
72
|
-
rampInvert?: boolean | undefined;
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
export declare const Ramp: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<RampEffect>, import("@react-three/fiber").NodeProps<RampEffect, typeof RampEffect>>> & {
|
|
76
|
-
rampType?: RampType | undefined;
|
|
77
|
-
rampStart?: number[] | undefined;
|
|
78
|
-
rampEnd?: number[] | undefined;
|
|
79
|
-
startColor?: number[] | undefined;
|
|
80
|
-
endColor?: number[] | undefined;
|
|
81
|
-
rampBias?: number | undefined;
|
|
82
|
-
rampGain?: number | undefined;
|
|
83
|
-
rampMask?: boolean | undefined;
|
|
84
|
-
rampInvert?: boolean | undefined;
|
|
85
|
-
} & {
|
|
86
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
87
|
-
opacity?: number | undefined;
|
|
88
|
-
}, "ref"> & import("react").RefAttributes<typeof RampEffect>>;
|
package/dist/effects/Ramp.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Ramp.js","sources":["../../src/effects/Ramp.tsx"],"sourcesContent":["import { Uniform } from 'three'\nimport { Effect } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nconst RampShader = {\n fragmentShader: /* glsl */ `\n uniform int rampType;\n\n uniform vec2 rampStart;\n uniform vec2 rampEnd;\n\n uniform vec4 startColor;\n uniform vec4 endColor;\n\n uniform float rampBias;\n uniform float rampGain;\n\n uniform bool rampMask;\n uniform bool rampInvert;\n\n float getBias(float time, float bias) {\n return time / (((1.0 / bias) - 2.0) * (1.0 - time) + 1.0);\n }\n\n float getGain(float time, float gain) {\n if (time < 0.5)\n return getBias(time * 2.0, gain) / 2.0;\n else\n return getBias(time * 2.0 - 1.0, 1.0 - gain) / 2.0 + 0.5;\n }\n\n void mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec2 centerPixel = uv * resolution;\n vec2 startPixel = rampStart * resolution;\n vec2 endPixel = rampEnd * resolution;\n\n float rampAlpha;\n\n if (rampType == 1) {\n vec2 fuv = centerPixel / resolution.y;\n vec2 suv = startPixel / resolution.y;\n vec2 euv = endPixel / resolution.y;\n\n float radius = length(suv - euv);\n float falloff = length(fuv - suv);\n rampAlpha = smoothstep(0.0, radius, falloff);\n } else {\n float radius = length(startPixel - endPixel);\n vec2 direction = normalize(vec2(endPixel.x - startPixel.x, -(startPixel.y - endPixel.y)));\n\n float fade = dot(centerPixel - startPixel, direction);\n if (rampType == 2) fade = abs(fade);\n\n rampAlpha = smoothstep(0.0, 1.0, fade / radius);\n }\n\n rampAlpha = abs((rampInvert ? 1.0 : 0.0) - getBias(rampAlpha, rampBias) * getGain(rampAlpha, rampGain));\n\n if (rampMask) {\n vec4 inputBuff = texture2D(inputBuffer, uv);\n outputColor = mix(inputBuff, inputColor, rampAlpha);\n } else {\n outputColor = mix(startColor, endColor, rampAlpha);\n }\n }\n `,\n}\n\nexport enum RampType {\n Linear,\n Radial,\n MirroredLinear,\n}\n\nexport class RampEffect extends Effect {\n constructor({\n /**\n * Type of ramp gradient.\n */\n rampType = RampType.Linear,\n /**\n * Starting point of the ramp gradient in normalized coordinates.\n *\n * Ranges from `[0 - 1]` as `[x, y]`. Default is `[0.5, 0.5]`.\n */\n rampStart = [0.5, 0.5],\n /**\n * Ending point of the ramp gradient in normalized coordinates.\n *\n * Ranges from `[0 - 1]` as `[x, y]`. Default is `[1, 1]`\n */\n rampEnd = [1, 1],\n /**\n * Color at the starting point of the gradient.\n *\n * Default is black: `[0, 0, 0, 1]`\n */\n startColor = [0, 0, 0, 1],\n /**\n * Color at the ending point of the gradient.\n *\n * Default is white: `[1, 1, 1, 1]`\n */\n endColor = [1, 1, 1, 1],\n /**\n * Bias for the interpolation curve when both bias and gain are 0.5.\n *\n * Ranges from `[0 - 1]`. Default is `0.5`.\n */\n rampBias = 0.5,\n /**\n * Gain for the interpolation curve when both bias and gain are 0.5.\n *\n * Ranges from `[0 - 1]`. Default is `0.5`.\n */\n rampGain = 0.5,\n /**\n * When enabled, the ramp gradient is used as an effect mask, and colors are ignored.\n *\n * Default is `false`.\n */\n rampMask = false,\n /**\n * Controls whether the ramp gradient is inverted.\n *\n * When disabled, rampStart is transparent and rampEnd is opaque.\n *\n * Default is `false`.\n */\n rampInvert = false,\n ...params\n } = {}) {\n super('RampEffect', RampShader.fragmentShader, {\n ...params,\n uniforms: new Map<string, Uniform>([\n ['rampType', new Uniform(rampType)],\n ['rampStart', new Uniform(rampStart)],\n ['rampEnd', new Uniform(rampEnd)],\n ['startColor', new Uniform(startColor)],\n ['endColor', new Uniform(endColor)],\n ['rampBias', new Uniform(rampBias)],\n ['rampGain', new Uniform(rampGain)],\n ['rampMask', new Uniform(rampMask)],\n ['rampInvert', new Uniform(rampInvert)],\n ]),\n })\n }\n}\n\nexport const Ramp = /* @__PURE__ */ wrapEffect(RampEffect)\n"],"names":["RampType"],"mappings":";;;AAIA,MAAM,aAAa;AAAA,EACjB;AAAA;AAAA,IAA2B;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;AAAA;AAAA;AAAA;AAAA;AAAA;AA6D7B;AAEY,IAAA,6BAAAA,cAAL;AACLA,YAAA,UAAA,QAAA,IAAA,CAAA,IAAA;AACAA,YAAA,UAAA,QAAA,IAAA,CAAA,IAAA;AACAA,YAAA,UAAA,gBAAA,IAAA,CAAA,IAAA;AAHUA,SAAAA;AAAA,GAAA,YAAA,CAAA,CAAA;AAML,MAAM,mBAAmB,OAAO;AAAA,EACrC,YAAY;AAAA;AAAA;AAAA;AAAA,IAIV,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,YAAY,CAAC,KAAK,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMrB,UAAU,CAAC,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMf,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMxB,WAAW,CAAC,GAAG,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMtB,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMX,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQX,aAAa;AAAA,IACb,GAAG;AAAA,EACL,IAAI,IAAI;AACA,UAAA,cAAc,WAAW,gBAAgB;AAAA,MAC7C,GAAG;AAAA,MACH,8BAAc,IAAqB;AAAA,QACjC,CAAC,YAAY,IAAI,QAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,aAAa,IAAI,QAAQ,SAAS,CAAC;AAAA,QACpC,CAAC,WAAW,IAAI,QAAQ,OAAO,CAAC;AAAA,QAChC,CAAC,cAAc,IAAI,QAAQ,UAAU,CAAC;AAAA,QACtC,CAAC,YAAY,IAAI,QAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,YAAY,IAAI,QAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,YAAY,IAAI,QAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,YAAY,IAAI,QAAQ,QAAQ,CAAC;AAAA,QAClC,CAAC,cAAc,IAAI,QAAQ,UAAU,CAAC;AAAA,MAAA,CACvC;AAAA,IAAA,CACF;AAAA,EACH;AACF;AAEa,MAAA,kCAAkC,UAAU;"}
|
package/dist/effects/SMAA.cjs
DELETED
|
@@ -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 SMAA = util.wrapEffect(postprocessing.SMAAEffect);
|
|
6
|
-
exports.SMAA = SMAA;
|
|
7
|
-
//# sourceMappingURL=SMAA.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SMAA.cjs","sources":["../../src/effects/SMAA.tsx"],"sourcesContent":["import { SMAAEffect } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nexport const SMAA = wrapEffect(SMAAEffect)\n"],"names":["wrapEffect","SMAAEffect"],"mappings":";;;;AAGa,MAAA,OAAOA,gBAAWC,eAAU,UAAA;;"}
|
package/dist/effects/SMAA.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { SMAAEffect } from 'postprocessing';
|
|
3
|
-
export declare const SMAA: import("react").ForwardRefExoticComponent<Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<SMAAEffect>, import("@react-three/fiber").NodeProps<SMAAEffect, typeof SMAAEffect>>> & {
|
|
4
|
-
preset?: import("postprocessing").SMAAPreset | undefined;
|
|
5
|
-
edgeDetectionMode?: import("postprocessing").EdgeDetectionMode | undefined;
|
|
6
|
-
predicationMode?: import("postprocessing").PredicationMode | undefined;
|
|
7
|
-
} & {
|
|
8
|
-
blendFunction?: import("postprocessing").BlendFunction | undefined;
|
|
9
|
-
opacity?: number | undefined;
|
|
10
|
-
}, "ref"> & import("react").RefAttributes<typeof SMAAEffect>>;
|
package/dist/effects/SMAA.js
DELETED
package/dist/effects/SMAA.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SMAA.js","sources":["../../src/effects/SMAA.tsx"],"sourcesContent":["import { SMAAEffect } from 'postprocessing'\nimport { wrapEffect } from '../util'\n\nexport const SMAA = wrapEffect(SMAAEffect)\n"],"names":[],"mappings":";;AAGa,MAAA,OAAO,WAAW,UAAU;"}
|
package/dist/effects/SSAO.cjs
DELETED
|
@@ -1,37 +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 postprocessing = require("postprocessing");
|
|
6
|
-
const EffectComposer = require("../EffectComposer.cjs");
|
|
7
|
-
const SSAO = React.forwardRef(function SSAO2(props, ref) {
|
|
8
|
-
const { camera, normalPass, downSamplingPass, resolutionScale } = React.useContext(EffectComposer.EffectComposerContext);
|
|
9
|
-
const effect = React.useMemo(() => {
|
|
10
|
-
if (normalPass === null && downSamplingPass === null) {
|
|
11
|
-
console.error("Please enable the NormalPass in the EffectComposer in order to use SSAO.");
|
|
12
|
-
return {};
|
|
13
|
-
}
|
|
14
|
-
return new postprocessing.SSAOEffect(camera, normalPass && !downSamplingPass ? normalPass.texture : null, {
|
|
15
|
-
blendFunction: postprocessing.BlendFunction.MULTIPLY,
|
|
16
|
-
samples: 30,
|
|
17
|
-
rings: 4,
|
|
18
|
-
distanceThreshold: 1,
|
|
19
|
-
distanceFalloff: 0,
|
|
20
|
-
rangeThreshold: 0.5,
|
|
21
|
-
rangeFalloff: 0.1,
|
|
22
|
-
luminanceInfluence: 0.9,
|
|
23
|
-
radius: 20,
|
|
24
|
-
bias: 0.5,
|
|
25
|
-
intensity: 1,
|
|
26
|
-
color: void 0,
|
|
27
|
-
// @ts-ignore
|
|
28
|
-
normalDepthBuffer: downSamplingPass ? downSamplingPass.texture : null,
|
|
29
|
-
resolutionScale: resolutionScale != null ? resolutionScale : 1,
|
|
30
|
-
depthAwareUpsampling: true,
|
|
31
|
-
...props
|
|
32
|
-
});
|
|
33
|
-
}, [camera, downSamplingPass, normalPass, resolutionScale]);
|
|
34
|
-
return /* @__PURE__ */ jsxRuntime.jsx("primitive", { ref, object: effect, dispose: null });
|
|
35
|
-
});
|
|
36
|
-
exports.SSAO = SSAO;
|
|
37
|
-
//# sourceMappingURL=SSAO.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SSAO.cjs","sources":["../../src/effects/SSAO.tsx"],"sourcesContent":["import { Ref, forwardRef, useContext, useMemo } from 'react'\nimport { SSAOEffect, BlendFunction } from 'postprocessing'\nimport { EffectComposerContext } from '../EffectComposer'\n\n// first two args are camera and texture\ntype SSAOProps = ConstructorParameters<typeof SSAOEffect>[2]\n\nexport const SSAO = forwardRef<SSAOEffect, SSAOProps>(function SSAO(props: SSAOProps, ref: Ref<SSAOEffect>) {\n const { camera, normalPass, downSamplingPass, resolutionScale } = useContext(EffectComposerContext)\n const effect = useMemo<SSAOEffect | {}>(() => {\n if (normalPass === null && downSamplingPass === null) {\n console.error('Please enable the NormalPass in the EffectComposer in order to use SSAO.')\n return {}\n }\n return new SSAOEffect(camera, normalPass && !downSamplingPass ? (normalPass as any).texture : null, {\n blendFunction: BlendFunction.MULTIPLY,\n samples: 30,\n rings: 4,\n distanceThreshold: 1.0,\n distanceFalloff: 0.0,\n rangeThreshold: 0.5,\n rangeFalloff: 0.1,\n luminanceInfluence: 0.9,\n radius: 20,\n bias: 0.5,\n intensity: 1.0,\n color: undefined,\n // @ts-ignore\n normalDepthBuffer: downSamplingPass ? downSamplingPass.texture : null,\n resolutionScale: resolutionScale ?? 1,\n depthAwareUpsampling: true,\n ...props,\n })\n // NOTE: `props` is an unstable reference, so we can't memoize it\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [camera, downSamplingPass, normalPass, resolutionScale])\n return <primitive ref={ref} object={effect} dispose={null} />\n})\n"],"names":["forwardRef","SSAO","useContext","EffectComposerContext","useMemo","SSAOEffect","BlendFunction"],"mappings":";;;;;;AAOO,MAAM,OAAOA,MAAAA,WAAkC,SAASC,MAAK,OAAkB,KAAsB;AAC1G,QAAM,EAAE,QAAQ,YAAY,kBAAkB,oBAAoBC,MAAAA,WAAWC,eAAAA,qBAAqB;AAC5F,QAAA,SAASC,MAAAA,QAAyB,MAAM;AACxC,QAAA,eAAe,QAAQ,qBAAqB,MAAM;AACpD,cAAQ,MAAM,0EAA0E;AACxF,aAAO;IACT;AACO,WAAA,IAAIC,eAAAA,WAAW,QAAQ,cAAc,CAAC,mBAAoB,WAAmB,UAAU,MAAM;AAAA,MAClG,eAAeC,eAAc,cAAA;AAAA,MAC7B,SAAS;AAAA,MACT,OAAO;AAAA,MACP,mBAAmB;AAAA,MACnB,iBAAiB;AAAA,MACjB,gBAAgB;AAAA,MAChB,cAAc;AAAA,MACd,oBAAoB;AAAA,MACpB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,WAAW;AAAA,MACX,OAAO;AAAA;AAAA,MAEP,mBAAmB,mBAAmB,iBAAiB,UAAU;AAAA,MACjE,iBAAiB,4CAAmB;AAAA,MACpC,sBAAsB;AAAA,MACtB,GAAG;AAAA,IAAA,CACJ;AAAA,KAGA,CAAC,QAAQ,kBAAkB,YAAY,eAAe,CAAC;AAC1D,wCAAQ,aAAU,EAAA,KAAU,QAAQ,QAAQ,SAAS,KAAM,CAAA;AAC7D,CAAC;;"}
|