shaders 2.2.14 → 2.2.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/{AngularBlur-BTUdXC0g.js → AngularBlur-ClvtyURQ.js} +12 -13
- package/dist/core/{Ascii-Bu8ii7oo.js → Ascii-BT0-K_vw.js} +28 -29
- package/dist/core/{Blob-CzWSpVTR.js → Blob-BlQ_1T_8.js} +12 -13
- package/dist/core/{Blur-BzUO9yxF.js → Blur-421AjWLH.js} +8 -9
- package/dist/core/{Bulge-BCXYAzig.js → Bulge-CZRVoR6C.js} +6 -7
- package/dist/core/{CRTScreen-cJ3XHrI9.js → CRTScreen-C_U9g_IR.js} +8 -9
- package/dist/core/{ChannelBlur-BEK1qzGn.js → ChannelBlur-5pzcB6Zv.js} +4 -5
- package/dist/core/{Checkerboard-B8CnUlbi.js → Checkerboard-CrQkqXhD.js} +10 -11
- package/dist/core/{ChromaFlow-AHO3C4o3.js → ChromaFlow-CNrQdL8f.js} +16 -17
- package/dist/core/{ChromaticAberration-nVg3r1FK.js → ChromaticAberration-D9H7O17Y.js} +6 -7
- package/dist/core/{Circle-C8ltF4BZ.js → Circle-DnLaDn8V.js} +7 -8
- package/dist/core/{CursorTrail-BcaRHjU5.js → CursorTrail-NY6n97VG.js} +19 -20
- package/dist/core/{DiffuseBlur-Dq_vFrB1.js → DiffuseBlur-C_n01ABk.js} +11 -12
- package/dist/core/{Dither-CpN3vGSh.js → Dither-4s-c4zh4.js} +6 -7
- package/dist/core/{DotGrid-BFUzeSQw.js → DotGrid-BYl8XdMi.js} +9 -10
- package/dist/core/{Duotone-DGNEAlye.js → Duotone-DbewOoB4.js} +12 -13
- package/dist/core/{FilmGrain-BAKXXtLg.js → FilmGrain-zA_-knOw.js} +7 -8
- package/dist/core/{FloatingParticles-Fv8JIzKk.js → FloatingParticles-BhVnqMsE.js} +22 -23
- package/dist/core/{GlassTiles-5MyBj1ff.js → GlassTiles-CFI57glh.js} +7 -8
- package/dist/core/{Glow-DvJj7BB7.js → Glow-CQgl3IoS.js} +10 -11
- package/dist/core/{Godrays-D3VnYrAm.js → Godrays-BBCtZxbv.js} +18 -19
- package/dist/core/{Grayscale-oWIF3PV5.js → Grayscale-CAEFLteL.js} +9 -10
- package/dist/core/{Grid-Bov7AA9m.js → Grid-DlM-rVbZ.js} +5 -6
- package/dist/core/{GridDistortion-CWYom5Dw.js → GridDistortion-ZOZphSAT.js} +29 -30
- package/dist/core/{Group-CPk-7fiA.js → Group-BQAs3RiH.js} +7 -8
- package/dist/core/{Halftone-F7fsdu7W.js → Halftone-ci4ga-_J.js} +8 -9
- package/dist/core/{HueShift-CiS4hdtk.js → HueShift-CyxzPcJV.js} +11 -12
- package/dist/core/{ImageTexture-B3Q29OHX.js → ImageTexture-CdAGsPuH.js} +18 -20
- package/dist/core/{Invert-Cyc4JHWc.js → Invert-iPsiIqNZ.js} +7 -8
- package/dist/core/{LinearBlur-BTC54qzk.js → LinearBlur-BEaaoIk-.js} +13 -14
- package/dist/core/{LinearGradient-DPe-Z-lw.js → LinearGradient-DR_7RxLX.js} +10 -11
- package/dist/core/{Liquify-D2nzMDzq.js → Liquify-Bi02_ugh.js} +33 -34
- package/dist/core/{Pixelate-irPzmtQm.js → Pixelate-CSsdT1rr.js} +4 -5
- package/dist/core/{PolarCoordinates-Ck5ZWrQO.js → PolarCoordinates-D626ml58.js} +10 -11
- package/dist/core/{Posterize-DICq_t96.js → Posterize-DhZkMaC7.js} +8 -10
- package/dist/core/{ProgressiveBlur-BuORe3VH.js → ProgressiveBlur-CGtCfLF8.js} +16 -17
- package/dist/core/{RadialGradient-CbaCbOJj.js → RadialGradient-C0_WzmbH.js} +13 -14
- package/dist/core/{RectangularCoordinates-1LIDaeHR.js → RectangularCoordinates-DfXw7fhI.js} +6 -7
- package/dist/core/{Ripples-0Ufm3-fY.js → Ripples-DkemN3eh.js} +9 -10
- package/dist/core/{Saturation-DbSXtSeK.js → Saturation-Dup81Pnq.js} +7 -8
- package/dist/core/{SimplexNoise-BKB94dhx.js → SimplexNoise-BYEiCjDj.js} +9 -10
- package/dist/core/{SineWave-CkWtnzHF.js → SineWave-C6MRPtsy.js} +9 -10
- package/dist/core/{SolidColor-DaB-FHNX.js → SolidColor-BZHRczgb.js} +1 -1
- package/dist/core/{Spherize-CqjZj4yV.js → Spherize-DOAnDx2l.js} +13 -14
- package/dist/core/{Spiral-BkzSmPUL.js → Spiral-BMjnWXh1.js} +11 -12
- package/dist/core/{Strands-DyrV6zDO.js → Strands-BOVsuJLe.js} +14 -15
- package/dist/core/{Stretch-DeBlJ-NH.js → Stretch-D6bHc6yp.js} +13 -14
- package/dist/core/{Swirl-BHn9Ji7_.js → Swirl-BFoc0ImG.js} +14 -15
- package/dist/core/{TiltShift-DiArippe.js → TiltShift-BiNvvhzj.js} +14 -15
- package/dist/core/{Tritone-DrzxJUaq.js → Tritone-gdx2AA0m.js} +9 -10
- package/dist/core/{Twirl-C6xj1p52.js → Twirl-BsV8YbqC.js} +8 -9
- package/dist/core/{Vibrance-C6lNgpWH.js → Vibrance-C182fbSw.js} +5 -6
- package/dist/core/{WaveDistortion-DcXxPZ2w.js → WaveDistortion-CmaS2zDB.js} +12 -13
- package/dist/core/{ZoomBlur-_feIVJs6.js → ZoomBlur-DLf5xQ16.js} +10 -11
- package/dist/core/{colorMixing-C-FChLp0.js → colorMixing--dhzx0ch.js} +10 -11
- package/dist/core/edges-CDzKsauJ.js +15 -0
- package/dist/core/index.js +636 -684
- package/dist/core/renderer.d.ts.map +1 -1
- package/dist/core/shaders/AngularBlur/index.js +3 -3
- package/dist/core/shaders/Ascii/index.js +2 -2
- package/dist/core/shaders/Blob/index.js +5 -5
- package/dist/core/shaders/Blur/index.js +2 -2
- package/dist/core/shaders/Bulge/index.js +4 -4
- package/dist/core/shaders/CRTScreen/index.js +2 -2
- package/dist/core/shaders/ChannelBlur/index.js +2 -2
- package/dist/core/shaders/Checkerboard/index.js +4 -4
- package/dist/core/shaders/ChromaFlow/index.js +3 -3
- package/dist/core/shaders/ChromaticAberration/index.js +3 -3
- package/dist/core/shaders/Circle/index.js +3 -3
- package/dist/core/shaders/CursorTrail/index.js +4 -4
- package/dist/core/shaders/DiffuseBlur/index.js +4 -4
- package/dist/core/shaders/Dither/index.js +3 -3
- package/dist/core/shaders/DotGrid/index.js +3 -3
- package/dist/core/shaders/Duotone/index.js +4 -4
- package/dist/core/shaders/FilmGrain/index.js +2 -2
- package/dist/core/shaders/FloatingParticles/index.js +3 -3
- package/dist/core/shaders/GlassTiles/index.js +2 -2
- package/dist/core/shaders/Glow/index.js +2 -2
- package/dist/core/shaders/Godrays/index.js +3 -3
- package/dist/core/shaders/Grayscale/index.js +2 -2
- package/dist/core/shaders/Grid/index.js +3 -3
- package/dist/core/shaders/GridDistortion/index.js +4 -4
- package/dist/core/shaders/Group/index.js +2 -2
- package/dist/core/shaders/Halftone/index.js +3 -3
- package/dist/core/shaders/HueShift/index.js +2 -2
- package/dist/core/shaders/ImageTexture/index.js +2 -2
- package/dist/core/shaders/Invert/index.js +2 -2
- package/dist/core/shaders/LinearBlur/index.js +3 -3
- package/dist/core/shaders/LinearGradient/index.js +4 -4
- package/dist/core/shaders/Liquify/index.js +4 -4
- package/dist/core/shaders/Pixelate/index.js +2 -2
- package/dist/core/shaders/PolarCoordinates/index.js +4 -4
- package/dist/core/shaders/Posterize/index.js +2 -2
- package/dist/core/shaders/ProgressiveBlur/index.js +3 -3
- package/dist/core/shaders/RadialGradient/index.js +4 -4
- package/dist/core/shaders/RectangularCoordinates/index.js +4 -4
- package/dist/core/shaders/Ripples/index.js +5 -5
- package/dist/core/shaders/Saturation/index.js +2 -2
- package/dist/core/shaders/SimplexNoise/index.js +5 -5
- package/dist/core/shaders/SineWave/index.js +3 -3
- package/dist/core/shaders/SolidColor/index.js +3 -3
- package/dist/core/shaders/Spherize/index.js +3 -3
- package/dist/core/shaders/Spiral/index.js +4 -4
- package/dist/core/shaders/Strands/index.js +4 -4
- package/dist/core/shaders/Stretch/index.js +4 -4
- package/dist/core/shaders/Swirl/index.js +5 -5
- package/dist/core/shaders/TiltShift/index.js +3 -3
- package/dist/core/shaders/Tritone/index.js +4 -4
- package/dist/core/shaders/Twirl/index.js +4 -4
- package/dist/core/shaders/Vibrance/index.js +2 -2
- package/dist/core/shaders/WaveDistortion/index.js +4 -4
- package/dist/core/shaders/ZoomBlur/index.js +3 -3
- package/dist/core/three.tsl-Btj1hLsf.js +43845 -0
- package/dist/core/{time-5uQ65blS.js → time-DbRMw6Jm.js} +4 -5
- package/dist/core/{transformations-DBjTkQ5b.js → transformations-CsrIJXh-.js} +176 -177
- package/dist/react/index.cjs +83 -79
- package/dist/react/index.js +50779 -50512
- package/dist/svelte/index.js +50786 -50519
- package/dist/vue/index.js +50430 -50163
- package/package.json +1 -1
- package/dist/core/edges-B-tVdqcI.js +0 -16
- package/dist/core/three.tsl-BqgDcRt9.js +0 -43424
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as
|
|
3
|
-
import { t as
|
|
4
|
-
import { DataTexture as
|
|
5
|
-
et();
|
|
1
|
+
import { A as p, O as at } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { i as et, r as B, t as ot } from "./transformations-CsrIJXh-.js";
|
|
3
|
+
import { t as rt } from "./colorMixing--dhzx0ch.js";
|
|
4
|
+
import { DataTexture as lt, FloatType as st, LinearFilter as _, RGBAFormat as nt } from "three";
|
|
6
5
|
const ct = {
|
|
7
6
|
name: "CursorTrail",
|
|
8
7
|
category: "Interactive",
|
|
@@ -10,7 +9,7 @@ const ct = {
|
|
|
10
9
|
props: {
|
|
11
10
|
colorA: {
|
|
12
11
|
default: "#00aaff",
|
|
13
|
-
transform:
|
|
12
|
+
transform: B,
|
|
14
13
|
description: "Color of fresh trails",
|
|
15
14
|
ui: {
|
|
16
15
|
type: "color",
|
|
@@ -19,7 +18,7 @@ const ct = {
|
|
|
19
18
|
},
|
|
20
19
|
colorB: {
|
|
21
20
|
default: "#ff00aa",
|
|
22
|
-
transform:
|
|
21
|
+
transform: B,
|
|
23
22
|
description: "Color trails transition to as they fade",
|
|
24
23
|
ui: {
|
|
25
24
|
type: "color",
|
|
@@ -61,26 +60,26 @@ const ct = {
|
|
|
61
60
|
},
|
|
62
61
|
colorSpace: {
|
|
63
62
|
default: "linear",
|
|
64
|
-
transform:
|
|
63
|
+
transform: et,
|
|
65
64
|
description: "Color space for color interpolation",
|
|
66
65
|
ui: {
|
|
67
66
|
type: "select",
|
|
68
|
-
options:
|
|
67
|
+
options: ot,
|
|
69
68
|
label: "Color Space"
|
|
70
69
|
}
|
|
71
70
|
}
|
|
72
71
|
},
|
|
73
|
-
fragmentNode: ({ uniforms: l, onBeforeRender: U, onCleanup:
|
|
74
|
-
const { vec4:
|
|
75
|
-
s.magFilter =
|
|
76
|
-
const
|
|
72
|
+
fragmentNode: ({ uniforms: l, onBeforeRender: U, onCleanup: q }) => {
|
|
73
|
+
const { vec4: E, float: t, texture: G, step: H, screenUV: n } = at, a = 128, o = new Float32Array(a * a * 4), s = new lt(o, a, a, nt, st);
|
|
74
|
+
s.magFilter = _, s.minFilter = _, s.needsUpdate = !0;
|
|
75
|
+
const c = G(s);
|
|
77
76
|
let y = 0.5, M = 0.5, g = Date.now();
|
|
78
77
|
U(({ pointer: r }) => {
|
|
79
78
|
const T = Date.now(), f = Math.min((T - g) / 1e3, 0.016);
|
|
80
79
|
g = T;
|
|
81
|
-
const h = l.radius.uniform.value * 0.1, b = l.length.uniform.value,
|
|
80
|
+
const h = l.radius.uniform.value * 0.1, b = l.length.uniform.value, j = l.shrink.uniform.value, F = r.x - y, w = r.y - M, z = Math.sqrt(F * F + w * w), N = 1 - f / Math.max(0.1, b), V = f / Math.max(0.1, b);
|
|
82
81
|
for (let e = 0; e < a * a * 4; e += 4)
|
|
83
|
-
o[e] *=
|
|
82
|
+
o[e] *= N, o[e + 1] = 1 - (1 - o[e]) * j, o[e + 2] = Math.min(1, o[e + 2] + V);
|
|
84
83
|
if (z > 1e-3) {
|
|
85
84
|
const e = h * 3, Z = Math.max(0, Math.floor((r.x - e) * a)), K = Math.min(a - 1, Math.ceil((r.x + e) * a)), P = Math.max(0, Math.floor((r.y - e) * a)), Q = Math.min(a - 1, Math.ceil((r.y + e) * a));
|
|
86
85
|
for (let m = P; m <= Q; m++) for (let d = Z; d <= K; d++) {
|
|
@@ -92,15 +91,15 @@ const ct = {
|
|
|
92
91
|
}
|
|
93
92
|
}
|
|
94
93
|
s.needsUpdate = !0, y = r.x, M = r.y;
|
|
95
|
-
}),
|
|
94
|
+
}), q(() => {
|
|
96
95
|
s.dispose();
|
|
97
96
|
});
|
|
98
|
-
const
|
|
99
|
-
return
|
|
97
|
+
const i = t(1 / a), C = c.sample(n), v = c.sample(n.add(p(i, t(0)))), A = c.sample(n.add(p(t(0), i))), S = c.sample(n.add(p(i.negate(), t(0)))), k = c.sample(n.add(p(t(0), i.negate()))), J = C.x.mul(t(0.5)).add(v.x.mul(t(0.125))).add(A.x.mul(t(0.125))).add(S.x.mul(t(0.125))).add(k.x.mul(t(0.125))), L = C.z.mul(t(0.5)).add(v.z.mul(t(0.125))).add(A.z.mul(t(0.125))).add(S.z.mul(t(0.125))).add(k.z.mul(t(0.125))), O = H(t(0.01), J), X = l.colorA.uniform, Y = l.colorB.uniform, D = rt(X, Y, L, l.colorSpace.uniform);
|
|
98
|
+
return E(D.rgb, D.a.mul(O));
|
|
100
99
|
}
|
|
101
100
|
};
|
|
102
|
-
var
|
|
101
|
+
var pt = ct;
|
|
103
102
|
export {
|
|
104
103
|
ct as n,
|
|
105
|
-
|
|
104
|
+
pt as t
|
|
106
105
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as w } from "./edges-
|
|
3
|
-
import { a as S } from "./transformations-
|
|
4
|
-
_();
|
|
1
|
+
import { O as v } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { t as w } from "./edges-CDzKsauJ.js";
|
|
3
|
+
import { a as S } from "./transformations-CsrIJXh-.js";
|
|
5
4
|
const z = {
|
|
6
5
|
name: "DiffuseBlur",
|
|
7
6
|
category: "Blurs",
|
|
@@ -48,23 +47,23 @@ const z = {
|
|
|
48
47
|
}
|
|
49
48
|
}
|
|
50
49
|
},
|
|
51
|
-
uvTransformNode: ({ uv: r, uniforms: s, viewportSize:
|
|
52
|
-
const { vec2: e, fract:
|
|
50
|
+
uvTransformNode: ({ uv: r, uniforms: s, viewportSize: u }) => {
|
|
51
|
+
const { vec2: e, fract: l, sin: d, dot: c } = v, n = (i) => l(d(c(i, e(12.9898, 78.233).mul(2))).mul(43758.5453)), m = e(1).div(u), o = r.mul(1e3), f = n(o), t = n(o.add(e(73.2, 41.9))), a = e(f.mul(2).sub(1), t.mul(2).sub(1)).mul(s.intensity.uniform).mul(m);
|
|
53
52
|
return r.add(a);
|
|
54
53
|
},
|
|
55
|
-
fragmentNode: ({ uniforms: r, childNode: s, onCleanup:
|
|
56
|
-
const { vec2: e, vec4:
|
|
57
|
-
if (!s) return
|
|
54
|
+
fragmentNode: ({ uniforms: r, childNode: s, onCleanup: u }) => {
|
|
55
|
+
const { vec2: e, vec4: l, screenUV: d, convertToTexture: c, viewportSize: n, fract: m, sin: o, dot: f } = v;
|
|
56
|
+
if (!s) return l(0, 0, 0, 0);
|
|
58
57
|
const t = c(s);
|
|
59
|
-
|
|
58
|
+
u(() => {
|
|
60
59
|
t?.renderTarget?.dispose && t.renderTarget.dispose();
|
|
61
60
|
});
|
|
62
61
|
const a = (x) => m(o(f(x, e(12.9898, 78.233).mul(2))).mul(43758.5453)), i = d, b = e(1).div(n), p = i.mul(1e3), g = a(p), y = a(p.add(e(73.2, 41.9))), T = e(g.mul(2).sub(1), y.mul(2).sub(1)).mul(r.intensity.uniform).mul(b), h = i.add(T);
|
|
63
62
|
return w(h, t.sample(h), t, r.edges.uniform);
|
|
64
63
|
}
|
|
65
64
|
};
|
|
66
|
-
var
|
|
65
|
+
var _ = z;
|
|
67
66
|
export {
|
|
68
67
|
z as n,
|
|
69
|
-
|
|
68
|
+
_ as t
|
|
70
69
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { r as n } from "./transformations-
|
|
3
|
-
S
|
|
4
|
-
const v = {
|
|
1
|
+
import { O as z } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { r as n } from "./transformations-CsrIJXh-.js";
|
|
3
|
+
const S = {
|
|
5
4
|
name: "Dither",
|
|
6
5
|
category: "Stylize",
|
|
7
6
|
description: "Bayer matrix dithering to reduce colors",
|
|
@@ -55,8 +54,8 @@ const v = {
|
|
|
55
54
|
return l(i(t.colorA.uniform.rgb, t.colorB.uniform.rgb, c), i(t.colorA.uniform.a, t.colorB.uniform.a, c));
|
|
56
55
|
}
|
|
57
56
|
};
|
|
58
|
-
var
|
|
57
|
+
var D = S;
|
|
59
58
|
export {
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
S as n,
|
|
60
|
+
D as t
|
|
62
61
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { r as
|
|
3
|
-
|
|
4
|
-
const P = {
|
|
1
|
+
import { O as G, f as _ } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { r as I } from "./transformations-CsrIJXh-.js";
|
|
3
|
+
const M = {
|
|
5
4
|
name: "DotGrid",
|
|
6
5
|
category: "Base Layers",
|
|
7
6
|
description: "Grid of dots with optional twinkling animation",
|
|
@@ -10,7 +9,7 @@ const P = {
|
|
|
10
9
|
color: {
|
|
11
10
|
default: "#ffffff",
|
|
12
11
|
description: "The color of the dot",
|
|
13
|
-
transform:
|
|
12
|
+
transform: I,
|
|
14
13
|
ui: {
|
|
15
14
|
type: "color",
|
|
16
15
|
label: "Color"
|
|
@@ -51,12 +50,12 @@ const P = {
|
|
|
51
50
|
}
|
|
52
51
|
},
|
|
53
52
|
fragmentNode: ({ uniforms: t, uvContext: f }) => {
|
|
54
|
-
const { screenUV: m, vec4: u, vec2: p, smoothstep: h, length: o, floor: n, float: i, viewportSize: g, time: y, sin: w, mix: b } = G, s = f ?? m, l = t.density.uniform, r = t.dotSize.uniform,
|
|
55
|
-
return u(
|
|
53
|
+
const { screenUV: m, vec4: u, vec2: p, smoothstep: h, length: o, floor: n, float: i, viewportSize: g, time: y, sin: w, mix: b } = G, s = f ?? m, l = t.density.uniform, r = t.dotSize.uniform, x = t.color.uniform, k = t.twinkle.uniform, a = g, v = a.x.div(a.y), d = p(s.x.mul(v), s.y.oneMinus()), e = d.mul(l), z = o(e.sub(n(e)).sub(0.5)), D = o(_(d.mul(l))), S = i(1).sub(h(r.mul(0.5), r.mul(0.5).add(D.mul(0.5)), z)), c = n(e), C = c.x.mul(12.9898).add(c.y.mul(78.233)).sin().mul(43758.5453).fract(), V = w(y.mul(2).add(C.mul(6.28318))).mul(0.5).add(0.5), T = b(i(1), V, k), U = S.mul(T);
|
|
54
|
+
return u(x.rgb, U);
|
|
56
55
|
}
|
|
57
56
|
};
|
|
58
|
-
var
|
|
57
|
+
var B = M;
|
|
59
58
|
export {
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
M as n,
|
|
60
|
+
B as t
|
|
62
61
|
};
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as
|
|
3
|
-
import { t as
|
|
4
|
-
|
|
5
|
-
const h = {
|
|
1
|
+
import { O as m } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { i as b, r as a, t as C } from "./transformations-CsrIJXh-.js";
|
|
3
|
+
import { t as g } from "./colorMixing--dhzx0ch.js";
|
|
4
|
+
const T = {
|
|
6
5
|
name: "Duotone",
|
|
7
6
|
category: "Adjustments",
|
|
8
7
|
description: "Map colors to two tones based on luminance",
|
|
@@ -40,28 +39,28 @@ const h = {
|
|
|
40
39
|
},
|
|
41
40
|
colorSpace: {
|
|
42
41
|
default: "linear",
|
|
43
|
-
transform:
|
|
42
|
+
transform: b,
|
|
44
43
|
description: "Color space for color interpolation",
|
|
45
44
|
ui: {
|
|
46
45
|
type: "select",
|
|
47
|
-
options:
|
|
46
|
+
options: C,
|
|
48
47
|
label: "Color Space"
|
|
49
48
|
}
|
|
50
49
|
}
|
|
51
50
|
},
|
|
52
51
|
fragmentNode: ({ uniforms: o, childNode: r, onCleanup: s }) => {
|
|
53
|
-
const { vec3: l, vec4: t, dot: i, smoothstep: c, screenUV: p, convertToTexture: d } =
|
|
52
|
+
const { vec3: l, vec4: t, dot: i, smoothstep: c, screenUV: p, convertToTexture: d } = m;
|
|
54
53
|
if (!r) return t(0, 0, 0, 0);
|
|
55
54
|
const e = d(r);
|
|
56
55
|
s(() => {
|
|
57
56
|
e?.renderTarget?.dispose && e.renderTarget.dispose();
|
|
58
57
|
});
|
|
59
|
-
const n = e.sample(p), u = i(n.rgb, l(0.299, 0.587, 0.114)),
|
|
60
|
-
return t(
|
|
58
|
+
const n = e.sample(p), u = i(n.rgb, l(0.299, 0.587, 0.114)), f = c(o.blend.uniform.sub(0.5), o.blend.uniform.add(0.5), u);
|
|
59
|
+
return t(g(o.colorA.uniform, o.colorB.uniform, f, o.colorSpace.uniform).rgb, n.a);
|
|
61
60
|
}
|
|
62
61
|
};
|
|
63
|
-
var
|
|
62
|
+
var y = T;
|
|
64
63
|
export {
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
T as n,
|
|
65
|
+
y as t
|
|
67
66
|
};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
p
|
|
3
|
-
const d = {
|
|
1
|
+
import { O as f } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
const p = {
|
|
4
3
|
name: "FilmGrain",
|
|
5
4
|
category: "Stylize",
|
|
6
5
|
description: "Analog film grain texture overlay",
|
|
@@ -17,13 +16,13 @@ const d = {
|
|
|
17
16
|
label: "Strength"
|
|
18
17
|
}
|
|
19
18
|
} },
|
|
20
|
-
fragmentNode: ({ uniforms: r, childNode:
|
|
21
|
-
const { vec2: s, vec4: e, float: t, screenUV: a, sin: l, dot: m, fract: c } = f, u = r.strength.uniform, n =
|
|
19
|
+
fragmentNode: ({ uniforms: r, childNode: o, uvContext: i }) => {
|
|
20
|
+
const { vec2: s, vec4: e, float: t, screenUV: a, sin: l, dot: m, fract: c } = f, u = r.strength.uniform, n = o || e(0, 0, 0, 0), g = c(l(m(i ?? a, s(t(12.9898), t(78.233)).mul(t(2)))).mul(t(43758.5453))).mul(t(2)).sub(t(1)).mul(u.mul(t(0.1)));
|
|
22
21
|
return e(n.rgb.add(g), n.a);
|
|
23
22
|
}
|
|
24
23
|
};
|
|
25
|
-
var
|
|
24
|
+
var h = p;
|
|
26
25
|
export {
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
p as n,
|
|
27
|
+
h as t
|
|
29
28
|
};
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { r as
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const l = G(e).sub(0.5), u = g(n), x = U(n);
|
|
1
|
+
import { O as Q } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { r as W } from "./transformations-CsrIJXh-.js";
|
|
3
|
+
var { vec2: a, vec3: q, vec4: E, float: c, sin: g, cos: _, smoothstep: X, mix: H, min: w, floor: Y, fract: I, length: O, dot: B, screenUV: Z, viewportSize: N, time: k, Fn: m } = Q, $ = m(([e]) => I(g(B(e, a(127.1, 311.7))).mul(43758.5453123))), j = m(([e]) => I(g(a(B(e, a(127.1, 311.7)), B(e, a(269.5, 183.3)))).mul(43758.5453))), ee = m(([e, n]) => {
|
|
4
|
+
const l = j(e).sub(0.5), u = g(n), x = _(n);
|
|
6
5
|
return a(x.mul(l.x).sub(u.mul(l.y)).mul(0.66), u.mul(l.x).add(x.mul(l.y)).mul(0.66)).add(e).add(0.5);
|
|
7
|
-
}),
|
|
8
|
-
const u =
|
|
9
|
-
return
|
|
6
|
+
}), te = m(([e, n]) => k.mul(n).mul($(e).sub(0.5)).mul(2)), v = m(([e, n, l]) => {
|
|
7
|
+
const u = ee(n, te(n, l));
|
|
8
|
+
return O(e.sub(u));
|
|
10
9
|
});
|
|
11
|
-
const
|
|
10
|
+
const ae = {
|
|
12
11
|
name: "FloatingParticles",
|
|
13
12
|
category: "Base Layers",
|
|
14
13
|
description: "Animated floating particles with twinkle effects",
|
|
@@ -94,7 +93,7 @@ const ne = {
|
|
|
94
93
|
},
|
|
95
94
|
particleColor: {
|
|
96
95
|
default: "#ffffff",
|
|
97
|
-
transform:
|
|
96
|
+
transform: W,
|
|
98
97
|
description: "Color of the particles",
|
|
99
98
|
ui: {
|
|
100
99
|
type: "color",
|
|
@@ -136,26 +135,26 @@ const ne = {
|
|
|
136
135
|
}
|
|
137
136
|
},
|
|
138
137
|
fragmentNode: ({ uniforms: e, childNode: n, uvContext: l }) => {
|
|
139
|
-
const u = l ??
|
|
140
|
-
const r =
|
|
138
|
+
const u = l ?? Z, x = m(([s]) => {
|
|
139
|
+
const r = Y(s), p = I(s);
|
|
141
140
|
let t = v(s, r, e.randomness.uniform);
|
|
142
141
|
const y = e.particleSoftness.uniform, d = e.particleSize.uniform.mul(0.01), o = d.mul(0.6).add(y.mul(d.mul(2.4))), i = o.greaterThan(0.35), h = p.x.lessThan(0.4), V = p.x.greaterThan(0.6), R = p.y.lessThan(0.4), z = p.y.greaterThan(0.6), D = i.and(h), f = i.and(V), C = i.and(R), b = i.and(z);
|
|
143
|
-
t = D.select(
|
|
144
|
-
const M =
|
|
145
|
-
return M.mul(
|
|
146
|
-
}),
|
|
147
|
-
const r = c(1.05), p = c(0.9), t = e.count.uniform, y = q(0).toVar(), d = c(1).toVar(), o = c(1).toVar(), i = a(0).toVar(), h = e.angle.uniform.mul(3.14159).div(180), V = a(
|
|
142
|
+
t = D.select(w(t, v(s, r.add(a(-1, 0)), e.randomness.uniform)), t), t = f.select(w(t, v(s, r.add(a(1, 0)), e.randomness.uniform)), t), t = C.select(w(t, v(s, r.add(a(0, -1)), e.randomness.uniform)), t), t = b.select(w(t, v(s, r.add(a(0, 1)), e.randomness.uniform)), t);
|
|
143
|
+
const M = X(o, d.mul(0.6), t), A = e.twinkle.uniform, P = r.x.mul(12.9898).add(r.y.mul(78.233)).sin().mul(43758.5453).fract(), F = g(k.mul(2).add(P.mul(6.28318))).mul(0.5).add(0.5), U = H(c(1), F, A);
|
|
144
|
+
return M.mul(U).mul(e.particleColor.uniform.rgb);
|
|
145
|
+
}), G = m(([s]) => {
|
|
146
|
+
const r = c(1.05), p = c(0.9), t = e.count.uniform, y = q(0).toVar(), d = c(1).toVar(), o = c(1).toVar(), i = a(0).toVar(), h = e.angle.uniform.mul(3.14159).div(180), V = a(_(h), g(h)), R = k.mul(V).mul(e.speed.uniform), z = e.speedVariance.uniform, D = e.angleVariance.uniform.mul(3.14159).div(180);
|
|
148
147
|
for (let f = 0; f < 4; f++) {
|
|
149
|
-
const C = c(f).lessThan(t).and(o.greaterThan(0.02)), b =
|
|
150
|
-
y.assign(y.add(C.select(
|
|
148
|
+
const C = c(f).lessThan(t).and(o.greaterThan(0.02)), b = j(a(o, c(f).mul(7.919))), M = c(1).add(b.x.sub(0.5).mul(z)), A = b.y.sub(0.5).mul(D).mul(2), P = h.add(A), F = a(_(P), g(P)), U = R.mul(M).add(F.sub(V).mul(k).mul(e.speed.uniform)), K = x(s.mul(d).add(U).add(i)).mul(o);
|
|
149
|
+
y.assign(y.add(C.select(K, q(0)))), i.assign(i.add(b.mul(10))), o.assign(o.mul(p)), d.assign(d.mul(r));
|
|
151
150
|
}
|
|
152
151
|
return y;
|
|
153
|
-
}), L = u.mul(2).sub(1),
|
|
152
|
+
}), L = u.mul(2).sub(1), J = N.x.div(N.y), T = G(a(L.x.mul(J), L.y).mul(e.particleDensity.uniform)), S = O(T);
|
|
154
153
|
return n ? E(H(n.xyz, T, S.greaterThan(0.01).select(S, 0)), n.w) : E(T, S);
|
|
155
154
|
}
|
|
156
155
|
};
|
|
157
|
-
var
|
|
156
|
+
var re = ae;
|
|
158
157
|
export {
|
|
159
|
-
|
|
160
|
-
|
|
158
|
+
ae as n,
|
|
159
|
+
re as t
|
|
161
160
|
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
R();
|
|
1
|
+
import { O as b } from "./three.tsl-Btj1hLsf.js";
|
|
3
2
|
const V = {
|
|
4
3
|
name: "GlassTiles",
|
|
5
4
|
category: "Distortions",
|
|
@@ -30,20 +29,20 @@ const V = {
|
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
31
|
},
|
|
33
|
-
uvTransformNode: ({ uv:
|
|
34
|
-
const { vec2: r, floor: a, select: l } = b, p = s.intensity.uniform, t = s.tileCount.uniform, e = i.x.div(i.y),
|
|
32
|
+
uvTransformNode: ({ uv: n, uniforms: s, viewportSize: i }) => {
|
|
33
|
+
const { vec2: r, floor: a, select: l } = b, p = s.intensity.uniform, t = s.tileCount.uniform, e = i.x.div(i.y), o = r(l(e.greaterThanEqual(1), t.mul(e), t), l(e.lessThan(1), t.div(e), t)), c = a(n.mul(o)).div(o), d = n.sub(c), T = r(0.5, 0.5), h = p.mul(0.025), u = d.div(r(1, 1).div(o)).sub(T).mul(h);
|
|
35
34
|
return d.add(u).add(c);
|
|
36
35
|
},
|
|
37
|
-
fragmentNode: ({ uniforms:
|
|
38
|
-
const { vec2: a, vec4: l, floor: p, mul: t, div: e, sub:
|
|
36
|
+
fragmentNode: ({ uniforms: n, childNode: s, dimensions: i, onCleanup: r }) => {
|
|
37
|
+
const { vec2: a, vec4: l, floor: p, mul: t, div: e, sub: o, add: c, screenUV: d, uniform: T, convertToTexture: h } = b;
|
|
39
38
|
if (!s)
|
|
40
39
|
return console.error("You must pass a child component into the Glass Tiles shader."), l(0);
|
|
41
40
|
const u = h(s);
|
|
42
41
|
r(() => {
|
|
43
42
|
u?.renderTarget?.dispose && u.renderTarget.dispose();
|
|
44
43
|
});
|
|
45
|
-
const m = T(i.width / i.height), g = d, x =
|
|
46
|
-
return l(u.sample(
|
|
44
|
+
const m = T(i.width / i.height), g = d, x = n.intensity.uniform, f = n.tileCount.uniform, C = a(m.greaterThanEqual(1).select(t(f, m), f), m.lessThan(1).select(e(f, m), f)), v = e(p(t(g, C)), C), y = o(g, v), U = a(0.5, 0.5), q = t(x, 0.025), R = c(c(y, t(o(e(y, e(a(1), C)), U), q)), v);
|
|
45
|
+
return l(u.sample(R));
|
|
47
46
|
}
|
|
48
47
|
};
|
|
49
48
|
var N = V;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
const B = {
|
|
1
|
+
import { O as j } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
const k = {
|
|
4
3
|
name: "Glow",
|
|
5
4
|
category: "Stylize",
|
|
6
5
|
description: "Soft glow effect with adjustable intensity",
|
|
@@ -42,7 +41,7 @@ const B = {
|
|
|
42
41
|
}
|
|
43
42
|
},
|
|
44
43
|
fragmentNode: ({ uniforms: s, childNode: a, onCleanup: g }) => {
|
|
45
|
-
const { vec2: c, vec3: h, vec4: r, float: t, max: d, dot: w, screenUV: f, convertToTexture: b, viewportSize: y, Fn: x } =
|
|
44
|
+
const { vec2: c, vec3: h, vec4: r, float: t, max: d, dot: w, screenUV: f, convertToTexture: b, viewportSize: y, Fn: x } = j;
|
|
46
45
|
if (!a) return r(0, 0, 0, 0);
|
|
47
46
|
const o = b(a);
|
|
48
47
|
g(() => {
|
|
@@ -51,17 +50,17 @@ const B = {
|
|
|
51
50
|
const u = o.sample(f), v = x(() => {
|
|
52
51
|
const z = s.size.uniform, S = s.threshold.uniform, G = c(1).div(y), n = r(0, 0, 0, 0).toVar(), e = 5;
|
|
53
52
|
for (let i = -e; i <= e; i++) for (let l = -e; l <= e; l++) {
|
|
54
|
-
const
|
|
55
|
-
n.assign(n.add(
|
|
53
|
+
const V = c(t(i), t(l)).mul(G).mul(z), _ = f.add(V), m = o.sample(_), q = w(m.rgb, h(0.299, 0.587, 0.114)), R = d(t(0), q.sub(S)), U = m.mul(R);
|
|
54
|
+
n.assign(n.add(U));
|
|
56
55
|
}
|
|
57
|
-
const
|
|
58
|
-
return n.div(
|
|
56
|
+
const C = t((e * 2 + 1) * (e * 2 + 1));
|
|
57
|
+
return n.div(C);
|
|
59
58
|
})(), T = s.intensity.uniform, p = v.mul(T);
|
|
60
59
|
return r(u.rgb.add(p.rgb), d(u.a, p.a));
|
|
61
60
|
}
|
|
62
61
|
};
|
|
63
|
-
var
|
|
62
|
+
var D = k;
|
|
64
63
|
export {
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
k as n,
|
|
65
|
+
D as t
|
|
67
66
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { o as
|
|
3
|
-
|
|
4
|
-
const X = {
|
|
1
|
+
import { O as J, t as K } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { o as Q, r as v } from "./transformations-CsrIJXh-.js";
|
|
3
|
+
const W = {
|
|
5
4
|
name: "Godrays",
|
|
6
5
|
category: "Base Layers",
|
|
7
6
|
description: "Volumetric light rays emanating from a point",
|
|
@@ -13,7 +12,7 @@ const X = {
|
|
|
13
12
|
x: 0,
|
|
14
13
|
y: 0
|
|
15
14
|
},
|
|
16
|
-
transform:
|
|
15
|
+
transform: Q,
|
|
17
16
|
description: "The center point of the god rays",
|
|
18
17
|
ui: {
|
|
19
18
|
type: "position",
|
|
@@ -84,23 +83,23 @@ const X = {
|
|
|
84
83
|
}
|
|
85
84
|
},
|
|
86
85
|
fragmentNode: ({ uniforms: s, uvContext: B }) => {
|
|
87
|
-
const { vec2:
|
|
88
|
-
const t = n.floor(), e = n.fract(), o = (u) =>
|
|
89
|
-
return p(p(l, a,
|
|
86
|
+
const { vec2: c, vec4: G, float: r, sin: T, atan2: D, length: P, pow: x, smoothstep: S, mix: p, clamp: g, screenUV: U, time: _, PI: w, Fn: h } = J, F = B ?? U, I = c(s.center.uniform.x, s.center.uniform.y.oneMinus()), m = F.sub(I), V = h(([n]) => {
|
|
87
|
+
const t = n.floor(), e = n.fract(), o = (u) => T(u.x.mul(127.1).add(u.y.mul(311.7))).mul(43758.5453).fract(), l = o(t), a = o(t.add(c(1, 0))), d = o(t.add(c(0, 1))), y = o(t.add(c(1, 1))), i = e.mul(e).mul(e.mul(-2).add(3));
|
|
88
|
+
return p(p(l, a, i.x), p(d, y, i.x), i.y);
|
|
90
89
|
}), f = h(([n, t, e, o]) => {
|
|
91
|
-
const l =
|
|
92
|
-
return p(x(V(d), o), y,
|
|
90
|
+
const l = D(n.y, n.x), a = c(l.mul(e), t), d = c(l.mod(w.mul(2)).mul(e), t), y = x(V(a), o);
|
|
91
|
+
return p(x(V(d), o), y, S(-0.15, 0.15, n.x));
|
|
93
92
|
}), L = h(() => {
|
|
94
|
-
const n =
|
|
95
|
-
u.assign(u.mul(f(m, y,
|
|
96
|
-
const
|
|
97
|
-
return C.assign(C.mul(f(m,
|
|
98
|
-
})(), N = s.rayColor.uniform.rgb, q = s.rayColor.uniform.a, E = s.backgroundColor.uniform.rgb,
|
|
99
|
-
return
|
|
93
|
+
const n = _.mul(s.speed.uniform).mul(0.2), t = P(m), e = r(6.5).mul(K(s.spotty.uniform)), o = r(4).sub(r(3).mul(g(s.intensity.uniform, 0, 1))), l = r(6).mul(s.density.uniform), a = r(0).toVar(), d = t.mul(1).sub(n.mul(3)), y = t.mul(0.5).mul(r(1).add(e)).sub(n.mul(2)), i = l.mul(5), u = f(m, d, i, o).toVar();
|
|
94
|
+
u.assign(u.mul(f(m, y, i.mul(4), o))), a.assign(a.add(u));
|
|
95
|
+
const z = t.mul(1.4).sub(n.mul(2.5)), H = t.mul(0.7).mul(r(1).add(e)).sub(n.mul(1.8)), k = l.mul(4.5), C = f(m, z, k, o).toVar();
|
|
96
|
+
return C.assign(C.mul(f(m, H, k.mul(3.5), o))), a.assign(a.add(C.mul(0.7))), g(a, 0, 1);
|
|
97
|
+
})(), N = s.rayColor.uniform.rgb, q = s.rayColor.uniform.a, E = s.backgroundColor.uniform.rgb, A = s.backgroundColor.uniform.a, b = L.mul(q), R = b.add(A.mul(r(1).sub(b))), M = g(R, 1e-3, 1), O = N.mul(b), j = E.mul(A).mul(r(1).sub(b));
|
|
98
|
+
return G(O.add(j).div(M), R);
|
|
100
99
|
}
|
|
101
100
|
};
|
|
102
|
-
var
|
|
101
|
+
var Z = W;
|
|
103
102
|
export {
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
W as n,
|
|
104
|
+
Z as t
|
|
106
105
|
};
|
|
@@ -1,22 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as
|
|
3
|
-
|
|
4
|
-
const n = {
|
|
1
|
+
import { O as t } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { t as s } from "./ColorAdjustment-CKwpE_4M.js";
|
|
3
|
+
const a = {
|
|
5
4
|
name: "Grayscale",
|
|
6
5
|
category: "Adjustments",
|
|
7
6
|
description: "Convert colors to black and white",
|
|
8
7
|
requiresChild: !0,
|
|
9
8
|
props: {},
|
|
10
9
|
fragmentNode: ({ childNode: e }) => {
|
|
11
|
-
const { vec4: r } =
|
|
10
|
+
const { vec4: r } = t;
|
|
12
11
|
if (!e)
|
|
13
12
|
return console.error("You must pass a child component into the Grayscale shader."), r(0);
|
|
14
|
-
const
|
|
15
|
-
return r(
|
|
13
|
+
const o = e || r(0, 0, 0, 0);
|
|
14
|
+
return r(s(o.rgb).rgb, o.a);
|
|
16
15
|
}
|
|
17
16
|
};
|
|
18
|
-
var
|
|
17
|
+
var i = a;
|
|
19
18
|
export {
|
|
20
|
-
n,
|
|
21
|
-
|
|
19
|
+
a as n,
|
|
20
|
+
i as t
|
|
22
21
|
};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { r as
|
|
3
|
-
T();
|
|
1
|
+
import { O as k } from "./three.tsl-Btj1hLsf.js";
|
|
2
|
+
import { r as T } from "./transformations-CsrIJXh-.js";
|
|
4
3
|
const C = {
|
|
5
4
|
name: "Grid",
|
|
6
5
|
category: "Base Layers",
|
|
@@ -9,7 +8,7 @@ const C = {
|
|
|
9
8
|
props: {
|
|
10
9
|
color: {
|
|
11
10
|
default: "#ffffff",
|
|
12
|
-
transform:
|
|
11
|
+
transform: T,
|
|
13
12
|
description: "The color of the grid lines",
|
|
14
13
|
ui: {
|
|
15
14
|
type: "color",
|
|
@@ -40,8 +39,8 @@ const C = {
|
|
|
40
39
|
}
|
|
41
40
|
},
|
|
42
41
|
fragmentNode: ({ uniforms: e, uvContext: l }) => {
|
|
43
|
-
const { vec2: a, vec4: d, fract: m, max: p, screenUV: f, viewportSize: o, fwidth: u, smoothstep: n } =
|
|
44
|
-
return d(e.color.uniform.rgb, e.color.uniform.a.mul(
|
|
42
|
+
const { vec2: a, vec4: d, fract: m, max: p, screenUV: f, viewportSize: o, fwidth: u, smoothstep: n } = k, i = l ?? f, h = o.x.div(o.y), g = a(i.x.mul(h), i.y.oneMinus()), x = e.cells.uniform, r = g.mul(x), t = m(r), s = e.thickness.uniform.mul(0.01), y = t.x.min(t.x.oneMinus()), v = t.y.min(t.y.oneMinus()), c = u(r), b = p(n(s.add(c.x), s, y), n(s.add(c.y), s, v));
|
|
43
|
+
return d(e.color.uniform.rgb, e.color.uniform.a.mul(b));
|
|
45
44
|
}
|
|
46
45
|
};
|
|
47
46
|
var V = C;
|